diff --git a/.ci/Jenkinsfile-hardware b/.ci/Jenkinsfile-hardware index 8d2910010f..c315170b2c 100644 --- a/.ci/Jenkinsfile-hardware +++ b/.ci/Jenkinsfile-hardware @@ -739,6 +739,79 @@ pipeline { } } + stage("mro_ctrl-zero-f7_default") { + stages { + stage("build mro_ctrl-zero-f7_default") { + agent { + docker { + image 'px4io/px4-dev-nuttx-bionic:2020-04-01' + args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' + } + } + steps { + sh 'export' + sh 'make distclean' + sh 'ccache -s' + sh 'git fetch --tags' + sh 'make mro_ctrl-zero-f7_default' + sh 'make sizes' + sh 'ccache -s' + stash includes: 'build/mro_ctrl-zero-f7_default/mro_ctrl-zero-f7_default.elf', name: 'mro_ctrl-zero-f7_default' + } + post { + always { + sh 'make distclean' + } + } + } // stage build + stage("test") { + agent { + label 'mro_ctrl-zero-f7' + } + stages { + stage("flash") { + steps { + sh 'export' + sh 'find /dev/serial' + unstash 'mro_ctrl-zero-f7_default' + // flash board and watch bootup + sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/mro_ctrl-zero-f7_default/mro_ctrl-zero-f7_default.elf' + sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-FTDI_*` --baudrate 57600' + } + } + stage("configure") { + steps { + // configure + sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer + sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_AUTOSTART 4001"' // generic multicopter + sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param save"' + sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "reboot"' // reboot to apply + } + } + stage("status") { + steps { + statusFTDI() + } + } + stage("tests") { + steps { + // run tests + sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-FTDI_*` || true' // ignore failures for now (flaky console on test rack) + } + } + stage("reset") { + steps { + cleanupFTDI(); + } + } + } + options { + timeout(time: 60, unit: 'MINUTES') + } + } // stage test + } + } + } // parallel } // stage Hardware Test } // stages