uhd/.ci/uhd-hardware-test-dev.yml
2025-03-25 07:50:04 +01:00

308 lines
8.4 KiB
YAML

trigger: none
pr: none
parameters:
- name: run_x410_embedded_tests
type: boolean
displayName: Run X410 Embedded Tests
default: false
- name: run_x440_embedded_tests
type: boolean
displayName: Run X440 Embedded Tests
default: false
- name: run_streaming_tests
type: boolean
displayName: Run Streaming Tests
default: false
- name: run_x440_streaming_tests
type: boolean
displayName: Run X440 Streaming Tests
default: false
- name: run_devtests
type: boolean
displayName: Run devtests
default: false
- name: run_n310_rf_tests
type: boolean
displayName: Run N310 RF tests
default: false
- name: run_x410_rf_tests
type: boolean
displayName: Run X410 RF tests
default: false
- name: run_x440_rf_tests
type: boolean
displayName: Run X440 RF tests
default: false
- name: run_x440_phase_tests
type: boolean
displayName: Run X440 Phase tests
default: false
- name: fpga_imgs_source
type: string
values:
- 'Filesystem/Images Downloader'
- 'Mono Pipeline'
- 'Mono Pipeline PR'
- 'FPGA Pipeline'
displayName: FPGA Images Source
default: 'Mono Pipeline'
- name: extra_rf_test_args
type: string
displayName: Extra UHD RF ATS Arguments (for N310 and X4x0 runs)
default: ' '
- name: testLength
type: string
values:
- 'smoke'
- 'full'
- 'stress'
- name: dpdkDirs
type: object
default:
- '/opt/dpdk-19.11'
- '/opt/dpdk-23.11'
- name: x300_fpga_matrix
type: object
default:
X300_XG:
run: true
X300_HG:
run: true
- name: x310_fpga_matrix
type: object
default:
X310_XG:
run: true
X310_HG:
run: true
- name: n310_fpga_matrix
type: object
default:
N310_XG:
run: true
N310_HG:
run: true
- name: n320_fpga_matrix
type: object
default:
N320_XG:
run: true
N320_HG:
run: true
N320_XQ:
run: true
- name: x410_fpga_matrix
type: object
default:
X410_X4_200:
run: true
X410_CG_400:
run: true
X410_UC_200:
run: true
- name: x440_fpga_matrix
type: object
default:
X440_X4_400:
run: true
X440_CG_400:
run: true
X440_CG_1600:
run: true
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: kirkstone
# 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: kirkstone
- 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
- repository: hwtools
type: git
ref: refs/tags/pip/hwsetup/0.1/0.1.3
name: DevCentral/hwtools
stages:
- stage: analyze_changeset
displayName: Analyze Changeset
jobs:
- job: analyze_changeset
steps:
- script: echo "Dummy Changeset Analysis"
- template: fpga/templates/job-build-fpga-all.yml
parameters:
fpga_imgs_source: ${{ parameters.fpga_imgs_source }}
- stage: test_uhd_x410_embedded_stage
displayName: Test X410 Embedded UHD
dependsOn: provide_x410_fpga_images_stage
condition: ${{ parameters.run_x410_embedded_tests }}
jobs:
- template: templates/tests/job-uhd-x410-hardware-tests-sdr-test0.yml
parameters:
uhdArtifactSource: uhd_mono_pipeline
${{ if eq(parameters.fpga_imgs_source, 'Filesystem/Images Downloader') }}:
fpga_imgs_source: 'Filesystem'
${{ else }}:
fpga_imgs_source: 'Pipeline'
- stage: test_uhd_x440_embedded_stage
displayName: Test X440 Embedded UHD
dependsOn: provide_x440_fpga_images_stage
condition: ${{ parameters.run_x440_embedded_tests }}
jobs:
- template: templates/tests/job-uhd-x440-hardware-tests-sdr-test0.yml
parameters:
uhdArtifactSource: uhd_mono_pipeline
${{ if eq(parameters.fpga_imgs_source, 'Filesystem/Images Downloader') }}:
fpga_imgs_source: 'Filesystem'
${{ else }}:
fpga_imgs_source: 'Pipeline'
- stage: test_streaming_stage
displayName: Test UHD Streaming
dependsOn:
- provide_x300_fpga_images_stage
- provide_x310_fpga_images_stage
- provide_x410_fpga_images_stage
condition: ${{ parameters.run_streaming_tests }}
jobs:
- template: templates/job-uhd-streaming-tests-beauty.yml
parameters:
testOS: ubuntu2004
uhdSrcDir: $(Build.SourcesDirectory)/uhddev
uhdArtifactSource: uhd_mono_pipeline
testLength: ${{ parameters.testLength }}
dpdkDirs: '${{ parameters.dpdkDirs }}'
- stage: test_x440_streaming_stage
displayName: Test X440 Streaming
dependsOn: provide_x440_fpga_images_stage
condition: ${{ parameters.run_x440_streaming_tests }}
jobs:
- template: templates/job-uhd-streaming-tests-x440.yml
parameters:
testOS: ubuntu2204
uhdSrcDir: $(Build.SourcesDirectory)/uhddev
uhdArtifactSource: uhd_mono_pipeline
testLength: ${{ parameters.testLength }}
dpdkDirs: '${{ parameters.dpdkDirs }}'
- stage: test_uhd_devtest
displayName: Test UHD Devtest
dependsOn:
- provide_x440_fpga_images_stage
- provide_x300_fpga_images_stage
- provide_x310_fpga_images_stage
- provide_n310_fpga_images_stage
- provide_n320_fpga_images_stage
- provide_e320_fpga_images_stage
condition: ${{ parameters.run_devtests }}
jobs:
- template: templates/job-uhd-devtest-rhombus.yml
parameters:
testOS: ubuntu2004
uhdSrcDir: $(Build.SourcesDirectory)
uhdArtifactSource: uhd_mono_pipeline
${{ if contains(parameters.fpga_imgs_source, 'Pipeline') }}:
fpga_imgs_source: 'Pipeline'
${{ else }}:
fpga_imgs_source: 'Filesystem'
- stage: test_n310_rf_tests
displayName: Run N310 RF tests
dependsOn:
- provide_n310_fpga_images_stage
condition: ${{ parameters.run_n310_rf_tests }}
jobs:
- template: templates/job-uhd-rf-tests-pebbles.yml
parameters:
testOS: ubuntu1804
uhdSrcDir: $(Build.SourcesDirectory)/uhddev
uhdArtifactSource: uhd_mono_pipeline
${{ if contains(parameters.fpga_imgs_source, 'Pipeline') }}:
fpga_imgs_source: 'Pipeline'
${{ else }}:
fpga_imgs_source: 'Filesystem'
extra_rf_test_args: ${{ parameters.extra_rf_test_args }}
- stage: test_x410_rf_tests
displayName: Run X410 RF tests
dependsOn:
- provide_x410_fpga_images_stage
condition: ${{ parameters.run_x410_rf_tests }}
jobs:
- template: templates/tests/job-uhd-x410-hardware-tests-pebbles.yml
parameters:
uhdArtifactSource: uhd_mono_pipeline
${{ if contains(parameters.fpga_imgs_source, 'Pipeline') }}:
fpga_imgs_source: 'Pipeline'
${{ else }}:
fpga_imgs_source: 'Filesystem'
extra_rf_test_args: ${{ parameters.extra_rf_test_args }}
testLength: ${{ parameters.testLength }}
- stage: test_x440_rf_tests
displayName: Run X440 RF tests
dependsOn:
- provide_x440_fpga_images_stage
condition: ${{ parameters.run_x440_rf_tests }}
jobs:
- template: templates/tests/job-uhd-x440-hardware-tests-pebbles.yml
parameters:
uhdArtifactSource: uhd_mono_pipeline
${{ if contains(parameters.fpga_imgs_source, 'Pipeline') }}:
fpga_imgs_source: 'Pipeline'
${{ else }}:
fpga_imgs_source: 'Filesystem'
extra_rf_test_args: ${{ parameters.extra_rf_test_args }}
testLength: ${{ parameters.testLength }}
- stage: test_x440_phase_tests
displayName: Run X440 Phase tests
dependsOn:
- provide_x440_fpga_images_stage
condition: ${{ parameters.run_x440_phase_tests }}
jobs:
- template: templates/tests/job-uhd-x440-hardware-tests-saison.yml
parameters:
uhdArtifactSource: uhd_mono_pipeline
${{ if contains(parameters.fpga_imgs_source, 'Pipeline') }}:
fpga_imgs_source: 'Pipeline'
${{ else }}:
fpga_imgs_source: 'Filesystem'
${{ if contains(parameters['extra_rf_test_args'], 'test_selector') }}:
extra_rf_test_args: ${{ parameters.extra_rf_test_args }}
${{ else }}:
extra_rf_test_args: ${{ parameters.extra_rf_test_args }} --test_selector test_rx_phase_coherence.py test_tx_phase_coherence.py
testLength: ${{ parameters.testLength }}