From 0853eb1f01bf7daee85f5b0ebec2ddc2363d0c8f Mon Sep 17 00:00:00 2001 From: Shane Smiskol Date: Sat, 9 Dec 2023 09:48:53 -0800 Subject: [PATCH] in one commit --- .github/workflows/selfdrive_tests.yaml | 304 ++++++++++++++++++++++++- 1 file changed, 301 insertions(+), 3 deletions(-) diff --git a/.github/workflows/selfdrive_tests.yaml b/.github/workflows/selfdrive_tests.yaml index 4d15045ecb..a560dafd1f 100644 --- a/.github/workflows/selfdrive_tests.yaml +++ b/.github/workflows/selfdrive_tests.yaml @@ -73,7 +73,7 @@ jobs: matrix: arch: ${{ fromJson( ((github.repository == 'commaai/openpilot') && - ((github.event_name != 'pull_request') || + ((github.event_name != 'pull_request') || (github.event.pull_request.head.repo.full_name == 'commaai/openpilot'))) && '["x86_64", "aarch64"]' || '["x86_64"]' ) }} runs-on: ${{ (matrix.arch == 'aarch64') && 'buildjet-2vcpu-ubuntu-2204-arm' || 'ubuntu-20.04' }} steps: @@ -186,10 +186,308 @@ jobs: with: name: ${{ github.job }} + unit_tests2: + name: unit tests + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v4 + with: + submodules: true + - uses: ./.github/workflows/setup-with-retry + - name: Build openpilot + timeout-minutes: ${{ ((steps.restore-scons-cache.outputs.cache-hit == 'true') && 10 || 30) }} # allow more time when we missed the scons cache + run: ${{ env.RUN }} "scons -j$(nproc)" + - name: Run unit tests + timeout-minutes: 15 + run: | + ${{ env.RUN }} "$PYTEST --timeout 30 -m 'not slow' && \ + ./selfdrive/ui/tests/create_test_translations.sh && \ + QT_QPA_PLATFORM=offscreen ./selfdrive/ui/tests/test_translations && \ + ./selfdrive/ui/tests/test_translations.py && \ + ./system/camerad/test/ae_gray_test && \ + ./selfdrive/test/process_replay/test_fuzzy.py" + - name: "Upload coverage to Codecov" + uses: codecov/codecov-action@v3 + with: + name: ${{ github.job }} + + unit_tests3: + name: unit tests + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v4 + with: + submodules: true + - uses: ./.github/workflows/setup-with-retry + - name: Build openpilot + timeout-minutes: ${{ ((steps.restore-scons-cache.outputs.cache-hit == 'true') && 10 || 30) }} # allow more time when we missed the scons cache + run: ${{ env.RUN }} "scons -j$(nproc)" + - name: Run unit tests + timeout-minutes: 15 + run: | + ${{ env.RUN }} "$PYTEST --timeout 30 -m 'not slow' && \ + ./selfdrive/ui/tests/create_test_translations.sh && \ + QT_QPA_PLATFORM=offscreen ./selfdrive/ui/tests/test_translations && \ + ./selfdrive/ui/tests/test_translations.py && \ + ./system/camerad/test/ae_gray_test && \ + ./selfdrive/test/process_replay/test_fuzzy.py" + - name: "Upload coverage to Codecov" + uses: codecov/codecov-action@v3 + with: + name: ${{ github.job }} + + unit_tests4: + name: unit tests + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v4 + with: + submodules: true + - uses: ./.github/workflows/setup-with-retry + - name: Build openpilot + timeout-minutes: ${{ ((steps.restore-scons-cache.outputs.cache-hit == 'true') && 10 || 30) }} # allow more time when we missed the scons cache + run: ${{ env.RUN }} "scons -j$(nproc)" + - name: Run unit tests + timeout-minutes: 15 + run: | + ${{ env.RUN }} "$PYTEST --timeout 30 -m 'not slow' && \ + ./selfdrive/ui/tests/create_test_translations.sh && \ + QT_QPA_PLATFORM=offscreen ./selfdrive/ui/tests/test_translations && \ + ./selfdrive/ui/tests/test_translations.py && \ + ./system/camerad/test/ae_gray_test && \ + ./selfdrive/test/process_replay/test_fuzzy.py" + - name: "Upload coverage to Codecov" + uses: codecov/codecov-action@v3 + with: + name: ${{ github.job }} + + unit_tests5: + name: unit tests + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v4 + with: + submodules: true + - uses: ./.github/workflows/setup-with-retry + - name: Build openpilot + timeout-minutes: ${{ ((steps.restore-scons-cache.outputs.cache-hit == 'true') && 10 || 30) }} # allow more time when we missed the scons cache + run: ${{ env.RUN }} "scons -j$(nproc)" + - name: Run unit tests + timeout-minutes: 15 + run: | + ${{ env.RUN }} "$PYTEST --timeout 30 -m 'not slow' && \ + ./selfdrive/ui/tests/create_test_translations.sh && \ + QT_QPA_PLATFORM=offscreen ./selfdrive/ui/tests/test_translations && \ + ./selfdrive/ui/tests/test_translations.py && \ + ./system/camerad/test/ae_gray_test && \ + ./selfdrive/test/process_replay/test_fuzzy.py" + - name: "Upload coverage to Codecov" + uses: codecov/codecov-action@v3 + with: + name: ${{ github.job }} + + unit_tests6: + name: unit tests + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v4 + with: + submodules: true + - uses: ./.github/workflows/setup-with-retry + - name: Build openpilot + timeout-minutes: ${{ ((steps.restore-scons-cache.outputs.cache-hit == 'true') && 10 || 30) }} # allow more time when we missed the scons cache + run: ${{ env.RUN }} "scons -j$(nproc)" + - name: Run unit tests + timeout-minutes: 15 + run: | + ${{ env.RUN }} "$PYTEST --timeout 30 -m 'not slow' && \ + ./selfdrive/ui/tests/create_test_translations.sh && \ + QT_QPA_PLATFORM=offscreen ./selfdrive/ui/tests/test_translations && \ + ./selfdrive/ui/tests/test_translations.py && \ + ./system/camerad/test/ae_gray_test && \ + ./selfdrive/test/process_replay/test_fuzzy.py" + - name: "Upload coverage to Codecov" + uses: codecov/codecov-action@v3 + with: + name: ${{ github.job }} + + unit_tests7: + name: unit tests + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v4 + with: + submodules: true + - uses: ./.github/workflows/setup-with-retry + - name: Build openpilot + timeout-minutes: ${{ ((steps.restore-scons-cache.outputs.cache-hit == 'true') && 10 || 30) }} # allow more time when we missed the scons cache + run: ${{ env.RUN }} "scons -j$(nproc)" + - name: Run unit tests + timeout-minutes: 15 + run: | + ${{ env.RUN }} "$PYTEST --timeout 30 -m 'not slow' && \ + ./selfdrive/ui/tests/create_test_translations.sh && \ + QT_QPA_PLATFORM=offscreen ./selfdrive/ui/tests/test_translations && \ + ./selfdrive/ui/tests/test_translations.py && \ + ./system/camerad/test/ae_gray_test && \ + ./selfdrive/test/process_replay/test_fuzzy.py" + - name: "Upload coverage to Codecov" + uses: codecov/codecov-action@v3 + with: + name: ${{ github.job }} + unit_tests8: + name: unit tests + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v4 + with: + submodules: true + - uses: ./.github/workflows/setup-with-retry + - name: Build openpilot + timeout-minutes: ${{ ((steps.restore-scons-cache.outputs.cache-hit == 'true') && 10 || 30) }} # allow more time when we missed the scons cache + run: ${{ env.RUN }} "scons -j$(nproc)" + - name: Run unit tests + timeout-minutes: 15 + run: | + ${{ env.RUN }} "$PYTEST --timeout 30 -m 'not slow' && \ + ./selfdrive/ui/tests/create_test_translations.sh && \ + QT_QPA_PLATFORM=offscreen ./selfdrive/ui/tests/test_translations && \ + ./selfdrive/ui/tests/test_translations.py && \ + ./system/camerad/test/ae_gray_test && \ + ./selfdrive/test/process_replay/test_fuzzy.py" + - name: "Upload coverage to Codecov" + uses: codecov/codecov-action@v3 + with: + name: ${{ github.job }} + unit_tests9: + name: unit tests + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v4 + with: + submodules: true + - uses: ./.github/workflows/setup-with-retry + - name: Build openpilot + timeout-minutes: ${{ ((steps.restore-scons-cache.outputs.cache-hit == 'true') && 10 || 30) }} # allow more time when we missed the scons cache + run: ${{ env.RUN }} "scons -j$(nproc)" + - name: Run unit tests + timeout-minutes: 15 + run: | + ${{ env.RUN }} "$PYTEST --timeout 30 -m 'not slow' && \ + ./selfdrive/ui/tests/create_test_translations.sh && \ + QT_QPA_PLATFORM=offscreen ./selfdrive/ui/tests/test_translations && \ + ./selfdrive/ui/tests/test_translations.py && \ + ./system/camerad/test/ae_gray_test && \ + ./selfdrive/test/process_replay/test_fuzzy.py" + - name: "Upload coverage to Codecov" + uses: codecov/codecov-action@v3 + with: + name: ${{ github.job }} + + unit_tests10: + name: unit tests + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v4 + with: + submodules: true + - uses: ./.github/workflows/setup-with-retry + - name: Build openpilot + timeout-minutes: ${{ ((steps.restore-scons-cache.outputs.cache-hit == 'true') && 10 || 30) }} # allow more time when we missed the scons cache + run: ${{ env.RUN }} "scons -j$(nproc)" + - name: Run unit tests + timeout-minutes: 15 + run: | + ${{ env.RUN }} "$PYTEST --timeout 30 -m 'not slow' && \ + ./selfdrive/ui/tests/create_test_translations.sh && \ + QT_QPA_PLATFORM=offscreen ./selfdrive/ui/tests/test_translations && \ + ./selfdrive/ui/tests/test_translations.py && \ + ./system/camerad/test/ae_gray_test && \ + ./selfdrive/test/process_replay/test_fuzzy.py" + - name: "Upload coverage to Codecov" + uses: codecov/codecov-action@v3 + with: + name: ${{ github.job }} + + unit_tests11: + name: unit tests + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v4 + with: + submodules: true + - uses: ./.github/workflows/setup-with-retry + - name: Build openpilot + timeout-minutes: ${{ ((steps.restore-scons-cache.outputs.cache-hit == 'true') && 10 || 30) }} # allow more time when we missed the scons cache + run: ${{ env.RUN }} "scons -j$(nproc)" + - name: Run unit tests + timeout-minutes: 15 + run: | + ${{ env.RUN }} "$PYTEST --timeout 30 -m 'not slow' && \ + ./selfdrive/ui/tests/create_test_translations.sh && \ + QT_QPA_PLATFORM=offscreen ./selfdrive/ui/tests/test_translations && \ + ./selfdrive/ui/tests/test_translations.py && \ + ./system/camerad/test/ae_gray_test && \ + ./selfdrive/test/process_replay/test_fuzzy.py" + - name: "Upload coverage to Codecov" + uses: codecov/codecov-action@v3 + with: + name: ${{ github.job }} + + unit_tests12: + name: unit tests + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v4 + with: + submodules: true + - uses: ./.github/workflows/setup-with-retry + - name: Build openpilot + timeout-minutes: ${{ ((steps.restore-scons-cache.outputs.cache-hit == 'true') && 10 || 30) }} # allow more time when we missed the scons cache + run: ${{ env.RUN }} "scons -j$(nproc)" + - name: Run unit tests + timeout-minutes: 15 + run: | + ${{ env.RUN }} "$PYTEST --timeout 30 -m 'not slow' && \ + ./selfdrive/ui/tests/create_test_translations.sh && \ + QT_QPA_PLATFORM=offscreen ./selfdrive/ui/tests/test_translations && \ + ./selfdrive/ui/tests/test_translations.py && \ + ./system/camerad/test/ae_gray_test && \ + ./selfdrive/test/process_replay/test_fuzzy.py" + - name: "Upload coverage to Codecov" + uses: codecov/codecov-action@v3 + with: + name: ${{ github.job }} + + unit_tests13: + name: unit tests + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v4 + with: + submodules: true + - uses: ./.github/workflows/setup-with-retry + - name: Build openpilot + timeout-minutes: ${{ ((steps.restore-scons-cache.outputs.cache-hit == 'true') && 10 || 30) }} # allow more time when we missed the scons cache + run: ${{ env.RUN }} "scons -j$(nproc)" + - name: Run unit tests + timeout-minutes: 15 + run: | + ${{ env.RUN }} "$PYTEST --timeout 30 -m 'not slow' && \ + ./selfdrive/ui/tests/create_test_translations.sh && \ + QT_QPA_PLATFORM=offscreen ./selfdrive/ui/tests/test_translations && \ + ./selfdrive/ui/tests/test_translations.py && \ + ./system/camerad/test/ae_gray_test && \ + ./selfdrive/test/process_replay/test_fuzzy.py" + - name: "Upload coverage to Codecov" + uses: codecov/codecov-action@v3 + with: + name: ${{ github.job }} + process_replay: name: process replay runs-on: ${{ ((github.repository == 'commaai/openpilot') && - ((github.event_name != 'pull_request') || + ((github.event_name != 'pull_request') || (github.event.pull_request.head.repo.full_name == 'commaai/openpilot'))) && 'buildjet-8vcpu-ubuntu-2004' || 'ubuntu-20.04' }} steps: - uses: actions/checkout@v4 @@ -226,7 +524,7 @@ jobs: regen: name: regen runs-on: 'ubuntu-20.04' - steps: + steps: - uses: actions/checkout@v4 with: submodules: true