Showing
72 changed files
with
0 additions
and
4830 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
This diff is collapsed. Click to expand it.
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
This diff is collapsed. Click to expand it.
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 | -} |
This diff is collapsed. Click to expand it.
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
This diff is collapsed. Click to expand it.
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