Files
allwpilib/azure-templates/stage-combine.yml
Austin Shalit d1d32ada00 [build] Fix artifact publishing (#2471)
Add back variables block that was removed in #2457.
2020-04-05 23:05:13 -07:00

77 lines
2.4 KiB
YAML

# Stage to combine artifacts into a single output
parameters:
publish: False
publishUserName: ''
publishPassword: ''
artifacts: []
stages:
- stage: Combine
jobs:
- job: CombineJob
pool:
vmImage: 'macOS-10.14'
timeoutInMinutes: 0
steps:
- checkout: none
- script: |
git clone https://github.com/wpilibsuite/build-tools
displayName: 'Clone Combiner'
- ${{ each artifact in parameters.artifacts }}:
- task: DownloadPipelineArtifact@0
displayName: 'DownloadPipelineArtifact ${{ artifact }}'
inputs:
artifactName: ${{ artifact }}
targetPath: 'build-tools/combiner/products/build/allOutputs'
# PR Builds
- ${{ if and(ne(variables['Build.SourceBranch'], 'refs/heads/master'), not(startsWith(variables['Build.SourceBranch'], 'refs/tags/v'))) }}:
- task: Gradle@2
inputs:
workingDirectory: 'build-tools/combiner'
gradleWrapperFile: 'build-tools/combiner/gradlew'
gradleOptions: '-Xmx3072m'
tasks: 'publish '
options: '-Pallwpilib'
# Master Builds
- ${{ if and(parameters.publish, eq(variables['Build.SourceBranch'], 'refs/heads/master')) }}:
- task: Gradle@2
inputs:
workingDirectory: 'build-tools/combiner'
gradleWrapperFile: 'build-tools/combiner/gradlew'
gradleOptions: '-Xmx3072m'
tasks: 'publish '
options: '-Pallwpilib'
env:
RUN_AZURE_ARTIFACTORY_RELEASE: 'TRUE'
ARTIFACTORY_PUBLISH_USERNAME: $(publishUserName)
ARTIFACTORY_PUBLISH_PASSWORD: $(publishPassword)
# Tagged Builds
- ${{ if and(parameters.publish, startsWith(variables['Build.SourceBranch'], 'refs/tags/v')) }}:
- task: Gradle@2
inputs:
workingDirectory: 'build-tools/combiner'
gradleWrapperFile: 'build-tools/combiner/gradlew'
gradleOptions: '-Xmx3072m'
tasks: 'publish '
options: '-Pallwpilib -PreleaseRepoPublish'
env:
RUN_AZURE_ARTIFACTORY_RELEASE: 'TRUE'
ARTIFACTORY_PUBLISH_USERNAME: $(publishUserName)
ARTIFACTORY_PUBLISH_PASSWORD: $(publishPassword)
- script: |
echo "##vso[task.setvariable variable=UserHome]$HOME"
displayName: 'Set Home Variable'
- task: PublishPipelineArtifact@0
inputs:
artifactName: 'Maven'
targetPath: $(UserHome)/releases