aboutsummaryrefslogtreecommitdiffstats
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
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>
-rw-r--r--.ci/templates/stages-uhd-pipeline.yml62
-rw-r--r--.ci/uhd-pipeline-pr.yml12
-rw-r--r--.ci/uhd-pipeline.yml12
3 files changed, 70 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 }}
diff --git a/.ci/uhd-pipeline-pr.yml b/.ci/uhd-pipeline-pr.yml
index 4e66eec06..430b7001a 100644
--- a/.ci/uhd-pipeline-pr.yml
+++ b/.ci/uhd-pipeline-pr.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
@@ -45,6 +54,9 @@ pr:
extends:
template: templates/stages-uhd-pipeline.yml
parameters:
+ build_linux: ${{ parameters.build_linux }}
+ build_mac: ${{ parameters.build_mac }}
+ build_win: ${{ parameters.build_win }}
custom_boost_version: ${{ parameters.custom_boost_version }}
custom_boost_version_url: ${{ parameters.custom_boost_version_url }}
release_binaries: ${{ parameters.release_binaries }}
diff --git a/.ci/uhd-pipeline.yml b/.ci/uhd-pipeline.yml
index 478cb23e6..09b100068 100644
--- a/.ci/uhd-pipeline.yml
+++ b/.ci/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: release_binaries
type: boolean
default: false
@@ -40,6 +49,9 @@ pr: none
extends:
template: templates/stages-uhd-pipeline.yml
parameters:
+ build_linux: ${{ parameters.build_linux }}
+ build_mac: ${{ parameters.build_mac }}
+ build_win: ${{ parameters.build_win }}
release_binaries: ${{ parameters.release_binaries }}
testLength: ${{ parameters.testLength }}
run_streaming_tests: ${{ parameters.run_streaming_tests }}