|
|
|
name: Checks
|
|
|
|
|
|
|
|
on:
|
|
|
|
push:
|
|
|
|
branches:
|
|
|
|
- 'master'
|
|
|
|
pull_request:
|
|
|
|
branches:
|
|
|
|
- '*'
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
build:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
check: [
|
|
|
|
"check_format",
|
|
|
|
"tests",
|
|
|
|
"px4_fmu-v2_default stack_check",
|
|
|
|
"validate_module_configs",
|
|
|
|
"shellcheck_all",
|
|
|
|
"NO_NINJA_BUILD=1 px4_fmu-v5_default",
|
|
|
|
"NO_NINJA_BUILD=1 px4_sitl_default",
|
|
|
|
"airframe_metadata",
|
|
|
|
"module_documentation",
|
|
|
|
"parameters_metadata",
|
|
|
|
]
|
|
|
|
ubuntu_release: [
|
|
|
|
#bionic,
|
|
|
|
focal
|
|
|
|
]
|
|
|
|
container: px4io/px4-dev-nuttx-${{ matrix.ubuntu_release }}:2020-08-14
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v1
|
|
|
|
with:
|
|
|
|
token: ${{ secrets.ACCESS_TOKEN }}
|
|
|
|
|
|
|
|
- name: Prepare ccache timestamp
|
|
|
|
id: ccache_cache_timestamp
|
|
|
|
shell: cmake -P {0}
|
|
|
|
run: |
|
|
|
|
string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC)
|
|
|
|
message("::set-output name=timestamp::${current_date}")
|
|
|
|
- name: ccache cache files
|
|
|
|
uses: actions/cache@v2
|
|
|
|
with:
|
|
|
|
path: ~/.ccache
|
|
|
|
key: tests_${{matrix.ubuntu_release}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}}
|
|
|
|
restore-keys: tests_${{matrix.ubuntu_release}}-ccache-
|
|
|
|
- name: setup ccache
|
|
|
|
run: |
|
|
|
|
mkdir -p ~/.ccache
|
|
|
|
echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf
|
|
|
|
echo "compression = true" >> ~/.ccache/ccache.conf
|
|
|
|
echo "compression_level = 6" >> ~/.ccache/ccache.conf
|
|
|
|
echo "max_size = 400M" >> ~/.ccache/ccache.conf
|
|
|
|
ccache -s
|
|
|
|
ccache -z
|
|
|
|
|
|
|
|
- name: ${{matrix.check}}
|
|
|
|
run: make ${{matrix.check}}
|