Files
ZertoApiWrapper/azure-pipelines.yml
T
2020-06-10 09:53:01 -04:00

141 lines
4.0 KiB
YAML

# Starter pipeline
# Start with a minimal pipeline that you can customize to build and deploy your code.
# Add steps that build, run tests, deploy, and more:
# https://aka.ms/yaml
name: $(TeamProject)_$(SourceBranchName)_$(Date:yyyyMMdd)$(Rev:.rr)
# Trigger CI on commit to master branch
trigger:
branches:
include:
- master
- PowerShellBackPort
- Refactor-Build
# Trigger CI on pull requests to master and develop branches
pr:
- master
jobs:
# Windows PowerShell 5.1 Build Job
- job: Build_PS_Windows
timeoutInMinutes: 10
cancelTimeoutInMinutes: 2
pool:
vmImage: windows-latest
steps:
# Run build.ps1 script in PowerShell Core
- powershell: |
.\build.ps1 -Verbose
displayName: 'Build and Test'
# Upload test results to Azure Pipeline
- task: PublishTestResults@2
inputs:
testRunner: 'NUnit'
testResultsFiles: '**/SourceTestResults.xml'
testRunTitle: 'PS_Win2016_Source'
displayName: 'Publish Test Results'
condition: always()
- task: PublishTestResults@2
inputs:
testRunner: 'NUnit'
testResultsFiles: '**/BuiltTestResults.xml'
testRunTitle: 'PS_Win2016_Built'
displayName: 'Publish Test Results'
condition: always()
# Windows PowerShell Core Build Job
- job: Build_PSCore_Windows
timeoutInMinutes: 10
cancelTimeoutInMinutes: 2
pool:
vmImage: windows-latest
steps:
# Run build.ps1 script in PowerShell Core
- pwsh: |
.\build.ps1 -Verbose
displayName: 'Build and Test'
# Upload test results to Azure Pipeline
- task: PublishTestResults@2
inputs:
testRunner: 'NUnit'
testResultsFiles: '**/SourceTestResults.xml'
testRunTitle: 'PSCore_Win2016_Source'
displayName: 'Publish Test Results'
condition: always()
- task: PublishTestResults@2
inputs:
testRunner: 'NUnit'
testResultsFiles: '**/BuiltTestResults.xml'
testRunTitle: 'PSCore_Win2016_Built'
displayName: 'Publish Test Results'
condition: always()
# Linux Build Job
- job: Build_PSCore_Ubuntu
timeoutInMinutes: 10
cancelTimeoutInMinutes: 2
pool:
vmImage: ubuntu-latest
steps:
# Run build.ps1 script in PowerShell Core
- pwsh: |
.\build.ps1 -verbose
displayName: 'Build and Test'
# Upload test results to Azure Pipeline
- task: PublishTestResults@2
inputs:
testRunner: 'NUnit'
testResultsFiles: '**/SourceTestResults.xml'
testRunTitle: 'PSCore_Ubuntu_Source'
displayName: 'Publish Test Results'
condition: always()
- task: PublishTestResults@2
inputs:
testRunner: 'NUnit'
testResultsFiles: '**/BuiltTestResults.xml'
testRunTitle: 'PSCore_Ubuntu_Built'
displayName: 'Publish Test Results'
condition: always()
- task: PublishPipelineArtifact@0
displayName: 'Publish compiled module Artifact'
inputs:
artifactName: 'ZertoApiWrapper'
targetPath: ./temp
condition: always()
- task: PublishPipelineArtifact@0
displayName: 'Publish Data'
inputs:
artifactName: 'ReleaseData'
targetPath: ./publish
condition: always()
# MacOS Build Job
- job: Build_PSCore_MacOS
timeoutInMinutes: 10
cancelTimeoutInMinutes: 2
pool:
vmImage: macOS-latest
steps:
# Run build.ps1 script in PowerShell Core
- pwsh: |
.\build.ps1 -verbose
displayName: 'Build and Test'
# Upload test results to Azure Pipeline
- task: PublishTestResults@2
inputs:
testRunner: 'NUnit'
testResultsFiles: '**/SourceTestResults.xml'
testRunTitle: 'PSCore_MacOS1013_Source'
displayName: 'Publish Test Results'
condition: always()
- task: PublishTestResults@2
inputs:
testRunner: 'NUnit'
testResultsFiles: '**/BuiltTestResults.xml'
testRunTitle: 'PSCore_MacOS1013_Built'
displayName: 'Publish Test Results'
condition: always()