aboutsummaryrefslogtreecommitdiffstats
path: root/.ci/templates/job-uhd-build-installer.yml
diff options
context:
space:
mode:
Diffstat (limited to '.ci/templates/job-uhd-build-installer.yml')
-rw-r--r--.ci/templates/job-uhd-build-installer.yml87
1 files changed, 87 insertions, 0 deletions
diff --git a/.ci/templates/job-uhd-build-installer.yml b/.ci/templates/job-uhd-build-installer.yml
new file mode 100644
index 000000000..e0d9dc9d3
--- /dev/null
+++ b/.ci/templates/job-uhd-build-installer.yml
@@ -0,0 +1,87 @@
+parameters:
+- name: 'toolset'
+ type: string
+ values:
+ - make
+ - msbuild
+ - ubuntu_deb
+- name: 'installer'
+ type: string
+ values:
+ - rpm # make
+ - tar # make
+ - nsis # msbuild
+ - deb # ubuntu_deb
+
+jobs:
+- job: build_uhd_installer_${{ parameters.toolset }}
+ displayName: ${{ parameters.toolset }} UHD installer
+ dependsOn: get_latest_uhd_docker
+ variables:
+ # Docker vars from job-get-latest-uhd-docker.yml
+ dockerBuildNumber: $[ dependencies.get_latest_uhd_docker.outputs['setDockerVar.dockerBuildNumber'] ]
+ dockerImagePrefix: $[ dependencies.get_latest_uhd_docker.outputs['setDockerVar.dockerImagePrefix'] ]
+ dockerImageMatrixLin: $[ dependencies.get_latest_uhd_docker.outputs['setDockerVar.dockerImageMatrixLin'] ]
+ dockerImageMatrixWin: $[ dependencies.get_latest_uhd_docker.outputs['setDockerVar.dockerImageMatrixWin'] ]
+ dockerImageMatrixUbuntuDeb: $[ dependencies.get_latest_uhd_docker.outputs['setDockerVar.dockerImageMatrixUbuntuDeb'] ]
+ pool:
+ ${{ if eq(parameters.toolset, 'msbuild') }}:
+ name: de-dre-lab
+ ${{ if ne(parameters.toolset, 'msbuild') }}:
+ name: Drivers-NIBuildFarm-RFMIBUILD
+ demands:
+ - docker
+ - ${{ if eq(parameters.toolset, 'msbuild') }}:
+ - Agent.OS -equals Windows_NT
+ - ${{ if ne(parameters.toolset, 'msbuild') }}:
+ - Agent.OS -equals Linux
+ workspace:
+ clean: outputs
+ strategy:
+ ${{ if and(eq(parameters.toolset, 'make'), eq(parameters.installer, 'tarball')) }}:
+ matrix: $[ variables.dockerImageMatrixLin ]
+ ${{ if and(eq(parameters.toolset, 'msbuild'), eq(parameters.installer, 'nsis')) }}:
+ matrix: $[ variables.dockerImageMatrixWin ]
+ ${{ if and(eq(parameters.toolset, 'ubuntu_deb'), eq(parameters.installer, 'deb')) }}:
+ matrix: $[ variables.dockerImageMatrixUbuntuDeb ]
+ container:
+ image: '$(dockerImagePrefix)$(DockerImageName):$(dockerBuildNumber)'
+ endpoint: 'Docker / Artifactory - rnd-builds-local'
+ ${{ if eq(parameters.toolset, 'ubuntu_deb') }}:
+ #pbuilder requires access to /proc
+ options: --privileged
+ steps:
+ - checkout: self
+ clean: true
+
+ - download: uhd_build_docker_container
+ - ${{ if eq(parameters.toolset, 'ubuntu_deb') }}:
+ - template: steps-build-uhd-installer-ubuntu-deb.yml
+ parameters:
+ uhdSrcDir: $(Build.SourcesDirectory)
+ uhdInstallerDir: $(Build.BinariesDirectory)/uhddev-installer
+ ubuntuReleaseName: $(ubuntuReleaseName)
+ - ${{ if ne(parameters.toolset, 'ubuntu_deb') }}:
+ - download: current
+ artifact: $(dockerOSName)-${{ parameters.toolset }}
+ displayName: Download pipeline artifact $(dockerOSName)-${{ parameters.toolset }}
+ - task: ExtractFiles@1
+ inputs:
+ archiveFilePatterns: $(Pipeline.Workspace)/$(dockerOSName)-${{ parameters.toolset }}/$(dockerOSName)-${{ parameters.toolset }}.tar.gz
+ destinationFolder: $(Build.BinariesDirectory)
+ cleanDestinationFolder: true
+ - ${{ if and(eq(parameters.toolset, 'msbuild'), eq(parameters.installer, 'nsis')) }}:
+ - template: steps-build-uhd-installer-msbuild-nsis.yml
+ parameters:
+ uhdSrcDir: $(Build.SourcesDirectory)
+ uhdBuildDir: $(Build.BinariesDirectory)\\uhddev\\build
+ uhdInstallerDir: $(Build.BinariesDirectory)\\uhddev-installer
+ cmakeCompiler: $(cmakeCompiler)
+ cmakeArch: $(cmakeArch)
+ vsArch: $(vsArch)
+ vsYear: $(vsYear)
+ - task: PublishPipelineArtifact@1
+ inputs:
+ targetPath: '$(Build.BinariesDirectory)/uhddev-installer'
+ artifactName: '$(dockerOSName)-${{ parameters.toolset }}-${{ parameters.installer }}-installer'
+ displayName: Upload uhd installer artifact