aboutsummaryrefslogtreecommitdiffstats
path: root/.ci/templates
diff options
context:
space:
mode:
authormattprost <matt.prost@ni.com>2022-01-12 14:37:02 -0600
committerAaron Rossetto <aaron.rossetto@ni.com>2022-01-14 09:50:36 -0600
commitf2904bfbd4b16c994550da583dba88cc551d8e6a (patch)
tree4f8ca048e0885062f18c2de27f76ae3a5db3407d /.ci/templates
parentee8e4f2c9b1bae8085dff6199c2bade0914748f7 (diff)
downloaduhd-f2904bfbd4b16c994550da583dba88cc551d8e6a.tar.gz
uhd-f2904bfbd4b16c994550da583dba88cc551d8e6a.tar.bz2
uhd-f2904bfbd4b16c994550da583dba88cc551d8e6a.zip
ci: Separate pipeline builds for different os
This allows parameterizing pipeline runs to only build for certain os. Signed-off-by: mattprost <matt.prost@ni.com>
Diffstat (limited to '.ci/templates')
-rw-r--r--.ci/templates/stages-uhd-pipeline.yml62
1 files changed, 46 insertions, 16 deletions
diff --git a/.ci/templates/stages-uhd-pipeline.yml b/.ci/templates/stages-uhd-pipeline.yml
index 462f73026..8aedf8eae 100644
--- a/.ci/templates/stages-uhd-pipeline.yml
+++ b/.ci/templates/stages-uhd-pipeline.yml
@@ -5,6 +5,15 @@
#
parameters:
+- name: build_linux
+ type: boolean
+ default: true
+- name: build_mac
+ type: boolean
+ default: true
+- name: build_win
+ type: boolean
+ default: true
- name: custom_boost_version
type: boolean
default: false
@@ -28,12 +37,14 @@ resources:
- pipeline: uhd_build_docker_container
source: 'uhddev Build Docker Containers'
branch: master
+
stages:
-- stage: build_uhd_stage
- displayName: Build UHD
+- stage: build_uhd_stage_linux
+ displayName: Build UHD Linux
+ dependsOn: []
+ condition: and(succeeded(), ${{ parameters.build_linux }})
jobs:
- template: job-get-latest-uhd-docker.yml
-
- template: job-uhd-build-src.yml
parameters:
toolset: make
@@ -43,29 +54,48 @@ stages:
- template: job-uhd-build-src.yml
parameters:
toolset: ninja
+ - ${{ if parameters.custom_boost_version }}:
+ - template: job-uhd-build-src.yml
+ parameters:
+ toolset: make_custom_boost_version
+ custom_boost_version_url: ${{ parameters.custom_boost_version_url }}
+
+- stage: build_uhd_stage_win
+ displayName: Build UHD Windows
+ dependsOn: []
+ condition: and(succeeded(), ${{ parameters.build_win }})
+ jobs:
+ - template: job-get-latest-uhd-docker.yml
- template: job-uhd-build-src.yml
parameters:
toolset: msbuild
release_binaries: ${{ parameters.release_binaries }}
+
+- stage: build_uhd_stage_mac
+ displayName: Build UHD macOS
+ dependsOn: []
+ condition: and(succeeded(), ${{ parameters.build_mac }})
+ jobs:
+ - template: job-get-latest-uhd-docker.yml
- template: job-uhd-build-src.yml
parameters:
toolset: make_homebrew_macos
- - ${{ if parameters.custom_boost_version }}:
- - template: job-uhd-build-src.yml
- parameters:
- toolset: make_custom_boost_version
- custom_boost_version_url: ${{ parameters.custom_boost_version_url }}
-
-- stage: build_uhd_installer_stage
- displayName: Build UHD Installers
- dependsOn: build_uhd_stage
+- stage: build_uhd_installer_stage_linux
+ displayName: Build UHD Installers Linux
+ dependsOn: build_uhd_stage_linux
jobs:
- template: job-get-latest-uhd-docker.yml
- template: job-uhd-build-installer.yml
parameters:
toolset: ubuntu_deb
installer: deb
+
+- stage: build_uhd_installer_stage_win
+ displayName: Build UHD Installers Windows
+ dependsOn: build_uhd_stage_win
+ jobs:
+ - template: job-get-latest-uhd-docker.yml
- template: job-uhd-build-installer.yml
parameters:
toolset: msbuild
@@ -73,7 +103,7 @@ stages:
- stage: test_uhd_stage
displayName: Test UHD
- dependsOn: build_uhd_stage
+ dependsOn: build_uhd_stage_linux
jobs:
- template: job-uhd-devtest-rhombus.yml
parameters:
@@ -82,11 +112,11 @@ stages:
- stage: test_streaming_stage
displayName: Test UHD Streaming
- dependsOn: build_uhd_stage
- condition: and(succeeded('build_uhd_stage'), ${{ parameters.run_streaming_tests }})
+ dependsOn: build_uhd_stage_linux
+ condition: and(succeeded('build_uhd_stage_linux'), ${{ parameters.run_streaming_tests }})
jobs:
- template: job-uhd-streaming-tests-beauty.yml
parameters:
testOS: ubuntu2004
uhdSrcDir: $(Build.SourcesDirectory)
- testLength: ${{ parameters.testLength }} \ No newline at end of file
+ testLength: ${{ parameters.testLength }}