uhd/.ci/fpga/templates/job-run-testbenches.yml

53 lines
1.5 KiB
YAML

#
# Copyright 2022 Ettus Research, a National Instruments Brand
#
# SPDX-License-Identifier: LGPL-3.0-or-later
#
# Description:
#
# This template is used to run all the testbenches using the requested simulator.
#
parameters:
### Required parameters
# Simulator to use (e.g. modelsim, xsim, etc.)
- name: simulator
type: string
jobs:
- job:
displayName: "${{ parameters.simulator }} Simulation"
timeoutInMinutes: 360
pool:
name: Drivers-NIBuildFarm-RFMIBUILD
demands:
- Agent.OS -equals Linux
variables:
- group: sdr-pipeline-vars
- name: excludes_file
value: ${{ iif(eq(parameters.simulator, 'xsim'), 'testbenches', parameters.simulator) }}
steps:
- template: setup_steps.yml
parameters:
includeAdditionalSources: true
- bash: |
source $(Build.SourcesDirectory)/uhddev/.ci/fpga/scripts/run_setup.sh ./top/x300
echo "---- Run testbenches ----"
pushd ./tools/utils
python3 -m pip install --upgrade pip
pip3 install -r requirements.txt
python3 ./run_testbenches.py --logged --simulator ${{ parameters.simulator }} --excludes=${{ variables.excludes_file }}.excludes -j4 --report $(Build.ArtifactStagingDirectory)/junit.xml run
popd
workingDirectory: uhddev/fpga/usrp3
displayName: "Run Testbenches"
- task: PublishTestResults@2
inputs:
testResultsFormat: 'JUnit'
testResultsFiles: 'junit.xml'
searchFolder: $(Build.ArtifactStagingDirectory)
failTaskOnFailedTests: True
condition: succeededOrFailed()