diff --git a/Data/Data.csproj b/Data/Data.csproj index d93474a2..75cbf585 100644 --- a/Data/Data.csproj +++ b/Data/Data.csproj @@ -5,6 +5,7 @@ Debug;Release;Prerelease AnyCPU RaidMax.IW4MAdmin.Data + 1.0.0.0 diff --git a/DeploymentFiles/deployment-pipeline.yml b/DeploymentFiles/deployment-pipeline.yml index 6b9e3f5e..d684acae 100644 --- a/DeploymentFiles/deployment-pipeline.yml +++ b/DeploymentFiles/deployment-pipeline.yml @@ -7,6 +7,10 @@ trigger: - release/pre - master - develop + paths: + exclude: + - '**/*.yml' + - '*.yml' pr: none diff --git a/DeploymentFiles/nuget-pipeline.yml b/DeploymentFiles/nuget-pipeline.yml new file mode 100644 index 00000000..c29fb4ce --- /dev/null +++ b/DeploymentFiles/nuget-pipeline.yml @@ -0,0 +1,65 @@ +name: '$(Date:yyyy.M.d)$(Rev:.r)' + +pr: none + +pool: + vmImage: 'windows-2022' + +variables: + buildPlatform: 'Any CPU' + outputFolder: '$(Build.ArtifactStagingDirectory)\Publish\$(buildConfiguration)' + releaseType: verified + buildConfiguration: Stable + isPreRelease: false + +jobs: + - job: Build_Pack + steps: + - task: UseDotNet@2 + displayName: 'Install .NET Core 6 SDK' + inputs: + packageType: 'sdk' + version: '6.0.x' + includePreviewVersions: true + + - task: NuGetToolInstaller@1 + + - task: PowerShell@2 + displayName: 'Setup Build configuration' + condition: or(eq(variables['Build.SourceBranch'], 'refs/heads/release/pre'), eq(variables['Build.SourceBranch'], 'refs/heads/develop')) + inputs: + targetType: 'inline' + script: | + echo '##vso[task.setvariable variable=releaseType]prerelease' + echo '##vso[task.setvariable variable=buildConfiguration]Prerelease' + echo '##vso[task.setvariable variable=isPreRelease]true' + failOnStderr: true + + - task: DotNetCoreCLI@2 + displayName: 'Build Data' + inputs: + command: 'build' + projects: '**/Data.csproj' + arguments: '-c $(buildConfiguration)' + + - task: DotNetCoreCLI@2 + displayName: 'Build SLC' + inputs: + command: 'build' + projects: '**/SharedLibraryCore.csproj' + arguments: '-c $(buildConfiguration) /p:Version=$(Build.BuildNumber)' + + - task: DotNetCoreCLI@2 + displayName: 'Pack SLC' + inputs: + command: 'pack' + packagesToPack: '**/SharedLibraryCore.csproj' + nobuild: true + versioningScheme: 'byBuildNumber' + + - task: PublishPipelineArtifact@1 + displayName: 'Publish nuget package artifact' + inputs: + targetPath: '$(Build.Repository.LocalPath)/SharedLibraryCore/bin/$(buildConfiguration)/RaidMax.IW4MAdmin.SharedLibraryCore.$(Build.BuildNumber).nupkg' + artifact: 'SharedLibraryCore.$(Build.BuildNumber).nupkg' + publishLocation: 'pipeline' diff --git a/IW4MAdmin.sln b/IW4MAdmin.sln index 90b29b90..87038b44 100644 --- a/IW4MAdmin.sln +++ b/IW4MAdmin.sln @@ -12,6 +12,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution version.txt = version.txt DeploymentFiles\UpdateIW4MAdmin.ps1 = DeploymentFiles\UpdateIW4MAdmin.ps1 DeploymentFiles\UpdateIW4MAdmin.sh = DeploymentFiles\UpdateIW4MAdmin.sh + DeploymentFiles\nuget-pipeline.yml = DeploymentFiles\nuget-pipeline.yml EndProjectSection EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SharedLibraryCore", "SharedLibraryCore\SharedLibraryCore.csproj", "{AA0541A2-8D51-4AD9-B0AC-3D1F5B162481}"