Skip to content

Commit e458e3c

Browse files
committed
Add nuget publish steps to pipeline
1 parent 28bdc12 commit e458e3c

File tree

1 file changed

+35
-12
lines changed

1 file changed

+35
-12
lines changed

azure-pipelines.yml

Lines changed: 35 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,3 @@
1-
# Starter pipeline
2-
3-
# Start with a minimal pipeline that you can customize to build and deploy your code.
4-
# Add steps that build, run tests, deploy, and more:
5-
# https://aka.ms/yaml
6-
71
variables:
82
buildConfiguration: 'Release'
93
webDriverVersion: '75.0.3770.140'
@@ -16,6 +10,10 @@ pool:
1610
vmImage: 'windows-latest'
1711

1812
steps:
13+
- task: GitVersion@5
14+
displayName: 'Run GitVersion'
15+
inputs:
16+
runtime: 'core'
1917

2018
- task: SonarCloudPrepare@1
2119
displayName: 'Prepare SonarCloud analysis'
@@ -25,9 +23,18 @@ steps:
2523
projectKey: 'aquality-automation_aquality-selenium-core-dotnet'
2624
projectName: 'aquality-selenium-core-dotnet'
2725
projectVersion: '$(Build.BuildNumber)'
26+
extraProperties: |
27+
sonar.coverage.exclusions=**/**
2828
2929
- script: dotnet build Aquality.Selenium.Core/Aquality.Selenium.Core.sln -c $(buildConfiguration)
3030
displayName: 'Build solution - $(buildConfiguration)'
31+
- task: SonarCloudAnalyze@1
32+
displayName: 'Run SonarCloud code analysis'
33+
continueOnError: true
34+
35+
- task: SonarCloudPublish@1
36+
displayName: 'Publish SonarCloud quality gate results'
37+
continueOnError: true
3138

3239
- task: Windows Application Driver@0
3340
displayName: 'Start WinAppDriver'
@@ -44,11 +51,27 @@ steps:
4451
displayName: stop WinAppDriver
4552
inputs:
4653
OperationType: 'Stop'
54+
55+
- script: dotnet pack Aquality.Selenium.Core\src\Aquality.Selenium.Core\Aquality.Selenium.Core.csproj -c $(buildConfiguration) --no-build -p:Version=$(GitVersion.NuGetVersion) -o $(Build.ArtifactStagingDirectory)
56+
displayName: 'Create NuGet package'
57+
condition: and(succeeded(), eq(variables['Build.SourceBranch'], 'refs/heads/master'))
4758

48-
- task: SonarCloudAnalyze@1
49-
displayName: 'Run SonarCloud code analysis'
50-
continueOnError: true
59+
- task: NuGetCommand@2
60+
displayName: 'Push NuGet package'
61+
inputs:
62+
command: 'push'
63+
packagesToPush: '$(Build.ArtifactStagingDirectory)/**/Aquality.Selenium.Core*.nupkg;!$(Build.ArtifactStagingDirectory)/**/Aquality.Selenium.Core*.symbols.nupkg'
64+
nuGetFeedType: 'external'
65+
publishFeedCredentials: 'NuGet'
66+
condition: and(succeeded(), eq(variables['Build.SourceBranch'], 'refs/heads/master'))
5167

52-
- task: SonarCloudPublish@1
53-
displayName: 'Publish SonarCloud quality gate results'
54-
continueOnError: true
68+
- task: GitHubRelease@0
69+
displayName: 'Create tag on GitHub'
70+
inputs:
71+
gitHubConnection: 'GitHub'
72+
repositoryName: 'aquality-automation/aquality-selenium-core-dotnet'
73+
action: 'create'
74+
tag: 'v$(GitVersion.NuGetVersion)'
75+
tagSource: 'manual'
76+
isPreRelease: contains(variables['GitVersion.NuGetVersion'], '-')
77+
condition: and(succeeded(), eq(variables['Build.SourceBranch'], 'refs/heads/master'))

0 commit comments

Comments
 (0)