# ASP.NET Core # Build and test ASP.NET Core projects targeting .NET Core. # Add steps that run tests, create a NuGet package, deploy, and more: # https://docs.microsoft.com/azure/devops/pipelines/languages/dotnet-core trigger: branches: include: - feature/* exclude: - develop - master variables: solution: '**/*.sln' testProj: '**/*.Tests.csproj' csProj: '**/*.csproj' buildConfiguration: 'Release' publishLocation: '$(Build.SourcesDirectory)/src/Ombi/bin/Release/netcoreapp3.0' gitTag: 'v4.0.${Build.BuildId}' pool: vmImage: 'ubuntu-latest' steps: - task: Yarn@3 displayName: 'Install UI Dependancies' inputs: projectDirectory: '$(Build.SourcesDirectory)/src/Ombi/ClientApp/' arguments: 'install' - task: Yarn@3 displayName: 'Build Angular App' inputs: projectDirectory: '$(Build.SourcesDirectory)/src/Ombi/ClientApp/' arguments: 'run build' - task: CopyFiles@2 displayName: 'Publish Angular App Win10-x64' inputs: SourceFolder: '$(Build.SourcesDirectory)/src/Ombi/ClientApp/dist' Contents: '**' TargetFolder: '$(Build.ArtifactStagingDirectory)/win-64/wwwroot' #- task: DotNetCoreCLI@2 # displayName: Run Unit Tests # inputs: # command: 'test' # projects: '**/*Tests.csproj' ### Publish - task: DotNetCoreCLI@2 displayName: Publish Win10-x64 inputs: command: 'publish' publishWebProjects: true arguments: '-c $(buildConfiguration) -r "win10-x64" -o $(Build.ArtifactStagingDirectory)/win-64' #- task: DotNetCoreCLI@2 # displayName: Publish Win10-x86 # inputs: # command: 'publish' # publishWebProjects: true # arguments: '-c $(buildConfiguration) -r "win10-x86" -o $(Build.ArtifactStagingDirectory)/win-86' #- task: DotNetCoreCLI@2 # displayName: Publish OSX-x64 # inputs: # command: 'publish' # publishWebProjects: true # arguments: '-c $(buildConfiguration) -r "osx-x64" -o $(Build.ArtifactStagingDirectory)/osx-64' # #- task: DotNetCoreCLI@2 # displayName: Publish Linux-x64 # inputs: # command: 'publish' # publishWebProjects: true # arguments: '-c $(buildConfiguration) -r "linux-x64" -o $(Build.ArtifactStagingDirectory)/linux-64' # #- task: DotNetCoreCLI@2 # displayName: Publish Linux-ARM # inputs: # command: 'publish' # publishWebProjects: true # arguments: '-c $(buildConfiguration) -r "linux-arm" -o $(Build.ArtifactStagingDirectory)/linux-arm' # #- task: DotNetCoreCLI@2 # displayName: Publish Linux-ARM-x64 # inputs: # command: 'publish' # publishWebProjects: true # arguments: '-c $(buildConfiguration) -r "linux-arm64" -o $(Build.ArtifactStagingDirectory)/linux-arm64' ### Zip them up #- task: ArchiveFiles@2 # displayName: Zip Win-x64 # inputs: # rootFolderOrFile: '$(Build.ArtifactStagingDirectory)/win-64' # includeRootFolder: true # archiveType: 'zip' # archiveFile: '$(Build.ArtifactStagingDirectory)/win-x64-$(Build.BuildId).zip' # replaceExistingArchive: true #- task: ArchiveFiles@2 # displayName: Zip Win-x86 # inputs: # rootFolderOrFile: '$(Build.ArtifactStagingDirectory)/win-86' # includeRootFolder: true # archiveType: 'zip' # archiveFile: '$(Build.ArtifactStagingDirectory)/win-x86-$(Build.BuildId).zip' # replaceExistingArchive: true # #- task: ArchiveFiles@2 # displayName: Zip OSX-x64 # inputs: # rootFolderOrFile: '$(Build.ArtifactStagingDirectory)/osx-64' # includeRootFolder: true # archiveType: 'tar' # archiveFile: '$(Build.ArtifactStagingDirectory)/osx-x64-$(Build.BuildId).tar.gz' # replaceExistingArchive: true # #- task: ArchiveFiles@2 # displayName: Zip Linux-x64 # inputs: # rootFolderOrFile: '$(Build.ArtifactStagingDirectory)/linux-64' # includeRootFolder: true # archiveType: 'tar' # archiveFile: '$(Build.ArtifactStagingDirectory)/linux-x64-$(Build.BuildId).tar.gz' # replaceExistingArchive: true # #- task: ArchiveFiles@2 # displayName: Zip Linux-ARM # inputs: # rootFolderOrFile: '$(Build.ArtifactStagingDirectory)/linux-arm' # includeRootFolder: true # archiveType: 'tar' # archiveFile: '$(Build.ArtifactStagingDirectory)/linux-arm-$(Build.BuildId).tar.gz' # replaceExistingArchive: true # #- task: ArchiveFiles@2 # displayName: Zip Linux-ARM-x64 # inputs: # rootFolderOrFile: '$(Build.ArtifactStagingDirectory)/linux-arm64' # includeRootFolder: true # archiveType: 'tar' # archiveFile: '$(Build.ArtifactStagingDirectory)/linux-arm64-$(Build.BuildId).tar.gz' # replaceExistingArchive: true #- task: PublishBuildArtifacts@1 # displayName: Publish Win 64 # inputs: # PathtoPublish: '$(Build.ArtifactStagingDirectory)/win-x64' # ArtifactName: 'win-x64-$(Build.BuildId).zip' # publishLocation: 'Container' - task: GitHubRelease@1 inputs: gitHubConnection: 'github.com_tidusjar' repositoryName: 'tidusjar/Ombi.Releases' action: 'create' target: 'c7fcbb77b58aef1076d635a9ef99e4374abc8672' tagSource: 'userSpecifiedTag' tag: '${gitTag}' releaseNotesSource: 'inline' releaseNotesInline: 'test' isPreRelease: true changeLogCompareToRelease: 'lastFullRelease' changeLogType: 'commitBased' #- task: PublishBuildArtifacts@1 # displayName: Publish Win 86 # inputs: # PathtoPublish: '$(Build.ArtifactStagingDirectory)/win-x86-$(Build.BuildId).zip' # ArtifactName: 'win-x86-$(Build.BuildId).zip' # publishLocation: 'Container' # #- task: PublishBuildArtifacts@1 # displayName: Publish OSX 64 # inputs: # PathtoPublish: '$(Build.ArtifactStagingDirectory)/osx-x64-$(Build.BuildId).tar.gz' # ArtifactName: 'osx-x64-$(Build.BuildId).tar.gz' # publishLocation: 'Container' # #- task: PublishBuildArtifacts@1 # displayName: Publish Linux 64 # inputs: # PathtoPublish: '$(Build.ArtifactStagingDirectory)/linux-x64-$(Build.BuildId).tar.gz' # ArtifactName: 'drop' # publishLocation: 'Container' # #- task: PublishBuildArtifacts@1 # displayName: Publish Linux ARM # inputs: # PathtoPublish: '$(Build.ArtifactStagingDirectory)/linux-arm-$(Build.BuildId).tar.gz' # ArtifactName: 'linux-arm-$(Build.BuildId).tar.gz' # publishLocation: 'Container' # #- task: PublishBuildArtifacts@1 # displayName: Publish OSX 64 # inputs: # PathtoPublish: '$(Build.ArtifactStagingDirectory)/linux-arm64-$(Build.BuildId).tar.gz' # ArtifactName: 'linux-arm64-$(Build.BuildId).tar.gz' # publishLocation: 'Container'