setup-dotnet/README.md

79 lines
2.3 KiB
Markdown
Raw Normal View History

2019-07-17 21:45:43 +07:00
# setup-dotnet
2019-06-20 03:22:22 +07:00
2019-08-13 02:11:11 +07:00
<p align="left">
<a href="https://github.com/actions/setup-dotnet"><img alt="GitHub Actions status" src="https://github.com/actions/setup-dotnet/workflows/Main%20workflow/badge.svg"></a>
</p>
This action sets up a [dotnet core cli](https://github.com/dotnet/cli) environment for use in actions by:
2019-06-20 03:22:22 +07:00
2019-08-02 03:40:13 +07:00
- optionally downloading and caching a version of dotnet by SDK version and adding to PATH
2019-07-17 21:45:43 +07:00
- registering problem matchers for error output
- setting up authentication to private package sources like GitHub Packages
2019-07-17 21:45:43 +07:00
# Usage
See [action.yml](action.yml)
Basic:
```yaml
2019-07-26 08:27:45 +07:00
steps:
2019-07-24 02:45:43 +07:00
- uses: actions/checkout@master
- uses: actions/setup-dotnet@v1
2019-07-17 21:45:43 +07:00
with:
2020-04-05 00:47:16 +07:00
dotnet-version: '3.1.x' # SDK Version to use; x will use the latest version of the 3.1 channel
2019-07-17 21:45:43 +07:00
- run: dotnet build <my project>
```
Matrix Testing:
```yaml
jobs:
build:
2019-08-01 22:05:47 +07:00
runs-on: ubuntu-16.04
2019-07-17 21:45:43 +07:00
strategy:
matrix:
2020-04-10 00:29:16 +07:00
dotnet: [ '2.2.103', '3.0', '3.1.x' ]
2019-07-17 21:45:43 +07:00
name: Dotnet ${{ matrix.dotnet }} sample
2019-07-26 08:27:45 +07:00
steps:
2019-07-24 02:45:43 +07:00
- uses: actions/checkout@master
2019-07-17 21:45:43 +07:00
- name: Setup dotnet
uses: actions/setup-dotnet@v1
2019-07-17 21:45:43 +07:00
with:
2019-08-14 03:05:52 +07:00
dotnet-version: ${{ matrix.dotnet }}
2019-07-17 21:45:43 +07:00
- run: dotnet build <my project>
```
2019-06-20 03:22:22 +07:00
2019-11-26 06:16:52 +07:00
Authentication for nuget feeds:
2019-09-10 00:27:23 +07:00
```yaml
steps:
- uses: actions/checkout@master
2019-11-26 06:16:52 +07:00
# Authenticates packages to push to GPR
2019-09-10 00:27:23 +07:00
- uses: actions/setup-dotnet@v1
with:
2020-04-05 00:47:16 +07:00
dotnet-version: '3.1.x' # SDK Version to use.
2019-11-26 06:16:52 +07:00
source-url: https://nuget.pkg.github.com/<owner>/index.json
2019-09-10 00:27:23 +07:00
env:
NUGET_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
- run: dotnet build <my project>
- name: Create the package
run: dotnet pack --configuration Release <my project>
2019-11-26 06:16:52 +07:00
- name: Publish the package to GPR
2019-09-10 00:27:23 +07:00
run: dotnet nuget push <my project>/bin/Release/*.nupkg
2019-11-26 06:16:52 +07:00
# Authticates packages to push to Azure Artifacts
2019-10-04 08:00:43 +07:00
- uses: actions/setup-dotnet@v1
with:
source-url: https://pkgs.dev.azure.com/<your-organization>/_packaging/<your-feed-name>/nuget/v3/index.json
env:
NUGET_AUTH_TOKEN: ${{secrets.AZURE_DEVOPS_PAT}} # Note, create a secret with this name in Settings
2019-11-26 06:16:52 +07:00
- name: Publish the package to Azure Artifacts
2019-10-04 08:00:43 +07:00
run: dotnet nuget push <my project>/bin/Release/*.nupkg
```
2019-06-20 03:22:22 +07:00
# License
The scripts and documentation in this project are released under the [MIT License](LICENSE)
# Contributions
Contributions are welcome! See [Contributor's Guide](docs/contributors.md)