123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- # .NET Desktop
- # Build and run tests for .NET Desktop or Windows classic desktop solutions.
- # Add steps that publish symbols, save build artifacts, and more:
- # https://docs.microsoft.com/azure/devops/pipelines/apps/windows/dot-net
- trigger:
- - release
- - cd-azure-pipelines
- pool:
- vmImage: 'windows-latest'
- variables:
- solution: '**/*.sln'
- buildPlatform: 'Any CPU'
- buildConfiguration: 'Release'
- steps:
- - task: NuGetToolInstaller@1
- - task: NuGetCommand@2
- inputs:
- restoreSolution: '$(solution)'
- - task: VSBuild@1
- inputs:
- solution: '$(solution)'
- platform: '$(buildPlatform)'
- configuration: '$(buildConfiguration)'
- - task: DotNetCoreCLI@2
- displayName: "Build release PixiEditor.UpdateInstaller"
- inputs:
- command: 'publish'
- publishWebProjects: false
- projects: '**/PixiEditor.UpdateInstaller.csproj'
- arguments: '-o "UpdateInstaller" -r "win-x64" --self-contained=false -p:PublishSingleFile=true -c Release'
- zipAfterPublish: false
- - task: PowerShell@2
- displayName: "Set tag version"
- inputs:
- filePath: 'assemblyVerReader.ps1'
- - task: DotNetCoreCLI@2
- displayName: "Build release PixiEditor Self-contained"
- inputs:
- command: 'publish'
- publishWebProjects: false
- projects: '**/PixiEditor.csproj'
- arguments: '-o "Builds/PixiEditor-x64" --self-contained=true -r "win-x64" -c Release'
- zipAfterPublish: false
- - task: CopyFiles@2
- displayName: "Copy updater to PixiEditor target dir"
- inputs:
- SourceFolder: 'UpdateInstaller'
- Contents: '**'
- TargetFolder: 'Builds/PixiEditor-x64'
- flattenFolders: true
- - task: PowerShell@2
- displayName: "Compile installer"
- inputs:
- targetType: 'inline'
- script: '& "$env:userprofile\.nuget\packages\tools.innosetup\6.0.5\tools\ISCC.exe" Installer\installer-setup-x64.iss'
-
- - task: PublishPipelineArtifact@1
- displayName: "Publish artifact"
- inputs:
- targetPath: 'Installer/Assets/PixiEditor-x64/'
- artifact: 'PixiEditor-setup-x64.exe'
- publishLocation: 'pipeline'
- - task: DotNetCoreCLI@2
- displayName: "Build release PixiEditor x64 light"
- inputs:
- command: 'publish'
- publishWebProjects: false
- projects: '**/PixiEditor.csproj'
- arguments: '-o "Builds\PixiEditor-x64-light" --self-contained=false -r "win-x64" -c Release'
- zipAfterPublish: false
-
- - task: ArchiveFiles@2
- inputs:
- rootFolderOrFile: 'Builds\PixiEditor-x64-light'
- includeRootFolder: true
- archiveType: 'zip'
- archiveFile: 'PixiEditor.$(TagVersion).x64.zip'
- replaceExistingArchive: true
- - task: PublishPipelineArtifact@1
- displayName: "Publish zip artifact"
- inputs:
- targetPath: '$(System.DefaultWorkingDirectory)\PixiEditor.$(TagVersion).x64.zip'
- artifact: 'PixiEditor.$(TagVersion).x64.zip'
- publishLocation: 'pipeline'
- - task: CopyFiles@2
- displayName: "Copy updater to PixiEditor target dir"
- inputs:
- SourceFolder: 'UpdateInstaller'
- Contents: '**'
- TargetFolder: 'Builds/PixiEditor-x64-light'
- flattenFolders: true
- - task: PowerShell@2
- displayName: "Compile installer"
- inputs:
- targetType: 'inline'
- script: '& "$env:userprofile\.nuget\packages\tools.innosetup\6.0.5\tools\ISCC.exe" Installer\installer-setup-x64-light.iss'
- - task: PublishPipelineArtifact@1
- displayName: "Publish artifact"
- inputs:
- targetPath: 'Installer/Assets/PixiEditor-x64-light/'
- artifact: 'PixiEditor-setup-x64-light.exe'
- publishLocation: 'pipeline'
|