Port all simulated c++ tests to python (#3632) #14
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Tbots CI | |
| on: | |
| push: | |
| branches: [ master ] | |
| pull_request: | |
| branches: [ master ] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number }} | |
| cancel-in-progress: true | |
| jobs: | |
| multiplatform-build: | |
| strategy: | |
| matrix: | |
| platform: [ ubuntu-24.04-arm ] | |
| name: Ubuntu Alternate Builds | |
| runs-on: ${{ matrix.platform }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: ./.github/actions/environment-setup | |
| - name: Software Build Test | |
| run: | | |
| cd src | |
| bazel build --show_timestamps --copt=-O3 --verbose_failures \ | |
| -- //... -//software:unix_full_system \ | |
| -//software/simulated_tests/... \ | |
| -//software/ai/hl/... \ | |
| -//software/field_tests/... \ | |
| -//software/embedded/... \ | |
| -//toolchains/cc/... \ | |
| -//software:unix_full_system_tar_gen | |
| - name: Raspberry Pi Build Test | |
| run: | | |
| cd src | |
| bazel build //software/embedded:thunderloop_main --copt=-O3 --platforms=//toolchains/cc:robot | |
| software-tests: | |
| name: Software Tests | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: ./.github/actions/environment-setup | |
| - name: Software Test | |
| run: | | |
| cd src | |
| bazel test --copt=-O3 --show_timestamps --verbose_failures \ | |
| -- //... -//software:unix_full_system \ | |
| -//software/simulated_tests/... \ | |
| -//software/ai/hl/... \ | |
| -//software/field_tests/... \ | |
| -//software/ai/navigator/... \ | |
| -//toolchains/cc/... \ | |
| -//software:unix_full_system_tar_gen | |
| robot-tests: | |
| name: Robot Software Tests | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Environment Setup | |
| run: | | |
| "${GITHUB_WORKSPACE}"/environment_setup/setup_software.sh | |
| - name: Raspberry Pi Build | |
| run: | | |
| cd src | |
| bazel build //software/embedded:thunderloop_main --copt=-O3 --platforms=//toolchains/cc:robot | |
| simulated-gameplay-tests: | |
| name: Simulated Gameplay Tests | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: ./.github/actions/environment-setup | |
| - name: Simulated Test Run | |
| run: | | |
| cd src | |
| bazel test --copt=-O3 --flaky_test_attempts=3 --show_timestamps \ | |
| //software:unix_full_system \ | |
| //software/simulated_tests/... \ | |
| //software/ai/hl/... \ | |
| //software/ai/navigator/... | |
| - name: Upload simulated test proto logs | |
| # Ensure that simulated test logs get uploaded | |
| if: always() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: blue-sim-test-proto-logs | |
| path: | | |
| /tmp/tbots/blue/test/*/proto_* | |
| - name: Upload simulated test proto logs | |
| # Ensure that simulated test logs get uploaded | |
| if: always() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: yellow-sim-test-proto-logs | |
| path: | | |
| /tmp/tbots/yellow/test/*/proto_* | |
| autorefd-game: | |
| name: AutoRef'd Game (3 Minutes) | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: ./.github/actions/environment-setup | |
| - name: AI vs AI (3 minutes) | |
| run: | | |
| cd src | |
| bazel run --run_under="xvfb-run" //software/thunderscope:thunderscope_main --copt=-O3 -- --enable_autoref --ci_mode | |
| - name: Upload AI vs AI logs | |
| # Ensure that simulated test logs get uploaded | |
| if: always() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: blue-ai-vs-ai-proto-logs | |
| path: | | |
| /tmp/tbots/blue/proto_* | |
| - name: Upload AI vs AI logs | |
| # Ensure that simulated test logs get uploaded | |
| if: always() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: yellow-ai-vs-ai-proto-logs | |
| path: | | |
| /tmp/tbots/yellow/proto_* |