Showing
72 changed files
with
0 additions
and
7632 deletions
code/modify/.ackrc
deleted
100644 → 0
1 | ---ignore-dir=Documentation |
code/modify/.ci/Jenkinsfile-compile
deleted
100644 → 0
1 | -#!/usr/bin/env groovy | ||
2 | - | ||
3 | -pipeline { | ||
4 | - agent none | ||
5 | - stages { | ||
6 | - | ||
7 | - stage('Build') { | ||
8 | - steps { | ||
9 | - script { | ||
10 | - def build_nodes = [:] | ||
11 | - def docker_images = [ | ||
12 | - armhf: "px4io/px4-dev-armhf:2021-04-29", | ||
13 | - arm64: "px4io/px4-dev-aarch64:2021-04-29", | ||
14 | - base: "px4io/px4-dev-base-bionic:2021-04-29", | ||
15 | - nuttx: "px4io/px4-dev-nuttx-focal:2021-04-29", | ||
16 | - snapdragon: "lorenzmeier/px4-dev-snapdragon:2020-04-01" | ||
17 | - ] | ||
18 | - | ||
19 | - def armhf_builds = [ | ||
20 | - target: ["beaglebone_blue_default", "emlid_navio2_default", "px4_raspberrypi_default", "scumaker_pilotpi_default"], | ||
21 | - image: docker_images.armhf, | ||
22 | - archive: false | ||
23 | - ] | ||
24 | - | ||
25 | - def arm64_builds = [ | ||
26 | - target: ["scumaker_pilotpi_arm64"], | ||
27 | - image: docker_images.arm64, | ||
28 | - archive: false | ||
29 | - ] | ||
30 | - | ||
31 | - def base_builds = [ | ||
32 | - target: ["px4_sitl_rtps"], | ||
33 | - image: docker_images.base, | ||
34 | - archive: false | ||
35 | - ] | ||
36 | - | ||
37 | - def nuttx_builds_archive = [ | ||
38 | - target: [ | ||
39 | - "airmind_mindpx-v2_default", | ||
40 | - "ark_can-flow_canbootloader", | ||
41 | - "ark_can-flow_default", | ||
42 | - "av_x-v1_default", | ||
43 | - "bitcraze_crazyflie_default", | ||
44 | - "bitcraze_crazyflie21_default", | ||
45 | - "cuav_can-gps-v1_canbootloader", | ||
46 | - "cuav_can-gps-v1_default", | ||
47 | - "cuav_nora_default", | ||
48 | - "cuav_x7pro_default", | ||
49 | - "cubepilot_cubeorange_default", | ||
50 | - "cubepilot_cubeyellow_default", | ||
51 | - "freefly_can-rtk-gps_canbootloader", | ||
52 | - "freefly_can-rtk-gps_default", | ||
53 | - "holybro_can-gps-v1_canbootloader", | ||
54 | - "holybro_can-gps-v1_default", | ||
55 | - "holybro_durandal-v1_default", | ||
56 | - "holybro_kakutef7_default", | ||
57 | - "holybro_pix32v5_default", | ||
58 | - "modalai_fc-v1_default", | ||
59 | - "modalai_fc-v1_rtps", | ||
60 | - "modalai_fc-v2_default", | ||
61 | - "mro_ctrl-zero-f7_default", | ||
62 | - "mro_ctrl-zero-f7-oem_default", | ||
63 | - "mro_ctrl-zero-h7_default", | ||
64 | - "mro_ctrl-zero-h7-oem_default", | ||
65 | - "mro_pixracerpro_default", | ||
66 | - "mro_x21-777_default", | ||
67 | - "mro_x21_default", | ||
68 | - "nxp_fmuk66-e_default", | ||
69 | - "nxp_fmuk66-e_rtps", | ||
70 | - "nxp_fmuk66-e_socketcan", | ||
71 | - "nxp_fmuk66-v3_default", | ||
72 | - "nxp_fmuk66-v3_rtps", | ||
73 | - "nxp_fmuk66-v3_socketcan", | ||
74 | - "nxp_fmurt1062-v1_default", | ||
75 | - "nxp_ucans32k146_default", | ||
76 | - "nxp_ucans32k146_canbootloader", | ||
77 | - "omnibus_f4sd_default", | ||
78 | - "px4_fmu-v2_default", | ||
79 | - "px4_fmu-v2_fixedwing", | ||
80 | - "px4_fmu-v2_multicopter", | ||
81 | - "px4_fmu-v2_rover", | ||
82 | - "px4_fmu-v3_default", | ||
83 | - "px4_fmu-v4_cannode", | ||
84 | - "px4_fmu-v4_default", | ||
85 | - "px4_fmu-v4pro_default", | ||
86 | - "px4_fmu-v5_ctrlalloc", | ||
87 | - "px4_fmu-v5_debug", | ||
88 | - "px4_fmu-v5_default", | ||
89 | - "px4_fmu-v5_fixedwing", | ||
90 | - "px4_fmu-v5_multicopter", | ||
91 | - "px4_fmu-v5_optimized", | ||
92 | - "px4_fmu-v5_rover", | ||
93 | - "px4_fmu-v5_rtps", | ||
94 | - "px4_fmu-v5_stackcheck", | ||
95 | - "px4_fmu-v5_uavcanv0periph", | ||
96 | - "px4_fmu-v5_uavcanv1", | ||
97 | - "px4_fmu-v5x_base_phy_DP83848C", | ||
98 | - "px4_fmu-v5x_default", | ||
99 | - "px4_fmu-v6u_default", | ||
100 | - "px4_fmu-v6x_default", | ||
101 | - "px4_io-v2_default", | ||
102 | - "spracing_h7extreme_default", | ||
103 | - "uvify_core_default" | ||
104 | - ], | ||
105 | - image: docker_images.nuttx, | ||
106 | - archive: true | ||
107 | - ] | ||
108 | - | ||
109 | - def snapdragon_builds = [ | ||
110 | - target: ["atlflight_eagle_qurt", "atlflight_eagle_default"], | ||
111 | - image: docker_images.snapdragon, | ||
112 | - archive: false | ||
113 | - ] | ||
114 | - | ||
115 | - def docker_builds = [ | ||
116 | - armhf_builds, base_builds, nuttx_builds_archive//, snapdragon_builds | ||
117 | - ] | ||
118 | - | ||
119 | - for (def build_type = 0; build_type < docker_builds.size(); build_type++) { | ||
120 | - for (def build_target = 0; build_target < docker_builds[build_type].target.size(); build_target++) { | ||
121 | - build_nodes.put(docker_builds[build_type].target[build_target], | ||
122 | - createBuildNode(docker_builds[build_type].archive, docker_builds[build_type].image, docker_builds[build_type].target[build_target]) | ||
123 | - ) | ||
124 | - } | ||
125 | - } | ||
126 | - | ||
127 | - parallel build_nodes | ||
128 | - | ||
129 | - } // script | ||
130 | - } // steps | ||
131 | - } // stage Build | ||
132 | - | ||
133 | - // TODO: actually upload artifacts to S3 | ||
134 | - // stage('S3 Upload') { | ||
135 | - // agent { | ||
136 | - // docker { image 'px4io/px4-dev-base-focal:2021-04-29' } | ||
137 | - // } | ||
138 | - // options { | ||
139 | - // skipDefaultCheckout() | ||
140 | - // } | ||
141 | - // when { | ||
142 | - // anyOf { | ||
143 | - // branch 'master' | ||
144 | - // branch 'beta' | ||
145 | - // branch 'stable' | ||
146 | - // branch 'pr-jenkins' // for testing | ||
147 | - // } | ||
148 | - // } | ||
149 | - // steps { | ||
150 | - // sh 'echo "uploading to S3"' | ||
151 | - // } | ||
152 | - // } | ||
153 | - | ||
154 | - } // stages | ||
155 | - environment { | ||
156 | - CCACHE_DIR = '/tmp/ccache' | ||
157 | - CI = true | ||
158 | - } | ||
159 | - options { | ||
160 | - buildDiscarder(logRotator(numToKeepStr: '5', artifactDaysToKeepStr: '14')) | ||
161 | - timeout(time: 90, unit: 'MINUTES') | ||
162 | - } | ||
163 | -} | ||
164 | - | ||
165 | -def createBuildNode(Boolean archive, String docker_image, String target) { | ||
166 | - return { | ||
167 | - | ||
168 | - // TODO: fix the snapdragon image | ||
169 | - bypass_entrypoint = '' | ||
170 | - if (docker_image == 'lorenzmeier/px4-dev-snapdragon:2020-04-01') { | ||
171 | - bypass_entrypoint = ' --entrypoint=""' | ||
172 | - } | ||
173 | - | ||
174 | - node { | ||
175 | - docker.withRegistry('https://registry.hub.docker.com', 'docker_hub_dagar') { | ||
176 | - docker.image(docker_image).inside('-e CCACHE_BASEDIR=${WORKSPACE} -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' + bypass_entrypoint) { | ||
177 | - stage(target) { | ||
178 | - try { | ||
179 | - sh('export') | ||
180 | - checkout(scm) | ||
181 | - sh('make distclean') | ||
182 | - sh('git fetch --tags') | ||
183 | - sh('ccache -s') | ||
184 | - sh('make ' + target) | ||
185 | - sh('ccache -s') | ||
186 | - sh('make sizes') | ||
187 | - if (archive) { | ||
188 | - archiveArtifacts(allowEmptyArchive: false, artifacts: 'build/*/*.px4, build/*/*.elf, build/*/*.bin', fingerprint: true, onlyIfSuccessful: true) | ||
189 | - } | ||
190 | - sh('make ' + target + ' package') | ||
191 | - archiveArtifacts(allowEmptyArchive: true, artifacts: 'build/*/*.tar.bz2', fingerprint: true, onlyIfSuccessful: true) | ||
192 | - archiveArtifacts(allowEmptyArchive: true, artifacts: 'build/*/*.deb', fingerprint: true, onlyIfSuccessful: true) | ||
193 | - } | ||
194 | - catch (exc) { | ||
195 | - throw (exc) | ||
196 | - } | ||
197 | - finally { | ||
198 | - sh('make distclean') | ||
199 | - } | ||
200 | - } | ||
201 | - } | ||
202 | - } | ||
203 | - } | ||
204 | - } | ||
205 | -} |
code/modify/.ci/Jenkinsfile-hardware
deleted
100644 → 0
1 | -#!/usr/bin/env groovy | ||
2 | - | ||
3 | -pipeline { | ||
4 | - agent none | ||
5 | - stages { | ||
6 | - stage('Hardware Test') { | ||
7 | - | ||
8 | - parallel { | ||
9 | - | ||
10 | - stage("cubepilot_cubeorange_test") { | ||
11 | - stages { | ||
12 | - stage("build cubepilot_cubeorange_test") { | ||
13 | - agent { | ||
14 | - docker { | ||
15 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
16 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
17 | - } | ||
18 | - } | ||
19 | - steps { | ||
20 | - checkout scm | ||
21 | - sh 'export' | ||
22 | - sh 'make distclean' | ||
23 | - sh 'ccache -s' | ||
24 | - sh 'git fetch --tags' | ||
25 | - sh 'make cubepilot_cubeorange_test' | ||
26 | - sh 'make sizes' | ||
27 | - sh 'ccache -s' | ||
28 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'cubepilot_cubeorange_test' | ||
29 | - } | ||
30 | - post { | ||
31 | - always { | ||
32 | - sh 'make distclean' | ||
33 | - } | ||
34 | - } | ||
35 | - } // stage build | ||
36 | - stage("test") { | ||
37 | - agent { | ||
38 | - label 'cubepilot_cubeorange' | ||
39 | - } | ||
40 | - stages { | ||
41 | - stage("flash") { | ||
42 | - steps { | ||
43 | - sh 'export' | ||
44 | - sh 'find /dev/serial' | ||
45 | - unstash 'cubepilot_cubeorange_test' | ||
46 | - // flash board and watch bootup | ||
47 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/cubepilot_cubeorange_test/cubepilot_cubeorange_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
48 | - } | ||
49 | - } | ||
50 | - stage("configure") { | ||
51 | - steps { | ||
52 | - // configure | ||
53 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
54 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set IMU_GYRO_RATEMAX 2000"' | ||
55 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
56 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
57 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
58 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
59 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
60 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
61 | - } | ||
62 | - } | ||
63 | - stage("status") { | ||
64 | - steps { | ||
65 | - statusFTDI() | ||
66 | - } | ||
67 | - } | ||
68 | - stage("tests") { | ||
69 | - steps { | ||
70 | - // run tests | ||
71 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
72 | - } | ||
73 | - } | ||
74 | - stage("reset") { | ||
75 | - steps { | ||
76 | - cleanupFTDI() | ||
77 | - } | ||
78 | - } | ||
79 | - } | ||
80 | - } // stage test | ||
81 | - } | ||
82 | - } | ||
83 | - | ||
84 | - stage("cuav_x7pro_test") { | ||
85 | - stages { | ||
86 | - stage("build cuav_x7pro_test") { | ||
87 | - agent { | ||
88 | - docker { | ||
89 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
90 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
91 | - } | ||
92 | - } | ||
93 | - steps { | ||
94 | - checkout scm | ||
95 | - sh 'export' | ||
96 | - sh 'make distclean' | ||
97 | - sh 'ccache -s' | ||
98 | - sh 'git fetch --tags' | ||
99 | - sh 'make cuav_x7pro_test' | ||
100 | - sh 'make sizes' | ||
101 | - sh 'ccache -s' | ||
102 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'cuav_x7pro_test' | ||
103 | - } | ||
104 | - post { | ||
105 | - always { | ||
106 | - sh 'make distclean' | ||
107 | - } | ||
108 | - } | ||
109 | - } // stage build | ||
110 | - stage("test") { | ||
111 | - agent { | ||
112 | - label 'cuav_x7pro' | ||
113 | - } | ||
114 | - stages { | ||
115 | - stage("flash") { | ||
116 | - steps { | ||
117 | - sh 'export' | ||
118 | - sh 'find /dev/serial' | ||
119 | - unstash 'cuav_x7pro_test' | ||
120 | - // flash board and watch bootup | ||
121 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/cuav_x7pro_test/cuav_x7pro_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
122 | - } | ||
123 | - } | ||
124 | - stage("configure") { | ||
125 | - steps { | ||
126 | - // configure | ||
127 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
128 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
129 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
130 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
131 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
132 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
133 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
134 | - } | ||
135 | - } | ||
136 | - stage("status") { | ||
137 | - steps { | ||
138 | - statusFTDI() | ||
139 | - } | ||
140 | - } | ||
141 | - stage("tests") { | ||
142 | - steps { | ||
143 | - // run tests | ||
144 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
145 | - } | ||
146 | - } | ||
147 | - stage("reset") { | ||
148 | - steps { | ||
149 | - cleanupFTDI() | ||
150 | - } | ||
151 | - } | ||
152 | - } | ||
153 | - } // stage test | ||
154 | - } | ||
155 | - } | ||
156 | - | ||
157 | - stage("px4_fmu-v3_test") { | ||
158 | - stages { | ||
159 | - stage("build px4_fmu-v3_test") { | ||
160 | - agent { | ||
161 | - docker { | ||
162 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
163 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
164 | - } | ||
165 | - } | ||
166 | - steps { | ||
167 | - checkout scm | ||
168 | - sh 'export' | ||
169 | - sh 'make distclean' | ||
170 | - sh 'ccache -s' | ||
171 | - sh 'git fetch --tags' | ||
172 | - sh 'make px4_fmu-v3_test' | ||
173 | - sh 'make sizes' | ||
174 | - sh 'ccache -s' | ||
175 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'px4_fmu-v3_test' | ||
176 | - } | ||
177 | - post { | ||
178 | - always { | ||
179 | - sh 'make distclean' | ||
180 | - } | ||
181 | - } | ||
182 | - } // stage build | ||
183 | - stage("test") { | ||
184 | - agent { | ||
185 | - label 'px4_fmu-v3' | ||
186 | - } | ||
187 | - stages { | ||
188 | - stage("flash") { | ||
189 | - steps { | ||
190 | - sh 'export' | ||
191 | - sh 'find /dev/serial' | ||
192 | - unstash 'px4_fmu-v3_test' | ||
193 | - // flash board and watch bootup | ||
194 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v3_test/px4_fmu-v3_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
195 | - } | ||
196 | - } | ||
197 | - stage("configure") { | ||
198 | - steps { | ||
199 | - // configure | ||
200 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
201 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 13000"' // generic vtol standard | ||
202 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
203 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
204 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
205 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
206 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
207 | - } | ||
208 | - } | ||
209 | - stage("status") { | ||
210 | - steps { | ||
211 | - statusFTDI() | ||
212 | - } | ||
213 | - } | ||
214 | - stage("tests") { | ||
215 | - steps { | ||
216 | - // run tests | ||
217 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
218 | - } | ||
219 | - } | ||
220 | - stage("reset") { | ||
221 | - steps { | ||
222 | - cleanupFTDI() | ||
223 | - } | ||
224 | - } | ||
225 | - } | ||
226 | - } // stage test | ||
227 | - } | ||
228 | - } | ||
229 | - | ||
230 | - stage("px4_fmu-v4_test") { | ||
231 | - stages { | ||
232 | - stage("build px4_fmu-v4_test") { | ||
233 | - agent { | ||
234 | - docker { | ||
235 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
236 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
237 | - } | ||
238 | - } | ||
239 | - steps { | ||
240 | - checkout scm | ||
241 | - sh 'export' | ||
242 | - sh 'make distclean' | ||
243 | - sh 'ccache -s' | ||
244 | - sh 'git fetch --tags' | ||
245 | - sh 'make px4_fmu-v4_test' | ||
246 | - sh 'make sizes' | ||
247 | - sh 'ccache -s' | ||
248 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'px4_fmu-v4_test' | ||
249 | - } | ||
250 | - post { | ||
251 | - always { | ||
252 | - sh 'make distclean' | ||
253 | - } | ||
254 | - } | ||
255 | - } // stage build | ||
256 | - stage("test") { | ||
257 | - agent { | ||
258 | - label 'px4_fmu-v4' | ||
259 | - } | ||
260 | - stages { | ||
261 | - stage("flash") { | ||
262 | - steps { | ||
263 | - sh 'export' | ||
264 | - sh 'find /dev/serial' | ||
265 | - unstash 'px4_fmu-v4_test' | ||
266 | - // flash board and watch bootup | ||
267 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v4_test/px4_fmu-v4_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
268 | - } | ||
269 | - } | ||
270 | - stage("configure") { | ||
271 | - steps { | ||
272 | - // configure | ||
273 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
274 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
275 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
276 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
277 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
278 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
279 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
280 | - } | ||
281 | - } | ||
282 | - stage("status") { | ||
283 | - steps { | ||
284 | - statusFTDI() | ||
285 | - } | ||
286 | - } | ||
287 | - stage("tests") { | ||
288 | - steps { | ||
289 | - // run tests | ||
290 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
291 | - } | ||
292 | - } | ||
293 | - stage("reset") { | ||
294 | - steps { | ||
295 | - cleanupFTDI() | ||
296 | - } | ||
297 | - } | ||
298 | - } | ||
299 | - } // stage test | ||
300 | - } | ||
301 | - } | ||
302 | - | ||
303 | - stage("px4_fmu-v4pro_test") { | ||
304 | - stages { | ||
305 | - stage("build px4_fmu-v4pro_test") { | ||
306 | - agent { | ||
307 | - docker { | ||
308 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
309 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
310 | - } | ||
311 | - } | ||
312 | - steps { | ||
313 | - checkout scm | ||
314 | - sh 'export' | ||
315 | - sh 'make distclean' | ||
316 | - sh 'ccache -s' | ||
317 | - sh 'git fetch --tags' | ||
318 | - sh 'make px4_fmu-v4pro_test' | ||
319 | - sh 'make sizes' | ||
320 | - sh 'ccache -s' | ||
321 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'px4_fmu-v4pro_test' | ||
322 | - } | ||
323 | - post { | ||
324 | - always { | ||
325 | - sh 'make distclean' | ||
326 | - } | ||
327 | - } | ||
328 | - } // stage build | ||
329 | - stage("test") { | ||
330 | - agent { | ||
331 | - label 'px4_fmu-v4pro' | ||
332 | - } | ||
333 | - stages { | ||
334 | - stage("flash") { | ||
335 | - steps { | ||
336 | - sh 'export' | ||
337 | - sh 'find /dev/serial' | ||
338 | - unstash 'px4_fmu-v4pro_test' | ||
339 | - // flash board and watch bootup | ||
340 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v4pro_test/px4_fmu-v4pro_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
341 | - } | ||
342 | - } | ||
343 | - stage("configure") { | ||
344 | - steps { | ||
345 | - // configure | ||
346 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
347 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 13000"' // generic vtol standard | ||
348 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
349 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
350 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
351 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
352 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
353 | - } | ||
354 | - } | ||
355 | - stage("status") { | ||
356 | - steps { | ||
357 | - statusFTDI() | ||
358 | - } | ||
359 | - } | ||
360 | - stage("tests") { | ||
361 | - steps { | ||
362 | - // run tests | ||
363 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
364 | - } | ||
365 | - } | ||
366 | - stage("reset") { | ||
367 | - steps { | ||
368 | - cleanupFTDI() | ||
369 | - } | ||
370 | - } | ||
371 | - } | ||
372 | - } // stage test | ||
373 | - } | ||
374 | - } | ||
375 | - | ||
376 | - stage("px4_fmu-v5_test") { | ||
377 | - stages { | ||
378 | - stage("build px4_fmu-v5_test") { | ||
379 | - agent { | ||
380 | - docker { | ||
381 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
382 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
383 | - } | ||
384 | - } | ||
385 | - steps { | ||
386 | - checkout scm | ||
387 | - sh 'export' | ||
388 | - sh 'make distclean' | ||
389 | - sh 'ccache -s' | ||
390 | - sh 'git fetch --tags' | ||
391 | - sh 'make px4_fmu-v5_test' | ||
392 | - sh 'make sizes' | ||
393 | - sh 'ccache -s' | ||
394 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'px4_fmu-v5_test' | ||
395 | - } | ||
396 | - post { | ||
397 | - always { | ||
398 | - sh 'make distclean' | ||
399 | - } | ||
400 | - } | ||
401 | - } // stage build | ||
402 | - stage("test") { | ||
403 | - agent { | ||
404 | - label 'px4_fmu-v5' | ||
405 | - } | ||
406 | - stages { | ||
407 | - stage("flash") { | ||
408 | - steps { | ||
409 | - sh 'export' | ||
410 | - sh 'find /dev/serial' | ||
411 | - unstash 'px4_fmu-v5_test' | ||
412 | - // flash board and watch bootup | ||
413 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v5_test/px4_fmu-v5_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
414 | - } | ||
415 | - } | ||
416 | - stage("configure") { | ||
417 | - steps { | ||
418 | - // configure | ||
419 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
420 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
421 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
422 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
423 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
424 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
425 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
426 | - } | ||
427 | - } | ||
428 | - stage("status") { | ||
429 | - steps { | ||
430 | - statusFTDI() | ||
431 | - } | ||
432 | - } | ||
433 | - stage("tests") { | ||
434 | - steps { | ||
435 | - // run tests | ||
436 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
437 | - } | ||
438 | - } | ||
439 | - stage("reset") { | ||
440 | - steps { | ||
441 | - cleanupFTDI() | ||
442 | - } | ||
443 | - } | ||
444 | - } | ||
445 | - } // stage test | ||
446 | - } | ||
447 | - } | ||
448 | - | ||
449 | - stage("px4_fmu-v5_debug") { | ||
450 | - stages { | ||
451 | - stage("build px4_fmu-v5_debug") { | ||
452 | - agent { | ||
453 | - docker { | ||
454 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
455 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
456 | - } | ||
457 | - } | ||
458 | - steps { | ||
459 | - checkout scm | ||
460 | - sh 'export' | ||
461 | - sh 'make distclean' | ||
462 | - sh 'ccache -s' | ||
463 | - sh 'git fetch --tags' | ||
464 | - sh 'make px4_fmu-v5_debug' | ||
465 | - sh 'make sizes' | ||
466 | - sh 'ccache -s' | ||
467 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'px4_fmu-v5_debug' | ||
468 | - } | ||
469 | - post { | ||
470 | - always { | ||
471 | - sh 'make distclean' | ||
472 | - } | ||
473 | - } | ||
474 | - } // stage build | ||
475 | - stage("test") { | ||
476 | - agent { | ||
477 | - label 'px4_fmu-v5' | ||
478 | - } | ||
479 | - stages { | ||
480 | - stage("flash") { | ||
481 | - steps { | ||
482 | - sh 'export' | ||
483 | - sh 'find /dev/serial' | ||
484 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001" || true' // generic multicopter | ||
485 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set IMU_GYRO_RATEMAX 250" || true' | ||
486 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save" || true' | ||
487 | - unstash 'px4_fmu-v5_debug' | ||
488 | - // flash board and watch bootup | ||
489 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v5_debug/px4_fmu-v5_debug.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
490 | - } | ||
491 | - } | ||
492 | - stage("configure") { | ||
493 | - steps { | ||
494 | - // configure | ||
495 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
496 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set IMU_GYRO_RATEMAX 250"' // limit cpu usage | ||
497 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
498 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
499 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
500 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
501 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
502 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
503 | - } | ||
504 | - } | ||
505 | - stage("status") { | ||
506 | - steps { | ||
507 | - statusFTDI() | ||
508 | - } | ||
509 | - } | ||
510 | - stage("tests") { | ||
511 | - steps { | ||
512 | - // run tests | ||
513 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
514 | - } | ||
515 | - } | ||
516 | - stage("reset") { | ||
517 | - steps { | ||
518 | - cleanupFTDI() | ||
519 | - } | ||
520 | - } | ||
521 | - } | ||
522 | - } // stage test | ||
523 | - } | ||
524 | - } | ||
525 | - | ||
526 | - stage("px4_fmu-v5_optimized") { | ||
527 | - stages { | ||
528 | - stage("build px4_fmu-v5_optimized") { | ||
529 | - agent { | ||
530 | - docker { | ||
531 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
532 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
533 | - } | ||
534 | - } | ||
535 | - steps { | ||
536 | - checkout scm | ||
537 | - sh 'export' | ||
538 | - sh 'make distclean' | ||
539 | - sh 'ccache -s' | ||
540 | - sh 'git fetch --tags' | ||
541 | - sh 'make px4_fmu-v5_optimized' | ||
542 | - sh 'make sizes' | ||
543 | - sh 'ccache -s' | ||
544 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'px4_fmu-v5_optimized' | ||
545 | - } | ||
546 | - post { | ||
547 | - always { | ||
548 | - sh 'make distclean' | ||
549 | - } | ||
550 | - } | ||
551 | - } // stage build | ||
552 | - stage("test") { | ||
553 | - agent { | ||
554 | - label 'px4_fmu-v5' | ||
555 | - } | ||
556 | - stages { | ||
557 | - stage("flash") { | ||
558 | - steps { | ||
559 | - sh 'export' | ||
560 | - sh 'find /dev/serial' | ||
561 | - unstash 'px4_fmu-v5_optimized' | ||
562 | - // flash board and watch bootup | ||
563 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v5_optimized/px4_fmu-v5_optimized.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
564 | - } | ||
565 | - } | ||
566 | - stage("configure") { | ||
567 | - steps { | ||
568 | - // configure | ||
569 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
570 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
571 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
572 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
573 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
574 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
575 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
576 | - } | ||
577 | - } | ||
578 | - stage("status") { | ||
579 | - steps { | ||
580 | - statusFTDI() | ||
581 | - } | ||
582 | - } | ||
583 | - stage("tests") { | ||
584 | - steps { | ||
585 | - // run tests | ||
586 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
587 | - } | ||
588 | - } | ||
589 | - stage("reset") { | ||
590 | - steps { | ||
591 | - cleanupFTDI() | ||
592 | - } | ||
593 | - } | ||
594 | - } | ||
595 | - } // stage test | ||
596 | - } | ||
597 | - } | ||
598 | - | ||
599 | - stage("px4_fmu-v5_stackcheck") { | ||
600 | - stages { | ||
601 | - stage("build px4_fmu-v5_stackcheck") { | ||
602 | - agent { | ||
603 | - docker { | ||
604 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
605 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
606 | - } | ||
607 | - } | ||
608 | - steps { | ||
609 | - checkout scm | ||
610 | - sh 'export' | ||
611 | - sh 'make distclean' | ||
612 | - sh 'ccache -s' | ||
613 | - sh 'git fetch --tags' | ||
614 | - sh 'make px4_fmu-v5_stackcheck' | ||
615 | - sh 'make sizes' | ||
616 | - sh 'ccache -s' | ||
617 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'px4_fmu-v5_stackcheck' | ||
618 | - } | ||
619 | - post { | ||
620 | - always { | ||
621 | - sh 'make distclean' | ||
622 | - } | ||
623 | - } | ||
624 | - } // stage build | ||
625 | - stage("test") { | ||
626 | - agent { | ||
627 | - label 'px4_fmu-v5' | ||
628 | - } | ||
629 | - stages { | ||
630 | - stage("flash") { | ||
631 | - steps { | ||
632 | - sh 'export' | ||
633 | - sh 'find /dev/serial' | ||
634 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001" || true' // generic multicopter | ||
635 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set IMU_GYRO_RATEMAX 250" || true' | ||
636 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save" || true' | ||
637 | - unstash 'px4_fmu-v5_stackcheck' | ||
638 | - // flash board and watch bootup | ||
639 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v5_stackcheck/px4_fmu-v5_stackcheck.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
640 | - } | ||
641 | - } | ||
642 | - stage("configure") { | ||
643 | - steps { | ||
644 | - // configure | ||
645 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
646 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set IMU_GYRO_RATEMAX 250"' // limit cpu usage | ||
647 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set MAV_0_CONFIG 0"' // limit cpu usage | ||
648 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
649 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
650 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
651 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
652 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
653 | - } | ||
654 | - } | ||
655 | - stage("status") { | ||
656 | - steps { | ||
657 | - statusFTDI() | ||
658 | - } | ||
659 | - } | ||
660 | - stage("tests") { | ||
661 | - steps { | ||
662 | - // run tests | ||
663 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
664 | - } | ||
665 | - } | ||
666 | - stage("reset") { | ||
667 | - steps { | ||
668 | - cleanupFTDI() | ||
669 | - } | ||
670 | - } | ||
671 | - } | ||
672 | - } // stage test | ||
673 | - } | ||
674 | - } | ||
675 | - | ||
676 | - stage("modalai_fc-v1_test") { | ||
677 | - stages { | ||
678 | - stage("build modalai_fc-v1_test") { | ||
679 | - agent { | ||
680 | - docker { | ||
681 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
682 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
683 | - } | ||
684 | - } | ||
685 | - steps { | ||
686 | - checkout scm | ||
687 | - sh 'export' | ||
688 | - sh 'make distclean' | ||
689 | - sh 'ccache -s' | ||
690 | - sh 'git fetch --tags' | ||
691 | - sh 'make modalai_fc-v1_test' | ||
692 | - sh 'make sizes' | ||
693 | - sh 'ccache -s' | ||
694 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'modalai_fc-v1_test' | ||
695 | - } | ||
696 | - post { | ||
697 | - always { | ||
698 | - sh 'make distclean' | ||
699 | - } | ||
700 | - } | ||
701 | - } // stage build | ||
702 | - stage("test") { | ||
703 | - agent { | ||
704 | - label 'modalai_fc-v1' | ||
705 | - } | ||
706 | - stages { | ||
707 | - stage("flash") { | ||
708 | - steps { | ||
709 | - sh 'export' | ||
710 | - sh 'find /dev/serial' | ||
711 | - unstash 'modalai_fc-v1_test' | ||
712 | - // flash board and watch bootup | ||
713 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/modalai_fc-v1_test/modalai_fc-v1_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
714 | - } | ||
715 | - } | ||
716 | - stage("configure") { | ||
717 | - steps { | ||
718 | - // configure | ||
719 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
720 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
721 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
722 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
723 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
724 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
725 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
726 | - } | ||
727 | - } | ||
728 | - stage("status") { | ||
729 | - steps { | ||
730 | - statusFTDI() | ||
731 | - } | ||
732 | - } | ||
733 | - stage("tests") { | ||
734 | - steps { | ||
735 | - // run tests | ||
736 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
737 | - } | ||
738 | - } | ||
739 | - stage("reset") { | ||
740 | - steps { | ||
741 | - cleanupFTDI() | ||
742 | - } | ||
743 | - } | ||
744 | - } | ||
745 | - } // stage test | ||
746 | - } | ||
747 | - } | ||
748 | - | ||
749 | - stage("holybro_durandal-v1_test") { | ||
750 | - stages { | ||
751 | - stage("build holybro_durandal-v1_test") { | ||
752 | - agent { | ||
753 | - docker { | ||
754 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
755 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
756 | - } | ||
757 | - } | ||
758 | - steps { | ||
759 | - checkout scm | ||
760 | - sh 'export' | ||
761 | - sh 'make distclean' | ||
762 | - sh 'ccache -s' | ||
763 | - sh 'git fetch --tags' | ||
764 | - sh 'make holybro_durandal-v1_test' | ||
765 | - sh 'make sizes' | ||
766 | - sh 'ccache -s' | ||
767 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'holybro_durandal-v1_test' | ||
768 | - } | ||
769 | - post { | ||
770 | - always { | ||
771 | - sh 'make distclean' | ||
772 | - } | ||
773 | - } | ||
774 | - } // stage build | ||
775 | - stage("test") { | ||
776 | - agent { | ||
777 | - label 'holybro_durandal-v1' | ||
778 | - } | ||
779 | - stages { | ||
780 | - stage("flash") { | ||
781 | - steps { | ||
782 | - sh 'export' | ||
783 | - sh 'find /dev/serial' | ||
784 | - unstash 'holybro_durandal-v1_test' | ||
785 | - // flash board and watch bootup | ||
786 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/holybro_durandal-v1_test/holybro_durandal-v1_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
787 | - } | ||
788 | - } | ||
789 | - stage("configure") { | ||
790 | - steps { | ||
791 | - // configure | ||
792 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
793 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
794 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
795 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
796 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
797 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
798 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
799 | - } | ||
800 | - } | ||
801 | - stage("status") { | ||
802 | - steps { | ||
803 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "dshot status"' | ||
804 | - statusFTDI() | ||
805 | - } | ||
806 | - } | ||
807 | - stage("tests") { | ||
808 | - steps { | ||
809 | - // run tests | ||
810 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
811 | - } | ||
812 | - } | ||
813 | - stage("reset") { | ||
814 | - steps { | ||
815 | - cleanupFTDI() | ||
816 | - } | ||
817 | - } | ||
818 | - } | ||
819 | - } // stage test | ||
820 | - } | ||
821 | - } | ||
822 | - | ||
823 | - stage("nxp_fmuk66-v3_test") { | ||
824 | - stages { | ||
825 | - stage("build nxp_fmuk66-v3_test") { | ||
826 | - agent { | ||
827 | - docker { | ||
828 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
829 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
830 | - } | ||
831 | - } | ||
832 | - steps { | ||
833 | - checkout scm | ||
834 | - sh 'export' | ||
835 | - sh 'make distclean' | ||
836 | - sh 'ccache -s' | ||
837 | - sh 'git fetch --tags' | ||
838 | - sh 'make nxp_fmuk66-v3_test' | ||
839 | - sh 'make sizes' | ||
840 | - sh 'ccache -s' | ||
841 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'nxp_fmuk66-v3_test' | ||
842 | - } | ||
843 | - post { | ||
844 | - always { | ||
845 | - sh 'make distclean' | ||
846 | - } | ||
847 | - } | ||
848 | - } // stage build | ||
849 | - stage("test") { | ||
850 | - agent { | ||
851 | - label 'nxp_fmuk66-v3' | ||
852 | - } | ||
853 | - stages { | ||
854 | - stage("flash") { | ||
855 | - steps { | ||
856 | - sh 'export' | ||
857 | - sh 'find /dev/serial' | ||
858 | - unstash 'nxp_fmuk66-v3_test' | ||
859 | - // flash board and watch bootup | ||
860 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/nxp_fmuk66-v3_test/nxp_fmuk66-v3_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
861 | - } | ||
862 | - } | ||
863 | - stage("configure") { | ||
864 | - steps { | ||
865 | - // configure | ||
866 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
867 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
868 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
869 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
870 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
871 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
872 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
873 | - } | ||
874 | - } | ||
875 | - stage("status") { | ||
876 | - steps { | ||
877 | - statusFTDI() | ||
878 | - } | ||
879 | - } | ||
880 | - stage("tests") { | ||
881 | - steps { | ||
882 | - // run tests | ||
883 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*` || true' // allow failure due to intermittent serial console issues | ||
884 | - } | ||
885 | - } | ||
886 | - stage("reset") { | ||
887 | - steps { | ||
888 | - cleanupFTDI() | ||
889 | - } | ||
890 | - } | ||
891 | - } | ||
892 | - } // stage test | ||
893 | - } | ||
894 | - } | ||
895 | - | ||
896 | - } // parallel | ||
897 | - } // stage Hardware Test | ||
898 | - } // stages | ||
899 | - environment { | ||
900 | - CCACHE_DIR = '/tmp/ccache' | ||
901 | - CI = true | ||
902 | - } | ||
903 | - options { | ||
904 | - buildDiscarder(logRotator(numToKeepStr: '30', artifactDaysToKeepStr: '60')) | ||
905 | - timeout(time: 120, unit: 'MINUTES') | ||
906 | - skipDefaultCheckout() | ||
907 | - } | ||
908 | -} | ||
909 | - | ||
910 | -void statusFTDI() { | ||
911 | - // run logger | ||
912 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "logger on"' | ||
913 | - // status commands | ||
914 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "free"' | ||
915 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "work_queue status"' | ||
916 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "board_adc test"' | ||
917 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander check"' | ||
918 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander status"' | ||
919 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander calibrate accel quick; sleep 2; param show CAL_ACC*"' | ||
920 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander calibrate gyro; sleep 2; param show CAL_GYRO*"' | ||
921 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander calibrate level; sleep 2; param show SENS_BOARD*"' | ||
922 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander calibrate mag quick; sleep 2; param show CAL_MAG*"' | ||
923 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "dataman status"' | ||
924 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "df"' | ||
925 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "dmesg"' | ||
926 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "gps status"' | ||
927 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "gyro_calibration status; param show CAL_GYRO*"' | ||
928 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener adc_report"' | ||
929 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener battery_status"' | ||
930 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener cpuload"' | ||
931 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener estimator_attitude"' | ||
932 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener estimator_event_flags"' | ||
933 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener estimator_local_position"' | ||
934 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener estimator_selector_status"' | ||
935 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener estimator_sensor_bias"' | ||
936 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener estimator_status"' | ||
937 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener estimator_status_flags"' | ||
938 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener logger_status"' | ||
939 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener parameter_update"' | ||
940 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener px4io_status"' | ||
941 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_accel"' | ||
942 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_accel_fifo"' | ||
943 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_baro"' | ||
944 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_combined"' | ||
945 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_gps"' | ||
946 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_gyro"' | ||
947 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_gyro_fifo"' | ||
948 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_mag"' | ||
949 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_selection"' | ||
950 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensors_status_imu"' | ||
951 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener system_power"' | ||
952 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener telemetry_status"' | ||
953 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_air_data"' | ||
954 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_angular_acceleration"' | ||
955 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_angular_velocity"' | ||
956 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_attitude"' | ||
957 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_gps_position"' | ||
958 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_imu"' | ||
959 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_imu_status"' | ||
960 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_local_position"' | ||
961 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_magnetometer"' | ||
962 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_status"' | ||
963 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_status_flags"' | ||
964 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "logger status"' | ||
965 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "ls /"' | ||
966 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "ls /dev"' | ||
967 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "ls /etc"' | ||
968 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "ls /obj"' | ||
969 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "ls /proc"' | ||
970 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "cat /proc/meminfo"' | ||
971 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "cat /proc/uptime"' | ||
972 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "mavlink status streams"' | ||
973 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "mavlink status"' | ||
974 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "mount"' | ||
975 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "mtd status"' | ||
976 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
977 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
978 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "perf latency"' | ||
979 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "perf"' | ||
980 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "ps"' | ||
981 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "pwm info -d /dev/pwm_output0"' | ||
982 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "pwm info -d /dev/pwm_output1"' | ||
983 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "pwm_out status"' | ||
984 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "px4io status"' | ||
985 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "sd_bench -r 2"' | ||
986 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "sensors status"' | ||
987 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener cpuload; top once; listener cpuload"' | ||
988 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "uorb status"' | ||
989 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "uorb top -1 -a"' | ||
990 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "ver all"' | ||
991 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "work_queue status"' | ||
992 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "gyro_calibration status; param show CAL_GYRO*"' | ||
993 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "ekf2 status"' | ||
994 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "free"' | ||
995 | - // stop logger | ||
996 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "logger off"' | ||
997 | -} | ||
998 | - | ||
999 | -void cleanupFTDI() { | ||
1000 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander stop"' | ||
1001 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "mavlink stop-all"' | ||
1002 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "navigator stop"' | ||
1003 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "dataman stop"' | ||
1004 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "logger off"' | ||
1005 | - | ||
1006 | - // wipe sdcard | ||
1007 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "umount /fs/microsd"' | ||
1008 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "mkfatfs /dev/mmcsd0"' | ||
1009 | - | ||
1010 | - // drop any uncommited hardfaults | ||
1011 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "hardfault_log rearm"' | ||
1012 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "hardfault_log reset"' | ||
1013 | - | ||
1014 | - // erase mtd | ||
1015 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "mtd readtest"' | ||
1016 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "mtd rwtest"' | ||
1017 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "mtd erase"' | ||
1018 | - | ||
1019 | - // disable buzzer and cleanup storage | ||
1020 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param reset_all"' | ||
1021 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' | ||
1022 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SDLOG_DIRS_MAX 1"' | ||
1023 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
1024 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
1025 | - | ||
1026 | - // reboot | ||
1027 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' | ||
1028 | -} |
code/modify/.clang-tidy
deleted
100644 → 0
1 | ---- | ||
2 | -Checks: '*, | ||
3 | - -android*, | ||
4 | - -bugprone-integer-division, | ||
5 | - -cert-dcl50-cpp, | ||
6 | - -cert-env33-c, | ||
7 | - -cert-err34-c, | ||
8 | - -cert-err58-cpp, | ||
9 | - -cert-msc30-c, | ||
10 | - -cert-msc50-cpp, | ||
11 | - -clang-analyzer-core.CallAndMessage, | ||
12 | - -clang-analyzer-core.NullDereference, | ||
13 | - -clang-analyzer-core.UndefinedBinaryOperatorResult, | ||
14 | - -clang-analyzer-core.uninitialized.Assign, | ||
15 | - -clang-analyzer-core.VLASize, | ||
16 | - -clang-analyzer-cplusplus.NewDelete, | ||
17 | - -clang-analyzer-cplusplus.NewDeleteLeaks, | ||
18 | - -clang-analyzer-deadcode.DeadStores, | ||
19 | - -clang-analyzer-optin.cplusplus.VirtualCall, | ||
20 | - -clang-analyzer-optin.performance.Padding, | ||
21 | - -clang-analyzer-security.insecureAPI.strcpy, | ||
22 | - -clang-analyzer-unix.API, | ||
23 | - -clang-analyzer-unix.cstring.BadSizeArg, | ||
24 | - -clang-analyzer-unix.Malloc, | ||
25 | - -clang-analyzer-unix.MallocSizeof, | ||
26 | - -cppcoreguidelines-c-copy-assignment-signature, | ||
27 | - -cppcoreguidelines-interfaces-global-init, | ||
28 | - -cppcoreguidelines-no-malloc, | ||
29 | - -cppcoreguidelines-owning-memory, | ||
30 | - -cppcoreguidelines-pro-bounds-array-to-pointer-decay, | ||
31 | - -cppcoreguidelines-pro-bounds-constant-array-index, | ||
32 | - -cppcoreguidelines-pro-bounds-pointer-arithmetic, | ||
33 | - -cppcoreguidelines-pro-type-const-cast, | ||
34 | - -cppcoreguidelines-pro-type-cstyle-cast, | ||
35 | - -cppcoreguidelines-pro-type-member-init, | ||
36 | - -cppcoreguidelines-pro-type-reinterpret-cast, | ||
37 | - -cppcoreguidelines-pro-type-union-access, | ||
38 | - -cppcoreguidelines-pro-type-vararg, | ||
39 | - -cppcoreguidelines-special-member-functions, | ||
40 | - -fuchsia-default-arguments, | ||
41 | - -fuchsia-overloaded-operator, | ||
42 | - -google-build-using-namespace, | ||
43 | - -google-explicit-constructor, | ||
44 | - -google-global-names-in-headers, | ||
45 | - -google-readability-casting, | ||
46 | - -google-readability-function-size, | ||
47 | - -google-readability-namespace-comments, | ||
48 | - -google-readability-todo, | ||
49 | - -google-runtime-int, | ||
50 | - -google-runtime-references, | ||
51 | - -hicpp-deprecated-headers, | ||
52 | - -hicpp-explicit-conversions, | ||
53 | - -hicpp-function-size, | ||
54 | - -hicpp-member-init, | ||
55 | - -hicpp-no-array-decay, | ||
56 | - -hicpp-no-assembler, | ||
57 | - -hicpp-no-malloc, | ||
58 | - -hicpp-signed-bitwise, | ||
59 | - -hicpp-special-member-functions, | ||
60 | - -hicpp-use-auto, | ||
61 | - -hicpp-use-equals-default, | ||
62 | - -hicpp-use-equals-delete, | ||
63 | - -hicpp-use-override, | ||
64 | - -hicpp-vararg, | ||
65 | - -llvm-header-guard, | ||
66 | - -llvm-include-order, | ||
67 | - -llvm-namespace-comment, | ||
68 | - -misc-incorrect-roundings, | ||
69 | - -misc-macro-parentheses, | ||
70 | - -misc-misplaced-widening-cast, | ||
71 | - -misc-redundant-expression, | ||
72 | - -misc-unconventional-assign-operator, | ||
73 | - -misc-unused-parameters, | ||
74 | - -modernize-deprecated-headers, | ||
75 | - -modernize-loop-convert, | ||
76 | - -modernize-pass-by-value, | ||
77 | - -modernize-return-braced-init-list, | ||
78 | - -modernize-use-auto, | ||
79 | - -modernize-use-bool-literals, | ||
80 | - -modernize-use-default-member-init, | ||
81 | - -modernize-use-equals-default, | ||
82 | - -modernize-use-equals-delete, | ||
83 | - -modernize-use-override, | ||
84 | - -modernize-use-using, | ||
85 | - -performance-inefficient-string-concatenation, | ||
86 | - -readability-avoid-const-params-in-decls, | ||
87 | - -readability-container-size-empty, | ||
88 | - -readability-else-after-return, | ||
89 | - -readability-function-size, | ||
90 | - -readability-implicit-bool-cast, | ||
91 | - -readability-implicit-bool-conversion, | ||
92 | - -readability-inconsistent-declaration-parameter-name, | ||
93 | - -readability-named-parameter, | ||
94 | - -readability-non-const-parameter, | ||
95 | - -readability-redundant-declaration, | ||
96 | - -readability-static-accessed-through-instance, | ||
97 | - -readability-static-definition-in-anonymous-namespace, | ||
98 | - ' | ||
99 | -WarningsAsErrors: '*' | ||
100 | -CheckOptions: | ||
101 | - - key: google-readability-function-size.BranchThreshold | ||
102 | - value: '600' | ||
103 | - - key: google-readability-function-size.LineThreshold | ||
104 | - value: '4000' | ||
105 | - - key: google-readability-function-size.StatementThreshold | ||
106 | - value: '4000' | ||
107 | -... |
1 | -// For format details, see https://aka.ms/vscode-remote/devcontainer.json or this file's README at: | ||
2 | -// https://github.com/microsoft/vscode-dev-containers/tree/v0.134.0/containers/cpp | ||
3 | -{ | ||
4 | - "name": "px4-dev-nuttx", | ||
5 | - "image": "px4io/px4-dev-nuttx-focal:2021-04-29", | ||
6 | - | ||
7 | - "runArgs": [ "--cap-add=SYS_PTRACE", "--security-opt", "seccomp=unconfined" ], | ||
8 | - | ||
9 | - // Set *default* container specific settings.json values on container create. | ||
10 | - "settings": { | ||
11 | - "terminal.integrated.shell.linux": "/bin/bash" | ||
12 | - }, | ||
13 | - | ||
14 | - // Add the IDs of extensions you want installed when the container is created. | ||
15 | - "extensions": [ | ||
16 | - "chiehyu.vscode-astyle", | ||
17 | - "dan-c-underwood.arm", | ||
18 | - "fredericbonnet.cmake-test-adapter", | ||
19 | - "github.vscode-pull-request-github", | ||
20 | - "marus25.cortex-debug", | ||
21 | - "ms-azuretools.vscode-docker", | ||
22 | - "ms-iot.vscode-ros", | ||
23 | - "ms-python.python", | ||
24 | - "ms-vscode.cmake-tools", | ||
25 | - "ms-vscode.cpptools", | ||
26 | - "ms-vscode.cpptools-extension-pack", | ||
27 | - "redhat.vscode-yaml", | ||
28 | - "streetsidesoftware.code-spell-checker", | ||
29 | - "twxs.cmake", | ||
30 | - "uavcan.dsdl", | ||
31 | - "wholroyd.jinja", | ||
32 | - "zixuanwang.linkerscript" | ||
33 | - ], | ||
34 | - | ||
35 | - "containerUser": "user", | ||
36 | - "containerEnv": { | ||
37 | - "LOCAL_USER_ID": "${localEnv:UID}" | ||
38 | - }, | ||
39 | - | ||
40 | - // Use 'forwardPorts' to make a list of ports inside the container available locally. | ||
41 | - "forwardPorts": [14556], | ||
42 | -} |
code/modify/.gitattributes
deleted
100644 → 0
1 | -* text=auto eol=lf | ||
2 | - | ||
3 | -*.cmake text eol=lf | ||
4 | -*.c text eol=lf | ||
5 | -*.cc text eol=lf | ||
6 | -*.cpp text eol=lf | ||
7 | -*.h text eol=lf | ||
8 | -*.hh text eol=lf | ||
9 | -*.hpp text eol=lf | ||
10 | -*.hxx text eol=lf | ||
11 | -*.S text eol=lf | ||
12 | - | ||
13 | -*.ipynb text eol=lf | ||
14 | -*.m text eol=lf | ||
15 | -*.mat binary | ||
16 | -*.py text eol=lf | ||
17 | - | ||
18 | -*.java text eol=lf | ||
19 | -*.jar binary | ||
20 | -*.xml text eol=lf | ||
21 | - | ||
22 | -# PX4 mixers, msgs, etc | ||
23 | -*.bin binary | ||
24 | -*.mix text eol=lf | ||
25 | -*.msg text eol=lf | ||
26 | -*.config text eol=lf | ||
27 | -*.sdf text eol=lf | ||
28 | -*.uavcan text eol=lf | ||
29 | - | ||
30 | -# NuttX | ||
31 | -Makefile.* text eol=lf | ||
32 | -*.defs text eol=lf | ||
33 | -*.ld text eol=lf | ||
34 | - | ||
35 | -*.csv text eol=lf | ||
36 | -*.md text eol=lf | ||
37 | -*.txt text eol=lf | ||
38 | - | ||
39 | -# Scripts | ||
40 | -*.bash text eol=lf | ||
41 | -*.sh text eol=lf | ||
42 | -*.zsh text eol=lf | ||
43 | -# These are explicitly windows files and should use crlf | ||
44 | -*.ps1 text eol=crlf | ||
45 | -*.{cmd,[cC][mM][dD]} text eol=crlf | ||
46 | -*.{bat,[bB][aA][tT]} text eol=crlf | ||
47 | - | ||
48 | -# Serialisation | ||
49 | -*.json text eol=lf | ||
50 | -*.toml text eol=lf | ||
51 | -*.xml text eol=lf | ||
52 | -*.yaml text eol=lf | ||
53 | -*.yml text eol=lf | ||
54 | - | ||
55 | -# Graphics | ||
56 | -*.png binary | ||
57 | -*.jpg binary | ||
58 | -*.jpeg binary | ||
59 | -*.gif binary | ||
60 | -*.tif binary | ||
61 | -*.tiff binary | ||
62 | -*.ico binary | ||
63 | -*.pdf binary | ||
64 | -# SVG treated as an asset (binary) by default. | ||
65 | -*.svg text eol=lf | ||
66 | - | ||
67 | -# Text files where line endings should be preserved | ||
68 | -*.patch -text | ||
69 | - | ||
70 | -# Archives | ||
71 | -*.7z binary | ||
72 | -*.gz binary | ||
73 | -*.tar binary | ||
74 | -*.tgz binary | ||
75 | -*.zip binary | ||
76 | - | ||
77 | -# everything else | ||
78 | -.gitattributes text eol=lf | ||
79 | -.gitignore text eol=lf | ||
80 | -Makefile text eol=lf |
1 | ---- | ||
2 | -name: Bug report | ||
3 | -about: Create a report to help us improve | ||
4 | - | ||
5 | ---- | ||
6 | - | ||
7 | -**Describe the bug** | ||
8 | -A clear and concise description of the bug. | ||
9 | - | ||
10 | -**To Reproduce** | ||
11 | -Steps to reproduce the behavior: | ||
12 | -1. Drone switched on '...' | ||
13 | -2. Uploaded mission '....' (attach QGC mission file) | ||
14 | -3. Took off '....' | ||
15 | -4. See error | ||
16 | - | ||
17 | -**Expected behavior** | ||
18 | -A clear and concise description of what you expected to happen. | ||
19 | - | ||
20 | -**Log Files and Screenshots** | ||
21 | -*Always* provide a link to the flight log file: | ||
22 | -- Download the flight log file from the vehicle ([tutorial](https://docs.px4.io/master/en/getting_started/flight_reporting.html)). | ||
23 | -- Share the link to a log showing the problem on [PX4 Flight Review](http://logs.px4.io/). | ||
24 | - | ||
25 | -Add screenshots to help explain your problem. | ||
26 | - | ||
27 | -**Drone (please complete the following information):** | ||
28 | -- Describe the type of drone. | ||
29 | -- Photo of the IMU / autopilot setup if possible. | ||
30 | - | ||
31 | -**Additional context** | ||
32 | -Add any other context about the problem here. |
1 | ---- | ||
2 | -name: 🚀 Feature Request | ||
3 | -about: Suggest an idea for this project | ||
4 | - | ||
5 | ---- | ||
6 | - | ||
7 | -For general questions please use [PX4 Discuss](http://discuss.px4.io/) or [Slack](http://slack.px4.io/). | ||
8 | - | ||
9 | -**Describe problem solved by the proposed feature** | ||
10 | -A clear and concise description of the problem, if any, this feature will solve. E.g. I'm always frustrated when ... | ||
11 | - | ||
12 | -**Describe your preferred solution** | ||
13 | -A clear and concise description of what you want to happen. | ||
14 | - | ||
15 | -**Describe possible alternatives** | ||
16 | -A clear and concise description of alternative solutions or features you've considered. | ||
17 | - | ||
18 | -**Additional context** | ||
19 | -Add any other context or screenshots for the feature request here. |
1 | ---- | ||
2 | -name: ⛔ Support Question | ||
3 | -about: See [PX4 Discuss](http://discuss.px4.io/) for questions about using PX4. | ||
4 | - | ||
5 | ---- | ||
6 | - | ||
7 | -We use GitHub issues only to discuss PX4 bugs and new features. For | ||
8 | -questions about using PX4 or related components, please use [PX4 Discuss](http://discuss.px4.io/). | ||
9 | - | ||
10 | -Thanks! |
code/modify/.github/stale.yml
deleted
100644 → 0
1 | -# Number of days of inactivity before an issue becomes stale | ||
2 | -daysUntilStale: 90 | ||
3 | -# Number of days of inactivity before a stale issue is closed, or `false` to disable | ||
4 | -daysUntilClose: false | ||
5 | -# Issues with these labels will never be considered stale | ||
6 | -exemptLabels: | ||
7 | - - pinned | ||
8 | -# Label to use when marking an issue as stale | ||
9 | -staleLabel: stale | ||
10 | -# Comment to post when marking an issue as stale. Set to `false` to disable | ||
11 | -markComment: > | ||
12 | - This issue has been automatically marked as stale because it has not had | ||
13 | - recent activity. Thank you for your contributions. | ||
14 | -# Comment to post when closing a stale issue. Set to `false` to disable | ||
15 | -closeComment: false |
1 | -name: Checks | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - strategy: | ||
15 | - fail-fast: false | ||
16 | - matrix: | ||
17 | - check: [ | ||
18 | - "check_format", | ||
19 | - "tests", | ||
20 | - "tests_coverage", | ||
21 | - "px4_fmu-v2_default stack_check", | ||
22 | - "validate_module_configs", | ||
23 | - "shellcheck_all", | ||
24 | - "NO_NINJA_BUILD=1 px4_fmu-v5_default", | ||
25 | - "NO_NINJA_BUILD=1 px4_sitl_default", | ||
26 | - "airframe_metadata", | ||
27 | - "module_documentation", | ||
28 | - "parameters_metadata", | ||
29 | - ] | ||
30 | - container: | ||
31 | - image: px4io/px4-dev-nuttx-focal:2021-04-29 | ||
32 | - options: --privileged --ulimit core=-1 --security-opt seccomp=unconfined | ||
33 | - steps: | ||
34 | - - uses: actions/checkout@v1 | ||
35 | - with: | ||
36 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
37 | - | ||
38 | - - name: Prepare ccache timestamp | ||
39 | - id: ccache_cache_timestamp | ||
40 | - shell: cmake -P {0} | ||
41 | - run: | | ||
42 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
43 | - message("::set-output name=timestamp::${current_date}") | ||
44 | - - name: ccache cache files | ||
45 | - uses: actions/cache@v2 | ||
46 | - with: | ||
47 | - path: ~/.ccache | ||
48 | - key: tests_${{matrix.ubuntu_release}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
49 | - restore-keys: tests_${{matrix.ubuntu_release}}-ccache- | ||
50 | - - name: setup ccache | ||
51 | - run: | | ||
52 | - mkdir -p ~/.ccache | ||
53 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
54 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
55 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
56 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
57 | - ccache -s | ||
58 | - ccache -z | ||
59 | - - name: check environment | ||
60 | - run: | | ||
61 | - export | ||
62 | - ulimit -a | ||
63 | - - name: ${{matrix.check}} | ||
64 | - run: make ${{matrix.check}} | ||
65 | - - name: upload coverage | ||
66 | - if: contains(matrix.check, 'coverage') | ||
67 | - uses: codecov/codecov-action@v1 | ||
68 | - with: | ||
69 | - token: ${{ secrets.CODECOV_TOKEN }} | ||
70 | - flags: unittests | ||
71 | - file: coverage/lcov.info |
1 | -name: Clang Tidy | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - container: px4io/px4-dev-clang:2021-04-29 | ||
15 | - steps: | ||
16 | - - uses: actions/checkout@v1 | ||
17 | - with: | ||
18 | - token: ${{secrets.ACCESS_TOKEN}} | ||
19 | - | ||
20 | - - name: Prepare ccache timestamp | ||
21 | - id: ccache_cache_timestamp | ||
22 | - shell: cmake -P {0} | ||
23 | - run: | | ||
24 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
25 | - message("::set-output name=timestamp::${current_date}") | ||
26 | - - name: ccache cache files | ||
27 | - uses: actions/cache@v2 | ||
28 | - with: | ||
29 | - path: ~/.ccache | ||
30 | - key: clang-tidy-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
31 | - restore-keys: clang-tidy-ccache- | ||
32 | - - name: setup ccache | ||
33 | - run: | | ||
34 | - mkdir -p ~/.ccache | ||
35 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
36 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
37 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
38 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
39 | - ccache -s | ||
40 | - ccache -z | ||
41 | - | ||
42 | - - name: make clang-tidy-quiet | ||
43 | - run: | | ||
44 | - ccache -z | ||
45 | - make clang-tidy-quiet | ||
46 | - ccache -s |
1 | -name: Linux Targets | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - container: px4io/px4-dev-armhf:2021-04-29 | ||
15 | - strategy: | ||
16 | - matrix: | ||
17 | - config: [ | ||
18 | - beaglebone_blue_default, | ||
19 | - emlid_navio2_default, | ||
20 | - px4_raspberrypi_default, | ||
21 | - scumaker_pilotpi_default, | ||
22 | - ] | ||
23 | - steps: | ||
24 | - - uses: actions/checkout@v1 | ||
25 | - with: | ||
26 | - token: ${{secrets.ACCESS_TOKEN}} | ||
27 | - | ||
28 | - - name: Prepare ccache timestamp | ||
29 | - id: ccache_cache_timestamp | ||
30 | - shell: cmake -P {0} | ||
31 | - run: | | ||
32 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
33 | - message("::set-output name=timestamp::${current_date}") | ||
34 | - - name: ccache cache files | ||
35 | - uses: actions/cache@v2 | ||
36 | - with: | ||
37 | - path: ~/.ccache | ||
38 | - key: ${{matrix.config}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
39 | - restore-keys: ${{matrix.config}}-ccache- | ||
40 | - - name: setup ccache | ||
41 | - run: | | ||
42 | - mkdir -p ~/.ccache | ||
43 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
44 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
45 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
46 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
47 | - ccache -s | ||
48 | - ccache -z | ||
49 | - | ||
50 | - - name: make ${{matrix.config}} | ||
51 | - run: make ${{matrix.config}} | ||
52 | - - name: ccache post-run | ||
53 | - run: ccache -s |
1 | -name: Linux ARM64 Targets | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - container: px4io/px4-dev-aarch64:2021-04-29 | ||
15 | - strategy: | ||
16 | - matrix: | ||
17 | - config: [ | ||
18 | - scumaker_pilotpi_arm64, | ||
19 | - ] | ||
20 | - steps: | ||
21 | - - uses: actions/checkout@v1 | ||
22 | - with: | ||
23 | - token: ${{secrets.ACCESS_TOKEN}} | ||
24 | - | ||
25 | - - name: Prepare ccache timestamp | ||
26 | - id: ccache_cache_timestamp | ||
27 | - shell: cmake -P {0} | ||
28 | - run: | | ||
29 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
30 | - message("::set-output name=timestamp::${current_date}") | ||
31 | - - name: ccache cache files | ||
32 | - uses: actions/cache@v2 | ||
33 | - with: | ||
34 | - path: ~/.ccache | ||
35 | - key: ${{matrix.config}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
36 | - restore-keys: ${{matrix.config}}-ccache- | ||
37 | - - name: setup ccache | ||
38 | - run: | | ||
39 | - mkdir -p ~/.ccache | ||
40 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
41 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
42 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
43 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
44 | - ccache -s | ||
45 | - ccache -z | ||
46 | - | ||
47 | - - name: make ${{matrix.config}} | ||
48 | - run: make ${{matrix.config}} | ||
49 | - - name: ccache post-run | ||
50 | - run: ccache -s |
1 | -name: MacOS build | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: macos-10.15 | ||
14 | - strategy: | ||
15 | - matrix: | ||
16 | - config: [ | ||
17 | - px4_fmu-v5_default, | ||
18 | - px4_sitl | ||
19 | - #tests, # includes px4_sitl | ||
20 | - ] | ||
21 | - steps: | ||
22 | - - uses: actions/checkout@v1 | ||
23 | - with: | ||
24 | - token: ${{secrets.ACCESS_TOKEN}} | ||
25 | - | ||
26 | - - name: setup | ||
27 | - run: ./Tools/setup/macos.sh; ./Tools/setup/macos.sh | ||
28 | - | ||
29 | - - name: Prepare ccache timestamp | ||
30 | - id: ccache_cache_timestamp | ||
31 | - shell: cmake -P {0} | ||
32 | - run: | | ||
33 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
34 | - message("::set-output name=timestamp::${current_date}") | ||
35 | - - name: ccache cache files | ||
36 | - uses: actions/cache@v2 | ||
37 | - with: | ||
38 | - path: ~/.ccache | ||
39 | - key: macos_${{matrix.config}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
40 | - restore-keys: macos_${{matrix.config}}-ccache- | ||
41 | - - name: setup ccache | ||
42 | - run: | | ||
43 | - mkdir -p ~/.ccache | ||
44 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
45 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
46 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
47 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
48 | - ccache -s | ||
49 | - ccache -z | ||
50 | - | ||
51 | - - name: make ${{matrix.config}} | ||
52 | - run: | | ||
53 | - ccache -z | ||
54 | - make ${{matrix.config}} | ||
55 | - ccache -s |
1 | -name: Nuttx Targets | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - container: px4io/px4-dev-nuttx-focal:2021-04-29 | ||
15 | - strategy: | ||
16 | - matrix: | ||
17 | - config: [ | ||
18 | - airmind_mindpx-v2_default, | ||
19 | - ark_can-flow_canbootloader, | ||
20 | - ark_can-flow_debug, | ||
21 | - ark_can-flow_default, | ||
22 | - ark_can-gps_canbootloader, | ||
23 | - ark_can-gps_debug, | ||
24 | - ark_can-gps_default, | ||
25 | - av_x-v1_default, | ||
26 | - bitcraze_crazyflie21_default, | ||
27 | - bitcraze_crazyflie_default, | ||
28 | - cuav_can-gps-v1_canbootloader, | ||
29 | - cuav_can-gps-v1_debug, | ||
30 | - cuav_can-gps-v1_default, | ||
31 | - cuav_nora_default, | ||
32 | - cuav_x7pro_default, | ||
33 | - cubepilot_cubeorange_default, | ||
34 | - cubepilot_cubeorange_test, | ||
35 | - cubepilot_cubeyellow_default, | ||
36 | - cubepilot_cubeyellow_test, | ||
37 | - cubepilot_io-v2_default, | ||
38 | - freefly_can-rtk-gps_canbootloader, | ||
39 | - freefly_can-rtk-gps_default, | ||
40 | - holybro_can-gps-v1_canbootloader, | ||
41 | - holybro_can-gps-v1_debug, | ||
42 | - holybro_can-gps-v1_default, | ||
43 | - holybro_durandal-v1_default, | ||
44 | - holybro_kakutef7_default, | ||
45 | - holybro_pix32v5_default, | ||
46 | - modalai_fc-v1_default, | ||
47 | - modalai_fc-v1_rtps, | ||
48 | - modalai_fc-v2_default, | ||
49 | - mro_ctrl-zero-f7-oem_default, | ||
50 | - mro_ctrl-zero-f7_default, | ||
51 | - mro_ctrl-zero-h7-oem_default, | ||
52 | - mro_ctrl-zero-h7_default, | ||
53 | - mro_pixracerpro_default, | ||
54 | - mro_x21-777_default, | ||
55 | - mro_x21_default, | ||
56 | - nxp_fmuk66-e_default, | ||
57 | - nxp_fmuk66-e_rtps, | ||
58 | - nxp_fmuk66-e_socketcan, | ||
59 | - nxp_fmuk66-v3_default, | ||
60 | - nxp_fmuk66-v3_rtps, | ||
61 | - nxp_fmuk66-v3_socketcan, | ||
62 | - nxp_fmurt1062-v1_default, | ||
63 | - nxp_ucans32k146_canbootloader, | ||
64 | - nxp_ucans32k146_default, | ||
65 | - omnibus_f4sd_default, | ||
66 | - px4_fmu-v2_default, | ||
67 | - px4_fmu-v2_fixedwing, | ||
68 | - px4_fmu-v2_multicopter, | ||
69 | - px4_fmu-v2_rover, | ||
70 | - px4_fmu-v3_default, | ||
71 | - px4_fmu-v4_cannode, | ||
72 | - px4_fmu-v4_default, | ||
73 | - px4_fmu-v4pro_default, | ||
74 | - px4_fmu-v5_ctrlalloc, | ||
75 | - px4_fmu-v5_debug, | ||
76 | - px4_fmu-v5_default, | ||
77 | - px4_fmu-v5_fixedwing, | ||
78 | - px4_fmu-v5_multicopter, | ||
79 | - px4_fmu-v5_optimized, | ||
80 | - px4_fmu-v5_rover, | ||
81 | - px4_fmu-v5_rtps, | ||
82 | - px4_fmu-v5_stackcheck, | ||
83 | - px4_fmu-v5_uavcanv0periph, | ||
84 | - px4_fmu-v5_uavcanv1, | ||
85 | - px4_fmu-v5x_base_phy_DP83848C, | ||
86 | - px4_fmu-v5x_default, | ||
87 | - px4_fmu-v6u_default, | ||
88 | - px4_fmu-v6x_default, | ||
89 | - px4_io-v2_default, | ||
90 | - spracing_h7extreme_default, | ||
91 | - uvify_core_default | ||
92 | - ] | ||
93 | - steps: | ||
94 | - - uses: actions/checkout@v1 | ||
95 | - with: | ||
96 | - token: ${{secrets.ACCESS_TOKEN}} | ||
97 | - | ||
98 | - - name: Prepare ccache timestamp | ||
99 | - id: ccache_cache_timestamp | ||
100 | - shell: cmake -P {0} | ||
101 | - run: | | ||
102 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
103 | - message("::set-output name=timestamp::${current_date}") | ||
104 | - - name: ccache cache files | ||
105 | - uses: actions/cache@v2 | ||
106 | - with: | ||
107 | - path: ~/.ccache | ||
108 | - key: ${{matrix.config}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
109 | - restore-keys: ${{matrix.config}}-ccache- | ||
110 | - - name: setup ccache | ||
111 | - run: | | ||
112 | - mkdir -p ~/.ccache | ||
113 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
114 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
115 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
116 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
117 | - ccache -s | ||
118 | - ccache -z | ||
119 | - | ||
120 | - - name: make ${{matrix.config}} | ||
121 | - run: make ${{matrix.config}} | ||
122 | - - name: make ${{matrix.config}} bloaty_compileunits | ||
123 | - run: make ${{matrix.config}} bloaty_compileunits || true | ||
124 | - - name: make ${{matrix.config}} bloaty_inlines | ||
125 | - run: make ${{matrix.config}} bloaty_inlines || true | ||
126 | - - name: make ${{matrix.config}} bloaty_segments | ||
127 | - run: make ${{matrix.config}} bloaty_segments || true | ||
128 | - - name: make ${{matrix.config}} bloaty_symbols | ||
129 | - run: make ${{matrix.config}} bloaty_symbols || true | ||
130 | - - name: make ${{matrix.config}} bloaty_templates | ||
131 | - run: make ${{matrix.config}} bloaty_templates || true | ||
132 | - - name: make ${{matrix.config}} bloaty_ram | ||
133 | - run: make ${{matrix.config}} bloaty_ram || true | ||
134 | - - name: make ${{matrix.config}} bloaty_compare_master | ||
135 | - run: make ${{matrix.config}} bloaty_compare_master || true | ||
136 | - - name: ccache post-run | ||
137 | - run: ccache -s | ||
138 | - | ||
139 | - - name: Upload px4 package | ||
140 | - uses: actions/upload-artifact@v1 | ||
141 | - with: | ||
142 | - name: px4_package_${{matrix.config}} | ||
143 | - path: build/${{matrix.config}}/${{matrix.config}}.px4 |
1 | -name: NuttX UAVCAN firmware | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - container: px4io/px4-dev-nuttx-focal:2021-04-29 | ||
15 | - strategy: | ||
16 | - matrix: | ||
17 | - config: [ | ||
18 | - ark_can-flow_default, | ||
19 | - cuav_can-gps-v1_default, | ||
20 | - freefly_can-rtk-gps_default, | ||
21 | - holybro_can-gps-v1_default, | ||
22 | - #nxp_ucans32k146_default, | ||
23 | - px4_fmu-v4_cannode | ||
24 | - ] | ||
25 | - steps: | ||
26 | - - uses: actions/checkout@v1 | ||
27 | - with: | ||
28 | - token: ${{secrets.ACCESS_TOKEN}} | ||
29 | - | ||
30 | - - name: Prepare ccache timestamp | ||
31 | - id: ccache_cache_timestamp | ||
32 | - shell: cmake -P {0} | ||
33 | - run: | | ||
34 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
35 | - message("::set-output name=timestamp::${current_date}") | ||
36 | - - name: ccache cache files | ||
37 | - uses: actions/cache@v2 | ||
38 | - with: | ||
39 | - path: ~/.ccache | ||
40 | - key: ${{matrix.config}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
41 | - restore-keys: ${{matrix.config}}-ccache- | ||
42 | - - name: setup ccache | ||
43 | - run: | | ||
44 | - mkdir -p ~/.ccache | ||
45 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
46 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
47 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
48 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
49 | - ccache -s | ||
50 | - ccache -z | ||
51 | - | ||
52 | - - name: make ${{matrix.config}} | ||
53 | - run: make ${{matrix.config}} | ||
54 | - | ||
55 | - - name: ccache post-run | ||
56 | - run: ccache -s | ||
57 | - | ||
58 | - - name: Upload px4 package | ||
59 | - uses: actions/upload-artifact@v2 | ||
60 | - with: | ||
61 | - name: px4_cannode_${{matrix.config}} | ||
62 | - path: build/${{matrix.config}}/*.uavcan.bin |
1 | -name: Deploy metadata for all targets | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - - 'release/*' | ||
8 | - - 'pr-metadata-test' | ||
9 | - | ||
10 | -jobs: | ||
11 | - enumerate_targets: | ||
12 | - runs-on: ubuntu-latest | ||
13 | - outputs: | ||
14 | - matrix: ${{ steps.set-matrix.outputs.matrix }} | ||
15 | - steps: | ||
16 | - - uses: actions/checkout@v1 | ||
17 | - with: | ||
18 | - token: ${{secrets.ACCESS_TOKEN}} | ||
19 | - - id: set-matrix | ||
20 | - run: echo "::set-output name=matrix::$(./Tools/generate_board_targets_json.py)" | ||
21 | - build: | ||
22 | - runs-on: ubuntu-latest | ||
23 | - needs: enumerate_targets | ||
24 | - strategy: | ||
25 | - matrix: ${{fromJson(needs.enumerate_targets.outputs.matrix)}} | ||
26 | - container: px4io/px4-dev-${{ matrix.container }}:2021-04-29 | ||
27 | - steps: | ||
28 | - - uses: actions/checkout@v1 | ||
29 | - with: | ||
30 | - token: ${{secrets.ACCESS_TOKEN}} | ||
31 | - | ||
32 | - - name: Prepare ccache timestamp | ||
33 | - id: ccache_cache_timestamp | ||
34 | - shell: cmake -P {0} | ||
35 | - run: | | ||
36 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
37 | - message("::set-output name=timestamp::${current_date}") | ||
38 | - - name: ccache cache files | ||
39 | - uses: actions/cache@v2 | ||
40 | - with: | ||
41 | - path: ~/.ccache | ||
42 | - key: ${{matrix.target}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
43 | - restore-keys: ${{matrix.target}}-ccache- | ||
44 | - - name: setup ccache | ||
45 | - run: | | ||
46 | - mkdir -p ~/.ccache | ||
47 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
48 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
49 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
50 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
51 | - ccache -s | ||
52 | - ccache -z | ||
53 | - | ||
54 | - - name: make ${{matrix.target}} | ||
55 | - run: make ${{matrix.target}} | ||
56 | - - name: ccache post-run | ||
57 | - run: ccache -s | ||
58 | - | ||
59 | - - name: parameter metadata | ||
60 | - run: | | ||
61 | - make ${{matrix.target}} ver_gen | ||
62 | - ./src/lib/version/get_git_tag_or_branch_version.sh build/${{ matrix.target }} >> $GITHUB_ENV | ||
63 | - cd build/${{ matrix.target }} | ||
64 | - mkdir _metadata || true | ||
65 | - cp parameters.* _metadata | ||
66 | - | ||
67 | - - uses: jakejarvis/s3-sync-action@master | ||
68 | - with: | ||
69 | - args: --acl public-read | ||
70 | - env: | ||
71 | - AWS_S3_BUCKET: 'px4-travis' | ||
72 | - AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | ||
73 | - AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | ||
74 | - AWS_REGION: 'us-west-1' | ||
75 | - SOURCE_DIR: 'build/${{ matrix.target }}/_metadata/' | ||
76 | - DEST_DIR: 'Firmware/${{ env.version }}/${{ matrix.target }}/' | ||
77 | - |
1 | -name: MAVROS Mission Tests | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - strategy: | ||
15 | - fail-fast: false | ||
16 | - matrix: | ||
17 | - config: | ||
18 | - - {vehicle: "iris", mission: "MC_mission_box", build_type: "RelWithDebInfo"} | ||
19 | - - {vehicle: "rover", mission: "rover_mission_1", build_type: "RelWithDebInfo"} | ||
20 | - #- {vehicle: "plane", mission: "FW_mission_1", build_type: "RelWithDebInfo"} | ||
21 | - #- {vehicle: "plane_catapult",mission: "FW_mission_1", build_type: "RelWithDebInfo"} | ||
22 | - #- {vehicle: "standard_vtol", mission: "VTOL_mission_1", build_type: "Coverage"} | ||
23 | - #- {vehicle: "standard_vtol", mission: "VTOL_mission_1", build_type: "AddressSanitizer"} | ||
24 | - #- {vehicle: "tailsitter", mission: "VTOL_mission_1", build_type: "RelWithDebInfo"} | ||
25 | - #- {vehicle: "tiltrotor", mission: "VTOL_mission_1", build_type: "RelWithDebInfo"} | ||
26 | - | ||
27 | - container: | ||
28 | - image: px4io/px4-dev-ros-melodic:2021-04-29 | ||
29 | - options: --privileged --ulimit core=-1 --security-opt seccomp=unconfined | ||
30 | - steps: | ||
31 | - - uses: actions/checkout@v1 | ||
32 | - with: | ||
33 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
34 | - | ||
35 | - - name: Prepare ccache timestamp | ||
36 | - id: ccache_cache_timestamp | ||
37 | - shell: cmake -P {0} | ||
38 | - run: | | ||
39 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
40 | - message("::set-output name=timestamp::${current_date}") | ||
41 | - - name: ccache cache files | ||
42 | - uses: actions/cache@v2 | ||
43 | - with: | ||
44 | - path: ~/.ccache | ||
45 | - key: sitl_tests-${{matrix.config.build_type}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
46 | - restore-keys: sitl_tests-${{matrix.config.build_type}}-ccache- | ||
47 | - - name: setup ccache | ||
48 | - run: | | ||
49 | - mkdir -p ~/.ccache | ||
50 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
51 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
52 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
53 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
54 | - ccache -s | ||
55 | - ccache -z | ||
56 | - | ||
57 | - - name: check environment | ||
58 | - run: | | ||
59 | - export | ||
60 | - ulimit -a | ||
61 | - - name: Build PX4 and sitl_gazebo | ||
62 | - env: | ||
63 | - PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}} | ||
64 | - run: | | ||
65 | - ccache -z | ||
66 | - make px4_sitl_default | ||
67 | - make px4_sitl_default sitl_gazebo | ||
68 | - ccache -s | ||
69 | - | ||
70 | - - name: Core dump settings | ||
71 | - run: | | ||
72 | - ulimit -c unlimited | ||
73 | - echo "`pwd`/%e.core" > /proc/sys/kernel/core_pattern | ||
74 | - | ||
75 | - - name: Run SITL tests | ||
76 | - env: | ||
77 | - PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}} | ||
78 | - run: | | ||
79 | - export | ||
80 | - ./test/rostest_px4_run.sh mavros_posix_test_mission.test mission:=${{matrix.config.mission}} vehicle:=${{matrix.config.vehicle}} | ||
81 | - | ||
82 | - - name: Look at core files | ||
83 | - if: failure() | ||
84 | - run: gdb build/px4_sitl_default/bin/px4 px4.core -ex "thread apply all bt" -ex "quit" | ||
85 | - - name: Upload px4 coredump | ||
86 | - if: failure() | ||
87 | - uses: actions/upload-artifact@v2-preview | ||
88 | - with: | ||
89 | - name: coredump | ||
90 | - path: px4.core | ||
91 | - | ||
92 | - - name: ecl EKF analysis | ||
93 | - if: always() | ||
94 | - run: ./Tools/ecl_ekf/process_logdata_ekf.py ~/.ros/log/*/*.ulg || true | ||
95 | - | ||
96 | - - name: Upload logs to flight review | ||
97 | - if: always() | ||
98 | - run: ./Tools/upload_log.py -q --description "${GITHUB_WORKFLOW} ${GITHUB_RUN_ID}" --feedback "${GITHUB_WORKFLOW} ${GITHUB_RUN_ID} ${GITHUB_REPOSITORY} ${GITHUB_REF}" --source CI ~/.ros/log/*/*.ulg | ||
99 | - | ||
100 | - - name: Upload px4 binary | ||
101 | - if: failure() | ||
102 | - uses: actions/upload-artifact@v2 | ||
103 | - with: | ||
104 | - name: binary | ||
105 | - path: build/px4_sitl_default/bin/px4 | ||
106 | - | ||
107 | - - name: Store PX4 log | ||
108 | - if: failure() | ||
109 | - uses: actions/upload-artifact@v2 | ||
110 | - with: | ||
111 | - name: px4_log | ||
112 | - path: ~/.ros/log/*/*.ulg | ||
113 | - | ||
114 | - - name: Store ROS log | ||
115 | - if: failure() | ||
116 | - uses: actions/upload-artifact@v2 | ||
117 | - with: | ||
118 | - name: ros_log | ||
119 | - path: ~/.ros/**/rostest-*.log | ||
120 | - | ||
121 | - # Report test coverage | ||
122 | - - name: Upload coverage | ||
123 | - if: contains(matrix.config.build_type, 'Coverage') | ||
124 | - run: | | ||
125 | - git config --global credential.helper "" # disable the keychain credential helper | ||
126 | - git config --global --add credential.helper store # enable the local store credential helper | ||
127 | - echo "https://x-access-token:${{ secrets.ACCESS_TOKEN }}@github.com" >> ~/.git-credentials # add credential | ||
128 | - git config --global url."https://github.com/".insteadof git@github.com: # credentials add credential | ||
129 | - mkdir -p coverage | ||
130 | - lcov --directory build/px4_sitl_default --base-directory build/px4_sitl_default --gcov-tool gcov --capture -o coverage/lcov.info | ||
131 | - - name: Upload coverage information to Codecov | ||
132 | - if: contains(matrix.config.build_type, 'Coverage') | ||
133 | - uses: codecov/codecov-action@v1 | ||
134 | - with: | ||
135 | - token: ${{ secrets.CODECOV_TOKEN }} | ||
136 | - flags: mavros_mission | ||
137 | - file: coverage/lcov.info |
1 | -name: MAVROS Offboard Tests | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - strategy: | ||
15 | - fail-fast: false | ||
16 | - matrix: | ||
17 | - config: | ||
18 | - - {test_file: "mavros_posix_tests_offboard_posctl.test", vehicle: "iris", build_type: "RelWithDebInfo"} | ||
19 | - #- {test_file: "mavros_posix_tests_offboard_attctl.test", vehicle: "iris", build_type: "RelWithDebInfo"} | ||
20 | - #- {test_file: "mavros_posix_tests_offboard_rpyrt_ctl.test", vehicle: "iris", build_type: "RelWithDebInfo"} | ||
21 | - | ||
22 | - container: | ||
23 | - image: px4io/px4-dev-ros-melodic:2021-04-29 | ||
24 | - options: --privileged --ulimit core=-1 --security-opt seccomp=unconfined | ||
25 | - steps: | ||
26 | - - uses: actions/checkout@v1 | ||
27 | - with: | ||
28 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
29 | - | ||
30 | - - name: Prepare ccache timestamp | ||
31 | - id: ccache_cache_timestamp | ||
32 | - shell: cmake -P {0} | ||
33 | - run: | | ||
34 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
35 | - message("::set-output name=timestamp::${current_date}") | ||
36 | - - name: ccache cache files | ||
37 | - uses: actions/cache@v2 | ||
38 | - with: | ||
39 | - path: ~/.ccache | ||
40 | - key: sitl_tests-${{matrix.config.build_type}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
41 | - restore-keys: sitl_tests-${{matrix.config.build_type}}-ccache- | ||
42 | - - name: setup ccache | ||
43 | - run: | | ||
44 | - mkdir -p ~/.ccache | ||
45 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
46 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
47 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
48 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
49 | - ccache -s | ||
50 | - ccache -z | ||
51 | - | ||
52 | - - name: check environment | ||
53 | - run: | | ||
54 | - export | ||
55 | - ulimit -a | ||
56 | - - name: Build PX4 and sitl_gazebo | ||
57 | - env: | ||
58 | - PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}} | ||
59 | - run: | | ||
60 | - ccache -z | ||
61 | - make px4_sitl_default | ||
62 | - make px4_sitl_default sitl_gazebo | ||
63 | - ccache -s | ||
64 | - | ||
65 | - - name: Core dump settings | ||
66 | - run: | | ||
67 | - ulimit -c unlimited | ||
68 | - echo "`pwd`/%e.core" > /proc/sys/kernel/core_pattern | ||
69 | - | ||
70 | - - name: Run SITL tests | ||
71 | - env: | ||
72 | - PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}} | ||
73 | - run: | | ||
74 | - export | ||
75 | - ./test/rostest_px4_run.sh ${{matrix.config.test_file}} vehicle:=${{matrix.config.vehicle}} | ||
76 | - | ||
77 | - - name: Look at core files | ||
78 | - if: failure() | ||
79 | - run: gdb build/px4_sitl_default/bin/px4 px4.core -ex "thread apply all bt" -ex "quit" | ||
80 | - - name: Upload px4 coredump | ||
81 | - if: failure() | ||
82 | - uses: actions/upload-artifact@v2-preview | ||
83 | - with: | ||
84 | - name: coredump | ||
85 | - path: px4.core | ||
86 | - | ||
87 | - - name: ecl EKF analysis | ||
88 | - if: always() | ||
89 | - run: ./Tools/ecl_ekf/process_logdata_ekf.py ~/.ros/log/*/*.ulg || true | ||
90 | - | ||
91 | - - name: Upload logs to flight review | ||
92 | - if: always() | ||
93 | - run: ./Tools/upload_log.py -q --description "${GITHUB_WORKFLOW} ${GITHUB_RUN_ID}" --feedback "${GITHUB_WORKFLOW} ${GITHUB_RUN_ID} ${GITHUB_REPOSITORY} ${GITHUB_REF}" --source CI ~/.ros/log/*/*.ulg | ||
94 | - | ||
95 | - - name: Upload px4 binary | ||
96 | - if: failure() | ||
97 | - uses: actions/upload-artifact@v2 | ||
98 | - with: | ||
99 | - name: binary | ||
100 | - path: build/px4_sitl_default/bin/px4 | ||
101 | - | ||
102 | - - name: Store PX4 log | ||
103 | - if: failure() | ||
104 | - uses: actions/upload-artifact@v2 | ||
105 | - with: | ||
106 | - name: px4_log | ||
107 | - path: ~/.ros/log/*/*.ulg | ||
108 | - | ||
109 | - - name: Store ROS log | ||
110 | - if: failure() | ||
111 | - uses: actions/upload-artifact@v2 | ||
112 | - with: | ||
113 | - name: ros_log | ||
114 | - path: ~/.ros/**/rostest-*.log | ||
115 | - | ||
116 | - # Report test coverage | ||
117 | - - name: Upload coverage | ||
118 | - if: contains(matrix.config.build_type, 'Coverage') | ||
119 | - run: | | ||
120 | - git config --global credential.helper "" # disable the keychain credential helper | ||
121 | - git config --global --add credential.helper store # enable the local store credential helper | ||
122 | - echo "https://x-access-token:${{ secrets.ACCESS_TOKEN }}@github.com" >> ~/.git-credentials # add credential | ||
123 | - git config --global url."https://github.com/".insteadof git@github.com: # credentials add credential | ||
124 | - mkdir -p coverage | ||
125 | - lcov --directory build/px4_sitl_default --base-directory build/px4_sitl_default --gcov-tool gcov --capture -o coverage/lcov.info | ||
126 | - - name: Upload coverage information to Codecov | ||
127 | - if: contains(matrix.config.build_type, 'Coverage') | ||
128 | - uses: codecov/codecov-action@v1 | ||
129 | - with: | ||
130 | - token: ${{ secrets.CODECOV_TOKEN }} | ||
131 | - flags: mavros_offboard | ||
132 | - file: coverage/lcov.info |
1 | -name: Metadata | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - - 'release/*' | ||
8 | - - 'pr-metadata-test' | ||
9 | - | ||
10 | -jobs: | ||
11 | - | ||
12 | - airframe: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - container: px4io/px4-dev-base-focal:2021-04-29 | ||
15 | - steps: | ||
16 | - - uses: actions/checkout@v1 | ||
17 | - with: | ||
18 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
19 | - | ||
20 | - - name: airframe metadata | ||
21 | - run: | | ||
22 | - make airframe_metadata | ||
23 | - cd build/px4_sitl_default/docs | ||
24 | - ls -ls * | ||
25 | - # TODO: deploy to userguide gitbook and s3 | ||
26 | - | ||
27 | - module: | ||
28 | - runs-on: ubuntu-latest | ||
29 | - container: px4io/px4-dev-base-focal:2021-04-29 | ||
30 | - steps: | ||
31 | - - uses: actions/checkout@v1 | ||
32 | - with: | ||
33 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
34 | - | ||
35 | - - name: module documentation | ||
36 | - run: | | ||
37 | - make module_documentation | ||
38 | - cd build/px4_sitl_default/docs | ||
39 | - ls -ls * | ||
40 | - # TODO: deploy to userguide gitbook and s3 | ||
41 | - | ||
42 | - parameter: | ||
43 | - runs-on: ubuntu-latest | ||
44 | - container: px4io/px4-dev-base-focal:2021-04-29 | ||
45 | - steps: | ||
46 | - - uses: actions/checkout@v1 | ||
47 | - with: | ||
48 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
49 | - | ||
50 | - - name: parameter metadata | ||
51 | - run: | | ||
52 | - make parameters_metadata | ||
53 | - ./src/lib/version/get_git_tag_or_branch_version.sh build/px4_sitl_default >> $GITHUB_ENV | ||
54 | - | ||
55 | - - uses: jakejarvis/s3-sync-action@master | ||
56 | - with: | ||
57 | - args: --acl public-read | ||
58 | - env: | ||
59 | - AWS_S3_BUCKET: 'px4-travis' | ||
60 | - AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | ||
61 | - AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | ||
62 | - AWS_REGION: 'us-west-1' | ||
63 | - SOURCE_DIR: 'build/px4_sitl_default/docs/' | ||
64 | - DEST_DIR: 'Firmware/${{ env.version }}/_general/' | ||
65 | - | ||
66 | - uorb_graph: | ||
67 | - runs-on: ubuntu-latest | ||
68 | - container: px4io/px4-dev-nuttx-focal:2021-04-29 | ||
69 | - steps: | ||
70 | - - uses: actions/checkout@v1 | ||
71 | - with: | ||
72 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
73 | - | ||
74 | - - name: uORB graph | ||
75 | - run: | | ||
76 | - make uorb_graphs | ||
77 | - cd Tools/uorb_graph | ||
78 | - ls -ls * | ||
79 | - # TODO: deploy graph_px4_sitl.json to S3 px4-travis:Firmware/master/ | ||
80 | - | ||
81 | - micrortps_agent: | ||
82 | - runs-on: ubuntu-latest | ||
83 | - container: px4io/px4-dev-base-focal:2021-04-29 | ||
84 | - steps: | ||
85 | - - uses: actions/checkout@v1 | ||
86 | - with: | ||
87 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
88 | - | ||
89 | - - name: microRTPS agent | ||
90 | - run: | | ||
91 | - make px4_sitl_rtps | ||
92 | - git clone https://github.com/PX4/micrortps_agent.git | ||
93 | - cp -R build/px4_sitl_rtps/src/modules/micrortps_bridge/micrortps_agent/* micrortps_agent | ||
94 | - | ||
95 | - ROS_msgs: | ||
96 | - runs-on: ubuntu-latest | ||
97 | - container: px4io/px4-dev-base-focal:2021-04-29 | ||
98 | - steps: | ||
99 | - - uses: actions/checkout@v1 | ||
100 | - with: | ||
101 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
102 | - | ||
103 | - - name: PX4 ROS msgs | ||
104 | - run: | | ||
105 | - git clone https://github.com/PX4/px4_msgs.git | ||
106 | - python3 msg/tools/uorb_to_ros_msgs.py msg/ px4_msgs/msg/ | ||
107 | - | ||
108 | - ROS2_bridge: | ||
109 | - runs-on: ubuntu-latest | ||
110 | - container: px4io/px4-dev-base-focal:2021-04-29 | ||
111 | - steps: | ||
112 | - - uses: actions/checkout@v1 | ||
113 | - with: | ||
114 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
115 | - | ||
116 | - - name: PX4 ROS2 bridge | ||
117 | - run: | | ||
118 | - git clone https://github.com/PX4/px4_ros_com.git | ||
119 | - ./msg/tools/uorb_to_ros_rtps_ids.py -i msg/tools/uorb_rtps_message_ids.yaml -o px4_ros_com/templates/uorb_rtps_message_ids.yaml |
1 | -name: Python CI Checks | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - steps: | ||
15 | - - uses: actions/checkout@v1 | ||
16 | - with: | ||
17 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
18 | - - name: Install Python3 | ||
19 | - run: sudo apt-get install python3 python3-setuptools python3-pip -y | ||
20 | - - name: Install tools | ||
21 | - run: pip3 install --user mypy flake8 | ||
22 | - - name: Check MAVSDK test scripts with mypy | ||
23 | - run: $HOME/.local/bin/mypy --strict test/mavsdk_tests/*.py | ||
24 | - - name: Check MAVSDK test scripts with flake8 | ||
25 | - run: $HOME/.local/bin/flake8 test/mavsdk_tests/*.py |
1 | -name: SITL Tests | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - strategy: | ||
15 | - fail-fast: false | ||
16 | - matrix: | ||
17 | - config: | ||
18 | - - {latitude: "59.617693", longitude: "-151.145316", altitude: "48", build_type: "RelWithDebInfo", model: "iris" } # Alaska | ||
19 | - - {latitude: "-38.071235", longitude: "145.281220", altitude: "31", build_type: "RelWithDebInfo", model: "standard_vtol" } # Australia | ||
20 | - - {latitude: "29.660316", longitude: "-82.316658", altitude: "30", build_type: "RelWithDebInfo", model: "tailsitter" } # Florida | ||
21 | - - {latitude: "47.397742", longitude: "8.545594", altitude: "488", build_type: "Coverage", model: "standard_vtol" } # Zurich | ||
22 | - container: | ||
23 | - image: px4io/px4-dev-simulation-focal:2021-04-29 | ||
24 | - options: --privileged --ulimit core=-1 --security-opt seccomp=unconfined | ||
25 | - steps: | ||
26 | - - uses: actions/checkout@v1 | ||
27 | - with: | ||
28 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
29 | - | ||
30 | - - name: Download MAVSDK | ||
31 | - run: wget "https://github.com/mavlink/MAVSDK/releases/download/v$(cat test/mavsdk_tests/MAVSDK_VERSION)/mavsdk_$(cat test/mavsdk_tests/MAVSDK_VERSION)_ubuntu20.04_amd64.deb" | ||
32 | - - name: Install MAVSDK | ||
33 | - run: dpkg -i "mavsdk_$(cat test/mavsdk_tests/MAVSDK_VERSION)_ubuntu20.04_amd64.deb" | ||
34 | - | ||
35 | - - name: Prepare ccache timestamp | ||
36 | - id: ccache_cache_timestamp | ||
37 | - shell: cmake -P {0} | ||
38 | - run: | | ||
39 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
40 | - message("::set-output name=timestamp::${current_date}") | ||
41 | - - name: ccache cache files | ||
42 | - uses: actions/cache@v2 | ||
43 | - with: | ||
44 | - path: ~/.ccache | ||
45 | - key: sitl_tests-${{matrix.config.build_type}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
46 | - restore-keys: sitl_tests-${{matrix.config.build_type}}-ccache- | ||
47 | - - name: setup ccache | ||
48 | - run: | | ||
49 | - mkdir -p ~/.ccache | ||
50 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
51 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
52 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
53 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
54 | - ccache -s | ||
55 | - ccache -z | ||
56 | - | ||
57 | - - name: check environment | ||
58 | - env: | ||
59 | - PX4_HOME_LAT: ${{matrix.config.latitude}} | ||
60 | - PX4_HOME_LON: ${{matrix.config.longitude}} | ||
61 | - PX4_HOME_ALT: ${{matrix.config.altitude}} | ||
62 | - PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}} | ||
63 | - run: | | ||
64 | - export | ||
65 | - ulimit -a | ||
66 | - - name: Build PX4 | ||
67 | - env: | ||
68 | - PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}} | ||
69 | - run: make px4_sitl_default | ||
70 | - - name: ccache post-run px4/firmware | ||
71 | - run: ccache -s | ||
72 | - - name: Build SITL Gazebo | ||
73 | - env: | ||
74 | - PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}} | ||
75 | - run: make px4_sitl_default sitl_gazebo | ||
76 | - - name: ccache post-run sitl_gazebo | ||
77 | - run: ccache -s | ||
78 | - - name: Build MAVSDK tests | ||
79 | - env: | ||
80 | - PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}} | ||
81 | - DONT_RUN: 1 | ||
82 | - run: make px4_sitl_default gazebo mavsdk_tests | ||
83 | - - name: ccache post-run mavsdk_tests | ||
84 | - run: ccache -s | ||
85 | - | ||
86 | - - name: Core dump settings | ||
87 | - run: | | ||
88 | - ulimit -c unlimited | ||
89 | - echo "`pwd`/%e.core" > /proc/sys/kernel/core_pattern | ||
90 | - | ||
91 | - - name: Run SITL tests | ||
92 | - env: | ||
93 | - PX4_HOME_LAT: ${{matrix.config.latitude}} | ||
94 | - PX4_HOME_LON: ${{matrix.config.longitude}} | ||
95 | - PX4_HOME_ALT: ${{matrix.config.altitude}} | ||
96 | - PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}} | ||
97 | - run: test/mavsdk_tests/mavsdk_test_runner.py --speed-factor 20 --abort-early --model ${{matrix.config.model}} --upload test/mavsdk_tests/configs/sitl.json | ||
98 | - | ||
99 | - - name: Look at core files | ||
100 | - if: failure() | ||
101 | - run: gdb build/px4_sitl_default/bin/px4 px4.core -ex "thread apply all bt" -ex "quit" | ||
102 | - - name: Upload px4 coredump | ||
103 | - if: failure() | ||
104 | - uses: actions/upload-artifact@v2-preview | ||
105 | - with: | ||
106 | - name: coredump | ||
107 | - path: px4.core | ||
108 | - | ||
109 | - - name: Upload px4 binary | ||
110 | - if: failure() | ||
111 | - uses: actions/upload-artifact@v2-preview | ||
112 | - with: | ||
113 | - name: binary | ||
114 | - path: build/px4_sitl_default/bin/px4 | ||
115 | - | ||
116 | - # Report test coverage | ||
117 | - - name: Upload coverage | ||
118 | - if: contains(matrix.config.build_type, 'Coverage') | ||
119 | - run: | | ||
120 | - git config --global credential.helper "" # disable the keychain credential helper | ||
121 | - git config --global --add credential.helper store # enable the local store credential helper | ||
122 | - echo "https://x-access-token:${{ secrets.ACCESS_TOKEN }}@github.com" >> ~/.git-credentials # add credential | ||
123 | - git config --global url."https://github.com/".insteadof git@github.com: # credentials add credential | ||
124 | - mkdir -p coverage | ||
125 | - lcov --directory build/px4_sitl_default --base-directory build/px4_sitl_default --gcov-tool gcov --capture -o coverage/lcov.info | ||
126 | - - name: Upload coverage information to Codecov | ||
127 | - if: contains(matrix.config.build_type, 'Coverage') | ||
128 | - uses: codecov/codecov-action@v1 | ||
129 | - with: | ||
130 | - token: ${{ secrets.CODECOV_TOKEN }} | ||
131 | - flags: mavsdk | ||
132 | - file: coverage/lcov.info |
1 | -# How to install: | ||
2 | -# gem install github_changelog_generator | ||
3 | -# How to run: | ||
4 | -# github_changelog_generator -u PX4 -p Firmware | ||
5 | -# Description: | ||
6 | -# The following params are sensible defaults for the PX4 project, | ||
7 | -# if you want to do a changelog before a release you need to update since-tag and future-releases, | ||
8 | - | ||
9 | -# Params: | ||
10 | -# github_changelog_generator --help for all options | ||
11 | - | ||
12 | -# max-issues | ||
13 | -# max threshold for github api queries | ||
14 | -# make sure you set your CHANGELOG_GITHUB_TOKEN before | ||
15 | -# running | ||
16 | -max-issues=1500 | ||
17 | - | ||
18 | -# exclude-tags-regex | ||
19 | -# excludes release candidates | ||
20 | -exclude-tags-regex=rc[0-9]{1,}|beta[0-9]{1,} | ||
21 | - | ||
22 | -# since-tag | ||
23 | -# version of last stable release | ||
24 | -# you need to change this depending on what you need | ||
25 | -# if you want a changelog between versions this is the lowest version | ||
26 | -since-tag=1.6.5 | ||
27 | - | ||
28 | -# future-release | ||
29 | -# version you are about to release | ||
30 | -# if you want a changelog between a version and all unreleased changes grouped as a release | ||
31 | -# eg: v1.6.5 to v1.7.0 | ||
32 | -future-release=v1.7.0 | ||
33 | - |
code/modify/.gitignore
deleted
100644 → 0
1 | -*.dSYM | ||
2 | -*.o | ||
3 | -*.gch | ||
4 | -*.pyc | ||
5 | -*~ | ||
6 | -.*.swp | ||
7 | -.context | ||
8 | -.cproject | ||
9 | -.DS_Store | ||
10 | -.gdbinit | ||
11 | -.gdb_history | ||
12 | -.project | ||
13 | -.settings | ||
14 | -.swp | ||
15 | -.~lock.* | ||
16 | -Testing/ | ||
17 | -Packages/* | ||
18 | -build/* | ||
19 | -build_*/ | ||
20 | -cscope.out | ||
21 | -cscope.in.out | ||
22 | -cscope.po.out | ||
23 | -Firmware.sublime-workspace | ||
24 | -user.sublime* | ||
25 | -/Documentation/doxy.log | ||
26 | -/Documentation/html/ | ||
27 | -/Documentation/doxygen*objdb*tmp | ||
28 | -.tags | ||
29 | -tags | ||
30 | -.tags_sorted_by_file | ||
31 | -.pydevproject | ||
32 | -.ropeproject | ||
33 | -*.orig | ||
34 | -Firmware.zip | ||
35 | -*.generated.h | ||
36 | -.vagrant | ||
37 | -*.pretty | ||
38 | -xcode | ||
39 | -rootfs/ | ||
40 | -*.autosave | ||
41 | -CMakeLists.txt.user | ||
42 | -GPATH | ||
43 | -GRTAGS | ||
44 | -GTAGS | ||
45 | -*.creator | ||
46 | -*.creator.user | ||
47 | -*.files | ||
48 | -*.includes | ||
49 | - | ||
50 | -# CLion ignores | ||
51 | -.idea | ||
52 | -cmake-build-*/ | ||
53 | - | ||
54 | -posix-configs/SITL/init/test/*_generated | ||
55 | - | ||
56 | -/airframes.md | ||
57 | -/airframes.xml | ||
58 | -/parameters.md | ||
59 | -/parameters.xml | ||
60 | -/modules | ||
61 | -/msg/ros/*.msg | ||
62 | - | ||
63 | -*.gcov | ||
64 | -.coverage | ||
65 | -.coverage.* | ||
66 | - | ||
67 | -# KDevelop ignores | ||
68 | -.kdev4/* | ||
69 | -*.kdev4 | ||
70 | - | ||
71 | -# cmake in tree (ninja) | ||
72 | -.ninja_deps | ||
73 | -.ninja_log | ||
74 | -bin/ | ||
75 | -build.ninja | ||
76 | -cmake_install.cmake | ||
77 | -CMakeCache.txt | ||
78 | -CMakeFiles | ||
79 | -compile_commands.json | ||
80 | -CPackConfig.cmake | ||
81 | -CPackSourceConfig.cmake | ||
82 | -CTestTestfile.cmake | ||
83 | -external/ | ||
84 | -rules.ninja | ||
85 | - | ||
86 | -# in tree build | ||
87 | -**/*.a | ||
88 | -**/*.px4mod | ||
89 | -**/*.stamp | ||
90 | -/coverage* | ||
91 | -/functional-* | ||
92 | -/generated_params/ | ||
93 | -/googletest-*/ | ||
94 | -/logs | ||
95 | -/mavsdk_tests | ||
96 | -/test_mixer_multirotor | ||
97 | -/unit-* | ||
98 | -/uORB/ | ||
99 | -DartConfiguration.tcl | ||
100 | -msg/tmp/ | ||
101 | -msg/topics_sources/ | ||
102 | -platforms/posix/apps.cpp | ||
103 | -platforms/posix/apps.h | ||
104 | -src/lib/version/build_git_version.h | ||
105 | -src/modules/simulator/simulator_config.h | ||
106 | -src/systemcmds/topic_listener/listener_generated.cpp | ||
107 | - | ||
108 | -# SITL | ||
109 | -dataman | ||
110 | -eeprom/ |
code/modify/.gitmodules
deleted
100644 → 0
1 | -[submodule "mavlink/include/mavlink/v2.0"] | ||
2 | - path = mavlink/include/mavlink/v2.0 | ||
3 | - url = https://github.com/mavlink/c_library_v2.git | ||
4 | - branch = master | ||
5 | -[submodule "src/drivers/uavcan/libuavcan"] | ||
6 | - path = src/drivers/uavcan/libuavcan | ||
7 | - url = https://github.com/PX4/libuavcan.git | ||
8 | - branch = px4 | ||
9 | -[submodule "Tools/jMAVSim"] | ||
10 | - path = Tools/jMAVSim | ||
11 | - url = https://github.com/PX4/jMAVSim.git | ||
12 | - branch = master | ||
13 | -[submodule "Tools/sitl_gazebo"] | ||
14 | - path = Tools/sitl_gazebo | ||
15 | - url = https://github.com/PX4/PX4-SITL_gazebo.git | ||
16 | - branch = master | ||
17 | -[submodule "src/lib/matrix"] | ||
18 | - path = src/lib/matrix | ||
19 | - url = https://github.com/PX4/PX4-Matrix.git | ||
20 | - branch = master | ||
21 | -[submodule "src/lib/ecl"] | ||
22 | - path = src/lib/ecl | ||
23 | - url = https://github.com/PX4/PX4-ECL.git | ||
24 | - branch = master | ||
25 | -[submodule "boards/atlflight/cmake_hexagon"] | ||
26 | - path = boards/atlflight/cmake_hexagon | ||
27 | - url = https://github.com/PX4/cmake_hexagon.git | ||
28 | - branch = px4 | ||
29 | -[submodule "src/drivers/gps/devices"] | ||
30 | - path = src/drivers/gps/devices | ||
31 | - url = https://github.com/PX4/PX4-GPSDrivers.git | ||
32 | - branch = master | ||
33 | -[submodule "src/modules/micrortps_bridge/micro-CDR"] | ||
34 | - path = src/modules/micrortps_bridge/micro-CDR | ||
35 | - url = https://github.com/PX4/Micro-CDR.git | ||
36 | - branch = master | ||
37 | -[submodule "platforms/nuttx/NuttX/nuttx"] | ||
38 | - path = platforms/nuttx/NuttX/nuttx | ||
39 | - url = https://github.com/PX4/NuttX.git | ||
40 | - branch = px4_firmware_nuttx-10.0.0+ | ||
41 | -[submodule "platforms/nuttx/NuttX/apps"] | ||
42 | - path = platforms/nuttx/NuttX/apps | ||
43 | - url = https://github.com/PX4/NuttX-apps.git | ||
44 | - branch = px4_firmware_nuttx-10.0.0+ | ||
45 | -[submodule "platforms/qurt/dspal"] | ||
46 | - path = platforms/qurt/dspal | ||
47 | - url = https://github.com/ATLFlight/dspal.git | ||
48 | -[submodule "Tools/flightgear_bridge"] | ||
49 | - path = Tools/flightgear_bridge | ||
50 | - url = https://github.com/PX4/PX4-FlightGear-Bridge.git | ||
51 | -[submodule "Tools/jsbsim_bridge"] | ||
52 | - path = Tools/jsbsim_bridge | ||
53 | - url = https://github.com/PX4/px4-jsbsim-bridge.git | ||
54 | -[submodule "src/drivers/uavcan_v1/libcanard"] | ||
55 | - path = src/drivers/uavcan_v1/libcanard | ||
56 | - url = https://github.com/UAVCAN/libcanard.git | ||
57 | -[submodule "src/drivers/uavcan_v1/public_regulated_data_types"] | ||
58 | - path = src/drivers/uavcan_v1/public_regulated_data_types | ||
59 | - url = https://github.com/UAVCAN/public_regulated_data_types.git | ||
60 | -[submodule "src/drivers/uavcannode_gps_demo/public_regulated_data_types"] | ||
61 | - path = src/drivers/uavcannode_gps_demo/public_regulated_data_types | ||
62 | - url = https://github.com/UAVCAN/public_regulated_data_types.git | ||
63 | -[submodule "src/drivers/uavcannode_gps_demo/libcanard"] | ||
64 | - path = src/drivers/uavcannode_gps_demo/libcanard | ||
65 | - url = https://github.com/UAVCAN/libcanard.git | ||
66 | -[submodule "src/drivers/uavcan_v1/legacy_data_types"] | ||
67 | - path = src/drivers/uavcan_v1/legacy_data_types | ||
68 | - url = https://github.com/PX4/public_regulated_data_types.git | ||
69 | - branch = legacy |
code/modify/.travis.yml
deleted
100644 → 0
1 | -language: cpp | ||
2 | - | ||
3 | -git: | ||
4 | - depth: 100 | ||
5 | - submodules: false | ||
6 | - | ||
7 | -matrix: | ||
8 | - fast_finish: true | ||
9 | - include: | ||
10 | - - os: linux | ||
11 | - dist: xenial | ||
12 | - # In order to stay under the coverity rate limit, we only run this weekly | ||
13 | - # and not on push which is configured in travis-ci settings. | ||
14 | - if: branch = master | ||
15 | - | ||
16 | -before_install: | ||
17 | - - echo -n | openssl s_client -connect scan.coverity.com:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | sudo tee -a /etc/ssl/certs/ca- | ||
18 | - | ||
19 | -install: | ||
20 | - - export PATH=$HOME/.local/bin:$PATH | ||
21 | - - pip install --user --upgrade pip | ||
22 | - - pip install --user -r Tools/setup/requirements.txt | ||
23 | - | ||
24 | -script: | ||
25 | - - make | ||
26 | - | ||
27 | -addons: | ||
28 | - coverity_scan: | ||
29 | - project: | ||
30 | - name: "PX4/Firmware" | ||
31 | - description: "Build submitted via Travis CI" | ||
32 | - notification_email: ci@px4.io | ||
33 | - build_command_prepend: "make distclean" | ||
34 | - build_command: "make px4_sitl_default" | ||
35 | - branch_pattern: coverity_scan |
code/modify/.vscode/.gitignore
deleted
100644 → 0
1 | -{ | ||
2 | - "configurations": [ | ||
3 | - { | ||
4 | - "name": "PX4", | ||
5 | - "includePath": [ | ||
6 | - "${workspaceFolder}/**" | ||
7 | - ], | ||
8 | - "defines": [], | ||
9 | - "macFrameworkPath": [], | ||
10 | - "configurationProvider": "ms-vscode.cmake-tools", | ||
11 | - "cppStandard": "c++14", | ||
12 | - "cStandard": "c11" | ||
13 | - } | ||
14 | - ], | ||
15 | - "version": 4 | ||
16 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
code/modify/.vscode/cmake-kits.json
deleted
100644 → 0
1 | -CONFIG: | ||
2 | - default: px4_sitl_default | ||
3 | - choices: | ||
4 | - px4_sitl_default: | ||
5 | - short: px4_sitl | ||
6 | - buildType: RelWithDebInfo | ||
7 | - settings: | ||
8 | - CONFIG: px4_sitl_default | ||
9 | - px4_sitl_replay: | ||
10 | - short: px4_sitl_replay | ||
11 | - buildType: RelWithDebInfo | ||
12 | - settings: | ||
13 | - CONFIG: px4_sitl_replay | ||
14 | - px4_sitl_test: | ||
15 | - short: px4_sitl_test | ||
16 | - buildType: RelWithDebInfo | ||
17 | - settings: | ||
18 | - CONFIG: px4_sitl_test | ||
19 | - px4_io-v2_default: | ||
20 | - short: px4_io-v2 | ||
21 | - buildType: MinSizeRel | ||
22 | - settings: | ||
23 | - CONFIG: px4_io-v2_default | ||
24 | - px4_fmu-v2_default: | ||
25 | - short: px4_fmu-v2 | ||
26 | - buildType: MinSizeRel | ||
27 | - settings: | ||
28 | - CONFIG: px4_fmu-v2_default | ||
29 | - px4_fmu-v3_default: | ||
30 | - short: px4_fmu-v3 | ||
31 | - buildType: MinSizeRel | ||
32 | - settings: | ||
33 | - CONFIG: px4_fmu-v3_default | ||
34 | - px4_fmu-v4_default: | ||
35 | - short: px4_fmu-v4 | ||
36 | - buildType: MinSizeRel | ||
37 | - settings: | ||
38 | - CONFIG: px4_fmu-v4_default | ||
39 | - px4_fmu-v4pro_default: | ||
40 | - short: px4_fmu-v4pro | ||
41 | - buildType: MinSizeRel | ||
42 | - settings: | ||
43 | - CONFIG: px4_fmu-v4pro_default | ||
44 | - px4_fmu-v5_default: | ||
45 | - short: px4_fmu-v5 | ||
46 | - buildType: MinSizeRel | ||
47 | - settings: | ||
48 | - CONFIG: px4_fmu-v5_default | ||
49 | - px4_fmu-v5x_default: | ||
50 | - short: px4_fmu-v5x | ||
51 | - buildType: MinSizeRel | ||
52 | - settings: | ||
53 | - CONFIG: px4_fmu-v5x_default | ||
54 | - airmind_mindpx-v2_default: | ||
55 | - short: airmind_mindpx-v2 | ||
56 | - buildType: MinSizeRel | ||
57 | - settings: | ||
58 | - CONFIG: airmind_mindpx-v2_default | ||
59 | - ark_can-flow_default: | ||
60 | - short: ark_can-flow_default | ||
61 | - buildType: MinSizeRel | ||
62 | - settings: | ||
63 | - CONFIG: ark_can-flow_default | ||
64 | - ark_can-flow_canbootloader: | ||
65 | - short: ark_can-flow_canbootloader | ||
66 | - buildType: MinSizeRel | ||
67 | - settings: | ||
68 | - CONFIG: ark_can-flow_canbootloader | ||
69 | - ark_can-gps_default: | ||
70 | - short: ark_can-gps_default | ||
71 | - buildType: MinSizeRel | ||
72 | - settings: | ||
73 | - CONFIG: ark_can-gps_default | ||
74 | - ark_can-gps_canbootloader: | ||
75 | - short: ark_can-gps_canbootloader | ||
76 | - buildType: MinSizeRel | ||
77 | - settings: | ||
78 | - CONFIG: ark_can-gps_canbootloader | ||
79 | - av_x-v1_default: | ||
80 | - short: av_x-v1 | ||
81 | - buildType: MinSizeRel | ||
82 | - settings: | ||
83 | - CONFIG: av_x-v1_default | ||
84 | - bitcraze_crazyflie_default: | ||
85 | - short: bitcraze_crazyflie | ||
86 | - buildType: MinSizeRel | ||
87 | - settings: | ||
88 | - CONFIG: bitcraze_crazyflie_default | ||
89 | - cuav_can-gps-v1_default: | ||
90 | - short: cuav_can-gps-v1_default | ||
91 | - buildType: MinSizeRel | ||
92 | - settings: | ||
93 | - CONFIG: cuav_can-gps-v1_default | ||
94 | - cuav_can-gps-v1_canbootloader: | ||
95 | - short: cuav_can-gps-v1_canbootloader | ||
96 | - buildType: MinSizeRel | ||
97 | - settings: | ||
98 | - CONFIG: cuav_can-gps-v1_canbootloader | ||
99 | - cuav_nora_default: | ||
100 | - short: cuav_nora | ||
101 | - buildType: MinSizeRel | ||
102 | - settings: | ||
103 | - CONFIG: cuav_nora_default | ||
104 | - cuav_x7pro_default: | ||
105 | - short: cuav_x7pro | ||
106 | - buildType: MinSizeRel | ||
107 | - settings: | ||
108 | - CONFIG: cuav_x7pro_default | ||
109 | - cubepilot_cubeorange_test: | ||
110 | - short: cubepilot_cubeorange | ||
111 | - buildType: MinSizeRel | ||
112 | - settings: | ||
113 | - CONFIG: cubepilot_orange_test | ||
114 | - emlid_navio2_default: | ||
115 | - short: emlid_navio2 | ||
116 | - buildType: MinSizeRel | ||
117 | - settings: | ||
118 | - CONFIG: emlid_navio2_default | ||
119 | - freefly_can-rtk-gps_default: | ||
120 | - short: freefly_can-rtk-gps_default | ||
121 | - buildType: MinSizeRel | ||
122 | - settings: | ||
123 | - CONFIG: freefly_can-rtk-gps_default | ||
124 | - freefly_can-rtk-gps_canbootloader: | ||
125 | - short: freefly_can-rtk-gps_canbootloader | ||
126 | - buildType: MinSizeRel | ||
127 | - settings: | ||
128 | - CONFIG: freefly_can-rtk-gps_canbootloader | ||
129 | - holybro_can-gps-v1_canbootloader: | ||
130 | - short: holybro_can-gps-v1_canbootloader | ||
131 | - buildType: MinSizeRel | ||
132 | - settings: | ||
133 | - CONFIG: holybro_can-gps-v1_canbootloader | ||
134 | - holybro_can-gps-v1_default: | ||
135 | - short: holybro_can-gps-v1_default | ||
136 | - buildType: MinSizeRel | ||
137 | - settings: | ||
138 | - CONFIG: holybro_can-gps-v1_default | ||
139 | - holybro_durandal-v1_default: | ||
140 | - short: holybro_durandal-v1 | ||
141 | - buildType: MinSizeRel | ||
142 | - settings: | ||
143 | - CONFIG: holybro_durandal-v1_default | ||
144 | - modalai_fc-v1_default: | ||
145 | - short: modalai_fc-v1 | ||
146 | - buildType: MinSizeRel | ||
147 | - settings: | ||
148 | - CONFIG: modalai_fc-v1_default | ||
149 | - modalai_fc-v2_default: | ||
150 | - short: modalai_fc-v2 | ||
151 | - buildType: MinSizeRel | ||
152 | - settings: | ||
153 | - CONFIG: modalai_fc-v2_default | ||
154 | - mro_ctrl-zero-f7_default: | ||
155 | - short: mro_ctrl-zero-f7 | ||
156 | - buildType: MinSizeRel | ||
157 | - settings: | ||
158 | - CONFIG: mro_ctrl-zero-f7_default | ||
159 | - mro_pixracerpro_bootloader: | ||
160 | - short: mro_pixracerpro_bootloader | ||
161 | - buildType: MinSizeRel | ||
162 | - settings: | ||
163 | - CONFIG: mro_pixracerpro_bootloader | ||
164 | - mro_pixracerpro_default: | ||
165 | - short: mro_pixracerpro_default | ||
166 | - buildType: MinSizeRel | ||
167 | - settings: | ||
168 | - CONFIG: mro_pixracerpro_default | ||
169 | - mro_x21-777_default: | ||
170 | - short: mro_x2.1-777 | ||
171 | - buildType: MinSizeRel | ||
172 | - settings: | ||
173 | - CONFIG: mro_x21-777_default | ||
174 | - nxp_fmuk66-v3_default: | ||
175 | - short: nxp_fmuk66-v3 | ||
176 | - buildType: MinSizeRel | ||
177 | - settings: | ||
178 | - CONFIG: nxp_fmuk66-v3_default |
code/modify/.vscode/extensions.json
deleted
100644 → 0
1 | -{ | ||
2 | - // See http://go.microsoft.com/fwlink/?LinkId=827846 | ||
3 | - // for the documentation about the extensions.json format | ||
4 | - "recommendations": [ | ||
5 | - "chiehyu.vscode-astyle", | ||
6 | - "dan-c-underwood.arm", | ||
7 | - "fredericbonnet.cmake-test-adapter", | ||
8 | - "github.vscode-pull-request-github", | ||
9 | - "marus25.cortex-debug", | ||
10 | - "ms-azuretools.vscode-docker", | ||
11 | - "ms-iot.vscode-ros", | ||
12 | - "ms-python.python", | ||
13 | - "ms-vscode.cmake-tools", | ||
14 | - "ms-vscode.cpptools", | ||
15 | - "ms-vscode.cpptools-extension-pack", | ||
16 | - "redhat.vscode-yaml", | ||
17 | - "streetsidesoftware.code-spell-checker", | ||
18 | - "twxs.cmake", | ||
19 | - "uavcan.dsdl", | ||
20 | - "wholroyd.jinja", | ||
21 | - "zixuanwang.linkerscript" | ||
22 | - ] | ||
23 | -} |
code/modify/.vscode/settings.json
deleted
100644 → 0
1 | -{ | ||
2 | - "astyle.astylerc": "${workspaceFolder}/Tools/astyle/astylerc", | ||
3 | - "astyle.c.enable": true, | ||
4 | - "astyle.cpp.enable": true, | ||
5 | - "breadcrumbs.enabled": true, | ||
6 | - "C_Cpp.autoAddFileAssociations": false, | ||
7 | - "C_Cpp.clang_format_fallbackStyle": "none", | ||
8 | - "C_Cpp.default.browse.limitSymbolsToIncludedHeaders": true, | ||
9 | - "C_Cpp.default.cppStandard": "c++14", | ||
10 | - "C_Cpp.default.cStandard": "c11", | ||
11 | - "C_Cpp.formatting": "Disabled", | ||
12 | - "C_Cpp.intelliSenseEngine": "Default", | ||
13 | - "C_Cpp.vcpkg.enabled": false, | ||
14 | - "C_Cpp.workspaceParsingPriority": "low", | ||
15 | - "cmake.buildBeforeRun": true, | ||
16 | - "cmake.buildDirectory": "${workspaceFolder}/build/${variant:CONFIG}", | ||
17 | - "cmake.buildTask": true, | ||
18 | - "cmake.configureOnOpen": true, | ||
19 | - "cmake.ctest.parallelJobs": 1, | ||
20 | - "cmake.skipConfigureIfCachePresent": true, | ||
21 | - "cmakeExplorer.buildDir": "${workspaceFolder}/build/px4_sitl_test", | ||
22 | - "cmakeExplorer.parallelJobs": 1, | ||
23 | - "cmakeExplorer.suiteDelimiter": "-", | ||
24 | - "cortex-debug.enableTelemetry": false, | ||
25 | - "cSpell.allowCompoundWords": true, | ||
26 | - "cSpell.diagnosticLevel": "Hint", | ||
27 | - "cSpell.showStatus": false, | ||
28 | - "cSpell.words": [ | ||
29 | - "acro", | ||
30 | - "nuttx", | ||
31 | - "esc" | ||
32 | - ], | ||
33 | - "debug.toolBarLocation": "docked", | ||
34 | - "editor.acceptSuggestionOnEnter": "off", | ||
35 | - "editor.defaultFormatter": "chiehyu.vscode-astyle", | ||
36 | - "editor.dragAndDrop": false, | ||
37 | - "editor.insertSpaces": false, | ||
38 | - "editor.minimap.maxColumn": 120, | ||
39 | - "editor.minimap.renderCharacters": false, | ||
40 | - "editor.minimap.showSlider": "always", | ||
41 | - "editor.suggest.localityBonus": true, | ||
42 | - "editor.tabSize": 8, | ||
43 | - "editor.wordWrapColumn": 120, | ||
44 | - "explorer.openEditors.visible": 0, | ||
45 | - "files.insertFinalNewline": true, | ||
46 | - "files.trimTrailingWhitespace": true, | ||
47 | - "files.watcherExclude": { | ||
48 | - "**/build/**": true | ||
49 | - }, | ||
50 | - "git.detectSubmodulesLimit": 20, | ||
51 | - "git.ignoreLimitWarning": true, | ||
52 | - "githubPullRequests.defaultMergeMethod": "squash", | ||
53 | - "githubPullRequests.telemetry.enabled": false, | ||
54 | - "files.associations": { | ||
55 | - "*.jinja": "jinja", | ||
56 | - "algorithm": "cpp", | ||
57 | - "array": "cpp", | ||
58 | - "atomic": "cpp", | ||
59 | - "bitset": "cpp", | ||
60 | - "cctype": "cpp", | ||
61 | - "cfenv": "cpp", | ||
62 | - "chrono": "cpp", | ||
63 | - "cinttypes": "cpp", | ||
64 | - "clocale": "cpp", | ||
65 | - "cmath": "cpp", | ||
66 | - "codecvt": "cpp", | ||
67 | - "complex": "cpp", | ||
68 | - "condition_variable": "cpp", | ||
69 | - "csignal": "cpp", | ||
70 | - "cstdarg": "cpp", | ||
71 | - "cstddef": "cpp", | ||
72 | - "cstdint": "cpp", | ||
73 | - "cstdio": "cpp", | ||
74 | - "cstdlib": "cpp", | ||
75 | - "cstring": "cpp", | ||
76 | - "ctime": "cpp", | ||
77 | - "cwchar": "cpp", | ||
78 | - "cwctype": "cpp", | ||
79 | - "deque": "cpp", | ||
80 | - "exception": "cpp", | ||
81 | - "forward_list": "cpp", | ||
82 | - "fstream": "cpp", | ||
83 | - "functional": "cpp", | ||
84 | - "future": "cpp", | ||
85 | - "hash_map": "cpp", | ||
86 | - "hash_set": "cpp", | ||
87 | - "initializer_list": "cpp", | ||
88 | - "iomanip": "cpp", | ||
89 | - "iosfwd": "cpp", | ||
90 | - "iostream": "cpp", | ||
91 | - "istream": "cpp", | ||
92 | - "iterator": "cpp", | ||
93 | - "limits": "cpp", | ||
94 | - "list": "cpp", | ||
95 | - "map": "cpp", | ||
96 | - "memory": "cpp", | ||
97 | - "memory_resource": "cpp", | ||
98 | - "mutex": "cpp", | ||
99 | - "new": "cpp", | ||
100 | - "numeric": "cpp", | ||
101 | - "optional": "cpp", | ||
102 | - "ostream": "cpp", | ||
103 | - "random": "cpp", | ||
104 | - "ratio": "cpp", | ||
105 | - "regex": "cpp", | ||
106 | - "set": "cpp", | ||
107 | - "sstream": "cpp", | ||
108 | - "stdexcept": "cpp", | ||
109 | - "streambuf": "cpp", | ||
110 | - "string": "cpp", | ||
111 | - "string_view": "cpp", | ||
112 | - "strstream": "cpp", | ||
113 | - "system_error": "cpp", | ||
114 | - "thread": "cpp", | ||
115 | - "tuple": "cpp", | ||
116 | - "type_traits": "cpp", | ||
117 | - "typeindex": "cpp", | ||
118 | - "typeinfo": "cpp", | ||
119 | - "unordered_map": "cpp", | ||
120 | - "unordered_set": "cpp", | ||
121 | - "utility": "cpp", | ||
122 | - "valarray": "cpp", | ||
123 | - "variant": "cpp", | ||
124 | - "vector": "cpp" | ||
125 | - }, | ||
126 | - "search.exclude": { | ||
127 | - "${workspaceFolder}/build": true | ||
128 | - }, | ||
129 | - "search.showLineNumbers": true, | ||
130 | - "telemetry.enableTelemetry": false, | ||
131 | - "terminal.integrated.copyOnSelection": true, | ||
132 | - "terminal.integrated.rightClickBehavior": "paste", | ||
133 | - "terminal.integrated.scrollback": 5000, | ||
134 | - "window.title": "${dirty} ${activeEditorMedium}${separator}${rootName}", | ||
135 | - "workbench.editor.highlightModifiedTabs": true, | ||
136 | - "workbench.enableExperiments": false, | ||
137 | - "workbench.settings.enableNaturalLanguageSearch": false, | ||
138 | - "yaml.schemas": { | ||
139 | - "${workspaceFolder}/validation/module_schema.yaml": "${workspaceFolder}/src/modules/*/module.yaml" | ||
140 | - } | ||
141 | -} |
code/modify/.vscode/tasks.json
deleted
100644 → 0
1 | -{ | ||
2 | - // See https://go.microsoft.com/fwlink/?LinkId=733558 | ||
3 | - // for the documentation about the tasks.json format | ||
4 | - "version": "2.0.0", | ||
5 | - "tasks": [ | ||
6 | - { | ||
7 | - "label": "build", | ||
8 | - "type": "shell", | ||
9 | - "command": "/bin/bash", | ||
10 | - "args": [ | ||
11 | - "-c", | ||
12 | - "${command:cmake.tasksBuildCommand}" | ||
13 | - ], | ||
14 | - "options": { | ||
15 | - "cwd": "${command:cmake.buildDirectory}" | ||
16 | - }, | ||
17 | - "group": { | ||
18 | - "kind": "build", | ||
19 | - "isDefault": true, | ||
20 | - }, | ||
21 | - "problemMatcher": { | ||
22 | - "base": "$gcc", | ||
23 | - "fileLocation": ["relative", "${command:cmake.buildDirectory}"] | ||
24 | - }, | ||
25 | - "presentation":{ | ||
26 | - "echo": false, | ||
27 | - "showReuseMessage": false, | ||
28 | - "clear": true, | ||
29 | - "panel": "shared", | ||
30 | - "group": "build" | ||
31 | - } | ||
32 | - }, | ||
33 | - { | ||
34 | - "label": "test", | ||
35 | - "type": "shell", | ||
36 | - "command": "make tests", | ||
37 | - "options": { | ||
38 | - "cwd": "${workspaceFolder}" | ||
39 | - }, | ||
40 | - "group": { | ||
41 | - "kind": "test", | ||
42 | - "isDefault": true, | ||
43 | - }, | ||
44 | - "presentation":{ | ||
45 | - "echo": true, | ||
46 | - "showReuseMessage": false, | ||
47 | - "clear": false, | ||
48 | - "panel": "shared", | ||
49 | - "group": "test" | ||
50 | - } | ||
51 | - }, | ||
52 | - { | ||
53 | - "label": "jmavsim build", | ||
54 | - "type": "shell", | ||
55 | - "command": "ant create_run_jar copy_res", | ||
56 | - "options": { | ||
57 | - "cwd": "${workspaceFolder}/Tools/jMAVSim" | ||
58 | - }, | ||
59 | - "problemMatcher": [], | ||
60 | - "presentation":{ | ||
61 | - "echo": true, | ||
62 | - "reveal": "never", | ||
63 | - "focus": false, | ||
64 | - "panel": "shared", | ||
65 | - "showReuseMessage": false, | ||
66 | - "clear": false, | ||
67 | - } | ||
68 | - }, | ||
69 | - { | ||
70 | - "label": "jmavsim", | ||
71 | - "type": "shell", | ||
72 | - "dependsOn": "jmavsim build", | ||
73 | - "command": "java -Djava.ext.dirs= -jar jmavsim_run.jar -r 250 -lockstep -tcp localhost:4560 -qgc", | ||
74 | - "options": { | ||
75 | - "cwd": "${workspaceFolder}/Tools/jMAVSim/out/production", | ||
76 | - "env": { | ||
77 | - "PX4_SIM_SPEED_FACTOR": "1" | ||
78 | - } | ||
79 | - }, | ||
80 | - "isBackground": true, | ||
81 | - "presentation": { | ||
82 | - "echo": true, | ||
83 | - "reveal": "never", | ||
84 | - "focus": false, | ||
85 | - "panel": "shared", | ||
86 | - "showReuseMessage": false, | ||
87 | - "clear": false | ||
88 | - }, | ||
89 | - "problemMatcher": [ | ||
90 | - { | ||
91 | - "pattern": [ | ||
92 | - { | ||
93 | - "regexp": ".", | ||
94 | - "file": 1, | ||
95 | - "location": 2, | ||
96 | - "message": 3 | ||
97 | - } | ||
98 | - ], | ||
99 | - "background": { | ||
100 | - "activeOnStart": true, | ||
101 | - "beginsPattern": ".", | ||
102 | - "endsPattern": ".", | ||
103 | - } | ||
104 | - } | ||
105 | - ] | ||
106 | - }, | ||
107 | - { | ||
108 | - "label": "jmavsim kill", | ||
109 | - "type": "shell", | ||
110 | - "command": "kill $(ps aux | grep jmavsim | grep -v 'grep' | awk '{print $2}')", | ||
111 | - "presentation": { | ||
112 | - "echo": false, | ||
113 | - "reveal": "never", | ||
114 | - "focus": false, | ||
115 | - "panel": "shared", | ||
116 | - "showReuseMessage": false, | ||
117 | - "clear": false | ||
118 | - }, | ||
119 | - "problemMatcher": [] | ||
120 | - }, | ||
121 | - { | ||
122 | - "label": "gazebo build", | ||
123 | - "type": "shell", | ||
124 | - "command": "make px4_sitl_default sitl_gazebo", | ||
125 | - "options": { | ||
126 | - "cwd": "${workspaceFolder}" | ||
127 | - }, | ||
128 | - "problemMatcher": [], | ||
129 | - "presentation":{ | ||
130 | - "echo": true, | ||
131 | - "reveal": "always", | ||
132 | - "focus": false, | ||
133 | - "panel": "shared", | ||
134 | - "showReuseMessage": false, | ||
135 | - "clear": false, | ||
136 | - } | ||
137 | - }, | ||
138 | - { | ||
139 | - "label": "gazebo start", | ||
140 | - "type": "shell", | ||
141 | - "dependsOn": "gazebo build", | ||
142 | - "options": { | ||
143 | - "cwd": "${workspaceFolder}", | ||
144 | - "env": { | ||
145 | - "GAZEBO_PLUGIN_PATH": "${workspaceFolder}/build/px4_sitl_default/build_gazebo", | ||
146 | - "GAZEBO_MODEL_PATH": "${workspaceFolder}/Tools/sitl_gazebo/models", | ||
147 | - "PX4_SIM_SPEED_FACTOR": "1" | ||
148 | - } | ||
149 | - }, | ||
150 | - "command": "gzserver --verbose ${workspaceFolder}/Tools/sitl_gazebo/worlds/${input:gazeboWorld}.world", | ||
151 | - "isBackground": true, | ||
152 | - "presentation": { | ||
153 | - "echo": true, | ||
154 | - "reveal": "never", | ||
155 | - "focus": false, | ||
156 | - "panel": "shared", | ||
157 | - "showReuseMessage": false, | ||
158 | - "clear": false | ||
159 | - }, | ||
160 | - "problemMatcher": [ | ||
161 | - { | ||
162 | - "pattern": [ | ||
163 | - { | ||
164 | - "regexp": ".", | ||
165 | - "file": 1, | ||
166 | - "location": 2, | ||
167 | - "message": 3 | ||
168 | - } | ||
169 | - ], | ||
170 | - "background": { | ||
171 | - "activeOnStart": true, | ||
172 | - "beginsPattern": ".", | ||
173 | - "endsPattern": ".", | ||
174 | - } | ||
175 | - } | ||
176 | - ] | ||
177 | - }, | ||
178 | - { | ||
179 | - "label": "gazebo", | ||
180 | - "type": "shell", | ||
181 | - "dependsOn": "gazebo start", | ||
182 | - "options": { | ||
183 | - "cwd": "${workspaceFolder}", | ||
184 | - "env": { | ||
185 | - "GAZEBO_PLUGIN_PATH": "${workspaceFolder}/build/px4_sitl_default/build_gazebo", | ||
186 | - "GAZEBO_MODEL_PATH": "${workspaceFolder}/Tools/sitl_gazebo/models", | ||
187 | - "PX4_SIM_SPEED_FACTOR": "1" | ||
188 | - } | ||
189 | - }, | ||
190 | - "command": "gz model --verbose --spawn-file=${workspaceFolder}/Tools/sitl_gazebo/models/${input:vehicleModel}/${input:vehicleModel}.sdf --model-name=${input:vehicleModel} -x 1.01 -y 0.98 -z 0.83", | ||
191 | - "isBackground": false, | ||
192 | - "presentation": { | ||
193 | - "echo": true, | ||
194 | - "reveal": "never", | ||
195 | - "focus": false, | ||
196 | - "panel": "shared", | ||
197 | - "showReuseMessage": false, | ||
198 | - "clear": false | ||
199 | - }, | ||
200 | - "problemMatcher": [ | ||
201 | - { | ||
202 | - "pattern": [ | ||
203 | - { | ||
204 | - "regexp": ".", | ||
205 | - "file": 1, | ||
206 | - "location": 2, | ||
207 | - "message": 3 | ||
208 | - } | ||
209 | - ], | ||
210 | - "background": { | ||
211 | - "activeOnStart": true, | ||
212 | - "beginsPattern": ".", | ||
213 | - "endsPattern": ".", | ||
214 | - } | ||
215 | - } | ||
216 | - ] | ||
217 | - }, | ||
218 | - { | ||
219 | - "label": "gazebo client", | ||
220 | - "type": "shell", | ||
221 | - "dependsOn": "gazebo build", | ||
222 | - "options": { | ||
223 | - "cwd": "${workspaceFolder}", | ||
224 | - "env": { | ||
225 | - "GAZEBO_PLUGIN_PATH": "${workspaceFolder}/build/px4_sitl_default/build_gazebo", | ||
226 | - "GAZEBO_MODEL_PATH": "${workspaceFolder}/Tools/sitl_gazebo/models", | ||
227 | - "PX4_SIM_SPEED_FACTOR": "1" | ||
228 | - } | ||
229 | - }, | ||
230 | - "command": "gzclient --verbose", | ||
231 | - "isBackground": true, | ||
232 | - "presentation": { | ||
233 | - "echo": true, | ||
234 | - "reveal": "never", | ||
235 | - "focus": false, | ||
236 | - "panel": "shared", | ||
237 | - "showReuseMessage": false, | ||
238 | - "clear": false | ||
239 | - }, | ||
240 | - "problemMatcher": [ | ||
241 | - { | ||
242 | - "pattern": [ | ||
243 | - { | ||
244 | - "regexp": ".", | ||
245 | - "file": 1, | ||
246 | - "location": 2, | ||
247 | - "message": 3 | ||
248 | - } | ||
249 | - ], | ||
250 | - "background": { | ||
251 | - "activeOnStart": true, | ||
252 | - "beginsPattern": ".", | ||
253 | - "endsPattern": ".", | ||
254 | - } | ||
255 | - } | ||
256 | - ] | ||
257 | - }, | ||
258 | - { | ||
259 | - "label": "gazebo kill", | ||
260 | - "type": "shell", | ||
261 | - "command": "killall gzserver", | ||
262 | - "presentation": { | ||
263 | - "echo": true, | ||
264 | - "reveal": "silent", | ||
265 | - "focus": false, | ||
266 | - "panel": "shared", | ||
267 | - "showReuseMessage": false, | ||
268 | - "clear": false | ||
269 | - }, | ||
270 | - "problemMatcher": [], | ||
271 | - "dependsOn":["px4_sitl_cleanup"] | ||
272 | - }, | ||
273 | - { | ||
274 | - "label": "px4_sitl_cleanup", | ||
275 | - "type": "shell", | ||
276 | - "command": "rm -rfv /tmp/px4*", | ||
277 | - "presentation": { | ||
278 | - "echo": true, | ||
279 | - "reveal": "silent", | ||
280 | - "focus": false, | ||
281 | - "panel": "shared", | ||
282 | - "showReuseMessage": false, | ||
283 | - "clear": false | ||
284 | - }, | ||
285 | - "problemMatcher": [], | ||
286 | - "dependsOn":["px4_kill"] | ||
287 | - }, | ||
288 | - { | ||
289 | - "label": "px4_kill", | ||
290 | - "type": "shell", | ||
291 | - "command": "killall px4 || true", | ||
292 | - "presentation": { | ||
293 | - "echo": true, | ||
294 | - "reveal": "silent", | ||
295 | - "focus": false, | ||
296 | - "panel": "shared", | ||
297 | - "showReuseMessage": false, | ||
298 | - "clear": false | ||
299 | - }, | ||
300 | - "problemMatcher": [] | ||
301 | - }, | ||
302 | - { | ||
303 | - "label": "mavlink shell", | ||
304 | - "type": "shell", | ||
305 | - "command": "./Tools/mavlink_shell.py", | ||
306 | - "options": { | ||
307 | - "cwd": "${workspaceFolder}" | ||
308 | - }, | ||
309 | - "presentation": { | ||
310 | - "echo": true, | ||
311 | - "reveal": "always", | ||
312 | - "focus": true, | ||
313 | - "panel": "new", | ||
314 | - "showReuseMessage": false, | ||
315 | - "clear": false | ||
316 | - }, | ||
317 | - "problemMatcher": [] | ||
318 | - }, | ||
319 | - { | ||
320 | - "label": "miniterm.py", | ||
321 | - "type": "shell", | ||
322 | - "command": "miniterm.py --raw - 57600", | ||
323 | - "options": { | ||
324 | - "cwd": "${workspaceFolder}" | ||
325 | - }, | ||
326 | - "presentation": { | ||
327 | - "echo": true, | ||
328 | - "reveal": "always", | ||
329 | - "focus": true, | ||
330 | - "panel": "new", | ||
331 | - "showReuseMessage": false, | ||
332 | - "clear": false | ||
333 | - }, | ||
334 | - "problemMatcher": [] | ||
335 | - } | ||
336 | - ], | ||
337 | - "inputs": [ | ||
338 | - { | ||
339 | - "type": "pickString", | ||
340 | - "id": "vehicleModel", | ||
341 | - "description": "gazebo model", | ||
342 | - "options": [ | ||
343 | - "iris", | ||
344 | - "typhoon_h480", | ||
345 | - "plane", | ||
346 | - "plane_catapult", | ||
347 | - "plane_lidar", | ||
348 | - "standard_vtol", | ||
349 | - "tailsitter", | ||
350 | - "tiltrotor", | ||
351 | - "r1_rover", | ||
352 | - "boat" | ||
353 | - ], | ||
354 | - "default": "iris" | ||
355 | - }, | ||
356 | - { | ||
357 | - "type": "pickString", | ||
358 | - "id": "gazeboWorld", | ||
359 | - "description": "gazebo world", | ||
360 | - "options": [ | ||
361 | - "baylands", | ||
362 | - "empty", | ||
363 | - "ksql_airport", | ||
364 | - "mcmillan_airfield", | ||
365 | - "sonoma_raceway", | ||
366 | - "warehouse", | ||
367 | - "windy", | ||
368 | - "yosemite" | ||
369 | - ], | ||
370 | - "default": "empty" | ||
371 | - } | ||
372 | - ] | ||
373 | -} |
code/modify/.ycm_extra_conf.py
deleted
100644 → 0
1 | -# This file is NOT licensed under the GPLv3, which is the license for the rest | ||
2 | -# of YouCompleteMe. | ||
3 | -# | ||
4 | -# Here's the license text for this file: | ||
5 | -# | ||
6 | -# This is free and unencumbered software released into the public domain. | ||
7 | -# | ||
8 | -# Anyone is free to copy, modify, publish, use, compile, sell, or | ||
9 | -# distribute this software, either in source code form or as a compiled | ||
10 | -# binary, for any purpose, commercial or non-commercial, and by any | ||
11 | -# means. | ||
12 | -# | ||
13 | -# In jurisdictions that recognize copyright laws, the author or authors | ||
14 | -# of this software dedicate any and all copyright interest in the | ||
15 | -# software to the public domain. We make this dedication for the benefit | ||
16 | -# of the public at large and to the detriment of our heirs and | ||
17 | -# successors. We intend this dedication to be an overt act of | ||
18 | -# relinquishment in perpetuity of all present and future rights to this | ||
19 | -# software under copyright law. | ||
20 | -# | ||
21 | -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
22 | -# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | ||
23 | -# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. | ||
24 | -# IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR | ||
25 | -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, | ||
26 | -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
27 | -# OTHER DEALINGS IN THE SOFTWARE. | ||
28 | -# | ||
29 | -# For more information, please refer to <http://unlicense.org/> | ||
30 | - | ||
31 | -import os | ||
32 | -import ycm_core | ||
33 | - | ||
34 | -# These are the compilation flags that will be used in case there's no | ||
35 | -# compilation database set (by default, one is not set). | ||
36 | -# CHANGE THIS LIST OF FLAGS. YES, THIS IS THE DROID YOU HAVE BEEN LOOKING FOR. | ||
37 | -flags = [ | ||
38 | -'-Wall', | ||
39 | -'-Wextra', | ||
40 | -'-Werror', | ||
41 | -#'-Wc++98-compat', | ||
42 | -'-Wno-long-long', | ||
43 | -'-Wno-variadic-macros', | ||
44 | -'-fexceptions', | ||
45 | -'-DNDEBUG', | ||
46 | -# You 100% do NOT need -DUSE_CLANG_COMPLETER in your flags; only the YCM | ||
47 | -# source code needs it. | ||
48 | -#'-DUSE_CLANG_COMPLETER', | ||
49 | -# THIS IS IMPORTANT! Without a "-std=<something>" flag, clang won't know which | ||
50 | -# language to use when compiling headers. So it will guess. Badly. So C++ | ||
51 | -# headers will be compiled as C headers. You don't want that so ALWAYS specify | ||
52 | -# a "-std=<something>". | ||
53 | -# For a C project, you would set this to something like 'c99' instead of | ||
54 | -# 'c++14'. | ||
55 | -'-std=c++14', | ||
56 | -# ...and the same thing goes for the magic -x option which specifies the | ||
57 | -# language that the files to be compiled are written in. This is mostly | ||
58 | -# relevant for c++ headers. | ||
59 | -# For a C project, you would set this to 'c' instead of 'c++'. | ||
60 | -'-x', | ||
61 | -'c++', | ||
62 | -'-undef', # get rid of standard definitions to allow us to include arm math header | ||
63 | -'-I', os.path.join(os.path.expanduser("~"),'gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include'), | ||
64 | -'-I', 'Build/px4_io-v2_default.build/nuttx-export/include/', | ||
65 | -'-I', './NuttX/nuttx/arch/arm/include', | ||
66 | -'-include', './src/include/visibility.h', | ||
67 | -'-I', './src', | ||
68 | -'-I', './src/modules', | ||
69 | -'-I', './src/include', | ||
70 | -'-I', './src/lib', | ||
71 | -'-I', './NuttX', | ||
72 | -] | ||
73 | - | ||
74 | - | ||
75 | -# Set this to the absolute path to the folder (NOT the file!) containing the | ||
76 | -# compile_commands.json file to use that instead of 'flags'. See here for | ||
77 | -# more details: http://clang.llvm.org/docs/JSONCompilationDatabase.html | ||
78 | -# | ||
79 | -# Most projects will NOT need to set this to anything; you can just change the | ||
80 | -# 'flags' list of compilation flags. Notice that YCM itself uses that approach. | ||
81 | -compilation_database_folder = '' | ||
82 | - | ||
83 | -if os.path.exists( compilation_database_folder ): | ||
84 | - database = ycm_core.CompilationDatabase( compilation_database_folder ) | ||
85 | -else: | ||
86 | - database = None | ||
87 | - | ||
88 | -SOURCE_EXTENSIONS = [ '.cpp', '.cxx', '.cc', '.c', '.m', '.mm' ] | ||
89 | - | ||
90 | -def DirectoryOfThisScript(): | ||
91 | - return os.path.dirname( os.path.abspath( __file__ ) ) | ||
92 | - | ||
93 | - | ||
94 | -def MakeRelativePathsInFlagsAbsolute( flags, working_directory ): | ||
95 | - if not working_directory: | ||
96 | - return list( flags ) | ||
97 | - new_flags = [] | ||
98 | - make_next_absolute = False | ||
99 | - path_flags = [ '-isystem', '-I', '-iquote', '--sysroot=' ] | ||
100 | - for flag in flags: | ||
101 | - new_flag = flag | ||
102 | - | ||
103 | - if make_next_absolute: | ||
104 | - make_next_absolute = False | ||
105 | - if not flag.startswith( '/' ): | ||
106 | - new_flag = os.path.join( working_directory, flag ) | ||
107 | - | ||
108 | - for path_flag in path_flags: | ||
109 | - if flag == path_flag: | ||
110 | - make_next_absolute = True | ||
111 | - break | ||
112 | - | ||
113 | - if flag.startswith( path_flag ): | ||
114 | - path = flag[ len( path_flag ): ] | ||
115 | - new_flag = path_flag + os.path.join( working_directory, path ) | ||
116 | - break | ||
117 | - | ||
118 | - if new_flag: | ||
119 | - new_flags.append( new_flag ) | ||
120 | - return new_flags | ||
121 | - | ||
122 | - | ||
123 | -def IsHeaderFile( filename ): | ||
124 | - extension = os.path.splitext( filename )[ 1 ] | ||
125 | - return extension in [ '.h', '.hxx', '.hpp', '.hh' ] | ||
126 | - | ||
127 | - | ||
128 | -def GetCompilationInfoForFile( filename ): | ||
129 | - # The compilation_commands.json file generated by CMake does not have entries | ||
130 | - # for header files. So we do our best by asking the db for flags for a | ||
131 | - # corresponding source file, if any. If one exists, the flags for that file | ||
132 | - # should be good enough. | ||
133 | - if IsHeaderFile( filename ): | ||
134 | - basename = os.path.splitext( filename )[ 0 ] | ||
135 | - for extension in SOURCE_EXTENSIONS: | ||
136 | - replacement_file = basename + extension | ||
137 | - if os.path.exists( replacement_file ): | ||
138 | - compilation_info = database.GetCompilationInfoForFile( | ||
139 | - replacement_file ) | ||
140 | - if compilation_info.compiler_flags_: | ||
141 | - return compilation_info | ||
142 | - return None | ||
143 | - return database.GetCompilationInfoForFile( filename ) | ||
144 | - | ||
145 | - | ||
146 | -def FlagsForFile( filename, **kwargs ): | ||
147 | - if database: | ||
148 | - # Bear in mind that compilation_info.compiler_flags_ does NOT return a | ||
149 | - # python list, but a "list-like" StringVec object | ||
150 | - compilation_info = GetCompilationInfoForFile( filename ) | ||
151 | - if not compilation_info: | ||
152 | - return None | ||
153 | - | ||
154 | - final_flags = MakeRelativePathsInFlagsAbsolute( | ||
155 | - compilation_info.compiler_flags_, | ||
156 | - compilation_info.compiler_working_dir_ ) | ||
157 | - | ||
158 | - # NOTE: This is just for YouCompleteMe; it's highly likely that your project | ||
159 | - # does NOT need to remove the stdlib flag. DO NOT USE THIS IN YOUR | ||
160 | - # ycm_extra_conf IF YOU'RE NOT 100% SURE YOU NEED IT. | ||
161 | - #try: | ||
162 | - # final_flags.remove( '-stdlib=libc++' ) | ||
163 | - #except ValueError: | ||
164 | - # pass | ||
165 | - else: | ||
166 | - relative_to = DirectoryOfThisScript() | ||
167 | - final_flags = MakeRelativePathsInFlagsAbsolute( flags, relative_to ) | ||
168 | - | ||
169 | - return { | ||
170 | - 'flags': final_flags, | ||
171 | - 'do_cache': True | ||
172 | - } |
code/original/.ackrc
deleted
100644 → 0
1 | ---ignore-dir=Documentation |
1 | -#!/usr/bin/env groovy | ||
2 | - | ||
3 | -pipeline { | ||
4 | - agent none | ||
5 | - stages { | ||
6 | - | ||
7 | - stage('Build') { | ||
8 | - steps { | ||
9 | - script { | ||
10 | - def build_nodes = [:] | ||
11 | - def docker_images = [ | ||
12 | - armhf: "px4io/px4-dev-armhf:2021-04-29", | ||
13 | - arm64: "px4io/px4-dev-aarch64:2021-04-29", | ||
14 | - base: "px4io/px4-dev-base-bionic:2021-04-29", | ||
15 | - nuttx: "px4io/px4-dev-nuttx-focal:2021-04-29", | ||
16 | - snapdragon: "lorenzmeier/px4-dev-snapdragon:2020-04-01" | ||
17 | - ] | ||
18 | - | ||
19 | - def armhf_builds = [ | ||
20 | - target: ["beaglebone_blue_default", "emlid_navio2_default", "px4_raspberrypi_default", "scumaker_pilotpi_default"], | ||
21 | - image: docker_images.armhf, | ||
22 | - archive: false | ||
23 | - ] | ||
24 | - | ||
25 | - def arm64_builds = [ | ||
26 | - target: ["scumaker_pilotpi_arm64"], | ||
27 | - image: docker_images.arm64, | ||
28 | - archive: false | ||
29 | - ] | ||
30 | - | ||
31 | - def base_builds = [ | ||
32 | - target: ["px4_sitl_rtps"], | ||
33 | - image: docker_images.base, | ||
34 | - archive: false | ||
35 | - ] | ||
36 | - | ||
37 | - def nuttx_builds_archive = [ | ||
38 | - target: [ | ||
39 | - "airmind_mindpx-v2_default", | ||
40 | - "ark_can-flow_canbootloader", | ||
41 | - "ark_can-flow_default", | ||
42 | - "av_x-v1_default", | ||
43 | - "bitcraze_crazyflie_default", | ||
44 | - "bitcraze_crazyflie21_default", | ||
45 | - "cuav_can-gps-v1_canbootloader", | ||
46 | - "cuav_can-gps-v1_default", | ||
47 | - "cuav_nora_default", | ||
48 | - "cuav_x7pro_default", | ||
49 | - "cubepilot_cubeorange_default", | ||
50 | - "cubepilot_cubeyellow_default", | ||
51 | - "freefly_can-rtk-gps_canbootloader", | ||
52 | - "freefly_can-rtk-gps_default", | ||
53 | - "holybro_can-gps-v1_canbootloader", | ||
54 | - "holybro_can-gps-v1_default", | ||
55 | - "holybro_durandal-v1_default", | ||
56 | - "holybro_kakutef7_default", | ||
57 | - "holybro_pix32v5_default", | ||
58 | - "modalai_fc-v1_default", | ||
59 | - "modalai_fc-v1_rtps", | ||
60 | - "modalai_fc-v2_default", | ||
61 | - "mro_ctrl-zero-f7_default", | ||
62 | - "mro_ctrl-zero-f7-oem_default", | ||
63 | - "mro_ctrl-zero-h7_default", | ||
64 | - "mro_ctrl-zero-h7-oem_default", | ||
65 | - "mro_pixracerpro_default", | ||
66 | - "mro_x21-777_default", | ||
67 | - "mro_x21_default", | ||
68 | - "nxp_fmuk66-e_default", | ||
69 | - "nxp_fmuk66-e_rtps", | ||
70 | - "nxp_fmuk66-e_socketcan", | ||
71 | - "nxp_fmuk66-v3_default", | ||
72 | - "nxp_fmuk66-v3_rtps", | ||
73 | - "nxp_fmuk66-v3_socketcan", | ||
74 | - "nxp_fmurt1062-v1_default", | ||
75 | - "nxp_ucans32k146_default", | ||
76 | - "nxp_ucans32k146_canbootloader", | ||
77 | - "omnibus_f4sd_default", | ||
78 | - "px4_fmu-v2_default", | ||
79 | - "px4_fmu-v2_fixedwing", | ||
80 | - "px4_fmu-v2_multicopter", | ||
81 | - "px4_fmu-v2_rover", | ||
82 | - "px4_fmu-v3_default", | ||
83 | - "px4_fmu-v4_cannode", | ||
84 | - "px4_fmu-v4_default", | ||
85 | - "px4_fmu-v4pro_default", | ||
86 | - "px4_fmu-v5_ctrlalloc", | ||
87 | - "px4_fmu-v5_debug", | ||
88 | - "px4_fmu-v5_default", | ||
89 | - "px4_fmu-v5_fixedwing", | ||
90 | - "px4_fmu-v5_multicopter", | ||
91 | - "px4_fmu-v5_optimized", | ||
92 | - "px4_fmu-v5_rover", | ||
93 | - "px4_fmu-v5_rtps", | ||
94 | - "px4_fmu-v5_stackcheck", | ||
95 | - "px4_fmu-v5_uavcanv0periph", | ||
96 | - "px4_fmu-v5_uavcanv1", | ||
97 | - "px4_fmu-v5x_base_phy_DP83848C", | ||
98 | - "px4_fmu-v5x_default", | ||
99 | - "px4_fmu-v6u_default", | ||
100 | - "px4_fmu-v6x_default", | ||
101 | - "px4_io-v2_default", | ||
102 | - "spracing_h7extreme_default", | ||
103 | - "uvify_core_default" | ||
104 | - ], | ||
105 | - image: docker_images.nuttx, | ||
106 | - archive: true | ||
107 | - ] | ||
108 | - | ||
109 | - def snapdragon_builds = [ | ||
110 | - target: ["atlflight_eagle_qurt", "atlflight_eagle_default"], | ||
111 | - image: docker_images.snapdragon, | ||
112 | - archive: false | ||
113 | - ] | ||
114 | - | ||
115 | - def docker_builds = [ | ||
116 | - armhf_builds, base_builds, nuttx_builds_archive//, snapdragon_builds | ||
117 | - ] | ||
118 | - | ||
119 | - for (def build_type = 0; build_type < docker_builds.size(); build_type++) { | ||
120 | - for (def build_target = 0; build_target < docker_builds[build_type].target.size(); build_target++) { | ||
121 | - build_nodes.put(docker_builds[build_type].target[build_target], | ||
122 | - createBuildNode(docker_builds[build_type].archive, docker_builds[build_type].image, docker_builds[build_type].target[build_target]) | ||
123 | - ) | ||
124 | - } | ||
125 | - } | ||
126 | - | ||
127 | - parallel build_nodes | ||
128 | - | ||
129 | - } // script | ||
130 | - } // steps | ||
131 | - } // stage Build | ||
132 | - | ||
133 | - // TODO: actually upload artifacts to S3 | ||
134 | - // stage('S3 Upload') { | ||
135 | - // agent { | ||
136 | - // docker { image 'px4io/px4-dev-base-focal:2021-04-29' } | ||
137 | - // } | ||
138 | - // options { | ||
139 | - // skipDefaultCheckout() | ||
140 | - // } | ||
141 | - // when { | ||
142 | - // anyOf { | ||
143 | - // branch 'master' | ||
144 | - // branch 'beta' | ||
145 | - // branch 'stable' | ||
146 | - // branch 'pr-jenkins' // for testing | ||
147 | - // } | ||
148 | - // } | ||
149 | - // steps { | ||
150 | - // sh 'echo "uploading to S3"' | ||
151 | - // } | ||
152 | - // } | ||
153 | - | ||
154 | - } // stages | ||
155 | - environment { | ||
156 | - CCACHE_DIR = '/tmp/ccache' | ||
157 | - CI = true | ||
158 | - } | ||
159 | - options { | ||
160 | - buildDiscarder(logRotator(numToKeepStr: '5', artifactDaysToKeepStr: '14')) | ||
161 | - timeout(time: 90, unit: 'MINUTES') | ||
162 | - } | ||
163 | -} | ||
164 | - | ||
165 | -def createBuildNode(Boolean archive, String docker_image, String target) { | ||
166 | - return { | ||
167 | - | ||
168 | - // TODO: fix the snapdragon image | ||
169 | - bypass_entrypoint = '' | ||
170 | - if (docker_image == 'lorenzmeier/px4-dev-snapdragon:2020-04-01') { | ||
171 | - bypass_entrypoint = ' --entrypoint=""' | ||
172 | - } | ||
173 | - | ||
174 | - node { | ||
175 | - docker.withRegistry('https://registry.hub.docker.com', 'docker_hub_dagar') { | ||
176 | - docker.image(docker_image).inside('-e CCACHE_BASEDIR=${WORKSPACE} -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' + bypass_entrypoint) { | ||
177 | - stage(target) { | ||
178 | - try { | ||
179 | - sh('export') | ||
180 | - checkout(scm) | ||
181 | - sh('make distclean') | ||
182 | - sh('git fetch --tags') | ||
183 | - sh('ccache -s') | ||
184 | - sh('make ' + target) | ||
185 | - sh('ccache -s') | ||
186 | - sh('make sizes') | ||
187 | - if (archive) { | ||
188 | - archiveArtifacts(allowEmptyArchive: false, artifacts: 'build/*/*.px4, build/*/*.elf, build/*/*.bin', fingerprint: true, onlyIfSuccessful: true) | ||
189 | - } | ||
190 | - sh('make ' + target + ' package') | ||
191 | - archiveArtifacts(allowEmptyArchive: true, artifacts: 'build/*/*.tar.bz2', fingerprint: true, onlyIfSuccessful: true) | ||
192 | - archiveArtifacts(allowEmptyArchive: true, artifacts: 'build/*/*.deb', fingerprint: true, onlyIfSuccessful: true) | ||
193 | - } | ||
194 | - catch (exc) { | ||
195 | - throw (exc) | ||
196 | - } | ||
197 | - finally { | ||
198 | - sh('make distclean') | ||
199 | - } | ||
200 | - } | ||
201 | - } | ||
202 | - } | ||
203 | - } | ||
204 | - } | ||
205 | -} |
1 | -#!/usr/bin/env groovy | ||
2 | - | ||
3 | -pipeline { | ||
4 | - agent none | ||
5 | - stages { | ||
6 | - stage('Hardware Test') { | ||
7 | - | ||
8 | - parallel { | ||
9 | - | ||
10 | - stage("cubepilot_cubeorange_test") { | ||
11 | - stages { | ||
12 | - stage("build cubepilot_cubeorange_test") { | ||
13 | - agent { | ||
14 | - docker { | ||
15 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
16 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
17 | - } | ||
18 | - } | ||
19 | - steps { | ||
20 | - checkout scm | ||
21 | - sh 'export' | ||
22 | - sh 'make distclean' | ||
23 | - sh 'ccache -s' | ||
24 | - sh 'git fetch --tags' | ||
25 | - sh 'make cubepilot_cubeorange_test' | ||
26 | - sh 'make sizes' | ||
27 | - sh 'ccache -s' | ||
28 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'cubepilot_cubeorange_test' | ||
29 | - } | ||
30 | - post { | ||
31 | - always { | ||
32 | - sh 'make distclean' | ||
33 | - } | ||
34 | - } | ||
35 | - } // stage build | ||
36 | - stage("test") { | ||
37 | - agent { | ||
38 | - label 'cubepilot_cubeorange' | ||
39 | - } | ||
40 | - stages { | ||
41 | - stage("flash") { | ||
42 | - steps { | ||
43 | - sh 'export' | ||
44 | - sh 'find /dev/serial' | ||
45 | - unstash 'cubepilot_cubeorange_test' | ||
46 | - // flash board and watch bootup | ||
47 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/cubepilot_cubeorange_test/cubepilot_cubeorange_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
48 | - } | ||
49 | - } | ||
50 | - stage("configure") { | ||
51 | - steps { | ||
52 | - // configure | ||
53 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
54 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set IMU_GYRO_RATEMAX 2000"' | ||
55 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
56 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
57 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
58 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
59 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
60 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
61 | - } | ||
62 | - } | ||
63 | - stage("status") { | ||
64 | - steps { | ||
65 | - statusFTDI() | ||
66 | - } | ||
67 | - } | ||
68 | - stage("tests") { | ||
69 | - steps { | ||
70 | - // run tests | ||
71 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
72 | - } | ||
73 | - } | ||
74 | - stage("reset") { | ||
75 | - steps { | ||
76 | - cleanupFTDI() | ||
77 | - } | ||
78 | - } | ||
79 | - } | ||
80 | - } // stage test | ||
81 | - } | ||
82 | - } | ||
83 | - | ||
84 | - stage("cuav_x7pro_test") { | ||
85 | - stages { | ||
86 | - stage("build cuav_x7pro_test") { | ||
87 | - agent { | ||
88 | - docker { | ||
89 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
90 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
91 | - } | ||
92 | - } | ||
93 | - steps { | ||
94 | - checkout scm | ||
95 | - sh 'export' | ||
96 | - sh 'make distclean' | ||
97 | - sh 'ccache -s' | ||
98 | - sh 'git fetch --tags' | ||
99 | - sh 'make cuav_x7pro_test' | ||
100 | - sh 'make sizes' | ||
101 | - sh 'ccache -s' | ||
102 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'cuav_x7pro_test' | ||
103 | - } | ||
104 | - post { | ||
105 | - always { | ||
106 | - sh 'make distclean' | ||
107 | - } | ||
108 | - } | ||
109 | - } // stage build | ||
110 | - stage("test") { | ||
111 | - agent { | ||
112 | - label 'cuav_x7pro' | ||
113 | - } | ||
114 | - stages { | ||
115 | - stage("flash") { | ||
116 | - steps { | ||
117 | - sh 'export' | ||
118 | - sh 'find /dev/serial' | ||
119 | - unstash 'cuav_x7pro_test' | ||
120 | - // flash board and watch bootup | ||
121 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/cuav_x7pro_test/cuav_x7pro_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
122 | - } | ||
123 | - } | ||
124 | - stage("configure") { | ||
125 | - steps { | ||
126 | - // configure | ||
127 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
128 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
129 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
130 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
131 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
132 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
133 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
134 | - } | ||
135 | - } | ||
136 | - stage("status") { | ||
137 | - steps { | ||
138 | - statusFTDI() | ||
139 | - } | ||
140 | - } | ||
141 | - stage("tests") { | ||
142 | - steps { | ||
143 | - // run tests | ||
144 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
145 | - } | ||
146 | - } | ||
147 | - stage("reset") { | ||
148 | - steps { | ||
149 | - cleanupFTDI() | ||
150 | - } | ||
151 | - } | ||
152 | - } | ||
153 | - } // stage test | ||
154 | - } | ||
155 | - } | ||
156 | - | ||
157 | - stage("px4_fmu-v3_test") { | ||
158 | - stages { | ||
159 | - stage("build px4_fmu-v3_test") { | ||
160 | - agent { | ||
161 | - docker { | ||
162 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
163 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
164 | - } | ||
165 | - } | ||
166 | - steps { | ||
167 | - checkout scm | ||
168 | - sh 'export' | ||
169 | - sh 'make distclean' | ||
170 | - sh 'ccache -s' | ||
171 | - sh 'git fetch --tags' | ||
172 | - sh 'make px4_fmu-v3_test' | ||
173 | - sh 'make sizes' | ||
174 | - sh 'ccache -s' | ||
175 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'px4_fmu-v3_test' | ||
176 | - } | ||
177 | - post { | ||
178 | - always { | ||
179 | - sh 'make distclean' | ||
180 | - } | ||
181 | - } | ||
182 | - } // stage build | ||
183 | - stage("test") { | ||
184 | - agent { | ||
185 | - label 'px4_fmu-v3' | ||
186 | - } | ||
187 | - stages { | ||
188 | - stage("flash") { | ||
189 | - steps { | ||
190 | - sh 'export' | ||
191 | - sh 'find /dev/serial' | ||
192 | - unstash 'px4_fmu-v3_test' | ||
193 | - // flash board and watch bootup | ||
194 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v3_test/px4_fmu-v3_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
195 | - } | ||
196 | - } | ||
197 | - stage("configure") { | ||
198 | - steps { | ||
199 | - // configure | ||
200 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
201 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 13000"' // generic vtol standard | ||
202 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
203 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
204 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
205 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
206 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
207 | - } | ||
208 | - } | ||
209 | - stage("status") { | ||
210 | - steps { | ||
211 | - statusFTDI() | ||
212 | - } | ||
213 | - } | ||
214 | - stage("tests") { | ||
215 | - steps { | ||
216 | - // run tests | ||
217 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
218 | - } | ||
219 | - } | ||
220 | - stage("reset") { | ||
221 | - steps { | ||
222 | - cleanupFTDI() | ||
223 | - } | ||
224 | - } | ||
225 | - } | ||
226 | - } // stage test | ||
227 | - } | ||
228 | - } | ||
229 | - | ||
230 | - stage("px4_fmu-v4_test") { | ||
231 | - stages { | ||
232 | - stage("build px4_fmu-v4_test") { | ||
233 | - agent { | ||
234 | - docker { | ||
235 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
236 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
237 | - } | ||
238 | - } | ||
239 | - steps { | ||
240 | - checkout scm | ||
241 | - sh 'export' | ||
242 | - sh 'make distclean' | ||
243 | - sh 'ccache -s' | ||
244 | - sh 'git fetch --tags' | ||
245 | - sh 'make px4_fmu-v4_test' | ||
246 | - sh 'make sizes' | ||
247 | - sh 'ccache -s' | ||
248 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'px4_fmu-v4_test' | ||
249 | - } | ||
250 | - post { | ||
251 | - always { | ||
252 | - sh 'make distclean' | ||
253 | - } | ||
254 | - } | ||
255 | - } // stage build | ||
256 | - stage("test") { | ||
257 | - agent { | ||
258 | - label 'px4_fmu-v4' | ||
259 | - } | ||
260 | - stages { | ||
261 | - stage("flash") { | ||
262 | - steps { | ||
263 | - sh 'export' | ||
264 | - sh 'find /dev/serial' | ||
265 | - unstash 'px4_fmu-v4_test' | ||
266 | - // flash board and watch bootup | ||
267 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v4_test/px4_fmu-v4_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
268 | - } | ||
269 | - } | ||
270 | - stage("configure") { | ||
271 | - steps { | ||
272 | - // configure | ||
273 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
274 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
275 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
276 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
277 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
278 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
279 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
280 | - } | ||
281 | - } | ||
282 | - stage("status") { | ||
283 | - steps { | ||
284 | - statusFTDI() | ||
285 | - } | ||
286 | - } | ||
287 | - stage("tests") { | ||
288 | - steps { | ||
289 | - // run tests | ||
290 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
291 | - } | ||
292 | - } | ||
293 | - stage("reset") { | ||
294 | - steps { | ||
295 | - cleanupFTDI() | ||
296 | - } | ||
297 | - } | ||
298 | - } | ||
299 | - } // stage test | ||
300 | - } | ||
301 | - } | ||
302 | - | ||
303 | - stage("px4_fmu-v4pro_test") { | ||
304 | - stages { | ||
305 | - stage("build px4_fmu-v4pro_test") { | ||
306 | - agent { | ||
307 | - docker { | ||
308 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
309 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
310 | - } | ||
311 | - } | ||
312 | - steps { | ||
313 | - checkout scm | ||
314 | - sh 'export' | ||
315 | - sh 'make distclean' | ||
316 | - sh 'ccache -s' | ||
317 | - sh 'git fetch --tags' | ||
318 | - sh 'make px4_fmu-v4pro_test' | ||
319 | - sh 'make sizes' | ||
320 | - sh 'ccache -s' | ||
321 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'px4_fmu-v4pro_test' | ||
322 | - } | ||
323 | - post { | ||
324 | - always { | ||
325 | - sh 'make distclean' | ||
326 | - } | ||
327 | - } | ||
328 | - } // stage build | ||
329 | - stage("test") { | ||
330 | - agent { | ||
331 | - label 'px4_fmu-v4pro' | ||
332 | - } | ||
333 | - stages { | ||
334 | - stage("flash") { | ||
335 | - steps { | ||
336 | - sh 'export' | ||
337 | - sh 'find /dev/serial' | ||
338 | - unstash 'px4_fmu-v4pro_test' | ||
339 | - // flash board and watch bootup | ||
340 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v4pro_test/px4_fmu-v4pro_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
341 | - } | ||
342 | - } | ||
343 | - stage("configure") { | ||
344 | - steps { | ||
345 | - // configure | ||
346 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
347 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 13000"' // generic vtol standard | ||
348 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
349 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
350 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
351 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
352 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
353 | - } | ||
354 | - } | ||
355 | - stage("status") { | ||
356 | - steps { | ||
357 | - statusFTDI() | ||
358 | - } | ||
359 | - } | ||
360 | - stage("tests") { | ||
361 | - steps { | ||
362 | - // run tests | ||
363 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
364 | - } | ||
365 | - } | ||
366 | - stage("reset") { | ||
367 | - steps { | ||
368 | - cleanupFTDI() | ||
369 | - } | ||
370 | - } | ||
371 | - } | ||
372 | - } // stage test | ||
373 | - } | ||
374 | - } | ||
375 | - | ||
376 | - stage("px4_fmu-v5_test") { | ||
377 | - stages { | ||
378 | - stage("build px4_fmu-v5_test") { | ||
379 | - agent { | ||
380 | - docker { | ||
381 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
382 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
383 | - } | ||
384 | - } | ||
385 | - steps { | ||
386 | - checkout scm | ||
387 | - sh 'export' | ||
388 | - sh 'make distclean' | ||
389 | - sh 'ccache -s' | ||
390 | - sh 'git fetch --tags' | ||
391 | - sh 'make px4_fmu-v5_test' | ||
392 | - sh 'make sizes' | ||
393 | - sh 'ccache -s' | ||
394 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'px4_fmu-v5_test' | ||
395 | - } | ||
396 | - post { | ||
397 | - always { | ||
398 | - sh 'make distclean' | ||
399 | - } | ||
400 | - } | ||
401 | - } // stage build | ||
402 | - stage("test") { | ||
403 | - agent { | ||
404 | - label 'px4_fmu-v5' | ||
405 | - } | ||
406 | - stages { | ||
407 | - stage("flash") { | ||
408 | - steps { | ||
409 | - sh 'export' | ||
410 | - sh 'find /dev/serial' | ||
411 | - unstash 'px4_fmu-v5_test' | ||
412 | - // flash board and watch bootup | ||
413 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v5_test/px4_fmu-v5_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
414 | - } | ||
415 | - } | ||
416 | - stage("configure") { | ||
417 | - steps { | ||
418 | - // configure | ||
419 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
420 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
421 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
422 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
423 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
424 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
425 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
426 | - } | ||
427 | - } | ||
428 | - stage("status") { | ||
429 | - steps { | ||
430 | - statusFTDI() | ||
431 | - } | ||
432 | - } | ||
433 | - stage("tests") { | ||
434 | - steps { | ||
435 | - // run tests | ||
436 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
437 | - } | ||
438 | - } | ||
439 | - stage("reset") { | ||
440 | - steps { | ||
441 | - cleanupFTDI() | ||
442 | - } | ||
443 | - } | ||
444 | - } | ||
445 | - } // stage test | ||
446 | - } | ||
447 | - } | ||
448 | - | ||
449 | - stage("px4_fmu-v5_debug") { | ||
450 | - stages { | ||
451 | - stage("build px4_fmu-v5_debug") { | ||
452 | - agent { | ||
453 | - docker { | ||
454 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
455 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
456 | - } | ||
457 | - } | ||
458 | - steps { | ||
459 | - checkout scm | ||
460 | - sh 'export' | ||
461 | - sh 'make distclean' | ||
462 | - sh 'ccache -s' | ||
463 | - sh 'git fetch --tags' | ||
464 | - sh 'make px4_fmu-v5_debug' | ||
465 | - sh 'make sizes' | ||
466 | - sh 'ccache -s' | ||
467 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'px4_fmu-v5_debug' | ||
468 | - } | ||
469 | - post { | ||
470 | - always { | ||
471 | - sh 'make distclean' | ||
472 | - } | ||
473 | - } | ||
474 | - } // stage build | ||
475 | - stage("test") { | ||
476 | - agent { | ||
477 | - label 'px4_fmu-v5' | ||
478 | - } | ||
479 | - stages { | ||
480 | - stage("flash") { | ||
481 | - steps { | ||
482 | - sh 'export' | ||
483 | - sh 'find /dev/serial' | ||
484 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001" || true' // generic multicopter | ||
485 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set IMU_GYRO_RATEMAX 250" || true' | ||
486 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save" || true' | ||
487 | - unstash 'px4_fmu-v5_debug' | ||
488 | - // flash board and watch bootup | ||
489 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v5_debug/px4_fmu-v5_debug.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
490 | - } | ||
491 | - } | ||
492 | - stage("configure") { | ||
493 | - steps { | ||
494 | - // configure | ||
495 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
496 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set IMU_GYRO_RATEMAX 250"' // limit cpu usage | ||
497 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
498 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
499 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
500 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
501 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
502 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
503 | - } | ||
504 | - } | ||
505 | - stage("status") { | ||
506 | - steps { | ||
507 | - statusFTDI() | ||
508 | - } | ||
509 | - } | ||
510 | - stage("tests") { | ||
511 | - steps { | ||
512 | - // run tests | ||
513 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
514 | - } | ||
515 | - } | ||
516 | - stage("reset") { | ||
517 | - steps { | ||
518 | - cleanupFTDI() | ||
519 | - } | ||
520 | - } | ||
521 | - } | ||
522 | - } // stage test | ||
523 | - } | ||
524 | - } | ||
525 | - | ||
526 | - stage("px4_fmu-v5_optimized") { | ||
527 | - stages { | ||
528 | - stage("build px4_fmu-v5_optimized") { | ||
529 | - agent { | ||
530 | - docker { | ||
531 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
532 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
533 | - } | ||
534 | - } | ||
535 | - steps { | ||
536 | - checkout scm | ||
537 | - sh 'export' | ||
538 | - sh 'make distclean' | ||
539 | - sh 'ccache -s' | ||
540 | - sh 'git fetch --tags' | ||
541 | - sh 'make px4_fmu-v5_optimized' | ||
542 | - sh 'make sizes' | ||
543 | - sh 'ccache -s' | ||
544 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'px4_fmu-v5_optimized' | ||
545 | - } | ||
546 | - post { | ||
547 | - always { | ||
548 | - sh 'make distclean' | ||
549 | - } | ||
550 | - } | ||
551 | - } // stage build | ||
552 | - stage("test") { | ||
553 | - agent { | ||
554 | - label 'px4_fmu-v5' | ||
555 | - } | ||
556 | - stages { | ||
557 | - stage("flash") { | ||
558 | - steps { | ||
559 | - sh 'export' | ||
560 | - sh 'find /dev/serial' | ||
561 | - unstash 'px4_fmu-v5_optimized' | ||
562 | - // flash board and watch bootup | ||
563 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v5_optimized/px4_fmu-v5_optimized.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
564 | - } | ||
565 | - } | ||
566 | - stage("configure") { | ||
567 | - steps { | ||
568 | - // configure | ||
569 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
570 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
571 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
572 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
573 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
574 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
575 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
576 | - } | ||
577 | - } | ||
578 | - stage("status") { | ||
579 | - steps { | ||
580 | - statusFTDI() | ||
581 | - } | ||
582 | - } | ||
583 | - stage("tests") { | ||
584 | - steps { | ||
585 | - // run tests | ||
586 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
587 | - } | ||
588 | - } | ||
589 | - stage("reset") { | ||
590 | - steps { | ||
591 | - cleanupFTDI() | ||
592 | - } | ||
593 | - } | ||
594 | - } | ||
595 | - } // stage test | ||
596 | - } | ||
597 | - } | ||
598 | - | ||
599 | - stage("px4_fmu-v5_stackcheck") { | ||
600 | - stages { | ||
601 | - stage("build px4_fmu-v5_stackcheck") { | ||
602 | - agent { | ||
603 | - docker { | ||
604 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
605 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
606 | - } | ||
607 | - } | ||
608 | - steps { | ||
609 | - checkout scm | ||
610 | - sh 'export' | ||
611 | - sh 'make distclean' | ||
612 | - sh 'ccache -s' | ||
613 | - sh 'git fetch --tags' | ||
614 | - sh 'make px4_fmu-v5_stackcheck' | ||
615 | - sh 'make sizes' | ||
616 | - sh 'ccache -s' | ||
617 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'px4_fmu-v5_stackcheck' | ||
618 | - } | ||
619 | - post { | ||
620 | - always { | ||
621 | - sh 'make distclean' | ||
622 | - } | ||
623 | - } | ||
624 | - } // stage build | ||
625 | - stage("test") { | ||
626 | - agent { | ||
627 | - label 'px4_fmu-v5' | ||
628 | - } | ||
629 | - stages { | ||
630 | - stage("flash") { | ||
631 | - steps { | ||
632 | - sh 'export' | ||
633 | - sh 'find /dev/serial' | ||
634 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001" || true' // generic multicopter | ||
635 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set IMU_GYRO_RATEMAX 250" || true' | ||
636 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save" || true' | ||
637 | - unstash 'px4_fmu-v5_stackcheck' | ||
638 | - // flash board and watch bootup | ||
639 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v5_stackcheck/px4_fmu-v5_stackcheck.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
640 | - } | ||
641 | - } | ||
642 | - stage("configure") { | ||
643 | - steps { | ||
644 | - // configure | ||
645 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
646 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set IMU_GYRO_RATEMAX 250"' // limit cpu usage | ||
647 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set MAV_0_CONFIG 0"' // limit cpu usage | ||
648 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
649 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
650 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
651 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
652 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
653 | - } | ||
654 | - } | ||
655 | - stage("status") { | ||
656 | - steps { | ||
657 | - statusFTDI() | ||
658 | - } | ||
659 | - } | ||
660 | - stage("tests") { | ||
661 | - steps { | ||
662 | - // run tests | ||
663 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
664 | - } | ||
665 | - } | ||
666 | - stage("reset") { | ||
667 | - steps { | ||
668 | - cleanupFTDI() | ||
669 | - } | ||
670 | - } | ||
671 | - } | ||
672 | - } // stage test | ||
673 | - } | ||
674 | - } | ||
675 | - | ||
676 | - stage("modalai_fc-v1_test") { | ||
677 | - stages { | ||
678 | - stage("build modalai_fc-v1_test") { | ||
679 | - agent { | ||
680 | - docker { | ||
681 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
682 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
683 | - } | ||
684 | - } | ||
685 | - steps { | ||
686 | - checkout scm | ||
687 | - sh 'export' | ||
688 | - sh 'make distclean' | ||
689 | - sh 'ccache -s' | ||
690 | - sh 'git fetch --tags' | ||
691 | - sh 'make modalai_fc-v1_test' | ||
692 | - sh 'make sizes' | ||
693 | - sh 'ccache -s' | ||
694 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'modalai_fc-v1_test' | ||
695 | - } | ||
696 | - post { | ||
697 | - always { | ||
698 | - sh 'make distclean' | ||
699 | - } | ||
700 | - } | ||
701 | - } // stage build | ||
702 | - stage("test") { | ||
703 | - agent { | ||
704 | - label 'modalai_fc-v1' | ||
705 | - } | ||
706 | - stages { | ||
707 | - stage("flash") { | ||
708 | - steps { | ||
709 | - sh 'export' | ||
710 | - sh 'find /dev/serial' | ||
711 | - unstash 'modalai_fc-v1_test' | ||
712 | - // flash board and watch bootup | ||
713 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/modalai_fc-v1_test/modalai_fc-v1_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
714 | - } | ||
715 | - } | ||
716 | - stage("configure") { | ||
717 | - steps { | ||
718 | - // configure | ||
719 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
720 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
721 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
722 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
723 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
724 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
725 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
726 | - } | ||
727 | - } | ||
728 | - stage("status") { | ||
729 | - steps { | ||
730 | - statusFTDI() | ||
731 | - } | ||
732 | - } | ||
733 | - stage("tests") { | ||
734 | - steps { | ||
735 | - // run tests | ||
736 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
737 | - } | ||
738 | - } | ||
739 | - stage("reset") { | ||
740 | - steps { | ||
741 | - cleanupFTDI() | ||
742 | - } | ||
743 | - } | ||
744 | - } | ||
745 | - } // stage test | ||
746 | - } | ||
747 | - } | ||
748 | - | ||
749 | - stage("holybro_durandal-v1_test") { | ||
750 | - stages { | ||
751 | - stage("build holybro_durandal-v1_test") { | ||
752 | - agent { | ||
753 | - docker { | ||
754 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
755 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
756 | - } | ||
757 | - } | ||
758 | - steps { | ||
759 | - checkout scm | ||
760 | - sh 'export' | ||
761 | - sh 'make distclean' | ||
762 | - sh 'ccache -s' | ||
763 | - sh 'git fetch --tags' | ||
764 | - sh 'make holybro_durandal-v1_test' | ||
765 | - sh 'make sizes' | ||
766 | - sh 'ccache -s' | ||
767 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'holybro_durandal-v1_test' | ||
768 | - } | ||
769 | - post { | ||
770 | - always { | ||
771 | - sh 'make distclean' | ||
772 | - } | ||
773 | - } | ||
774 | - } // stage build | ||
775 | - stage("test") { | ||
776 | - agent { | ||
777 | - label 'holybro_durandal-v1' | ||
778 | - } | ||
779 | - stages { | ||
780 | - stage("flash") { | ||
781 | - steps { | ||
782 | - sh 'export' | ||
783 | - sh 'find /dev/serial' | ||
784 | - unstash 'holybro_durandal-v1_test' | ||
785 | - // flash board and watch bootup | ||
786 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/holybro_durandal-v1_test/holybro_durandal-v1_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
787 | - } | ||
788 | - } | ||
789 | - stage("configure") { | ||
790 | - steps { | ||
791 | - // configure | ||
792 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
793 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
794 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
795 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
796 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
797 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
798 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
799 | - } | ||
800 | - } | ||
801 | - stage("status") { | ||
802 | - steps { | ||
803 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "dshot status"' | ||
804 | - statusFTDI() | ||
805 | - } | ||
806 | - } | ||
807 | - stage("tests") { | ||
808 | - steps { | ||
809 | - // run tests | ||
810 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*`' | ||
811 | - } | ||
812 | - } | ||
813 | - stage("reset") { | ||
814 | - steps { | ||
815 | - cleanupFTDI() | ||
816 | - } | ||
817 | - } | ||
818 | - } | ||
819 | - } // stage test | ||
820 | - } | ||
821 | - } | ||
822 | - | ||
823 | - stage("nxp_fmuk66-v3_test") { | ||
824 | - stages { | ||
825 | - stage("build nxp_fmuk66-v3_test") { | ||
826 | - agent { | ||
827 | - docker { | ||
828 | - image 'px4io/px4-dev-nuttx-focal:2021-04-29' | ||
829 | - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' | ||
830 | - } | ||
831 | - } | ||
832 | - steps { | ||
833 | - checkout scm | ||
834 | - sh 'export' | ||
835 | - sh 'make distclean' | ||
836 | - sh 'ccache -s' | ||
837 | - sh 'git fetch --tags' | ||
838 | - sh 'make nxp_fmuk66-v3_test' | ||
839 | - sh 'make sizes' | ||
840 | - sh 'ccache -s' | ||
841 | - stash includes: 'build/*/*.elf, platforms/nuttx/Debug/upload_jlink_gdb.sh, Tools/HIL/*.py', name: 'nxp_fmuk66-v3_test' | ||
842 | - } | ||
843 | - post { | ||
844 | - always { | ||
845 | - sh 'make distclean' | ||
846 | - } | ||
847 | - } | ||
848 | - } // stage build | ||
849 | - stage("test") { | ||
850 | - agent { | ||
851 | - label 'nxp_fmuk66-v3' | ||
852 | - } | ||
853 | - stages { | ||
854 | - stage("flash") { | ||
855 | - steps { | ||
856 | - sh 'export' | ||
857 | - sh 'find /dev/serial' | ||
858 | - unstash 'nxp_fmuk66-v3_test' | ||
859 | - // flash board and watch bootup | ||
860 | - sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/nxp_fmuk66-v3_test/nxp_fmuk66-v3_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600' | ||
861 | - } | ||
862 | - } | ||
863 | - stage("configure") { | ||
864 | - steps { | ||
865 | - // configure | ||
866 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer | ||
867 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter | ||
868 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader | ||
869 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
870 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
871 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply | ||
872 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
873 | - } | ||
874 | - } | ||
875 | - stage("status") { | ||
876 | - steps { | ||
877 | - statusFTDI() | ||
878 | - } | ||
879 | - } | ||
880 | - stage("tests") { | ||
881 | - steps { | ||
882 | - // run tests | ||
883 | - sh './Tools/HIL/run_tests.py --device `find /dev/serial -name *usb-*` || true' // allow failure due to intermittent serial console issues | ||
884 | - } | ||
885 | - } | ||
886 | - stage("reset") { | ||
887 | - steps { | ||
888 | - cleanupFTDI() | ||
889 | - } | ||
890 | - } | ||
891 | - } | ||
892 | - } // stage test | ||
893 | - } | ||
894 | - } | ||
895 | - | ||
896 | - } // parallel | ||
897 | - } // stage Hardware Test | ||
898 | - } // stages | ||
899 | - environment { | ||
900 | - CCACHE_DIR = '/tmp/ccache' | ||
901 | - CI = true | ||
902 | - } | ||
903 | - options { | ||
904 | - buildDiscarder(logRotator(numToKeepStr: '30', artifactDaysToKeepStr: '60')) | ||
905 | - timeout(time: 120, unit: 'MINUTES') | ||
906 | - skipDefaultCheckout() | ||
907 | - } | ||
908 | -} | ||
909 | - | ||
910 | -void statusFTDI() { | ||
911 | - // run logger | ||
912 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "logger on"' | ||
913 | - // status commands | ||
914 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "free"' | ||
915 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "work_queue status"' | ||
916 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "board_adc test"' | ||
917 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander check"' | ||
918 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander status"' | ||
919 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander calibrate accel quick; sleep 2; param show CAL_ACC*"' | ||
920 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander calibrate gyro; sleep 2; param show CAL_GYRO*"' | ||
921 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander calibrate level; sleep 2; param show SENS_BOARD*"' | ||
922 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander calibrate mag quick; sleep 2; param show CAL_MAG*"' | ||
923 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "dataman status"' | ||
924 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "df"' | ||
925 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "dmesg"' | ||
926 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "gps status"' | ||
927 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "gyro_calibration status; param show CAL_GYRO*"' | ||
928 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener adc_report"' | ||
929 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener battery_status"' | ||
930 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener cpuload"' | ||
931 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener estimator_attitude"' | ||
932 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener estimator_event_flags"' | ||
933 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener estimator_local_position"' | ||
934 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener estimator_selector_status"' | ||
935 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener estimator_sensor_bias"' | ||
936 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener estimator_status"' | ||
937 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener estimator_status_flags"' | ||
938 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener logger_status"' | ||
939 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener parameter_update"' | ||
940 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener px4io_status"' | ||
941 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_accel"' | ||
942 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_accel_fifo"' | ||
943 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_baro"' | ||
944 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_combined"' | ||
945 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_gps"' | ||
946 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_gyro"' | ||
947 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_gyro_fifo"' | ||
948 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_mag"' | ||
949 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_selection"' | ||
950 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensors_status_imu"' | ||
951 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener system_power"' | ||
952 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener telemetry_status"' | ||
953 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_air_data"' | ||
954 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_angular_acceleration"' | ||
955 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_angular_velocity"' | ||
956 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_attitude"' | ||
957 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_gps_position"' | ||
958 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_imu"' | ||
959 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_imu_status"' | ||
960 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_local_position"' | ||
961 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_magnetometer"' | ||
962 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_status"' | ||
963 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_status_flags"' | ||
964 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "logger status"' | ||
965 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "ls /"' | ||
966 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "ls /dev"' | ||
967 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "ls /etc"' | ||
968 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "ls /obj"' | ||
969 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "ls /proc"' | ||
970 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "cat /proc/meminfo"' | ||
971 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "cat /proc/uptime"' | ||
972 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "mavlink status streams"' | ||
973 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "mavlink status"' | ||
974 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "mount"' | ||
975 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "mtd status"' | ||
976 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param show"' | ||
977 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
978 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "perf latency"' | ||
979 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "perf"' | ||
980 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "ps"' | ||
981 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "pwm info -d /dev/pwm_output0"' | ||
982 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "pwm info -d /dev/pwm_output1"' | ||
983 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "pwm_out status"' | ||
984 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "px4io status"' | ||
985 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "sd_bench -r 2"' | ||
986 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "sensors status"' | ||
987 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener cpuload; top once; listener cpuload"' | ||
988 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "uorb status"' | ||
989 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "uorb top -1 -a"' | ||
990 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "ver all"' | ||
991 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "work_queue status"' | ||
992 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "gyro_calibration status; param show CAL_GYRO*"' | ||
993 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "ekf2 status"' | ||
994 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "free"' | ||
995 | - // stop logger | ||
996 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "logger off"' | ||
997 | -} | ||
998 | - | ||
999 | -void cleanupFTDI() { | ||
1000 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "commander stop"' | ||
1001 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "mavlink stop-all"' | ||
1002 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "navigator stop"' | ||
1003 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "dataman stop"' | ||
1004 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "logger off"' | ||
1005 | - | ||
1006 | - // wipe sdcard | ||
1007 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "umount /fs/microsd"' | ||
1008 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "mkfatfs /dev/mmcsd0"' | ||
1009 | - | ||
1010 | - // drop any uncommited hardfaults | ||
1011 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "hardfault_log rearm"' | ||
1012 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "hardfault_log reset"' | ||
1013 | - | ||
1014 | - // erase mtd | ||
1015 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "mtd readtest"' | ||
1016 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "mtd rwtest"' | ||
1017 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "mtd erase"' | ||
1018 | - | ||
1019 | - // disable buzzer and cleanup storage | ||
1020 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param reset_all"' | ||
1021 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' | ||
1022 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SDLOG_DIRS_MAX 1"' | ||
1023 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"' | ||
1024 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param status"' | ||
1025 | - | ||
1026 | - // reboot | ||
1027 | - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' | ||
1028 | -} |
code/original/.clang-tidy
deleted
100644 → 0
1 | ---- | ||
2 | -Checks: '*, | ||
3 | - -android*, | ||
4 | - -bugprone-integer-division, | ||
5 | - -cert-dcl50-cpp, | ||
6 | - -cert-env33-c, | ||
7 | - -cert-err34-c, | ||
8 | - -cert-err58-cpp, | ||
9 | - -cert-msc30-c, | ||
10 | - -cert-msc50-cpp, | ||
11 | - -clang-analyzer-core.CallAndMessage, | ||
12 | - -clang-analyzer-core.NullDereference, | ||
13 | - -clang-analyzer-core.UndefinedBinaryOperatorResult, | ||
14 | - -clang-analyzer-core.uninitialized.Assign, | ||
15 | - -clang-analyzer-core.VLASize, | ||
16 | - -clang-analyzer-cplusplus.NewDelete, | ||
17 | - -clang-analyzer-cplusplus.NewDeleteLeaks, | ||
18 | - -clang-analyzer-deadcode.DeadStores, | ||
19 | - -clang-analyzer-optin.cplusplus.VirtualCall, | ||
20 | - -clang-analyzer-optin.performance.Padding, | ||
21 | - -clang-analyzer-security.insecureAPI.strcpy, | ||
22 | - -clang-analyzer-unix.API, | ||
23 | - -clang-analyzer-unix.cstring.BadSizeArg, | ||
24 | - -clang-analyzer-unix.Malloc, | ||
25 | - -clang-analyzer-unix.MallocSizeof, | ||
26 | - -cppcoreguidelines-c-copy-assignment-signature, | ||
27 | - -cppcoreguidelines-interfaces-global-init, | ||
28 | - -cppcoreguidelines-no-malloc, | ||
29 | - -cppcoreguidelines-owning-memory, | ||
30 | - -cppcoreguidelines-pro-bounds-array-to-pointer-decay, | ||
31 | - -cppcoreguidelines-pro-bounds-constant-array-index, | ||
32 | - -cppcoreguidelines-pro-bounds-pointer-arithmetic, | ||
33 | - -cppcoreguidelines-pro-type-const-cast, | ||
34 | - -cppcoreguidelines-pro-type-cstyle-cast, | ||
35 | - -cppcoreguidelines-pro-type-member-init, | ||
36 | - -cppcoreguidelines-pro-type-reinterpret-cast, | ||
37 | - -cppcoreguidelines-pro-type-union-access, | ||
38 | - -cppcoreguidelines-pro-type-vararg, | ||
39 | - -cppcoreguidelines-special-member-functions, | ||
40 | - -fuchsia-default-arguments, | ||
41 | - -fuchsia-overloaded-operator, | ||
42 | - -google-build-using-namespace, | ||
43 | - -google-explicit-constructor, | ||
44 | - -google-global-names-in-headers, | ||
45 | - -google-readability-casting, | ||
46 | - -google-readability-function-size, | ||
47 | - -google-readability-namespace-comments, | ||
48 | - -google-readability-todo, | ||
49 | - -google-runtime-int, | ||
50 | - -google-runtime-references, | ||
51 | - -hicpp-deprecated-headers, | ||
52 | - -hicpp-explicit-conversions, | ||
53 | - -hicpp-function-size, | ||
54 | - -hicpp-member-init, | ||
55 | - -hicpp-no-array-decay, | ||
56 | - -hicpp-no-assembler, | ||
57 | - -hicpp-no-malloc, | ||
58 | - -hicpp-signed-bitwise, | ||
59 | - -hicpp-special-member-functions, | ||
60 | - -hicpp-use-auto, | ||
61 | - -hicpp-use-equals-default, | ||
62 | - -hicpp-use-equals-delete, | ||
63 | - -hicpp-use-override, | ||
64 | - -hicpp-vararg, | ||
65 | - -llvm-header-guard, | ||
66 | - -llvm-include-order, | ||
67 | - -llvm-namespace-comment, | ||
68 | - -misc-incorrect-roundings, | ||
69 | - -misc-macro-parentheses, | ||
70 | - -misc-misplaced-widening-cast, | ||
71 | - -misc-redundant-expression, | ||
72 | - -misc-unconventional-assign-operator, | ||
73 | - -misc-unused-parameters, | ||
74 | - -modernize-deprecated-headers, | ||
75 | - -modernize-loop-convert, | ||
76 | - -modernize-pass-by-value, | ||
77 | - -modernize-return-braced-init-list, | ||
78 | - -modernize-use-auto, | ||
79 | - -modernize-use-bool-literals, | ||
80 | - -modernize-use-default-member-init, | ||
81 | - -modernize-use-equals-default, | ||
82 | - -modernize-use-equals-delete, | ||
83 | - -modernize-use-override, | ||
84 | - -modernize-use-using, | ||
85 | - -performance-inefficient-string-concatenation, | ||
86 | - -readability-avoid-const-params-in-decls, | ||
87 | - -readability-container-size-empty, | ||
88 | - -readability-else-after-return, | ||
89 | - -readability-function-size, | ||
90 | - -readability-implicit-bool-cast, | ||
91 | - -readability-implicit-bool-conversion, | ||
92 | - -readability-inconsistent-declaration-parameter-name, | ||
93 | - -readability-named-parameter, | ||
94 | - -readability-non-const-parameter, | ||
95 | - -readability-redundant-declaration, | ||
96 | - -readability-static-accessed-through-instance, | ||
97 | - -readability-static-definition-in-anonymous-namespace, | ||
98 | - ' | ||
99 | -WarningsAsErrors: '*' | ||
100 | -CheckOptions: | ||
101 | - - key: google-readability-function-size.BranchThreshold | ||
102 | - value: '600' | ||
103 | - - key: google-readability-function-size.LineThreshold | ||
104 | - value: '4000' | ||
105 | - - key: google-readability-function-size.StatementThreshold | ||
106 | - value: '4000' | ||
107 | -... |
1 | -// For format details, see https://aka.ms/vscode-remote/devcontainer.json or this file's README at: | ||
2 | -// https://github.com/microsoft/vscode-dev-containers/tree/v0.134.0/containers/cpp | ||
3 | -{ | ||
4 | - "name": "px4-dev-nuttx", | ||
5 | - "image": "px4io/px4-dev-nuttx-focal:2021-04-29", | ||
6 | - | ||
7 | - "runArgs": [ "--cap-add=SYS_PTRACE", "--security-opt", "seccomp=unconfined" ], | ||
8 | - | ||
9 | - // Set *default* container specific settings.json values on container create. | ||
10 | - "settings": { | ||
11 | - "terminal.integrated.shell.linux": "/bin/bash" | ||
12 | - }, | ||
13 | - | ||
14 | - // Add the IDs of extensions you want installed when the container is created. | ||
15 | - "extensions": [ | ||
16 | - "chiehyu.vscode-astyle", | ||
17 | - "dan-c-underwood.arm", | ||
18 | - "fredericbonnet.cmake-test-adapter", | ||
19 | - "github.vscode-pull-request-github", | ||
20 | - "marus25.cortex-debug", | ||
21 | - "ms-azuretools.vscode-docker", | ||
22 | - "ms-iot.vscode-ros", | ||
23 | - "ms-python.python", | ||
24 | - "ms-vscode.cmake-tools", | ||
25 | - "ms-vscode.cpptools", | ||
26 | - "ms-vscode.cpptools-extension-pack", | ||
27 | - "redhat.vscode-yaml", | ||
28 | - "streetsidesoftware.code-spell-checker", | ||
29 | - "twxs.cmake", | ||
30 | - "uavcan.dsdl", | ||
31 | - "wholroyd.jinja", | ||
32 | - "zixuanwang.linkerscript" | ||
33 | - ], | ||
34 | - | ||
35 | - "containerUser": "user", | ||
36 | - "containerEnv": { | ||
37 | - "LOCAL_USER_ID": "${localEnv:UID}" | ||
38 | - }, | ||
39 | - | ||
40 | - // Use 'forwardPorts' to make a list of ports inside the container available locally. | ||
41 | - "forwardPorts": [14556], | ||
42 | -} |
code/original/.gitattributes
deleted
100644 → 0
1 | -* text=auto eol=lf | ||
2 | - | ||
3 | -*.cmake text eol=lf | ||
4 | -*.c text eol=lf | ||
5 | -*.cc text eol=lf | ||
6 | -*.cpp text eol=lf | ||
7 | -*.h text eol=lf | ||
8 | -*.hh text eol=lf | ||
9 | -*.hpp text eol=lf | ||
10 | -*.hxx text eol=lf | ||
11 | -*.S text eol=lf | ||
12 | - | ||
13 | -*.ipynb text eol=lf | ||
14 | -*.m text eol=lf | ||
15 | -*.mat binary | ||
16 | -*.py text eol=lf | ||
17 | - | ||
18 | -*.java text eol=lf | ||
19 | -*.jar binary | ||
20 | -*.xml text eol=lf | ||
21 | - | ||
22 | -# PX4 mixers, msgs, etc | ||
23 | -*.bin binary | ||
24 | -*.mix text eol=lf | ||
25 | -*.msg text eol=lf | ||
26 | -*.config text eol=lf | ||
27 | -*.sdf text eol=lf | ||
28 | -*.uavcan text eol=lf | ||
29 | - | ||
30 | -# NuttX | ||
31 | -Makefile.* text eol=lf | ||
32 | -*.defs text eol=lf | ||
33 | -*.ld text eol=lf | ||
34 | - | ||
35 | -*.csv text eol=lf | ||
36 | -*.md text eol=lf | ||
37 | -*.txt text eol=lf | ||
38 | - | ||
39 | -# Scripts | ||
40 | -*.bash text eol=lf | ||
41 | -*.sh text eol=lf | ||
42 | -*.zsh text eol=lf | ||
43 | -# These are explicitly windows files and should use crlf | ||
44 | -*.ps1 text eol=crlf | ||
45 | -*.{cmd,[cC][mM][dD]} text eol=crlf | ||
46 | -*.{bat,[bB][aA][tT]} text eol=crlf | ||
47 | - | ||
48 | -# Serialisation | ||
49 | -*.json text eol=lf | ||
50 | -*.toml text eol=lf | ||
51 | -*.xml text eol=lf | ||
52 | -*.yaml text eol=lf | ||
53 | -*.yml text eol=lf | ||
54 | - | ||
55 | -# Graphics | ||
56 | -*.png binary | ||
57 | -*.jpg binary | ||
58 | -*.jpeg binary | ||
59 | -*.gif binary | ||
60 | -*.tif binary | ||
61 | -*.tiff binary | ||
62 | -*.ico binary | ||
63 | -*.pdf binary | ||
64 | -# SVG treated as an asset (binary) by default. | ||
65 | -*.svg text eol=lf | ||
66 | - | ||
67 | -# Text files where line endings should be preserved | ||
68 | -*.patch -text | ||
69 | - | ||
70 | -# Archives | ||
71 | -*.7z binary | ||
72 | -*.gz binary | ||
73 | -*.tar binary | ||
74 | -*.tgz binary | ||
75 | -*.zip binary | ||
76 | - | ||
77 | -# everything else | ||
78 | -.gitattributes text eol=lf | ||
79 | -.gitignore text eol=lf | ||
80 | -Makefile text eol=lf |
1 | ---- | ||
2 | -name: Bug report | ||
3 | -about: Create a report to help us improve | ||
4 | - | ||
5 | ---- | ||
6 | - | ||
7 | -**Describe the bug** | ||
8 | -A clear and concise description of the bug. | ||
9 | - | ||
10 | -**To Reproduce** | ||
11 | -Steps to reproduce the behavior: | ||
12 | -1. Drone switched on '...' | ||
13 | -2. Uploaded mission '....' (attach QGC mission file) | ||
14 | -3. Took off '....' | ||
15 | -4. See error | ||
16 | - | ||
17 | -**Expected behavior** | ||
18 | -A clear and concise description of what you expected to happen. | ||
19 | - | ||
20 | -**Log Files and Screenshots** | ||
21 | -*Always* provide a link to the flight log file: | ||
22 | -- Download the flight log file from the vehicle ([tutorial](https://docs.px4.io/master/en/getting_started/flight_reporting.html)). | ||
23 | -- Share the link to a log showing the problem on [PX4 Flight Review](http://logs.px4.io/). | ||
24 | - | ||
25 | -Add screenshots to help explain your problem. | ||
26 | - | ||
27 | -**Drone (please complete the following information):** | ||
28 | -- Describe the type of drone. | ||
29 | -- Photo of the IMU / autopilot setup if possible. | ||
30 | - | ||
31 | -**Additional context** | ||
32 | -Add any other context about the problem here. |
1 | ---- | ||
2 | -name: 🚀 Feature Request | ||
3 | -about: Suggest an idea for this project | ||
4 | - | ||
5 | ---- | ||
6 | - | ||
7 | -For general questions please use [PX4 Discuss](http://discuss.px4.io/) or [Slack](http://slack.px4.io/). | ||
8 | - | ||
9 | -**Describe problem solved by the proposed feature** | ||
10 | -A clear and concise description of the problem, if any, this feature will solve. E.g. I'm always frustrated when ... | ||
11 | - | ||
12 | -**Describe your preferred solution** | ||
13 | -A clear and concise description of what you want to happen. | ||
14 | - | ||
15 | -**Describe possible alternatives** | ||
16 | -A clear and concise description of alternative solutions or features you've considered. | ||
17 | - | ||
18 | -**Additional context** | ||
19 | -Add any other context or screenshots for the feature request here. |
1 | ---- | ||
2 | -name: ⛔ Support Question | ||
3 | -about: See [PX4 Discuss](http://discuss.px4.io/) for questions about using PX4. | ||
4 | - | ||
5 | ---- | ||
6 | - | ||
7 | -We use GitHub issues only to discuss PX4 bugs and new features. For | ||
8 | -questions about using PX4 or related components, please use [PX4 Discuss](http://discuss.px4.io/). | ||
9 | - | ||
10 | -Thanks! |
code/original/.github/stale.yml
deleted
100644 → 0
1 | -# Number of days of inactivity before an issue becomes stale | ||
2 | -daysUntilStale: 90 | ||
3 | -# Number of days of inactivity before a stale issue is closed, or `false` to disable | ||
4 | -daysUntilClose: false | ||
5 | -# Issues with these labels will never be considered stale | ||
6 | -exemptLabels: | ||
7 | - - pinned | ||
8 | -# Label to use when marking an issue as stale | ||
9 | -staleLabel: stale | ||
10 | -# Comment to post when marking an issue as stale. Set to `false` to disable | ||
11 | -markComment: > | ||
12 | - This issue has been automatically marked as stale because it has not had | ||
13 | - recent activity. Thank you for your contributions. | ||
14 | -# Comment to post when closing a stale issue. Set to `false` to disable | ||
15 | -closeComment: false |
1 | -name: Checks | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - strategy: | ||
15 | - fail-fast: false | ||
16 | - matrix: | ||
17 | - check: [ | ||
18 | - "check_format", | ||
19 | - "tests", | ||
20 | - "tests_coverage", | ||
21 | - "px4_fmu-v2_default stack_check", | ||
22 | - "validate_module_configs", | ||
23 | - "shellcheck_all", | ||
24 | - "NO_NINJA_BUILD=1 px4_fmu-v5_default", | ||
25 | - "NO_NINJA_BUILD=1 px4_sitl_default", | ||
26 | - "airframe_metadata", | ||
27 | - "module_documentation", | ||
28 | - "parameters_metadata", | ||
29 | - ] | ||
30 | - container: | ||
31 | - image: px4io/px4-dev-nuttx-focal:2021-04-29 | ||
32 | - options: --privileged --ulimit core=-1 --security-opt seccomp=unconfined | ||
33 | - steps: | ||
34 | - - uses: actions/checkout@v1 | ||
35 | - with: | ||
36 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
37 | - | ||
38 | - - name: Prepare ccache timestamp | ||
39 | - id: ccache_cache_timestamp | ||
40 | - shell: cmake -P {0} | ||
41 | - run: | | ||
42 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
43 | - message("::set-output name=timestamp::${current_date}") | ||
44 | - - name: ccache cache files | ||
45 | - uses: actions/cache@v2 | ||
46 | - with: | ||
47 | - path: ~/.ccache | ||
48 | - key: tests_${{matrix.ubuntu_release}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
49 | - restore-keys: tests_${{matrix.ubuntu_release}}-ccache- | ||
50 | - - name: setup ccache | ||
51 | - run: | | ||
52 | - mkdir -p ~/.ccache | ||
53 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
54 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
55 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
56 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
57 | - ccache -s | ||
58 | - ccache -z | ||
59 | - - name: check environment | ||
60 | - run: | | ||
61 | - export | ||
62 | - ulimit -a | ||
63 | - - name: ${{matrix.check}} | ||
64 | - run: make ${{matrix.check}} | ||
65 | - - name: upload coverage | ||
66 | - if: contains(matrix.check, 'coverage') | ||
67 | - uses: codecov/codecov-action@v1 | ||
68 | - with: | ||
69 | - token: ${{ secrets.CODECOV_TOKEN }} | ||
70 | - flags: unittests | ||
71 | - file: coverage/lcov.info |
1 | -name: Clang Tidy | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - container: px4io/px4-dev-clang:2021-04-29 | ||
15 | - steps: | ||
16 | - - uses: actions/checkout@v1 | ||
17 | - with: | ||
18 | - token: ${{secrets.ACCESS_TOKEN}} | ||
19 | - | ||
20 | - - name: Prepare ccache timestamp | ||
21 | - id: ccache_cache_timestamp | ||
22 | - shell: cmake -P {0} | ||
23 | - run: | | ||
24 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
25 | - message("::set-output name=timestamp::${current_date}") | ||
26 | - - name: ccache cache files | ||
27 | - uses: actions/cache@v2 | ||
28 | - with: | ||
29 | - path: ~/.ccache | ||
30 | - key: clang-tidy-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
31 | - restore-keys: clang-tidy-ccache- | ||
32 | - - name: setup ccache | ||
33 | - run: | | ||
34 | - mkdir -p ~/.ccache | ||
35 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
36 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
37 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
38 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
39 | - ccache -s | ||
40 | - ccache -z | ||
41 | - | ||
42 | - - name: make clang-tidy-quiet | ||
43 | - run: | | ||
44 | - ccache -z | ||
45 | - make clang-tidy-quiet | ||
46 | - ccache -s |
1 | -name: Linux Targets | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - container: px4io/px4-dev-armhf:2021-04-29 | ||
15 | - strategy: | ||
16 | - matrix: | ||
17 | - config: [ | ||
18 | - beaglebone_blue_default, | ||
19 | - emlid_navio2_default, | ||
20 | - px4_raspberrypi_default, | ||
21 | - scumaker_pilotpi_default, | ||
22 | - ] | ||
23 | - steps: | ||
24 | - - uses: actions/checkout@v1 | ||
25 | - with: | ||
26 | - token: ${{secrets.ACCESS_TOKEN}} | ||
27 | - | ||
28 | - - name: Prepare ccache timestamp | ||
29 | - id: ccache_cache_timestamp | ||
30 | - shell: cmake -P {0} | ||
31 | - run: | | ||
32 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
33 | - message("::set-output name=timestamp::${current_date}") | ||
34 | - - name: ccache cache files | ||
35 | - uses: actions/cache@v2 | ||
36 | - with: | ||
37 | - path: ~/.ccache | ||
38 | - key: ${{matrix.config}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
39 | - restore-keys: ${{matrix.config}}-ccache- | ||
40 | - - name: setup ccache | ||
41 | - run: | | ||
42 | - mkdir -p ~/.ccache | ||
43 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
44 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
45 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
46 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
47 | - ccache -s | ||
48 | - ccache -z | ||
49 | - | ||
50 | - - name: make ${{matrix.config}} | ||
51 | - run: make ${{matrix.config}} | ||
52 | - - name: ccache post-run | ||
53 | - run: ccache -s |
1 | -name: Linux ARM64 Targets | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - container: px4io/px4-dev-aarch64:2021-04-29 | ||
15 | - strategy: | ||
16 | - matrix: | ||
17 | - config: [ | ||
18 | - scumaker_pilotpi_arm64, | ||
19 | - ] | ||
20 | - steps: | ||
21 | - - uses: actions/checkout@v1 | ||
22 | - with: | ||
23 | - token: ${{secrets.ACCESS_TOKEN}} | ||
24 | - | ||
25 | - - name: Prepare ccache timestamp | ||
26 | - id: ccache_cache_timestamp | ||
27 | - shell: cmake -P {0} | ||
28 | - run: | | ||
29 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
30 | - message("::set-output name=timestamp::${current_date}") | ||
31 | - - name: ccache cache files | ||
32 | - uses: actions/cache@v2 | ||
33 | - with: | ||
34 | - path: ~/.ccache | ||
35 | - key: ${{matrix.config}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
36 | - restore-keys: ${{matrix.config}}-ccache- | ||
37 | - - name: setup ccache | ||
38 | - run: | | ||
39 | - mkdir -p ~/.ccache | ||
40 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
41 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
42 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
43 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
44 | - ccache -s | ||
45 | - ccache -z | ||
46 | - | ||
47 | - - name: make ${{matrix.config}} | ||
48 | - run: make ${{matrix.config}} | ||
49 | - - name: ccache post-run | ||
50 | - run: ccache -s |
1 | -name: MacOS build | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: macos-10.15 | ||
14 | - strategy: | ||
15 | - matrix: | ||
16 | - config: [ | ||
17 | - px4_fmu-v5_default, | ||
18 | - px4_sitl | ||
19 | - #tests, # includes px4_sitl | ||
20 | - ] | ||
21 | - steps: | ||
22 | - - uses: actions/checkout@v1 | ||
23 | - with: | ||
24 | - token: ${{secrets.ACCESS_TOKEN}} | ||
25 | - | ||
26 | - - name: setup | ||
27 | - run: ./Tools/setup/macos.sh; ./Tools/setup/macos.sh | ||
28 | - | ||
29 | - - name: Prepare ccache timestamp | ||
30 | - id: ccache_cache_timestamp | ||
31 | - shell: cmake -P {0} | ||
32 | - run: | | ||
33 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
34 | - message("::set-output name=timestamp::${current_date}") | ||
35 | - - name: ccache cache files | ||
36 | - uses: actions/cache@v2 | ||
37 | - with: | ||
38 | - path: ~/.ccache | ||
39 | - key: macos_${{matrix.config}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
40 | - restore-keys: macos_${{matrix.config}}-ccache- | ||
41 | - - name: setup ccache | ||
42 | - run: | | ||
43 | - mkdir -p ~/.ccache | ||
44 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
45 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
46 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
47 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
48 | - ccache -s | ||
49 | - ccache -z | ||
50 | - | ||
51 | - - name: make ${{matrix.config}} | ||
52 | - run: | | ||
53 | - ccache -z | ||
54 | - make ${{matrix.config}} | ||
55 | - ccache -s |
1 | -name: Nuttx Targets | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - container: px4io/px4-dev-nuttx-focal:2021-04-29 | ||
15 | - strategy: | ||
16 | - matrix: | ||
17 | - config: [ | ||
18 | - airmind_mindpx-v2_default, | ||
19 | - ark_can-flow_canbootloader, | ||
20 | - ark_can-flow_debug, | ||
21 | - ark_can-flow_default, | ||
22 | - ark_can-gps_canbootloader, | ||
23 | - ark_can-gps_debug, | ||
24 | - ark_can-gps_default, | ||
25 | - av_x-v1_default, | ||
26 | - bitcraze_crazyflie21_default, | ||
27 | - bitcraze_crazyflie_default, | ||
28 | - cuav_can-gps-v1_canbootloader, | ||
29 | - cuav_can-gps-v1_debug, | ||
30 | - cuav_can-gps-v1_default, | ||
31 | - cuav_nora_default, | ||
32 | - cuav_x7pro_default, | ||
33 | - cubepilot_cubeorange_default, | ||
34 | - cubepilot_cubeorange_test, | ||
35 | - cubepilot_cubeyellow_default, | ||
36 | - cubepilot_cubeyellow_test, | ||
37 | - cubepilot_io-v2_default, | ||
38 | - freefly_can-rtk-gps_canbootloader, | ||
39 | - freefly_can-rtk-gps_default, | ||
40 | - holybro_can-gps-v1_canbootloader, | ||
41 | - holybro_can-gps-v1_debug, | ||
42 | - holybro_can-gps-v1_default, | ||
43 | - holybro_durandal-v1_default, | ||
44 | - holybro_kakutef7_default, | ||
45 | - holybro_pix32v5_default, | ||
46 | - modalai_fc-v1_default, | ||
47 | - modalai_fc-v1_rtps, | ||
48 | - modalai_fc-v2_default, | ||
49 | - mro_ctrl-zero-f7-oem_default, | ||
50 | - mro_ctrl-zero-f7_default, | ||
51 | - mro_ctrl-zero-h7-oem_default, | ||
52 | - mro_ctrl-zero-h7_default, | ||
53 | - mro_pixracerpro_default, | ||
54 | - mro_x21-777_default, | ||
55 | - mro_x21_default, | ||
56 | - nxp_fmuk66-e_default, | ||
57 | - nxp_fmuk66-e_rtps, | ||
58 | - nxp_fmuk66-e_socketcan, | ||
59 | - nxp_fmuk66-v3_default, | ||
60 | - nxp_fmuk66-v3_rtps, | ||
61 | - nxp_fmuk66-v3_socketcan, | ||
62 | - nxp_fmurt1062-v1_default, | ||
63 | - nxp_ucans32k146_canbootloader, | ||
64 | - nxp_ucans32k146_default, | ||
65 | - omnibus_f4sd_default, | ||
66 | - px4_fmu-v2_default, | ||
67 | - px4_fmu-v2_fixedwing, | ||
68 | - px4_fmu-v2_multicopter, | ||
69 | - px4_fmu-v2_rover, | ||
70 | - px4_fmu-v3_default, | ||
71 | - px4_fmu-v4_cannode, | ||
72 | - px4_fmu-v4_default, | ||
73 | - px4_fmu-v4pro_default, | ||
74 | - px4_fmu-v5_ctrlalloc, | ||
75 | - px4_fmu-v5_debug, | ||
76 | - px4_fmu-v5_default, | ||
77 | - px4_fmu-v5_fixedwing, | ||
78 | - px4_fmu-v5_multicopter, | ||
79 | - px4_fmu-v5_optimized, | ||
80 | - px4_fmu-v5_rover, | ||
81 | - px4_fmu-v5_rtps, | ||
82 | - px4_fmu-v5_stackcheck, | ||
83 | - px4_fmu-v5_uavcanv0periph, | ||
84 | - px4_fmu-v5_uavcanv1, | ||
85 | - px4_fmu-v5x_base_phy_DP83848C, | ||
86 | - px4_fmu-v5x_default, | ||
87 | - px4_fmu-v6u_default, | ||
88 | - px4_fmu-v6x_default, | ||
89 | - px4_io-v2_default, | ||
90 | - spracing_h7extreme_default, | ||
91 | - uvify_core_default | ||
92 | - ] | ||
93 | - steps: | ||
94 | - - uses: actions/checkout@v1 | ||
95 | - with: | ||
96 | - token: ${{secrets.ACCESS_TOKEN}} | ||
97 | - | ||
98 | - - name: Prepare ccache timestamp | ||
99 | - id: ccache_cache_timestamp | ||
100 | - shell: cmake -P {0} | ||
101 | - run: | | ||
102 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
103 | - message("::set-output name=timestamp::${current_date}") | ||
104 | - - name: ccache cache files | ||
105 | - uses: actions/cache@v2 | ||
106 | - with: | ||
107 | - path: ~/.ccache | ||
108 | - key: ${{matrix.config}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
109 | - restore-keys: ${{matrix.config}}-ccache- | ||
110 | - - name: setup ccache | ||
111 | - run: | | ||
112 | - mkdir -p ~/.ccache | ||
113 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
114 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
115 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
116 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
117 | - ccache -s | ||
118 | - ccache -z | ||
119 | - | ||
120 | - - name: make ${{matrix.config}} | ||
121 | - run: make ${{matrix.config}} | ||
122 | - - name: make ${{matrix.config}} bloaty_compileunits | ||
123 | - run: make ${{matrix.config}} bloaty_compileunits || true | ||
124 | - - name: make ${{matrix.config}} bloaty_inlines | ||
125 | - run: make ${{matrix.config}} bloaty_inlines || true | ||
126 | - - name: make ${{matrix.config}} bloaty_segments | ||
127 | - run: make ${{matrix.config}} bloaty_segments || true | ||
128 | - - name: make ${{matrix.config}} bloaty_symbols | ||
129 | - run: make ${{matrix.config}} bloaty_symbols || true | ||
130 | - - name: make ${{matrix.config}} bloaty_templates | ||
131 | - run: make ${{matrix.config}} bloaty_templates || true | ||
132 | - - name: make ${{matrix.config}} bloaty_ram | ||
133 | - run: make ${{matrix.config}} bloaty_ram || true | ||
134 | - - name: make ${{matrix.config}} bloaty_compare_master | ||
135 | - run: make ${{matrix.config}} bloaty_compare_master || true | ||
136 | - - name: ccache post-run | ||
137 | - run: ccache -s | ||
138 | - | ||
139 | - - name: Upload px4 package | ||
140 | - uses: actions/upload-artifact@v1 | ||
141 | - with: | ||
142 | - name: px4_package_${{matrix.config}} | ||
143 | - path: build/${{matrix.config}}/${{matrix.config}}.px4 |
1 | -name: NuttX UAVCAN firmware | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - container: px4io/px4-dev-nuttx-focal:2021-04-29 | ||
15 | - strategy: | ||
16 | - matrix: | ||
17 | - config: [ | ||
18 | - ark_can-flow_default, | ||
19 | - cuav_can-gps-v1_default, | ||
20 | - freefly_can-rtk-gps_default, | ||
21 | - holybro_can-gps-v1_default, | ||
22 | - #nxp_ucans32k146_default, | ||
23 | - px4_fmu-v4_cannode | ||
24 | - ] | ||
25 | - steps: | ||
26 | - - uses: actions/checkout@v1 | ||
27 | - with: | ||
28 | - token: ${{secrets.ACCESS_TOKEN}} | ||
29 | - | ||
30 | - - name: Prepare ccache timestamp | ||
31 | - id: ccache_cache_timestamp | ||
32 | - shell: cmake -P {0} | ||
33 | - run: | | ||
34 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
35 | - message("::set-output name=timestamp::${current_date}") | ||
36 | - - name: ccache cache files | ||
37 | - uses: actions/cache@v2 | ||
38 | - with: | ||
39 | - path: ~/.ccache | ||
40 | - key: ${{matrix.config}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
41 | - restore-keys: ${{matrix.config}}-ccache- | ||
42 | - - name: setup ccache | ||
43 | - run: | | ||
44 | - mkdir -p ~/.ccache | ||
45 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
46 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
47 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
48 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
49 | - ccache -s | ||
50 | - ccache -z | ||
51 | - | ||
52 | - - name: make ${{matrix.config}} | ||
53 | - run: make ${{matrix.config}} | ||
54 | - | ||
55 | - - name: ccache post-run | ||
56 | - run: ccache -s | ||
57 | - | ||
58 | - - name: Upload px4 package | ||
59 | - uses: actions/upload-artifact@v2 | ||
60 | - with: | ||
61 | - name: px4_cannode_${{matrix.config}} | ||
62 | - path: build/${{matrix.config}}/*.uavcan.bin |
1 | -name: Deploy metadata for all targets | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - - 'release/*' | ||
8 | - - 'pr-metadata-test' | ||
9 | - | ||
10 | -jobs: | ||
11 | - enumerate_targets: | ||
12 | - runs-on: ubuntu-latest | ||
13 | - outputs: | ||
14 | - matrix: ${{ steps.set-matrix.outputs.matrix }} | ||
15 | - steps: | ||
16 | - - uses: actions/checkout@v1 | ||
17 | - with: | ||
18 | - token: ${{secrets.ACCESS_TOKEN}} | ||
19 | - - id: set-matrix | ||
20 | - run: echo "::set-output name=matrix::$(./Tools/generate_board_targets_json.py)" | ||
21 | - build: | ||
22 | - runs-on: ubuntu-latest | ||
23 | - needs: enumerate_targets | ||
24 | - strategy: | ||
25 | - matrix: ${{fromJson(needs.enumerate_targets.outputs.matrix)}} | ||
26 | - container: px4io/px4-dev-${{ matrix.container }}:2021-04-29 | ||
27 | - steps: | ||
28 | - - uses: actions/checkout@v1 | ||
29 | - with: | ||
30 | - token: ${{secrets.ACCESS_TOKEN}} | ||
31 | - | ||
32 | - - name: Prepare ccache timestamp | ||
33 | - id: ccache_cache_timestamp | ||
34 | - shell: cmake -P {0} | ||
35 | - run: | | ||
36 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
37 | - message("::set-output name=timestamp::${current_date}") | ||
38 | - - name: ccache cache files | ||
39 | - uses: actions/cache@v2 | ||
40 | - with: | ||
41 | - path: ~/.ccache | ||
42 | - key: ${{matrix.target}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
43 | - restore-keys: ${{matrix.target}}-ccache- | ||
44 | - - name: setup ccache | ||
45 | - run: | | ||
46 | - mkdir -p ~/.ccache | ||
47 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
48 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
49 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
50 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
51 | - ccache -s | ||
52 | - ccache -z | ||
53 | - | ||
54 | - - name: make ${{matrix.target}} | ||
55 | - run: make ${{matrix.target}} | ||
56 | - - name: ccache post-run | ||
57 | - run: ccache -s | ||
58 | - | ||
59 | - - name: parameter metadata | ||
60 | - run: | | ||
61 | - make ${{matrix.target}} ver_gen | ||
62 | - ./src/lib/version/get_git_tag_or_branch_version.sh build/${{ matrix.target }} >> $GITHUB_ENV | ||
63 | - cd build/${{ matrix.target }} | ||
64 | - mkdir _metadata || true | ||
65 | - cp parameters.* _metadata | ||
66 | - | ||
67 | - - uses: jakejarvis/s3-sync-action@master | ||
68 | - with: | ||
69 | - args: --acl public-read | ||
70 | - env: | ||
71 | - AWS_S3_BUCKET: 'px4-travis' | ||
72 | - AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | ||
73 | - AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | ||
74 | - AWS_REGION: 'us-west-1' | ||
75 | - SOURCE_DIR: 'build/${{ matrix.target }}/_metadata/' | ||
76 | - DEST_DIR: 'Firmware/${{ env.version }}/${{ matrix.target }}/' | ||
77 | - |
1 | -name: MAVROS Mission Tests | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - strategy: | ||
15 | - fail-fast: false | ||
16 | - matrix: | ||
17 | - config: | ||
18 | - - {vehicle: "iris", mission: "MC_mission_box", build_type: "RelWithDebInfo"} | ||
19 | - - {vehicle: "rover", mission: "rover_mission_1", build_type: "RelWithDebInfo"} | ||
20 | - #- {vehicle: "plane", mission: "FW_mission_1", build_type: "RelWithDebInfo"} | ||
21 | - #- {vehicle: "plane_catapult",mission: "FW_mission_1", build_type: "RelWithDebInfo"} | ||
22 | - #- {vehicle: "standard_vtol", mission: "VTOL_mission_1", build_type: "Coverage"} | ||
23 | - #- {vehicle: "standard_vtol", mission: "VTOL_mission_1", build_type: "AddressSanitizer"} | ||
24 | - #- {vehicle: "tailsitter", mission: "VTOL_mission_1", build_type: "RelWithDebInfo"} | ||
25 | - #- {vehicle: "tiltrotor", mission: "VTOL_mission_1", build_type: "RelWithDebInfo"} | ||
26 | - | ||
27 | - container: | ||
28 | - image: px4io/px4-dev-ros-melodic:2021-04-29 | ||
29 | - options: --privileged --ulimit core=-1 --security-opt seccomp=unconfined | ||
30 | - steps: | ||
31 | - - uses: actions/checkout@v1 | ||
32 | - with: | ||
33 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
34 | - | ||
35 | - - name: Prepare ccache timestamp | ||
36 | - id: ccache_cache_timestamp | ||
37 | - shell: cmake -P {0} | ||
38 | - run: | | ||
39 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
40 | - message("::set-output name=timestamp::${current_date}") | ||
41 | - - name: ccache cache files | ||
42 | - uses: actions/cache@v2 | ||
43 | - with: | ||
44 | - path: ~/.ccache | ||
45 | - key: sitl_tests-${{matrix.config.build_type}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
46 | - restore-keys: sitl_tests-${{matrix.config.build_type}}-ccache- | ||
47 | - - name: setup ccache | ||
48 | - run: | | ||
49 | - mkdir -p ~/.ccache | ||
50 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
51 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
52 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
53 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
54 | - ccache -s | ||
55 | - ccache -z | ||
56 | - | ||
57 | - - name: check environment | ||
58 | - run: | | ||
59 | - export | ||
60 | - ulimit -a | ||
61 | - - name: Build PX4 and sitl_gazebo | ||
62 | - env: | ||
63 | - PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}} | ||
64 | - run: | | ||
65 | - ccache -z | ||
66 | - make px4_sitl_default | ||
67 | - make px4_sitl_default sitl_gazebo | ||
68 | - ccache -s | ||
69 | - | ||
70 | - - name: Core dump settings | ||
71 | - run: | | ||
72 | - ulimit -c unlimited | ||
73 | - echo "`pwd`/%e.core" > /proc/sys/kernel/core_pattern | ||
74 | - | ||
75 | - - name: Run SITL tests | ||
76 | - env: | ||
77 | - PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}} | ||
78 | - run: | | ||
79 | - export | ||
80 | - ./test/rostest_px4_run.sh mavros_posix_test_mission.test mission:=${{matrix.config.mission}} vehicle:=${{matrix.config.vehicle}} | ||
81 | - | ||
82 | - - name: Look at core files | ||
83 | - if: failure() | ||
84 | - run: gdb build/px4_sitl_default/bin/px4 px4.core -ex "thread apply all bt" -ex "quit" | ||
85 | - - name: Upload px4 coredump | ||
86 | - if: failure() | ||
87 | - uses: actions/upload-artifact@v2-preview | ||
88 | - with: | ||
89 | - name: coredump | ||
90 | - path: px4.core | ||
91 | - | ||
92 | - - name: ecl EKF analysis | ||
93 | - if: always() | ||
94 | - run: ./Tools/ecl_ekf/process_logdata_ekf.py ~/.ros/log/*/*.ulg || true | ||
95 | - | ||
96 | - - name: Upload logs to flight review | ||
97 | - if: always() | ||
98 | - run: ./Tools/upload_log.py -q --description "${GITHUB_WORKFLOW} ${GITHUB_RUN_ID}" --feedback "${GITHUB_WORKFLOW} ${GITHUB_RUN_ID} ${GITHUB_REPOSITORY} ${GITHUB_REF}" --source CI ~/.ros/log/*/*.ulg | ||
99 | - | ||
100 | - - name: Upload px4 binary | ||
101 | - if: failure() | ||
102 | - uses: actions/upload-artifact@v2 | ||
103 | - with: | ||
104 | - name: binary | ||
105 | - path: build/px4_sitl_default/bin/px4 | ||
106 | - | ||
107 | - - name: Store PX4 log | ||
108 | - if: failure() | ||
109 | - uses: actions/upload-artifact@v2 | ||
110 | - with: | ||
111 | - name: px4_log | ||
112 | - path: ~/.ros/log/*/*.ulg | ||
113 | - | ||
114 | - - name: Store ROS log | ||
115 | - if: failure() | ||
116 | - uses: actions/upload-artifact@v2 | ||
117 | - with: | ||
118 | - name: ros_log | ||
119 | - path: ~/.ros/**/rostest-*.log | ||
120 | - | ||
121 | - # Report test coverage | ||
122 | - - name: Upload coverage | ||
123 | - if: contains(matrix.config.build_type, 'Coverage') | ||
124 | - run: | | ||
125 | - git config --global credential.helper "" # disable the keychain credential helper | ||
126 | - git config --global --add credential.helper store # enable the local store credential helper | ||
127 | - echo "https://x-access-token:${{ secrets.ACCESS_TOKEN }}@github.com" >> ~/.git-credentials # add credential | ||
128 | - git config --global url."https://github.com/".insteadof git@github.com: # credentials add credential | ||
129 | - mkdir -p coverage | ||
130 | - lcov --directory build/px4_sitl_default --base-directory build/px4_sitl_default --gcov-tool gcov --capture -o coverage/lcov.info | ||
131 | - - name: Upload coverage information to Codecov | ||
132 | - if: contains(matrix.config.build_type, 'Coverage') | ||
133 | - uses: codecov/codecov-action@v1 | ||
134 | - with: | ||
135 | - token: ${{ secrets.CODECOV_TOKEN }} | ||
136 | - flags: mavros_mission | ||
137 | - file: coverage/lcov.info |
1 | -name: MAVROS Offboard Tests | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - strategy: | ||
15 | - fail-fast: false | ||
16 | - matrix: | ||
17 | - config: | ||
18 | - - {test_file: "mavros_posix_tests_offboard_posctl.test", vehicle: "iris", build_type: "RelWithDebInfo"} | ||
19 | - #- {test_file: "mavros_posix_tests_offboard_attctl.test", vehicle: "iris", build_type: "RelWithDebInfo"} | ||
20 | - #- {test_file: "mavros_posix_tests_offboard_rpyrt_ctl.test", vehicle: "iris", build_type: "RelWithDebInfo"} | ||
21 | - | ||
22 | - container: | ||
23 | - image: px4io/px4-dev-ros-melodic:2021-04-29 | ||
24 | - options: --privileged --ulimit core=-1 --security-opt seccomp=unconfined | ||
25 | - steps: | ||
26 | - - uses: actions/checkout@v1 | ||
27 | - with: | ||
28 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
29 | - | ||
30 | - - name: Prepare ccache timestamp | ||
31 | - id: ccache_cache_timestamp | ||
32 | - shell: cmake -P {0} | ||
33 | - run: | | ||
34 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
35 | - message("::set-output name=timestamp::${current_date}") | ||
36 | - - name: ccache cache files | ||
37 | - uses: actions/cache@v2 | ||
38 | - with: | ||
39 | - path: ~/.ccache | ||
40 | - key: sitl_tests-${{matrix.config.build_type}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
41 | - restore-keys: sitl_tests-${{matrix.config.build_type}}-ccache- | ||
42 | - - name: setup ccache | ||
43 | - run: | | ||
44 | - mkdir -p ~/.ccache | ||
45 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
46 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
47 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
48 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
49 | - ccache -s | ||
50 | - ccache -z | ||
51 | - | ||
52 | - - name: check environment | ||
53 | - run: | | ||
54 | - export | ||
55 | - ulimit -a | ||
56 | - - name: Build PX4 and sitl_gazebo | ||
57 | - env: | ||
58 | - PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}} | ||
59 | - run: | | ||
60 | - ccache -z | ||
61 | - make px4_sitl_default | ||
62 | - make px4_sitl_default sitl_gazebo | ||
63 | - ccache -s | ||
64 | - | ||
65 | - - name: Core dump settings | ||
66 | - run: | | ||
67 | - ulimit -c unlimited | ||
68 | - echo "`pwd`/%e.core" > /proc/sys/kernel/core_pattern | ||
69 | - | ||
70 | - - name: Run SITL tests | ||
71 | - env: | ||
72 | - PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}} | ||
73 | - run: | | ||
74 | - export | ||
75 | - ./test/rostest_px4_run.sh ${{matrix.config.test_file}} vehicle:=${{matrix.config.vehicle}} | ||
76 | - | ||
77 | - - name: Look at core files | ||
78 | - if: failure() | ||
79 | - run: gdb build/px4_sitl_default/bin/px4 px4.core -ex "thread apply all bt" -ex "quit" | ||
80 | - - name: Upload px4 coredump | ||
81 | - if: failure() | ||
82 | - uses: actions/upload-artifact@v2-preview | ||
83 | - with: | ||
84 | - name: coredump | ||
85 | - path: px4.core | ||
86 | - | ||
87 | - - name: ecl EKF analysis | ||
88 | - if: always() | ||
89 | - run: ./Tools/ecl_ekf/process_logdata_ekf.py ~/.ros/log/*/*.ulg || true | ||
90 | - | ||
91 | - - name: Upload logs to flight review | ||
92 | - if: always() | ||
93 | - run: ./Tools/upload_log.py -q --description "${GITHUB_WORKFLOW} ${GITHUB_RUN_ID}" --feedback "${GITHUB_WORKFLOW} ${GITHUB_RUN_ID} ${GITHUB_REPOSITORY} ${GITHUB_REF}" --source CI ~/.ros/log/*/*.ulg | ||
94 | - | ||
95 | - - name: Upload px4 binary | ||
96 | - if: failure() | ||
97 | - uses: actions/upload-artifact@v2 | ||
98 | - with: | ||
99 | - name: binary | ||
100 | - path: build/px4_sitl_default/bin/px4 | ||
101 | - | ||
102 | - - name: Store PX4 log | ||
103 | - if: failure() | ||
104 | - uses: actions/upload-artifact@v2 | ||
105 | - with: | ||
106 | - name: px4_log | ||
107 | - path: ~/.ros/log/*/*.ulg | ||
108 | - | ||
109 | - - name: Store ROS log | ||
110 | - if: failure() | ||
111 | - uses: actions/upload-artifact@v2 | ||
112 | - with: | ||
113 | - name: ros_log | ||
114 | - path: ~/.ros/**/rostest-*.log | ||
115 | - | ||
116 | - # Report test coverage | ||
117 | - - name: Upload coverage | ||
118 | - if: contains(matrix.config.build_type, 'Coverage') | ||
119 | - run: | | ||
120 | - git config --global credential.helper "" # disable the keychain credential helper | ||
121 | - git config --global --add credential.helper store # enable the local store credential helper | ||
122 | - echo "https://x-access-token:${{ secrets.ACCESS_TOKEN }}@github.com" >> ~/.git-credentials # add credential | ||
123 | - git config --global url."https://github.com/".insteadof git@github.com: # credentials add credential | ||
124 | - mkdir -p coverage | ||
125 | - lcov --directory build/px4_sitl_default --base-directory build/px4_sitl_default --gcov-tool gcov --capture -o coverage/lcov.info | ||
126 | - - name: Upload coverage information to Codecov | ||
127 | - if: contains(matrix.config.build_type, 'Coverage') | ||
128 | - uses: codecov/codecov-action@v1 | ||
129 | - with: | ||
130 | - token: ${{ secrets.CODECOV_TOKEN }} | ||
131 | - flags: mavros_offboard | ||
132 | - file: coverage/lcov.info |
1 | -name: Metadata | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - - 'release/*' | ||
8 | - - 'pr-metadata-test' | ||
9 | - | ||
10 | -jobs: | ||
11 | - | ||
12 | - airframe: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - container: px4io/px4-dev-base-focal:2021-04-29 | ||
15 | - steps: | ||
16 | - - uses: actions/checkout@v1 | ||
17 | - with: | ||
18 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
19 | - | ||
20 | - - name: airframe metadata | ||
21 | - run: | | ||
22 | - make airframe_metadata | ||
23 | - cd build/px4_sitl_default/docs | ||
24 | - ls -ls * | ||
25 | - # TODO: deploy to userguide gitbook and s3 | ||
26 | - | ||
27 | - module: | ||
28 | - runs-on: ubuntu-latest | ||
29 | - container: px4io/px4-dev-base-focal:2021-04-29 | ||
30 | - steps: | ||
31 | - - uses: actions/checkout@v1 | ||
32 | - with: | ||
33 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
34 | - | ||
35 | - - name: module documentation | ||
36 | - run: | | ||
37 | - make module_documentation | ||
38 | - cd build/px4_sitl_default/docs | ||
39 | - ls -ls * | ||
40 | - # TODO: deploy to userguide gitbook and s3 | ||
41 | - | ||
42 | - parameter: | ||
43 | - runs-on: ubuntu-latest | ||
44 | - container: px4io/px4-dev-base-focal:2021-04-29 | ||
45 | - steps: | ||
46 | - - uses: actions/checkout@v1 | ||
47 | - with: | ||
48 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
49 | - | ||
50 | - - name: parameter metadata | ||
51 | - run: | | ||
52 | - make parameters_metadata | ||
53 | - ./src/lib/version/get_git_tag_or_branch_version.sh build/px4_sitl_default >> $GITHUB_ENV | ||
54 | - | ||
55 | - - uses: jakejarvis/s3-sync-action@master | ||
56 | - with: | ||
57 | - args: --acl public-read | ||
58 | - env: | ||
59 | - AWS_S3_BUCKET: 'px4-travis' | ||
60 | - AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | ||
61 | - AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | ||
62 | - AWS_REGION: 'us-west-1' | ||
63 | - SOURCE_DIR: 'build/px4_sitl_default/docs/' | ||
64 | - DEST_DIR: 'Firmware/${{ env.version }}/_general/' | ||
65 | - | ||
66 | - uorb_graph: | ||
67 | - runs-on: ubuntu-latest | ||
68 | - container: px4io/px4-dev-nuttx-focal:2021-04-29 | ||
69 | - steps: | ||
70 | - - uses: actions/checkout@v1 | ||
71 | - with: | ||
72 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
73 | - | ||
74 | - - name: uORB graph | ||
75 | - run: | | ||
76 | - make uorb_graphs | ||
77 | - cd Tools/uorb_graph | ||
78 | - ls -ls * | ||
79 | - # TODO: deploy graph_px4_sitl.json to S3 px4-travis:Firmware/master/ | ||
80 | - | ||
81 | - micrortps_agent: | ||
82 | - runs-on: ubuntu-latest | ||
83 | - container: px4io/px4-dev-base-focal:2021-04-29 | ||
84 | - steps: | ||
85 | - - uses: actions/checkout@v1 | ||
86 | - with: | ||
87 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
88 | - | ||
89 | - - name: microRTPS agent | ||
90 | - run: | | ||
91 | - make px4_sitl_rtps | ||
92 | - git clone https://github.com/PX4/micrortps_agent.git | ||
93 | - cp -R build/px4_sitl_rtps/src/modules/micrortps_bridge/micrortps_agent/* micrortps_agent | ||
94 | - | ||
95 | - ROS_msgs: | ||
96 | - runs-on: ubuntu-latest | ||
97 | - container: px4io/px4-dev-base-focal:2021-04-29 | ||
98 | - steps: | ||
99 | - - uses: actions/checkout@v1 | ||
100 | - with: | ||
101 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
102 | - | ||
103 | - - name: PX4 ROS msgs | ||
104 | - run: | | ||
105 | - git clone https://github.com/PX4/px4_msgs.git | ||
106 | - python3 msg/tools/uorb_to_ros_msgs.py msg/ px4_msgs/msg/ | ||
107 | - | ||
108 | - ROS2_bridge: | ||
109 | - runs-on: ubuntu-latest | ||
110 | - container: px4io/px4-dev-base-focal:2021-04-29 | ||
111 | - steps: | ||
112 | - - uses: actions/checkout@v1 | ||
113 | - with: | ||
114 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
115 | - | ||
116 | - - name: PX4 ROS2 bridge | ||
117 | - run: | | ||
118 | - git clone https://github.com/PX4/px4_ros_com.git | ||
119 | - ./msg/tools/uorb_to_ros_rtps_ids.py -i msg/tools/uorb_rtps_message_ids.yaml -o px4_ros_com/templates/uorb_rtps_message_ids.yaml |
1 | -name: Python CI Checks | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - steps: | ||
15 | - - uses: actions/checkout@v1 | ||
16 | - with: | ||
17 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
18 | - - name: Install Python3 | ||
19 | - run: sudo apt-get install python3 python3-setuptools python3-pip -y | ||
20 | - - name: Install tools | ||
21 | - run: pip3 install --user mypy flake8 | ||
22 | - - name: Check MAVSDK test scripts with mypy | ||
23 | - run: $HOME/.local/bin/mypy --strict test/mavsdk_tests/*.py | ||
24 | - - name: Check MAVSDK test scripts with flake8 | ||
25 | - run: $HOME/.local/bin/flake8 test/mavsdk_tests/*.py |
1 | -name: SITL Tests | ||
2 | - | ||
3 | -on: | ||
4 | - push: | ||
5 | - branches: | ||
6 | - - 'master' | ||
7 | - pull_request: | ||
8 | - branches: | ||
9 | - - '*' | ||
10 | - | ||
11 | -jobs: | ||
12 | - build: | ||
13 | - runs-on: ubuntu-latest | ||
14 | - strategy: | ||
15 | - fail-fast: false | ||
16 | - matrix: | ||
17 | - config: | ||
18 | - - {latitude: "59.617693", longitude: "-151.145316", altitude: "48", build_type: "RelWithDebInfo", model: "iris" } # Alaska | ||
19 | - - {latitude: "-38.071235", longitude: "145.281220", altitude: "31", build_type: "RelWithDebInfo", model: "standard_vtol" } # Australia | ||
20 | - - {latitude: "29.660316", longitude: "-82.316658", altitude: "30", build_type: "RelWithDebInfo", model: "tailsitter" } # Florida | ||
21 | - - {latitude: "47.397742", longitude: "8.545594", altitude: "488", build_type: "Coverage", model: "standard_vtol" } # Zurich | ||
22 | - container: | ||
23 | - image: px4io/px4-dev-simulation-focal:2021-04-29 | ||
24 | - options: --privileged --ulimit core=-1 --security-opt seccomp=unconfined | ||
25 | - steps: | ||
26 | - - uses: actions/checkout@v1 | ||
27 | - with: | ||
28 | - token: ${{ secrets.ACCESS_TOKEN }} | ||
29 | - | ||
30 | - - name: Download MAVSDK | ||
31 | - run: wget "https://github.com/mavlink/MAVSDK/releases/download/v$(cat test/mavsdk_tests/MAVSDK_VERSION)/mavsdk_$(cat test/mavsdk_tests/MAVSDK_VERSION)_ubuntu20.04_amd64.deb" | ||
32 | - - name: Install MAVSDK | ||
33 | - run: dpkg -i "mavsdk_$(cat test/mavsdk_tests/MAVSDK_VERSION)_ubuntu20.04_amd64.deb" | ||
34 | - | ||
35 | - - name: Prepare ccache timestamp | ||
36 | - id: ccache_cache_timestamp | ||
37 | - shell: cmake -P {0} | ||
38 | - run: | | ||
39 | - string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) | ||
40 | - message("::set-output name=timestamp::${current_date}") | ||
41 | - - name: ccache cache files | ||
42 | - uses: actions/cache@v2 | ||
43 | - with: | ||
44 | - path: ~/.ccache | ||
45 | - key: sitl_tests-${{matrix.config.build_type}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | ||
46 | - restore-keys: sitl_tests-${{matrix.config.build_type}}-ccache- | ||
47 | - - name: setup ccache | ||
48 | - run: | | ||
49 | - mkdir -p ~/.ccache | ||
50 | - echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | ||
51 | - echo "compression = true" >> ~/.ccache/ccache.conf | ||
52 | - echo "compression_level = 5" >> ~/.ccache/ccache.conf | ||
53 | - echo "max_size = 100M" >> ~/.ccache/ccache.conf | ||
54 | - ccache -s | ||
55 | - ccache -z | ||
56 | - | ||
57 | - - name: check environment | ||
58 | - env: | ||
59 | - PX4_HOME_LAT: ${{matrix.config.latitude}} | ||
60 | - PX4_HOME_LON: ${{matrix.config.longitude}} | ||
61 | - PX4_HOME_ALT: ${{matrix.config.altitude}} | ||
62 | - PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}} | ||
63 | - run: | | ||
64 | - export | ||
65 | - ulimit -a | ||
66 | - - name: Build PX4 | ||
67 | - env: | ||
68 | - PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}} | ||
69 | - run: make px4_sitl_default | ||
70 | - - name: ccache post-run px4/firmware | ||
71 | - run: ccache -s | ||
72 | - - name: Build SITL Gazebo | ||
73 | - env: | ||
74 | - PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}} | ||
75 | - run: make px4_sitl_default sitl_gazebo | ||
76 | - - name: ccache post-run sitl_gazebo | ||
77 | - run: ccache -s | ||
78 | - - name: Build MAVSDK tests | ||
79 | - env: | ||
80 | - PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}} | ||
81 | - DONT_RUN: 1 | ||
82 | - run: make px4_sitl_default gazebo mavsdk_tests | ||
83 | - - name: ccache post-run mavsdk_tests | ||
84 | - run: ccache -s | ||
85 | - | ||
86 | - - name: Core dump settings | ||
87 | - run: | | ||
88 | - ulimit -c unlimited | ||
89 | - echo "`pwd`/%e.core" > /proc/sys/kernel/core_pattern | ||
90 | - | ||
91 | - - name: Run SITL tests | ||
92 | - env: | ||
93 | - PX4_HOME_LAT: ${{matrix.config.latitude}} | ||
94 | - PX4_HOME_LON: ${{matrix.config.longitude}} | ||
95 | - PX4_HOME_ALT: ${{matrix.config.altitude}} | ||
96 | - PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}} | ||
97 | - run: test/mavsdk_tests/mavsdk_test_runner.py --speed-factor 20 --abort-early --model ${{matrix.config.model}} --upload test/mavsdk_tests/configs/sitl.json | ||
98 | - | ||
99 | - - name: Look at core files | ||
100 | - if: failure() | ||
101 | - run: gdb build/px4_sitl_default/bin/px4 px4.core -ex "thread apply all bt" -ex "quit" | ||
102 | - - name: Upload px4 coredump | ||
103 | - if: failure() | ||
104 | - uses: actions/upload-artifact@v2-preview | ||
105 | - with: | ||
106 | - name: coredump | ||
107 | - path: px4.core | ||
108 | - | ||
109 | - - name: Upload px4 binary | ||
110 | - if: failure() | ||
111 | - uses: actions/upload-artifact@v2-preview | ||
112 | - with: | ||
113 | - name: binary | ||
114 | - path: build/px4_sitl_default/bin/px4 | ||
115 | - | ||
116 | - # Report test coverage | ||
117 | - - name: Upload coverage | ||
118 | - if: contains(matrix.config.build_type, 'Coverage') | ||
119 | - run: | | ||
120 | - git config --global credential.helper "" # disable the keychain credential helper | ||
121 | - git config --global --add credential.helper store # enable the local store credential helper | ||
122 | - echo "https://x-access-token:${{ secrets.ACCESS_TOKEN }}@github.com" >> ~/.git-credentials # add credential | ||
123 | - git config --global url."https://github.com/".insteadof git@github.com: # credentials add credential | ||
124 | - mkdir -p coverage | ||
125 | - lcov --directory build/px4_sitl_default --base-directory build/px4_sitl_default --gcov-tool gcov --capture -o coverage/lcov.info | ||
126 | - - name: Upload coverage information to Codecov | ||
127 | - if: contains(matrix.config.build_type, 'Coverage') | ||
128 | - uses: codecov/codecov-action@v1 | ||
129 | - with: | ||
130 | - token: ${{ secrets.CODECOV_TOKEN }} | ||
131 | - flags: mavsdk | ||
132 | - file: coverage/lcov.info |
1 | -# How to install: | ||
2 | -# gem install github_changelog_generator | ||
3 | -# How to run: | ||
4 | -# github_changelog_generator -u PX4 -p Firmware | ||
5 | -# Description: | ||
6 | -# The following params are sensible defaults for the PX4 project, | ||
7 | -# if you want to do a changelog before a release you need to update since-tag and future-releases, | ||
8 | - | ||
9 | -# Params: | ||
10 | -# github_changelog_generator --help for all options | ||
11 | - | ||
12 | -# max-issues | ||
13 | -# max threshold for github api queries | ||
14 | -# make sure you set your CHANGELOG_GITHUB_TOKEN before | ||
15 | -# running | ||
16 | -max-issues=1500 | ||
17 | - | ||
18 | -# exclude-tags-regex | ||
19 | -# excludes release candidates | ||
20 | -exclude-tags-regex=rc[0-9]{1,}|beta[0-9]{1,} | ||
21 | - | ||
22 | -# since-tag | ||
23 | -# version of last stable release | ||
24 | -# you need to change this depending on what you need | ||
25 | -# if you want a changelog between versions this is the lowest version | ||
26 | -since-tag=1.6.5 | ||
27 | - | ||
28 | -# future-release | ||
29 | -# version you are about to release | ||
30 | -# if you want a changelog between a version and all unreleased changes grouped as a release | ||
31 | -# eg: v1.6.5 to v1.7.0 | ||
32 | -future-release=v1.7.0 | ||
33 | - |
code/original/.gitignore
deleted
100644 → 0
1 | -*.dSYM | ||
2 | -*.o | ||
3 | -*.gch | ||
4 | -*.pyc | ||
5 | -*~ | ||
6 | -.*.swp | ||
7 | -.context | ||
8 | -.cproject | ||
9 | -.DS_Store | ||
10 | -.gdbinit | ||
11 | -.gdb_history | ||
12 | -.project | ||
13 | -.settings | ||
14 | -.swp | ||
15 | -.~lock.* | ||
16 | -Testing/ | ||
17 | -Packages/* | ||
18 | -build/* | ||
19 | -build_*/ | ||
20 | -cscope.out | ||
21 | -cscope.in.out | ||
22 | -cscope.po.out | ||
23 | -Firmware.sublime-workspace | ||
24 | -user.sublime* | ||
25 | -/Documentation/doxy.log | ||
26 | -/Documentation/html/ | ||
27 | -/Documentation/doxygen*objdb*tmp | ||
28 | -.tags | ||
29 | -tags | ||
30 | -.tags_sorted_by_file | ||
31 | -.pydevproject | ||
32 | -.ropeproject | ||
33 | -*.orig | ||
34 | -Firmware.zip | ||
35 | -*.generated.h | ||
36 | -.vagrant | ||
37 | -*.pretty | ||
38 | -xcode | ||
39 | -rootfs/ | ||
40 | -*.autosave | ||
41 | -CMakeLists.txt.user | ||
42 | -GPATH | ||
43 | -GRTAGS | ||
44 | -GTAGS | ||
45 | -*.creator | ||
46 | -*.creator.user | ||
47 | -*.files | ||
48 | -*.includes | ||
49 | - | ||
50 | -# CLion ignores | ||
51 | -.idea | ||
52 | -cmake-build-*/ | ||
53 | - | ||
54 | -posix-configs/SITL/init/test/*_generated | ||
55 | - | ||
56 | -/airframes.md | ||
57 | -/airframes.xml | ||
58 | -/parameters.md | ||
59 | -/parameters.xml | ||
60 | -/modules | ||
61 | -/msg/ros/*.msg | ||
62 | - | ||
63 | -*.gcov | ||
64 | -.coverage | ||
65 | -.coverage.* | ||
66 | - | ||
67 | -# KDevelop ignores | ||
68 | -.kdev4/* | ||
69 | -*.kdev4 | ||
70 | - | ||
71 | -# cmake in tree (ninja) | ||
72 | -.ninja_deps | ||
73 | -.ninja_log | ||
74 | -bin/ | ||
75 | -build.ninja | ||
76 | -cmake_install.cmake | ||
77 | -CMakeCache.txt | ||
78 | -CMakeFiles | ||
79 | -compile_commands.json | ||
80 | -CPackConfig.cmake | ||
81 | -CPackSourceConfig.cmake | ||
82 | -CTestTestfile.cmake | ||
83 | -external/ | ||
84 | -rules.ninja | ||
85 | - | ||
86 | -# in tree build | ||
87 | -**/*.a | ||
88 | -**/*.px4mod | ||
89 | -**/*.stamp | ||
90 | -/coverage* | ||
91 | -/functional-* | ||
92 | -/generated_params/ | ||
93 | -/googletest-*/ | ||
94 | -/logs | ||
95 | -/mavsdk_tests | ||
96 | -/test_mixer_multirotor | ||
97 | -/unit-* | ||
98 | -/uORB/ | ||
99 | -DartConfiguration.tcl | ||
100 | -msg/tmp/ | ||
101 | -msg/topics_sources/ | ||
102 | -platforms/posix/apps.cpp | ||
103 | -platforms/posix/apps.h | ||
104 | -src/lib/version/build_git_version.h | ||
105 | -src/modules/simulator/simulator_config.h | ||
106 | -src/systemcmds/topic_listener/listener_generated.cpp | ||
107 | - | ||
108 | -# SITL | ||
109 | -dataman | ||
110 | -eeprom/ |
code/original/.gitmodules
deleted
100644 → 0
1 | -[submodule "mavlink/include/mavlink/v2.0"] | ||
2 | - path = mavlink/include/mavlink/v2.0 | ||
3 | - url = https://github.com/mavlink/c_library_v2.git | ||
4 | - branch = master | ||
5 | -[submodule "src/drivers/uavcan/libuavcan"] | ||
6 | - path = src/drivers/uavcan/libuavcan | ||
7 | - url = https://github.com/PX4/libuavcan.git | ||
8 | - branch = px4 | ||
9 | -[submodule "Tools/jMAVSim"] | ||
10 | - path = Tools/jMAVSim | ||
11 | - url = https://github.com/PX4/jMAVSim.git | ||
12 | - branch = master | ||
13 | -[submodule "Tools/sitl_gazebo"] | ||
14 | - path = Tools/sitl_gazebo | ||
15 | - url = https://github.com/PX4/PX4-SITL_gazebo.git | ||
16 | - branch = master | ||
17 | -[submodule "src/lib/matrix"] | ||
18 | - path = src/lib/matrix | ||
19 | - url = https://github.com/PX4/PX4-Matrix.git | ||
20 | - branch = master | ||
21 | -[submodule "src/lib/ecl"] | ||
22 | - path = src/lib/ecl | ||
23 | - url = https://github.com/PX4/PX4-ECL.git | ||
24 | - branch = master | ||
25 | -[submodule "boards/atlflight/cmake_hexagon"] | ||
26 | - path = boards/atlflight/cmake_hexagon | ||
27 | - url = https://github.com/PX4/cmake_hexagon.git | ||
28 | - branch = px4 | ||
29 | -[submodule "src/drivers/gps/devices"] | ||
30 | - path = src/drivers/gps/devices | ||
31 | - url = https://github.com/PX4/PX4-GPSDrivers.git | ||
32 | - branch = master | ||
33 | -[submodule "src/modules/micrortps_bridge/micro-CDR"] | ||
34 | - path = src/modules/micrortps_bridge/micro-CDR | ||
35 | - url = https://github.com/PX4/Micro-CDR.git | ||
36 | - branch = master | ||
37 | -[submodule "platforms/nuttx/NuttX/nuttx"] | ||
38 | - path = platforms/nuttx/NuttX/nuttx | ||
39 | - url = https://github.com/PX4/NuttX.git | ||
40 | - branch = px4_firmware_nuttx-10.0.0+ | ||
41 | -[submodule "platforms/nuttx/NuttX/apps"] | ||
42 | - path = platforms/nuttx/NuttX/apps | ||
43 | - url = https://github.com/PX4/NuttX-apps.git | ||
44 | - branch = px4_firmware_nuttx-10.0.0+ | ||
45 | -[submodule "platforms/qurt/dspal"] | ||
46 | - path = platforms/qurt/dspal | ||
47 | - url = https://github.com/ATLFlight/dspal.git | ||
48 | -[submodule "Tools/flightgear_bridge"] | ||
49 | - path = Tools/flightgear_bridge | ||
50 | - url = https://github.com/PX4/PX4-FlightGear-Bridge.git | ||
51 | -[submodule "Tools/jsbsim_bridge"] | ||
52 | - path = Tools/jsbsim_bridge | ||
53 | - url = https://github.com/PX4/px4-jsbsim-bridge.git | ||
54 | -[submodule "src/drivers/uavcan_v1/libcanard"] | ||
55 | - path = src/drivers/uavcan_v1/libcanard | ||
56 | - url = https://github.com/UAVCAN/libcanard.git | ||
57 | -[submodule "src/drivers/uavcan_v1/public_regulated_data_types"] | ||
58 | - path = src/drivers/uavcan_v1/public_regulated_data_types | ||
59 | - url = https://github.com/UAVCAN/public_regulated_data_types.git | ||
60 | -[submodule "src/drivers/uavcannode_gps_demo/public_regulated_data_types"] | ||
61 | - path = src/drivers/uavcannode_gps_demo/public_regulated_data_types | ||
62 | - url = https://github.com/UAVCAN/public_regulated_data_types.git | ||
63 | -[submodule "src/drivers/uavcannode_gps_demo/libcanard"] | ||
64 | - path = src/drivers/uavcannode_gps_demo/libcanard | ||
65 | - url = https://github.com/UAVCAN/libcanard.git | ||
66 | -[submodule "src/drivers/uavcan_v1/legacy_data_types"] | ||
67 | - path = src/drivers/uavcan_v1/legacy_data_types | ||
68 | - url = https://github.com/PX4/public_regulated_data_types.git | ||
69 | - branch = legacy |
code/original/.travis.yml
deleted
100644 → 0
1 | -language: cpp | ||
2 | - | ||
3 | -git: | ||
4 | - depth: 100 | ||
5 | - submodules: false | ||
6 | - | ||
7 | -matrix: | ||
8 | - fast_finish: true | ||
9 | - include: | ||
10 | - - os: linux | ||
11 | - dist: xenial | ||
12 | - # In order to stay under the coverity rate limit, we only run this weekly | ||
13 | - # and not on push which is configured in travis-ci settings. | ||
14 | - if: branch = master | ||
15 | - | ||
16 | -before_install: | ||
17 | - - echo -n | openssl s_client -connect scan.coverity.com:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | sudo tee -a /etc/ssl/certs/ca- | ||
18 | - | ||
19 | -install: | ||
20 | - - export PATH=$HOME/.local/bin:$PATH | ||
21 | - - pip install --user --upgrade pip | ||
22 | - - pip install --user -r Tools/setup/requirements.txt | ||
23 | - | ||
24 | -script: | ||
25 | - - make | ||
26 | - | ||
27 | -addons: | ||
28 | - coverity_scan: | ||
29 | - project: | ||
30 | - name: "PX4/Firmware" | ||
31 | - description: "Build submitted via Travis CI" | ||
32 | - notification_email: ci@px4.io | ||
33 | - build_command_prepend: "make distclean" | ||
34 | - build_command: "make px4_sitl_default" | ||
35 | - branch_pattern: coverity_scan |
code/original/.vscode/.gitignore
deleted
100644 → 0
1 | -{ | ||
2 | - "configurations": [ | ||
3 | - { | ||
4 | - "name": "PX4", | ||
5 | - "includePath": [ | ||
6 | - "${workspaceFolder}/**" | ||
7 | - ], | ||
8 | - "defines": [], | ||
9 | - "macFrameworkPath": [], | ||
10 | - "configurationProvider": "ms-vscode.cmake-tools", | ||
11 | - "cppStandard": "c++14", | ||
12 | - "cStandard": "c11" | ||
13 | - } | ||
14 | - ], | ||
15 | - "version": 4 | ||
16 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | -CONFIG: | ||
2 | - default: px4_sitl_default | ||
3 | - choices: | ||
4 | - px4_sitl_default: | ||
5 | - short: px4_sitl | ||
6 | - buildType: RelWithDebInfo | ||
7 | - settings: | ||
8 | - CONFIG: px4_sitl_default | ||
9 | - px4_sitl_replay: | ||
10 | - short: px4_sitl_replay | ||
11 | - buildType: RelWithDebInfo | ||
12 | - settings: | ||
13 | - CONFIG: px4_sitl_replay | ||
14 | - px4_sitl_test: | ||
15 | - short: px4_sitl_test | ||
16 | - buildType: RelWithDebInfo | ||
17 | - settings: | ||
18 | - CONFIG: px4_sitl_test | ||
19 | - px4_io-v2_default: | ||
20 | - short: px4_io-v2 | ||
21 | - buildType: MinSizeRel | ||
22 | - settings: | ||
23 | - CONFIG: px4_io-v2_default | ||
24 | - px4_fmu-v2_default: | ||
25 | - short: px4_fmu-v2 | ||
26 | - buildType: MinSizeRel | ||
27 | - settings: | ||
28 | - CONFIG: px4_fmu-v2_default | ||
29 | - px4_fmu-v3_default: | ||
30 | - short: px4_fmu-v3 | ||
31 | - buildType: MinSizeRel | ||
32 | - settings: | ||
33 | - CONFIG: px4_fmu-v3_default | ||
34 | - px4_fmu-v4_default: | ||
35 | - short: px4_fmu-v4 | ||
36 | - buildType: MinSizeRel | ||
37 | - settings: | ||
38 | - CONFIG: px4_fmu-v4_default | ||
39 | - px4_fmu-v4pro_default: | ||
40 | - short: px4_fmu-v4pro | ||
41 | - buildType: MinSizeRel | ||
42 | - settings: | ||
43 | - CONFIG: px4_fmu-v4pro_default | ||
44 | - px4_fmu-v5_default: | ||
45 | - short: px4_fmu-v5 | ||
46 | - buildType: MinSizeRel | ||
47 | - settings: | ||
48 | - CONFIG: px4_fmu-v5_default | ||
49 | - px4_fmu-v5x_default: | ||
50 | - short: px4_fmu-v5x | ||
51 | - buildType: MinSizeRel | ||
52 | - settings: | ||
53 | - CONFIG: px4_fmu-v5x_default | ||
54 | - airmind_mindpx-v2_default: | ||
55 | - short: airmind_mindpx-v2 | ||
56 | - buildType: MinSizeRel | ||
57 | - settings: | ||
58 | - CONFIG: airmind_mindpx-v2_default | ||
59 | - ark_can-flow_default: | ||
60 | - short: ark_can-flow_default | ||
61 | - buildType: MinSizeRel | ||
62 | - settings: | ||
63 | - CONFIG: ark_can-flow_default | ||
64 | - ark_can-flow_canbootloader: | ||
65 | - short: ark_can-flow_canbootloader | ||
66 | - buildType: MinSizeRel | ||
67 | - settings: | ||
68 | - CONFIG: ark_can-flow_canbootloader | ||
69 | - ark_can-gps_default: | ||
70 | - short: ark_can-gps_default | ||
71 | - buildType: MinSizeRel | ||
72 | - settings: | ||
73 | - CONFIG: ark_can-gps_default | ||
74 | - ark_can-gps_canbootloader: | ||
75 | - short: ark_can-gps_canbootloader | ||
76 | - buildType: MinSizeRel | ||
77 | - settings: | ||
78 | - CONFIG: ark_can-gps_canbootloader | ||
79 | - av_x-v1_default: | ||
80 | - short: av_x-v1 | ||
81 | - buildType: MinSizeRel | ||
82 | - settings: | ||
83 | - CONFIG: av_x-v1_default | ||
84 | - bitcraze_crazyflie_default: | ||
85 | - short: bitcraze_crazyflie | ||
86 | - buildType: MinSizeRel | ||
87 | - settings: | ||
88 | - CONFIG: bitcraze_crazyflie_default | ||
89 | - cuav_can-gps-v1_default: | ||
90 | - short: cuav_can-gps-v1_default | ||
91 | - buildType: MinSizeRel | ||
92 | - settings: | ||
93 | - CONFIG: cuav_can-gps-v1_default | ||
94 | - cuav_can-gps-v1_canbootloader: | ||
95 | - short: cuav_can-gps-v1_canbootloader | ||
96 | - buildType: MinSizeRel | ||
97 | - settings: | ||
98 | - CONFIG: cuav_can-gps-v1_canbootloader | ||
99 | - cuav_nora_default: | ||
100 | - short: cuav_nora | ||
101 | - buildType: MinSizeRel | ||
102 | - settings: | ||
103 | - CONFIG: cuav_nora_default | ||
104 | - cuav_x7pro_default: | ||
105 | - short: cuav_x7pro | ||
106 | - buildType: MinSizeRel | ||
107 | - settings: | ||
108 | - CONFIG: cuav_x7pro_default | ||
109 | - cubepilot_cubeorange_test: | ||
110 | - short: cubepilot_cubeorange | ||
111 | - buildType: MinSizeRel | ||
112 | - settings: | ||
113 | - CONFIG: cubepilot_orange_test | ||
114 | - emlid_navio2_default: | ||
115 | - short: emlid_navio2 | ||
116 | - buildType: MinSizeRel | ||
117 | - settings: | ||
118 | - CONFIG: emlid_navio2_default | ||
119 | - freefly_can-rtk-gps_default: | ||
120 | - short: freefly_can-rtk-gps_default | ||
121 | - buildType: MinSizeRel | ||
122 | - settings: | ||
123 | - CONFIG: freefly_can-rtk-gps_default | ||
124 | - freefly_can-rtk-gps_canbootloader: | ||
125 | - short: freefly_can-rtk-gps_canbootloader | ||
126 | - buildType: MinSizeRel | ||
127 | - settings: | ||
128 | - CONFIG: freefly_can-rtk-gps_canbootloader | ||
129 | - holybro_can-gps-v1_canbootloader: | ||
130 | - short: holybro_can-gps-v1_canbootloader | ||
131 | - buildType: MinSizeRel | ||
132 | - settings: | ||
133 | - CONFIG: holybro_can-gps-v1_canbootloader | ||
134 | - holybro_can-gps-v1_default: | ||
135 | - short: holybro_can-gps-v1_default | ||
136 | - buildType: MinSizeRel | ||
137 | - settings: | ||
138 | - CONFIG: holybro_can-gps-v1_default | ||
139 | - holybro_durandal-v1_default: | ||
140 | - short: holybro_durandal-v1 | ||
141 | - buildType: MinSizeRel | ||
142 | - settings: | ||
143 | - CONFIG: holybro_durandal-v1_default | ||
144 | - modalai_fc-v1_default: | ||
145 | - short: modalai_fc-v1 | ||
146 | - buildType: MinSizeRel | ||
147 | - settings: | ||
148 | - CONFIG: modalai_fc-v1_default | ||
149 | - modalai_fc-v2_default: | ||
150 | - short: modalai_fc-v2 | ||
151 | - buildType: MinSizeRel | ||
152 | - settings: | ||
153 | - CONFIG: modalai_fc-v2_default | ||
154 | - mro_ctrl-zero-f7_default: | ||
155 | - short: mro_ctrl-zero-f7 | ||
156 | - buildType: MinSizeRel | ||
157 | - settings: | ||
158 | - CONFIG: mro_ctrl-zero-f7_default | ||
159 | - mro_pixracerpro_bootloader: | ||
160 | - short: mro_pixracerpro_bootloader | ||
161 | - buildType: MinSizeRel | ||
162 | - settings: | ||
163 | - CONFIG: mro_pixracerpro_bootloader | ||
164 | - mro_pixracerpro_default: | ||
165 | - short: mro_pixracerpro_default | ||
166 | - buildType: MinSizeRel | ||
167 | - settings: | ||
168 | - CONFIG: mro_pixracerpro_default | ||
169 | - mro_x21-777_default: | ||
170 | - short: mro_x2.1-777 | ||
171 | - buildType: MinSizeRel | ||
172 | - settings: | ||
173 | - CONFIG: mro_x21-777_default | ||
174 | - nxp_fmuk66-v3_default: | ||
175 | - short: nxp_fmuk66-v3 | ||
176 | - buildType: MinSizeRel | ||
177 | - settings: | ||
178 | - CONFIG: nxp_fmuk66-v3_default |
1 | -{ | ||
2 | - // See http://go.microsoft.com/fwlink/?LinkId=827846 | ||
3 | - // for the documentation about the extensions.json format | ||
4 | - "recommendations": [ | ||
5 | - "chiehyu.vscode-astyle", | ||
6 | - "dan-c-underwood.arm", | ||
7 | - "fredericbonnet.cmake-test-adapter", | ||
8 | - "github.vscode-pull-request-github", | ||
9 | - "marus25.cortex-debug", | ||
10 | - "ms-azuretools.vscode-docker", | ||
11 | - "ms-iot.vscode-ros", | ||
12 | - "ms-python.python", | ||
13 | - "ms-vscode.cmake-tools", | ||
14 | - "ms-vscode.cpptools", | ||
15 | - "ms-vscode.cpptools-extension-pack", | ||
16 | - "redhat.vscode-yaml", | ||
17 | - "streetsidesoftware.code-spell-checker", | ||
18 | - "twxs.cmake", | ||
19 | - "uavcan.dsdl", | ||
20 | - "wholroyd.jinja", | ||
21 | - "zixuanwang.linkerscript" | ||
22 | - ] | ||
23 | -} |
code/original/.vscode/settings.json
deleted
100644 → 0
1 | -{ | ||
2 | - "astyle.astylerc": "${workspaceFolder}/Tools/astyle/astylerc", | ||
3 | - "astyle.c.enable": true, | ||
4 | - "astyle.cpp.enable": true, | ||
5 | - "breadcrumbs.enabled": true, | ||
6 | - "C_Cpp.autoAddFileAssociations": false, | ||
7 | - "C_Cpp.clang_format_fallbackStyle": "none", | ||
8 | - "C_Cpp.default.browse.limitSymbolsToIncludedHeaders": true, | ||
9 | - "C_Cpp.default.cppStandard": "c++14", | ||
10 | - "C_Cpp.default.cStandard": "c11", | ||
11 | - "C_Cpp.formatting": "Disabled", | ||
12 | - "C_Cpp.intelliSenseEngine": "Default", | ||
13 | - "C_Cpp.vcpkg.enabled": false, | ||
14 | - "C_Cpp.workspaceParsingPriority": "low", | ||
15 | - "cmake.buildBeforeRun": true, | ||
16 | - "cmake.buildDirectory": "${workspaceFolder}/build/${variant:CONFIG}", | ||
17 | - "cmake.buildTask": true, | ||
18 | - "cmake.configureOnOpen": true, | ||
19 | - "cmake.ctest.parallelJobs": 1, | ||
20 | - "cmake.skipConfigureIfCachePresent": true, | ||
21 | - "cmakeExplorer.buildDir": "${workspaceFolder}/build/px4_sitl_test", | ||
22 | - "cmakeExplorer.parallelJobs": 1, | ||
23 | - "cmakeExplorer.suiteDelimiter": "-", | ||
24 | - "cortex-debug.enableTelemetry": false, | ||
25 | - "cSpell.allowCompoundWords": true, | ||
26 | - "cSpell.diagnosticLevel": "Hint", | ||
27 | - "cSpell.showStatus": false, | ||
28 | - "cSpell.words": [ | ||
29 | - "acro", | ||
30 | - "nuttx", | ||
31 | - "esc" | ||
32 | - ], | ||
33 | - "debug.toolBarLocation": "docked", | ||
34 | - "editor.acceptSuggestionOnEnter": "off", | ||
35 | - "editor.defaultFormatter": "chiehyu.vscode-astyle", | ||
36 | - "editor.dragAndDrop": false, | ||
37 | - "editor.insertSpaces": false, | ||
38 | - "editor.minimap.maxColumn": 120, | ||
39 | - "editor.minimap.renderCharacters": false, | ||
40 | - "editor.minimap.showSlider": "always", | ||
41 | - "editor.suggest.localityBonus": true, | ||
42 | - "editor.tabSize": 8, | ||
43 | - "editor.wordWrapColumn": 120, | ||
44 | - "explorer.openEditors.visible": 0, | ||
45 | - "files.insertFinalNewline": true, | ||
46 | - "files.trimTrailingWhitespace": true, | ||
47 | - "files.watcherExclude": { | ||
48 | - "**/build/**": true | ||
49 | - }, | ||
50 | - "git.detectSubmodulesLimit": 20, | ||
51 | - "git.ignoreLimitWarning": true, | ||
52 | - "githubPullRequests.defaultMergeMethod": "squash", | ||
53 | - "githubPullRequests.telemetry.enabled": false, | ||
54 | - "files.associations": { | ||
55 | - "*.jinja": "jinja", | ||
56 | - "algorithm": "cpp", | ||
57 | - "array": "cpp", | ||
58 | - "atomic": "cpp", | ||
59 | - "bitset": "cpp", | ||
60 | - "cctype": "cpp", | ||
61 | - "cfenv": "cpp", | ||
62 | - "chrono": "cpp", | ||
63 | - "cinttypes": "cpp", | ||
64 | - "clocale": "cpp", | ||
65 | - "cmath": "cpp", | ||
66 | - "codecvt": "cpp", | ||
67 | - "complex": "cpp", | ||
68 | - "condition_variable": "cpp", | ||
69 | - "csignal": "cpp", | ||
70 | - "cstdarg": "cpp", | ||
71 | - "cstddef": "cpp", | ||
72 | - "cstdint": "cpp", | ||
73 | - "cstdio": "cpp", | ||
74 | - "cstdlib": "cpp", | ||
75 | - "cstring": "cpp", | ||
76 | - "ctime": "cpp", | ||
77 | - "cwchar": "cpp", | ||
78 | - "cwctype": "cpp", | ||
79 | - "deque": "cpp", | ||
80 | - "exception": "cpp", | ||
81 | - "forward_list": "cpp", | ||
82 | - "fstream": "cpp", | ||
83 | - "functional": "cpp", | ||
84 | - "future": "cpp", | ||
85 | - "hash_map": "cpp", | ||
86 | - "hash_set": "cpp", | ||
87 | - "initializer_list": "cpp", | ||
88 | - "iomanip": "cpp", | ||
89 | - "iosfwd": "cpp", | ||
90 | - "iostream": "cpp", | ||
91 | - "istream": "cpp", | ||
92 | - "iterator": "cpp", | ||
93 | - "limits": "cpp", | ||
94 | - "list": "cpp", | ||
95 | - "map": "cpp", | ||
96 | - "memory": "cpp", | ||
97 | - "memory_resource": "cpp", | ||
98 | - "mutex": "cpp", | ||
99 | - "new": "cpp", | ||
100 | - "numeric": "cpp", | ||
101 | - "optional": "cpp", | ||
102 | - "ostream": "cpp", | ||
103 | - "random": "cpp", | ||
104 | - "ratio": "cpp", | ||
105 | - "regex": "cpp", | ||
106 | - "set": "cpp", | ||
107 | - "sstream": "cpp", | ||
108 | - "stdexcept": "cpp", | ||
109 | - "streambuf": "cpp", | ||
110 | - "string": "cpp", | ||
111 | - "string_view": "cpp", | ||
112 | - "strstream": "cpp", | ||
113 | - "system_error": "cpp", | ||
114 | - "thread": "cpp", | ||
115 | - "tuple": "cpp", | ||
116 | - "type_traits": "cpp", | ||
117 | - "typeindex": "cpp", | ||
118 | - "typeinfo": "cpp", | ||
119 | - "unordered_map": "cpp", | ||
120 | - "unordered_set": "cpp", | ||
121 | - "utility": "cpp", | ||
122 | - "valarray": "cpp", | ||
123 | - "variant": "cpp", | ||
124 | - "vector": "cpp" | ||
125 | - }, | ||
126 | - "search.exclude": { | ||
127 | - "${workspaceFolder}/build": true | ||
128 | - }, | ||
129 | - "search.showLineNumbers": true, | ||
130 | - "telemetry.enableTelemetry": false, | ||
131 | - "terminal.integrated.copyOnSelection": true, | ||
132 | - "terminal.integrated.rightClickBehavior": "paste", | ||
133 | - "terminal.integrated.scrollback": 5000, | ||
134 | - "window.title": "${dirty} ${activeEditorMedium}${separator}${rootName}", | ||
135 | - "workbench.editor.highlightModifiedTabs": true, | ||
136 | - "workbench.enableExperiments": false, | ||
137 | - "workbench.settings.enableNaturalLanguageSearch": false, | ||
138 | - "yaml.schemas": { | ||
139 | - "${workspaceFolder}/validation/module_schema.yaml": "${workspaceFolder}/src/modules/*/module.yaml" | ||
140 | - } | ||
141 | -} |
code/original/.vscode/tasks.json
deleted
100644 → 0
1 | -{ | ||
2 | - // See https://go.microsoft.com/fwlink/?LinkId=733558 | ||
3 | - // for the documentation about the tasks.json format | ||
4 | - "version": "2.0.0", | ||
5 | - "tasks": [ | ||
6 | - { | ||
7 | - "label": "build", | ||
8 | - "type": "shell", | ||
9 | - "command": "/bin/bash", | ||
10 | - "args": [ | ||
11 | - "-c", | ||
12 | - "${command:cmake.tasksBuildCommand}" | ||
13 | - ], | ||
14 | - "options": { | ||
15 | - "cwd": "${command:cmake.buildDirectory}" | ||
16 | - }, | ||
17 | - "group": { | ||
18 | - "kind": "build", | ||
19 | - "isDefault": true, | ||
20 | - }, | ||
21 | - "problemMatcher": { | ||
22 | - "base": "$gcc", | ||
23 | - "fileLocation": ["relative", "${command:cmake.buildDirectory}"] | ||
24 | - }, | ||
25 | - "presentation":{ | ||
26 | - "echo": false, | ||
27 | - "showReuseMessage": false, | ||
28 | - "clear": true, | ||
29 | - "panel": "shared", | ||
30 | - "group": "build" | ||
31 | - } | ||
32 | - }, | ||
33 | - { | ||
34 | - "label": "test", | ||
35 | - "type": "shell", | ||
36 | - "command": "make tests", | ||
37 | - "options": { | ||
38 | - "cwd": "${workspaceFolder}" | ||
39 | - }, | ||
40 | - "group": { | ||
41 | - "kind": "test", | ||
42 | - "isDefault": true, | ||
43 | - }, | ||
44 | - "presentation":{ | ||
45 | - "echo": true, | ||
46 | - "showReuseMessage": false, | ||
47 | - "clear": false, | ||
48 | - "panel": "shared", | ||
49 | - "group": "test" | ||
50 | - } | ||
51 | - }, | ||
52 | - { | ||
53 | - "label": "jmavsim build", | ||
54 | - "type": "shell", | ||
55 | - "command": "ant create_run_jar copy_res", | ||
56 | - "options": { | ||
57 | - "cwd": "${workspaceFolder}/Tools/jMAVSim" | ||
58 | - }, | ||
59 | - "problemMatcher": [], | ||
60 | - "presentation":{ | ||
61 | - "echo": true, | ||
62 | - "reveal": "never", | ||
63 | - "focus": false, | ||
64 | - "panel": "shared", | ||
65 | - "showReuseMessage": false, | ||
66 | - "clear": false, | ||
67 | - } | ||
68 | - }, | ||
69 | - { | ||
70 | - "label": "jmavsim", | ||
71 | - "type": "shell", | ||
72 | - "dependsOn": "jmavsim build", | ||
73 | - "command": "java -Djava.ext.dirs= -jar jmavsim_run.jar -r 250 -lockstep -tcp localhost:4560 -qgc", | ||
74 | - "options": { | ||
75 | - "cwd": "${workspaceFolder}/Tools/jMAVSim/out/production", | ||
76 | - "env": { | ||
77 | - "PX4_SIM_SPEED_FACTOR": "1" | ||
78 | - } | ||
79 | - }, | ||
80 | - "isBackground": true, | ||
81 | - "presentation": { | ||
82 | - "echo": true, | ||
83 | - "reveal": "never", | ||
84 | - "focus": false, | ||
85 | - "panel": "shared", | ||
86 | - "showReuseMessage": false, | ||
87 | - "clear": false | ||
88 | - }, | ||
89 | - "problemMatcher": [ | ||
90 | - { | ||
91 | - "pattern": [ | ||
92 | - { | ||
93 | - "regexp": ".", | ||
94 | - "file": 1, | ||
95 | - "location": 2, | ||
96 | - "message": 3 | ||
97 | - } | ||
98 | - ], | ||
99 | - "background": { | ||
100 | - "activeOnStart": true, | ||
101 | - "beginsPattern": ".", | ||
102 | - "endsPattern": ".", | ||
103 | - } | ||
104 | - } | ||
105 | - ] | ||
106 | - }, | ||
107 | - { | ||
108 | - "label": "jmavsim kill", | ||
109 | - "type": "shell", | ||
110 | - "command": "kill $(ps aux | grep jmavsim | grep -v 'grep' | awk '{print $2}')", | ||
111 | - "presentation": { | ||
112 | - "echo": false, | ||
113 | - "reveal": "never", | ||
114 | - "focus": false, | ||
115 | - "panel": "shared", | ||
116 | - "showReuseMessage": false, | ||
117 | - "clear": false | ||
118 | - }, | ||
119 | - "problemMatcher": [] | ||
120 | - }, | ||
121 | - { | ||
122 | - "label": "gazebo build", | ||
123 | - "type": "shell", | ||
124 | - "command": "make px4_sitl_default sitl_gazebo", | ||
125 | - "options": { | ||
126 | - "cwd": "${workspaceFolder}" | ||
127 | - }, | ||
128 | - "problemMatcher": [], | ||
129 | - "presentation":{ | ||
130 | - "echo": true, | ||
131 | - "reveal": "always", | ||
132 | - "focus": false, | ||
133 | - "panel": "shared", | ||
134 | - "showReuseMessage": false, | ||
135 | - "clear": false, | ||
136 | - } | ||
137 | - }, | ||
138 | - { | ||
139 | - "label": "gazebo start", | ||
140 | - "type": "shell", | ||
141 | - "dependsOn": "gazebo build", | ||
142 | - "options": { | ||
143 | - "cwd": "${workspaceFolder}", | ||
144 | - "env": { | ||
145 | - "GAZEBO_PLUGIN_PATH": "${workspaceFolder}/build/px4_sitl_default/build_gazebo", | ||
146 | - "GAZEBO_MODEL_PATH": "${workspaceFolder}/Tools/sitl_gazebo/models", | ||
147 | - "PX4_SIM_SPEED_FACTOR": "1" | ||
148 | - } | ||
149 | - }, | ||
150 | - "command": "gzserver --verbose ${workspaceFolder}/Tools/sitl_gazebo/worlds/${input:gazeboWorld}.world", | ||
151 | - "isBackground": true, | ||
152 | - "presentation": { | ||
153 | - "echo": true, | ||
154 | - "reveal": "never", | ||
155 | - "focus": false, | ||
156 | - "panel": "shared", | ||
157 | - "showReuseMessage": false, | ||
158 | - "clear": false | ||
159 | - }, | ||
160 | - "problemMatcher": [ | ||
161 | - { | ||
162 | - "pattern": [ | ||
163 | - { | ||
164 | - "regexp": ".", | ||
165 | - "file": 1, | ||
166 | - "location": 2, | ||
167 | - "message": 3 | ||
168 | - } | ||
169 | - ], | ||
170 | - "background": { | ||
171 | - "activeOnStart": true, | ||
172 | - "beginsPattern": ".", | ||
173 | - "endsPattern": ".", | ||
174 | - } | ||
175 | - } | ||
176 | - ] | ||
177 | - }, | ||
178 | - { | ||
179 | - "label": "gazebo", | ||
180 | - "type": "shell", | ||
181 | - "dependsOn": "gazebo start", | ||
182 | - "options": { | ||
183 | - "cwd": "${workspaceFolder}", | ||
184 | - "env": { | ||
185 | - "GAZEBO_PLUGIN_PATH": "${workspaceFolder}/build/px4_sitl_default/build_gazebo", | ||
186 | - "GAZEBO_MODEL_PATH": "${workspaceFolder}/Tools/sitl_gazebo/models", | ||
187 | - "PX4_SIM_SPEED_FACTOR": "1" | ||
188 | - } | ||
189 | - }, | ||
190 | - "command": "gz model --verbose --spawn-file=${workspaceFolder}/Tools/sitl_gazebo/models/${input:vehicleModel}/${input:vehicleModel}.sdf --model-name=${input:vehicleModel} -x 1.01 -y 0.98 -z 0.83", | ||
191 | - "isBackground": false, | ||
192 | - "presentation": { | ||
193 | - "echo": true, | ||
194 | - "reveal": "never", | ||
195 | - "focus": false, | ||
196 | - "panel": "shared", | ||
197 | - "showReuseMessage": false, | ||
198 | - "clear": false | ||
199 | - }, | ||
200 | - "problemMatcher": [ | ||
201 | - { | ||
202 | - "pattern": [ | ||
203 | - { | ||
204 | - "regexp": ".", | ||
205 | - "file": 1, | ||
206 | - "location": 2, | ||
207 | - "message": 3 | ||
208 | - } | ||
209 | - ], | ||
210 | - "background": { | ||
211 | - "activeOnStart": true, | ||
212 | - "beginsPattern": ".", | ||
213 | - "endsPattern": ".", | ||
214 | - } | ||
215 | - } | ||
216 | - ] | ||
217 | - }, | ||
218 | - { | ||
219 | - "label": "gazebo client", | ||
220 | - "type": "shell", | ||
221 | - "dependsOn": "gazebo build", | ||
222 | - "options": { | ||
223 | - "cwd": "${workspaceFolder}", | ||
224 | - "env": { | ||
225 | - "GAZEBO_PLUGIN_PATH": "${workspaceFolder}/build/px4_sitl_default/build_gazebo", | ||
226 | - "GAZEBO_MODEL_PATH": "${workspaceFolder}/Tools/sitl_gazebo/models", | ||
227 | - "PX4_SIM_SPEED_FACTOR": "1" | ||
228 | - } | ||
229 | - }, | ||
230 | - "command": "gzclient --verbose", | ||
231 | - "isBackground": true, | ||
232 | - "presentation": { | ||
233 | - "echo": true, | ||
234 | - "reveal": "never", | ||
235 | - "focus": false, | ||
236 | - "panel": "shared", | ||
237 | - "showReuseMessage": false, | ||
238 | - "clear": false | ||
239 | - }, | ||
240 | - "problemMatcher": [ | ||
241 | - { | ||
242 | - "pattern": [ | ||
243 | - { | ||
244 | - "regexp": ".", | ||
245 | - "file": 1, | ||
246 | - "location": 2, | ||
247 | - "message": 3 | ||
248 | - } | ||
249 | - ], | ||
250 | - "background": { | ||
251 | - "activeOnStart": true, | ||
252 | - "beginsPattern": ".", | ||
253 | - "endsPattern": ".", | ||
254 | - } | ||
255 | - } | ||
256 | - ] | ||
257 | - }, | ||
258 | - { | ||
259 | - "label": "gazebo kill", | ||
260 | - "type": "shell", | ||
261 | - "command": "killall gzserver", | ||
262 | - "presentation": { | ||
263 | - "echo": true, | ||
264 | - "reveal": "silent", | ||
265 | - "focus": false, | ||
266 | - "panel": "shared", | ||
267 | - "showReuseMessage": false, | ||
268 | - "clear": false | ||
269 | - }, | ||
270 | - "problemMatcher": [], | ||
271 | - "dependsOn":["px4_sitl_cleanup"] | ||
272 | - }, | ||
273 | - { | ||
274 | - "label": "px4_sitl_cleanup", | ||
275 | - "type": "shell", | ||
276 | - "command": "rm -rfv /tmp/px4*", | ||
277 | - "presentation": { | ||
278 | - "echo": true, | ||
279 | - "reveal": "silent", | ||
280 | - "focus": false, | ||
281 | - "panel": "shared", | ||
282 | - "showReuseMessage": false, | ||
283 | - "clear": false | ||
284 | - }, | ||
285 | - "problemMatcher": [], | ||
286 | - "dependsOn":["px4_kill"] | ||
287 | - }, | ||
288 | - { | ||
289 | - "label": "px4_kill", | ||
290 | - "type": "shell", | ||
291 | - "command": "killall px4 || true", | ||
292 | - "presentation": { | ||
293 | - "echo": true, | ||
294 | - "reveal": "silent", | ||
295 | - "focus": false, | ||
296 | - "panel": "shared", | ||
297 | - "showReuseMessage": false, | ||
298 | - "clear": false | ||
299 | - }, | ||
300 | - "problemMatcher": [] | ||
301 | - }, | ||
302 | - { | ||
303 | - "label": "mavlink shell", | ||
304 | - "type": "shell", | ||
305 | - "command": "./Tools/mavlink_shell.py", | ||
306 | - "options": { | ||
307 | - "cwd": "${workspaceFolder}" | ||
308 | - }, | ||
309 | - "presentation": { | ||
310 | - "echo": true, | ||
311 | - "reveal": "always", | ||
312 | - "focus": true, | ||
313 | - "panel": "new", | ||
314 | - "showReuseMessage": false, | ||
315 | - "clear": false | ||
316 | - }, | ||
317 | - "problemMatcher": [] | ||
318 | - }, | ||
319 | - { | ||
320 | - "label": "miniterm.py", | ||
321 | - "type": "shell", | ||
322 | - "command": "miniterm.py --raw - 57600", | ||
323 | - "options": { | ||
324 | - "cwd": "${workspaceFolder}" | ||
325 | - }, | ||
326 | - "presentation": { | ||
327 | - "echo": true, | ||
328 | - "reveal": "always", | ||
329 | - "focus": true, | ||
330 | - "panel": "new", | ||
331 | - "showReuseMessage": false, | ||
332 | - "clear": false | ||
333 | - }, | ||
334 | - "problemMatcher": [] | ||
335 | - } | ||
336 | - ], | ||
337 | - "inputs": [ | ||
338 | - { | ||
339 | - "type": "pickString", | ||
340 | - "id": "vehicleModel", | ||
341 | - "description": "gazebo model", | ||
342 | - "options": [ | ||
343 | - "iris", | ||
344 | - "typhoon_h480", | ||
345 | - "plane", | ||
346 | - "plane_catapult", | ||
347 | - "plane_lidar", | ||
348 | - "standard_vtol", | ||
349 | - "tailsitter", | ||
350 | - "tiltrotor", | ||
351 | - "r1_rover", | ||
352 | - "boat" | ||
353 | - ], | ||
354 | - "default": "iris" | ||
355 | - }, | ||
356 | - { | ||
357 | - "type": "pickString", | ||
358 | - "id": "gazeboWorld", | ||
359 | - "description": "gazebo world", | ||
360 | - "options": [ | ||
361 | - "baylands", | ||
362 | - "empty", | ||
363 | - "ksql_airport", | ||
364 | - "mcmillan_airfield", | ||
365 | - "sonoma_raceway", | ||
366 | - "warehouse", | ||
367 | - "windy", | ||
368 | - "yosemite" | ||
369 | - ], | ||
370 | - "default": "empty" | ||
371 | - } | ||
372 | - ] | ||
373 | -} |
code/original/.ycm_extra_conf.py
deleted
100644 → 0
1 | -# This file is NOT licensed under the GPLv3, which is the license for the rest | ||
2 | -# of YouCompleteMe. | ||
3 | -# | ||
4 | -# Here's the license text for this file: | ||
5 | -# | ||
6 | -# This is free and unencumbered software released into the public domain. | ||
7 | -# | ||
8 | -# Anyone is free to copy, modify, publish, use, compile, sell, or | ||
9 | -# distribute this software, either in source code form or as a compiled | ||
10 | -# binary, for any purpose, commercial or non-commercial, and by any | ||
11 | -# means. | ||
12 | -# | ||
13 | -# In jurisdictions that recognize copyright laws, the author or authors | ||
14 | -# of this software dedicate any and all copyright interest in the | ||
15 | -# software to the public domain. We make this dedication for the benefit | ||
16 | -# of the public at large and to the detriment of our heirs and | ||
17 | -# successors. We intend this dedication to be an overt act of | ||
18 | -# relinquishment in perpetuity of all present and future rights to this | ||
19 | -# software under copyright law. | ||
20 | -# | ||
21 | -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
22 | -# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | ||
23 | -# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. | ||
24 | -# IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR | ||
25 | -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, | ||
26 | -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
27 | -# OTHER DEALINGS IN THE SOFTWARE. | ||
28 | -# | ||
29 | -# For more information, please refer to <http://unlicense.org/> | ||
30 | - | ||
31 | -import os | ||
32 | -import ycm_core | ||
33 | - | ||
34 | -# These are the compilation flags that will be used in case there's no | ||
35 | -# compilation database set (by default, one is not set). | ||
36 | -# CHANGE THIS LIST OF FLAGS. YES, THIS IS THE DROID YOU HAVE BEEN LOOKING FOR. | ||
37 | -flags = [ | ||
38 | -'-Wall', | ||
39 | -'-Wextra', | ||
40 | -'-Werror', | ||
41 | -#'-Wc++98-compat', | ||
42 | -'-Wno-long-long', | ||
43 | -'-Wno-variadic-macros', | ||
44 | -'-fexceptions', | ||
45 | -'-DNDEBUG', | ||
46 | -# You 100% do NOT need -DUSE_CLANG_COMPLETER in your flags; only the YCM | ||
47 | -# source code needs it. | ||
48 | -#'-DUSE_CLANG_COMPLETER', | ||
49 | -# THIS IS IMPORTANT! Without a "-std=<something>" flag, clang won't know which | ||
50 | -# language to use when compiling headers. So it will guess. Badly. So C++ | ||
51 | -# headers will be compiled as C headers. You don't want that so ALWAYS specify | ||
52 | -# a "-std=<something>". | ||
53 | -# For a C project, you would set this to something like 'c99' instead of | ||
54 | -# 'c++14'. | ||
55 | -'-std=c++14', | ||
56 | -# ...and the same thing goes for the magic -x option which specifies the | ||
57 | -# language that the files to be compiled are written in. This is mostly | ||
58 | -# relevant for c++ headers. | ||
59 | -# For a C project, you would set this to 'c' instead of 'c++'. | ||
60 | -'-x', | ||
61 | -'c++', | ||
62 | -'-undef', # get rid of standard definitions to allow us to include arm math header | ||
63 | -'-I', os.path.join(os.path.expanduser("~"),'gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include'), | ||
64 | -'-I', 'Build/px4_io-v2_default.build/nuttx-export/include/', | ||
65 | -'-I', './NuttX/nuttx/arch/arm/include', | ||
66 | -'-include', './src/include/visibility.h', | ||
67 | -'-I', './src', | ||
68 | -'-I', './src/modules', | ||
69 | -'-I', './src/include', | ||
70 | -'-I', './src/lib', | ||
71 | -'-I', './NuttX', | ||
72 | -] | ||
73 | - | ||
74 | - | ||
75 | -# Set this to the absolute path to the folder (NOT the file!) containing the | ||
76 | -# compile_commands.json file to use that instead of 'flags'. See here for | ||
77 | -# more details: http://clang.llvm.org/docs/JSONCompilationDatabase.html | ||
78 | -# | ||
79 | -# Most projects will NOT need to set this to anything; you can just change the | ||
80 | -# 'flags' list of compilation flags. Notice that YCM itself uses that approach. | ||
81 | -compilation_database_folder = '' | ||
82 | - | ||
83 | -if os.path.exists( compilation_database_folder ): | ||
84 | - database = ycm_core.CompilationDatabase( compilation_database_folder ) | ||
85 | -else: | ||
86 | - database = None | ||
87 | - | ||
88 | -SOURCE_EXTENSIONS = [ '.cpp', '.cxx', '.cc', '.c', '.m', '.mm' ] | ||
89 | - | ||
90 | -def DirectoryOfThisScript(): | ||
91 | - return os.path.dirname( os.path.abspath( __file__ ) ) | ||
92 | - | ||
93 | - | ||
94 | -def MakeRelativePathsInFlagsAbsolute( flags, working_directory ): | ||
95 | - if not working_directory: | ||
96 | - return list( flags ) | ||
97 | - new_flags = [] | ||
98 | - make_next_absolute = False | ||
99 | - path_flags = [ '-isystem', '-I', '-iquote', '--sysroot=' ] | ||
100 | - for flag in flags: | ||
101 | - new_flag = flag | ||
102 | - | ||
103 | - if make_next_absolute: | ||
104 | - make_next_absolute = False | ||
105 | - if not flag.startswith( '/' ): | ||
106 | - new_flag = os.path.join( working_directory, flag ) | ||
107 | - | ||
108 | - for path_flag in path_flags: | ||
109 | - if flag == path_flag: | ||
110 | - make_next_absolute = True | ||
111 | - break | ||
112 | - | ||
113 | - if flag.startswith( path_flag ): | ||
114 | - path = flag[ len( path_flag ): ] | ||
115 | - new_flag = path_flag + os.path.join( working_directory, path ) | ||
116 | - break | ||
117 | - | ||
118 | - if new_flag: | ||
119 | - new_flags.append( new_flag ) | ||
120 | - return new_flags | ||
121 | - | ||
122 | - | ||
123 | -def IsHeaderFile( filename ): | ||
124 | - extension = os.path.splitext( filename )[ 1 ] | ||
125 | - return extension in [ '.h', '.hxx', '.hpp', '.hh' ] | ||
126 | - | ||
127 | - | ||
128 | -def GetCompilationInfoForFile( filename ): | ||
129 | - # The compilation_commands.json file generated by CMake does not have entries | ||
130 | - # for header files. So we do our best by asking the db for flags for a | ||
131 | - # corresponding source file, if any. If one exists, the flags for that file | ||
132 | - # should be good enough. | ||
133 | - if IsHeaderFile( filename ): | ||
134 | - basename = os.path.splitext( filename )[ 0 ] | ||
135 | - for extension in SOURCE_EXTENSIONS: | ||
136 | - replacement_file = basename + extension | ||
137 | - if os.path.exists( replacement_file ): | ||
138 | - compilation_info = database.GetCompilationInfoForFile( | ||
139 | - replacement_file ) | ||
140 | - if compilation_info.compiler_flags_: | ||
141 | - return compilation_info | ||
142 | - return None | ||
143 | - return database.GetCompilationInfoForFile( filename ) | ||
144 | - | ||
145 | - | ||
146 | -def FlagsForFile( filename, **kwargs ): | ||
147 | - if database: | ||
148 | - # Bear in mind that compilation_info.compiler_flags_ does NOT return a | ||
149 | - # python list, but a "list-like" StringVec object | ||
150 | - compilation_info = GetCompilationInfoForFile( filename ) | ||
151 | - if not compilation_info: | ||
152 | - return None | ||
153 | - | ||
154 | - final_flags = MakeRelativePathsInFlagsAbsolute( | ||
155 | - compilation_info.compiler_flags_, | ||
156 | - compilation_info.compiler_working_dir_ ) | ||
157 | - | ||
158 | - # NOTE: This is just for YouCompleteMe; it's highly likely that your project | ||
159 | - # does NOT need to remove the stdlib flag. DO NOT USE THIS IN YOUR | ||
160 | - # ycm_extra_conf IF YOU'RE NOT 100% SURE YOU NEED IT. | ||
161 | - #try: | ||
162 | - # final_flags.remove( '-stdlib=libc++' ) | ||
163 | - #except ValueError: | ||
164 | - # pass | ||
165 | - else: | ||
166 | - relative_to = DirectoryOfThisScript() | ||
167 | - final_flags = MakeRelativePathsInFlagsAbsolute( flags, relative_to ) | ||
168 | - | ||
169 | - return { | ||
170 | - 'flags': final_flags, | ||
171 | - 'do_cache': True | ||
172 | - } |
-
Please register or login to post a comment