forked from Archive/PX4-Autopilot
837 lines
39 KiB
Groovy
837 lines
39 KiB
Groovy
#!/usr/bin/env groovy
|
|
|
|
pipeline {
|
|
agent none
|
|
stages {
|
|
stage('Hardware Test') {
|
|
|
|
parallel {
|
|
|
|
stage("px4_fmu-v2_test") {
|
|
stages {
|
|
stage("build px4_fmu-v2_test") {
|
|
agent {
|
|
docker {
|
|
image 'px4io/px4-dev-nuttx:2020-01-13'
|
|
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 px4_fmu-v2_test'
|
|
sh 'make sizes'
|
|
sh 'ccache -s'
|
|
stash includes: 'build/px4_fmu-v2_test/px4_fmu-v2_test.elf', name: 'px4_fmu-v2_test'
|
|
}
|
|
post {
|
|
always {
|
|
sh 'make distclean'
|
|
}
|
|
}
|
|
} // stage build
|
|
stage("test") {
|
|
agent {
|
|
label 'px4_fmu-v2'
|
|
}
|
|
stages {
|
|
stage("flash") {
|
|
steps {
|
|
sh 'export'
|
|
sh 'find /dev/serial'
|
|
unstash 'px4_fmu-v2_test'
|
|
// flash board and watch bootup
|
|
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v2_test/px4_fmu-v2_test.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
|
|
}
|
|
}
|
|
stage("status") {
|
|
steps {
|
|
statusFTDI()
|
|
}
|
|
}
|
|
stage("reset") {
|
|
steps {
|
|
cleanupFTDI();
|
|
}
|
|
}
|
|
}
|
|
options {
|
|
timeout(time: 60, unit: 'MINUTES')
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
stage("px4_fmu-v3_default") {
|
|
stages {
|
|
stage("build px4_fmu-v3_default") {
|
|
agent {
|
|
docker {
|
|
image 'px4io/px4-dev-nuttx:2020-01-13'
|
|
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 px4_fmu-v3_default'
|
|
sh 'make sizes'
|
|
sh 'ccache -s'
|
|
stash includes: 'build/px4_fmu-v3_default/px4_fmu-v3_default.elf', name: 'px4_fmu-v3_default'
|
|
}
|
|
post {
|
|
always {
|
|
sh 'make distclean'
|
|
}
|
|
}
|
|
} // stage build
|
|
stage("test") {
|
|
agent {
|
|
label 'px4_fmu-v3'
|
|
}
|
|
stages {
|
|
stage("flash") {
|
|
steps {
|
|
sh 'export'
|
|
sh 'find /dev/serial'
|
|
unstash 'px4_fmu-v3_default'
|
|
// flash board and watch bootup
|
|
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v3_default/px4_fmu-v3_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 13000"' // generic vtol standard
|
|
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_*`'
|
|
}
|
|
}
|
|
stage("reset") {
|
|
steps {
|
|
cleanupFTDI();
|
|
}
|
|
}
|
|
}
|
|
options {
|
|
timeout(time: 60, unit: 'MINUTES')
|
|
}
|
|
} // stage test
|
|
}
|
|
}
|
|
|
|
stage("px4_fmu-v4_default") {
|
|
stages {
|
|
stage("build px4_fmu-v4_default") {
|
|
agent {
|
|
docker {
|
|
image 'px4io/px4-dev-nuttx:2020-01-13'
|
|
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 px4_fmu-v4_default'
|
|
sh 'make sizes'
|
|
sh 'ccache -s'
|
|
stash includes: 'build/px4_fmu-v4_default/px4_fmu-v4_default.elf', name: 'px4_fmu-v4_default'
|
|
}
|
|
post {
|
|
always {
|
|
sh 'make distclean'
|
|
}
|
|
}
|
|
} // stage build
|
|
stage("test") {
|
|
agent {
|
|
label 'px4_fmu-v4'
|
|
}
|
|
stages {
|
|
stage("flash") {
|
|
steps {
|
|
sh 'export'
|
|
sh 'find /dev/serial'
|
|
unstash 'px4_fmu-v4_default'
|
|
// flash board and watch bootup
|
|
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v4_default/px4_fmu-v4_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_*`'
|
|
}
|
|
}
|
|
stage("reset") {
|
|
steps {
|
|
cleanupFTDI();
|
|
}
|
|
}
|
|
}
|
|
options {
|
|
timeout(time: 60, unit: 'MINUTES')
|
|
}
|
|
} // stage test
|
|
}
|
|
}
|
|
|
|
stage("px4_fmu-v4pro_default") {
|
|
stages {
|
|
stage("build px4_fmu-v4pro_default") {
|
|
agent {
|
|
docker {
|
|
image 'px4io/px4-dev-nuttx:2020-01-13'
|
|
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 px4_fmu-v4pro_default'
|
|
sh 'make sizes'
|
|
sh 'ccache -s'
|
|
stash includes: 'build/px4_fmu-v4pro_default/px4_fmu-v4pro_default.elf', name: 'px4_fmu-v4pro_default'
|
|
}
|
|
post {
|
|
always {
|
|
sh 'make distclean'
|
|
}
|
|
}
|
|
} // stage build
|
|
stage("test") {
|
|
agent {
|
|
label 'px4_fmu-v4pro'
|
|
}
|
|
stages {
|
|
stage("flash") {
|
|
steps {
|
|
sh 'export'
|
|
sh 'find /dev/serial'
|
|
unstash 'px4_fmu-v4pro_default'
|
|
// flash board and watch bootup
|
|
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v4pro_default/px4_fmu-v4pro_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 13000"' // generic vtol standard
|
|
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_*`'
|
|
}
|
|
}
|
|
stage("reset") {
|
|
steps {
|
|
cleanupFTDI();
|
|
}
|
|
}
|
|
}
|
|
options {
|
|
timeout(time: 60, unit: 'MINUTES')
|
|
}
|
|
} // stage test
|
|
}
|
|
}
|
|
|
|
stage("px4_fmu-v5_default") {
|
|
stages {
|
|
stage("build px4_fmu-v5_default") {
|
|
agent {
|
|
docker {
|
|
image 'px4io/px4-dev-nuttx:2020-01-13'
|
|
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 px4_fmu-v5_default'
|
|
sh 'make sizes'
|
|
sh 'ccache -s'
|
|
stash includes: 'build/px4_fmu-v5_default/px4_fmu-v5_default.elf', name: 'px4_fmu-v5_default'
|
|
}
|
|
post {
|
|
always {
|
|
sh 'make distclean'
|
|
}
|
|
}
|
|
} // stage build
|
|
stage("test") {
|
|
agent {
|
|
label 'px4_fmu-v5'
|
|
}
|
|
stages {
|
|
stage("flash") {
|
|
steps {
|
|
sh 'export'
|
|
sh 'find /dev/serial'
|
|
unstash 'px4_fmu-v5_default'
|
|
// flash board and watch bootup
|
|
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v5_default/px4_fmu-v5_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 13000"' // generic vtol standard
|
|
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_*`'
|
|
}
|
|
}
|
|
stage("reset") {
|
|
steps {
|
|
cleanupFTDI();
|
|
}
|
|
}
|
|
}
|
|
options {
|
|
timeout(time: 60, unit: 'MINUTES')
|
|
}
|
|
} // stage test
|
|
}
|
|
}
|
|
|
|
stage("modalai_fc-v1_default") {
|
|
stages {
|
|
stage("build modalai_fc-v1_default") {
|
|
agent {
|
|
docker {
|
|
image 'px4io/px4-dev-nuttx:2020-01-13'
|
|
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 modalai_fc-v1_default'
|
|
sh 'make sizes'
|
|
sh 'ccache -s'
|
|
stash includes: 'build/modalai_fc-v1_default/modalai_fc-v1_default.elf', name: 'modalai_fc-v1_default'
|
|
}
|
|
post {
|
|
always {
|
|
sh 'make distclean'
|
|
}
|
|
}
|
|
} // stage build
|
|
stage("test") {
|
|
agent {
|
|
label 'modalai_fc-v1'
|
|
}
|
|
stages {
|
|
stage("flash") {
|
|
steps {
|
|
sh 'export'
|
|
sh 'find /dev/serial'
|
|
unstash 'modalai_fc-v1_default'
|
|
// flash board and watch bootup
|
|
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/modalai_fc-v1_default/modalai_fc-v1_default.elf'
|
|
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-SEGGER_*` --baudrate 57600'
|
|
}
|
|
}
|
|
stage("configure") {
|
|
steps {
|
|
// configure
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "param set SYS_AUTOSTART 4001"' // generic vtol standardulticopter
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "param save"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "reboot"' // reboot to apply
|
|
}
|
|
}
|
|
stage("status") {
|
|
steps {
|
|
statusSEGGER()
|
|
}
|
|
}
|
|
stage("tests") {
|
|
steps {
|
|
// run tests
|
|
sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-SEGGER_*`'
|
|
}
|
|
}
|
|
stage("reset") {
|
|
steps {
|
|
cleanupSEGGER()
|
|
}
|
|
}
|
|
}
|
|
options {
|
|
timeout(time: 60, unit: 'MINUTES')
|
|
}
|
|
} // stage test
|
|
}
|
|
}
|
|
|
|
stage("holybro_durandal-v1_default") {
|
|
stages {
|
|
stage("build holybro_durandal-v1_default") {
|
|
agent {
|
|
docker {
|
|
image 'px4io/px4-dev-nuttx:2020-01-13'
|
|
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 holybro_durandal-v1_default'
|
|
sh 'make sizes'
|
|
sh 'ccache -s'
|
|
stash includes: 'build/holybro_durandal-v1_default/holybro_durandal-v1_default.elf', name: 'holybro_durandal-v1_default'
|
|
}
|
|
post {
|
|
always {
|
|
sh 'make distclean'
|
|
}
|
|
}
|
|
} // stage build
|
|
stage("test") {
|
|
agent {
|
|
label 'holybro_durandal-v1'
|
|
}
|
|
stages {
|
|
stage("flash") {
|
|
steps {
|
|
sh 'export'
|
|
sh 'find /dev/serial'
|
|
unstash 'holybro_durandal-v1_default'
|
|
// flash board and watch bootup
|
|
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/holybro_durandal-v1_default/holybro_durandal-v1_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 13000"' // generic vtol standard
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader
|
|
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_*`'
|
|
}
|
|
}
|
|
stage("reset") {
|
|
steps {
|
|
cleanupFTDI();
|
|
}
|
|
}
|
|
}
|
|
options {
|
|
timeout(time: 60, unit: 'MINUTES')
|
|
}
|
|
} // stage test
|
|
}
|
|
}
|
|
|
|
stage("holybro_durandal-v1_stackcheck") {
|
|
stages {
|
|
stage("build holybro_durandal-v1_stackcheck") {
|
|
agent {
|
|
docker {
|
|
image 'px4io/px4-dev-nuttx:2020-01-13'
|
|
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 holybro_durandal-v1_stackcheck'
|
|
sh 'make sizes'
|
|
sh 'ccache -s'
|
|
stash includes: 'build/holybro_durandal-v1_stackcheck/holybro_durandal-v1_stackcheck.elf', name: 'holybro_durandal-v1_stackcheck'
|
|
}
|
|
post {
|
|
always {
|
|
sh 'make distclean'
|
|
}
|
|
}
|
|
} // stage build
|
|
stage("test") {
|
|
agent {
|
|
label 'holybro_durandal-v1'
|
|
}
|
|
stages {
|
|
stage("flash") {
|
|
steps {
|
|
sh 'export'
|
|
sh 'find /dev/serial'
|
|
unstash 'holybro_durandal-v1_stackcheck'
|
|
// flash board and watch bootup
|
|
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/holybro_durandal-v1_stackcheck/holybro_durandal-v1_stackcheck.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 13000"' // generic vtol standard
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader
|
|
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_*`'
|
|
}
|
|
}
|
|
stage("stop modules") {
|
|
steps {
|
|
// manually stop everything
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "commander stop"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "mavlink stop-all"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "ekf2 stop"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "navigator stop"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "dataman stop"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "logger stop"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "fmu stop"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "px4io stop"'
|
|
}
|
|
}
|
|
stage("reset") {
|
|
steps {
|
|
cleanupFTDI();
|
|
}
|
|
}
|
|
}
|
|
options {
|
|
timeout(time: 60, unit: 'MINUTES')
|
|
}
|
|
} // stage test
|
|
}
|
|
}
|
|
|
|
stage("nxp_fmuk66-v3_default") {
|
|
stages {
|
|
stage("build nxp_fmuk66-v3_default") {
|
|
agent {
|
|
docker {
|
|
image 'px4io/px4-dev-nuttx:2020-01-13'
|
|
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 nxp_fmuk66-v3_default'
|
|
sh 'make sizes'
|
|
sh 'ccache -s'
|
|
stash includes: 'build/nxp_fmuk66-v3_default/nxp_fmuk66-v3_default.elf', name: 'nxp_fmuk66-v3_default'
|
|
}
|
|
post {
|
|
always {
|
|
sh 'make distclean'
|
|
}
|
|
}
|
|
} // stage build
|
|
stage("test") {
|
|
agent {
|
|
label 'nxp_fmuk66-v3'
|
|
}
|
|
stages {
|
|
stage("flash") {
|
|
steps {
|
|
sh 'export'
|
|
sh 'find /dev/serial'
|
|
unstash 'nxp_fmuk66-v3_default'
|
|
// flash board and watch bootup
|
|
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/nxp_fmuk66-v3_default/nxp_fmuk66-v3_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_*`'
|
|
}
|
|
}
|
|
stage("reset") {
|
|
steps {
|
|
cleanupFTDI();
|
|
}
|
|
}
|
|
}
|
|
options {
|
|
timeout(time: 60, unit: 'MINUTES')
|
|
}
|
|
} // stage test
|
|
}
|
|
}
|
|
|
|
} // parallel
|
|
} // stage Hardware Test
|
|
} // stages
|
|
environment {
|
|
CCACHE_DIR = '/tmp/ccache'
|
|
CI = true
|
|
}
|
|
options {
|
|
buildDiscarder(logRotator(numToKeepStr: '10', artifactDaysToKeepStr: '20'))
|
|
timeout(time: 60, unit: 'MINUTES')
|
|
}
|
|
}
|
|
|
|
void statusFTDI() {
|
|
// run logger
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "logger on"'
|
|
// status commands
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "adc test"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "commander check"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "commander status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "dataman status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "dmesg"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "fmu status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "free"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "listener adc_report"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "listener battery_status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "listener logger_status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "listener sensor_accel"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "listener sensor_accel_fifo"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "listener sensor_accel_integrated"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "listener sensor_accel_status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "listener sensor_baro"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "listener sensor_gyro"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "listener sensor_gyro_fifo"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "listener sensor_gyro_integrated"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "listener sensor_gyro_status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "listener sensor_mag"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "listener servorail_status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "listener system_power"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "logger status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "ls /"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "ls /dev"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "ls /etc"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "ls /obj"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "ls /proc"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "mavlink status streams"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "mavlink status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "mtd status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param show"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "perf latency"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "perf"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "ps"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "pwm info"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "sd_bench -r 2"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "sensors status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "top once"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "uorb status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "uorb top -1"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "ver all"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "work_queue status"'
|
|
}
|
|
|
|
void statusSEGGER() {
|
|
// run logger
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "logger on"'
|
|
// status commands
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "adc test"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "commander check"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "commander status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "dataman status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "dmesg"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "fmu status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "free"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "listener adc_report"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "listener battery_status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "listener logger_status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "listener sensor_accel"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "listener sensor_accel_fifo"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "listener sensor_accel_integrated"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "listener sensor_accel_status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "listener sensor_baro"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "listener sensor_gyro"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "listener sensor_gyro_fifo"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "listener sensor_gyro_integrated"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "listener sensor_gyro_status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "listener sensor_mag"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "listener servorail_status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "listener system_power"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "logger status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "ls /"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "ls /dev"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "ls /etc"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "ls /obj"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "ls /proc"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "mavlink status streams"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "mavlink status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "mtd status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "param show"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "param status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "perf latency"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "perf"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "ps"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "pwm info"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "sd_bench -r 2"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "sensors status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "top once"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "uorb status"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "uorb top -1"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "ver all"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "work_queue status"'
|
|
}
|
|
|
|
void cleanupFTDI() {
|
|
// wipe sdcard
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "commander stop"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "mavlink stop-all"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "navigator stop"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "dataman stop"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "logger off"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "umount /fs/microsd"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "mkfatfs /dev/mmcsd0"'
|
|
|
|
// drop any uncommited hardfaults
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "hardfault_log rearm"'
|
|
|
|
// wipe parameters
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "mtd erase"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param reset"'
|
|
|
|
// disable buzzer
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set CBRK_BUZZER 782097"'
|
|
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 "param status"'
|
|
|
|
// reboot
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "reboot"'
|
|
}
|
|
|
|
void cleanupSEGGER() {
|
|
// wipe sdcard
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "commander stop"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "mavlink stop-all"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "navigator stop"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "dataman stop"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "logger off"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "umount /fs/microsd"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "mkfatfs /dev/mmcsd0"'
|
|
|
|
// drop any uncommited hardfaults
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "hardfault_log rearm"'
|
|
|
|
// wipe parameters
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "mtd erase"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "param reset"'
|
|
|
|
// disable buzzer
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "param set CBRK_BUZZER 782097"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "param save"'
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "param status"'
|
|
|
|
// reboot
|
|
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "reboot"'
|
|
}
|