diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 5dc19917e5..a769519b8c 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -7,8 +7,6 @@ on: paths-ignore: - '**.md' pull_request: - paths-ignore: - - '**.md' permissions: contents: read @@ -269,3 +267,16 @@ jobs: # CI: "true" # run: | # /entrypoint.sh bash -c "pytest -m module" + + ci-complete: + needs: [run-tests, run-heavy-tests, run-lcm-tests, run-integration-tests, run-ros-tests, run-mypy] + runs-on: [self-hosted, Linux] + if: always() + steps: + - name: CI gate + if: ${{ contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled') }} + run: | + echo "❌ One or more CI jobs failed or were cancelled" + exit 1 + - name: CI passed + run: echo "✅ All CI checks passed or were intentionally skipped" diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index e84d7d43d2..1f78a4e4e9 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -20,22 +20,6 @@ permissions: packages: read jobs: - - # cleanup: - # runs-on: dimos-runner-ubuntu-2204 - # steps: - # - name: exit early - # if: ${{ !inputs.should-run }} - # run: | - # exit 0 - - # - name: Free disk space - # run: | - # sudo rm -rf /opt/ghc - # sudo rm -rf /usr/share/dotnet - # sudo rm -rf /usr/local/share/boost - # sudo rm -rf /usr/local/lib/android - run-tests: runs-on: [self-hosted, Linux] container: @@ -47,16 +31,19 @@ jobs: steps: - uses: actions/checkout@v4 + if: ${{ inputs.should-run }} - name: Fix permissions + if: ${{ inputs.should-run }} run: | git config --global --add safe.directory '*' - name: Run tests + if: ${{ inputs.should-run }} run: | /entrypoint.sh bash -c "${{ inputs.cmd }}" - name: check disk space - if: failure() + if: ${{ failure() && inputs.should-run }} run: | df -h