48 lines
1.0 KiB
YAML
48 lines
1.0 KiB
YAML
|
version: 2.1
|
||
|
|
||
|
defaults: &defaults
|
||
|
working_directory: ~/repo
|
||
|
docker:
|
||
|
- image: mcr.microsoft.com/dotnet/core/sdk:3.1
|
||
|
environment:
|
||
|
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1
|
||
|
DOTNET_CLI_TELEMETRY_OPTOUT: 1
|
||
|
|
||
|
jobs:
|
||
|
test:
|
||
|
<<: *defaults
|
||
|
steps:
|
||
|
- checkout
|
||
|
- run: dotnet restore
|
||
|
- run: dotnet build -c Release
|
||
|
- run: dotnet test -c Release
|
||
|
- persist_to_workspace:
|
||
|
root: .
|
||
|
paths: ./MoonTools.FastCollections/bin
|
||
|
|
||
|
deploy:
|
||
|
<<: *defaults
|
||
|
steps:
|
||
|
- checkout
|
||
|
- attach_workspace:
|
||
|
at: .
|
||
|
- run: dotnet nuget push ./MoonTools.FastCollections/bin/Release/MoonTools.FastCollections.*.nupkg -k $API_KEY -s https://api.nuget.org/v3/index.json
|
||
|
|
||
|
workflows:
|
||
|
version: 2
|
||
|
test_and_deploy:
|
||
|
jobs:
|
||
|
- test:
|
||
|
filters:
|
||
|
tags:
|
||
|
only: /.*/
|
||
|
- deploy:
|
||
|
requires:
|
||
|
- test
|
||
|
filters:
|
||
|
branches:
|
||
|
ignore: /.*/
|
||
|
tags:
|
||
|
only: /^\d+\.\d+\.\d+(-preview\d*)?$/
|
||
|
|