diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml index 631fc7fb16..9013ab11f7 100644 --- a/.github/workflows/checks.yml +++ b/.github/workflows/checks.yml @@ -53,6 +53,11 @@ jobs: 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 @@ -76,3 +81,19 @@ jobs: 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 diff --git a/.github/workflows/ekf_functional_change_indicator.yml b/.github/workflows/ekf_functional_change_indicator.yml deleted file mode 100644 index 7feb0531bb..0000000000 --- a/.github/workflows/ekf_functional_change_indicator.yml +++ /dev/null @@ -1,35 +0,0 @@ -name: EKF Change Indicator - -on: - pull_request: - branches: - - '**' - paths-ignore: - - 'docs/**' - -# If two events are triggered within a short time in the same PR, cancel the run of the oldest event -concurrency: - group: ${{ github.workflow }}-${{ github.event.pull_request.number }} - cancel-in-progress: true - -jobs: - unit_tests: - runs-on: ubuntu-latest - - container: - image: ghcr.io/px4/px4-dev:v1.17.0-rc2 - - steps: - - uses: actions/checkout@v6 - with: - fetch-depth: 0 - - - name: main test - run: | - cd "$GITHUB_WORKSPACE" - git config --system --add safe.directory '*' - make tests TESTFILTER=EKF - - - name: Check if there is a functional change - run: git diff --exit-code - working-directory: src/modules/ekf2/test/change_indication diff --git a/.github/workflows/ekf_update_change_indicator.yml b/.github/workflows/ekf_update_change_indicator.yml deleted file mode 100644 index b01af805b6..0000000000 --- a/.github/workflows/ekf_update_change_indicator.yml +++ /dev/null @@ -1,54 +0,0 @@ -name: EKF Update Change Indicator - -on: - push: - paths-ignore: - - 'docs/**' - -jobs: - unit_tests: - runs-on: ubuntu-latest - - container: - image: ghcr.io/px4/px4-dev:v1.17.0-rc2 - - env: - GIT_COMMITTER_EMAIL: bot@px4.io - GIT_COMMITTER_NAME: PX4BuildBot - - steps: - - uses: actions/checkout@v6 - with: - fetch-depth: 0 - - - name: main test - run: | - cd "$GITHUB_WORKSPACE" - git config --system --add safe.directory '*' - make tests TESTFILTER=EKF - - - name: Check if there exists diff and save result in variable - id: diff-check - working-directory: src/modules/ekf2/test/change_indication - run: | - if git diff --quiet; then - echo "CHANGE_INDICATED=false" >> $GITHUB_OUTPUT - else - echo "CHANGE_INDICATED=true" >> $GITHUB_OUTPUT - fi - - - name: auto-commit any changes to change indication - if: steps.diff-check.outputs.CHANGE_INDICATED == 'true' - 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 change indication - - See .github/workflows/ekf_update_change_indicator.yml for more details - - - name: if there is a functional change, fail check - if: steps.diff-check.outputs.CHANGE_INDICATED == 'true' - run: exit 1