# 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' 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-$(Build.BuildId).zip' ArtifactName: 'win-x64-$(Build.BuildId).zip' publishLocation: 'Container' #- 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'