name: Checks on: push: branches: - 'main' paths-ignore: - 'docs/**' pull_request: branches: - '**' paths-ignore: - 'docs/**' permissions: contents: read concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: gate_checks: name: Gate Checks [${{ matrix.check }}] runs-on: [runs-on,runner=2cpu-linux-x64,image=ubuntu24-full-x64,"run-id=${{ github.run_id }}",spot=false,extras=s3-cache] container: image: ghcr.io/px4/px4-dev:v1.17.0-rc2 strategy: fail-fast: true matrix: check: [ "check_format", "check_newlines", "validate_module_configs", "shellcheck_all", "module_documentation", ] steps: - uses: runs-on/action@v2 - uses: actions/checkout@v6 with: fetch-depth: 1 - name: Configure Git Safe Directory run: git config --system --add safe.directory '*' - name: Building [${{ matrix.check }}] env: PX4_SBOM_DISABLE: 1 run: make ${{ matrix.check }} tests: name: Unit Tests runs-on: [runs-on,runner=8cpu-linux-x64,image=ubuntu24-full-x64,"run-id=${{ github.run_id }}",spot=false,extras=s3-cache] container: image: ghcr.io/px4/px4-dev:v1.17.0-rc2 permissions: contents: write env: GIT_COMMITTER_EMAIL: bot@px4.io GIT_COMMITTER_NAME: PX4BuildBot steps: - uses: runs-on/action@v2 - uses: actions/checkout@v6 with: fetch-depth: 1 - name: Configure Git Safe Directory run: git config --system --add safe.directory '*' - uses: ./.github/actions/setup-ccache id: ccache with: cache-key-prefix: ccache-sitl max-size: 300M - name: Build and run unit tests env: PX4_SBOM_DISABLE: 1 run: make tests - uses: ./.github/actions/save-ccache if: always() with: cache-primary-key: ${{ steps.ccache.outputs.cache-primary-key }} - name: Auto-update EKF change indication baselines if: github.event_name == 'push' uses: stefanzweifel/git-auto-commit-action@v7 with: file_pattern: 'src/modules/ekf2/test/change_indication/*.csv' commit_user_name: ${{ env.GIT_COMMITTER_NAME }} commit_user_email: ${{ env.GIT_COMMITTER_EMAIL }} commit_message: | [AUTO COMMIT] update EKF change indication See .github/workflows/checks.yml for more details - name: Check for EKF functional changes run: git diff --exit-code working-directory: src/modules/ekf2/test/change_indication