uhd/.ci/uhd-hardware-test-weekly-pipeline.yml
2026-10-06 08:51:20 +02:00

170 lines
5.5 KiB
YAML

trigger: none
schedules:
- cron: '0 13 * * 6'
displayName: Weekly Test
branches:
include:
- master
always: true
pr: none
parameters:
- name: fpga_imgs_source
type: string
displayName: FPGA Images Source
values:
- 'Filesystem/Images Downloader'
- 'Mono Pipeline'
- 'Mono Pipeline PR'
- 'FPGA Pipeline'
default: 'Mono Pipeline'
- name: testLength
type: string
values:
- 'smoke'
- 'full'
- 'stress'
default: 'smoke'
- name: selected_streaming_tests
type: string
displayName: Streaming Tests Multi-Select (comma-separated)
default: 'B206,B210,X310_XG,X410_CG_400,X410_UC_200,X440_CG_400,X440_CG_1600'
variables:
- name: uhdFpgaArtifactSource
${{ if eq(parameters.fpga_imgs_source, 'FPGA Pipeline') }}:
value: uhd_fpga_pipeline
${{ elseif eq(parameters.fpga_imgs_source, 'Mono Pipeline PR') }}:
value: uhd_mono_pipeline_pr
${{ else }}:
value: uhd_mono_pipeline
- name: fpga_imgs_source
${{ if contains(parameters.fpga_imgs_source, 'Pipeline') }}:
value: 'Pipeline'
${{ else }}:
value: 'Filesystem'
resources:
pipelines:
- pipeline: uhd_mono_pipeline
source: 'uhddev mono pipeline'
branch: master
- pipeline: uhd_mono_pipeline_pr
source: 'uhddev mono pipeline PR'
branch: master
- pipeline: usrp-kas-pipeline
source: 'usrp-kas'
branch: scarthgap
# Keep this for now, but it should be removed once the mono pipeline is
# fully populated.
- pipeline: uhd_fpga_pipeline
source: 'uhddev fpga pipeline'
branch: master
repositories:
- repository: meta-ettus
type: github
name: EttusResearch/meta-ettus-dev
endpoint: EttusResearch
ref: scarthgap
- repository: gr-ettus
type: github
name: EttusResearch/gr-ettusdev
endpoint: EttusResearch
ref: maint-3.8-uhd4.0
- repository: ettus-rts
type: github
endpoint: EttusResearch
name: EttusResearch/ettus-rts
ref: master
stages:
- stage: test_uhd_devtest_stage
displayName: Test UHD Devtest
dependsOn: []
jobs:
- template: templates/tests/job-uhd-x410-hardware-tests-sdr-test0.yml
parameters:
uhdArtifactSource: uhd_mono_pipeline
uhdFpgaArtifactSource: ${{ variables.uhdFpgaArtifactSource }}
fpga_imgs_source: ${{ variables.fpga_imgs_source }}
- template: templates/tests/job-uhd-x420-hardware-tests-s175.yml
parameters:
uhdArtifactSource: uhd_mono_pipeline
uhdFpgaArtifactSource: ${{ variables.uhdFpgaArtifactSource }}
fpga_imgs_source: ${{ variables.fpga_imgs_source }}
testLength: ${{ parameters.testLength }}
runPyTest: false
runPyTestNonRF: true
runDevTest: true
runSystemImageTest: true
- template: templates/tests/job-uhd-x440-hardware-tests-sdr-test0.yml
parameters:
uhdArtifactSource: uhd_mono_pipeline
uhdFpgaArtifactSource: ${{ variables.uhdFpgaArtifactSource }}
fpga_imgs_source: ${{ variables.fpga_imgs_source }}
- template: templates/job-uhd-devtest-rhombus.yml
parameters:
uhdSrcDir: $(Build.SourcesDirectory)
uhdArtifactSource: uhd_mono_pipeline
uhdFpgaArtifactSource: ${{ variables.uhdFpgaArtifactSource }}
fpga_imgs_source: ${{ variables.fpga_imgs_source }}
- stage: test_streaming_stage
displayName: Test UHD Streaming
dependsOn: []
jobs:
- template: templates/job-uhd-streaming-tests.yml
parameters:
uhdSrcDir: $(Build.SourcesDirectory)/uhddev
uhdArtifactSource: uhd_mono_pipeline
uhdFpgaArtifactSource: ${{ variables.uhdFpgaArtifactSource }}
testLength: ${{ parameters.testLength }}
selectedTests: ${{ split(replace(parameters.selected_streaming_tests, ' ', ''), ',') }}
- stage: test_rf_tests_stage
displayName: Test UHD RF Tests
dependsOn: []
jobs:
- template: templates/job-uhd-rf-tests-pebbles.yml
parameters:
uhdSrcDir: $(Build.SourcesDirectory)/uhddev
uhdArtifactSource: uhd_mono_pipeline
uhdFpgaArtifactSource: ${{ variables.uhdFpgaArtifactSource }}
fpga_imgs_source: ${{ variables.fpga_imgs_source }}
- template: templates/tests/job-uhd-x410-hardware-tests-pebbles.yml
parameters:
uhdArtifactSource: uhd_mono_pipeline
uhdFpgaArtifactSource: ${{ variables.uhdFpgaArtifactSource }}
fpga_imgs_source: ${{ variables.fpga_imgs_source }}
runX410X4400RfSubset: true
testLength: ${{ parameters.testLength }}
- template: templates/tests/job-uhd-x420-hardware-tests-s175.yml
parameters:
uhdArtifactSource: uhd_mono_pipeline
uhdFpgaArtifactSource: ${{ variables.uhdFpgaArtifactSource }}
fpga_imgs_source: ${{ variables.fpga_imgs_source }}
testLength: ${{ parameters.testLength }}
runPyTest: true
runPyTestNonRF: false
runDevTest: false
runSystemImageTest: false
forceIQCorrections: true
- template: templates/tests/job-uhd-x440-hardware-tests-pebbles.yml
parameters:
uhdArtifactSource: uhd_mono_pipeline
uhdFpgaArtifactSource: ${{ variables.uhdFpgaArtifactSource }}
fpga_imgs_source: ${{ variables.fpga_imgs_source }}
testLength: ${{ parameters.testLength }}
- stage: test_uhd_phase_tests
displayName: Test UHD Phase Tests
dependsOn: []
jobs:
- template: templates/tests/job-uhd-x440-hardware-tests-saison.yml
parameters:
uhdArtifactSource: uhd_mono_pipeline
uhdFpgaArtifactSource: ${{ variables.uhdFpgaArtifactSource }}
fpga_imgs_source: ${{ variables.fpga_imgs_source }}
testLength: ${{ parameters.testLength }}
extra_rf_test_args: --test_selector test_rx_phase_coherence.py test_tx_phase_coherence.py