SY-4201: Upgrade Bazel Dependencies #3960
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: Test - Arc | |
| on: | |
| pull_request: | |
| paths: | |
| - .bazeliskrc | |
| - .bazelrc | |
| - .clang-format | |
| - .clang-format-ignore | |
| - .github/workflows/test.arc.yaml | |
| - arc/** | |
| - alamos/go/** | |
| - MODULE.bazel | |
| - MODULE.bazel.lock | |
| - scripts/check_clang_format.sh | |
| - scripts/check_gofmt.sh | |
| - scripts/sanitizers/** | |
| - vendor/wasmtime/** | |
| - x/cpp/** | |
| - x/go/** | |
| push: | |
| branches: | |
| - main | |
| - rc | |
| paths: | |
| - .bazeliskrc | |
| - .bazelrc | |
| - .clang-format | |
| - .clang-format-ignore | |
| - .github/workflows/test.arc.yaml | |
| - arc/** | |
| - alamos/go/** | |
| - MODULE.bazel | |
| - MODULE.bazel.lock | |
| - scripts/check_clang_format.sh | |
| - scripts/check_gofmt.sh | |
| - scripts/sanitizers/** | |
| - vendor/wasmtime/** | |
| - x/cpp/** | |
| - x/go/** | |
| workflow_dispatch: | |
| env: | |
| BAZEL_REMOTE_CACHE: ${{ vars.BAZEL_REMOTE_CACHE_GRPC_URL }} | |
| jobs: | |
| server: | |
| uses: ./.github/workflows/build.docker.yaml | |
| permissions: | |
| packages: write | |
| with: | |
| module: core | |
| tag: ghcr.io/synnaxlabs/synnax:${{ github.sha }} | |
| test-cpp-linux: | |
| name: Test C++ (ubuntu-build-bot) | |
| runs-on: ubuntu-build-bot | |
| needs: [server] | |
| steps: | |
| - name: Checkout Repository | |
| uses: actions/checkout@v7 | |
| - name: Force Quit Existing Synnax Processes | |
| continue-on-error: true | |
| run: integration/scripts/kill_synnax_processes.sh | |
| - name: Login to GitHub Container Registry | |
| run: | |
| echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor | |
| }} --password-stdin | |
| - name: Ensure Port 9090 is Free | |
| run: | | |
| docker rm -f synnax-test-arc || true | |
| docker ps -q --filter "publish=9090" | xargs -r docker rm -f || true | |
| - name: Start Synnax | |
| run: | | |
| docker run -d --name synnax-test-arc \ | |
| -p 9090:9090 \ | |
| -e SYNNAX_LISTEN=localhost:9090 \ | |
| -e SYNNAX_VERBOSE=true \ | |
| -e SYNNAX_INSECURE=true \ | |
| -e SYNNAX_MEM=true \ | |
| -e SYNNAX_LICENSE_KEY=${{ secrets.SYNNAX_LICENSE_KEY }} \ | |
| ghcr.io/synnaxlabs/synnax:${{ github.sha }} | |
| echo "Waiting for Synnax to be ready..." | |
| for i in $(seq 1 30); do | |
| if nc -z localhost 9090 2>/dev/null; then | |
| echo "Synnax is ready" | |
| break | |
| fi | |
| echo "Waiting for port 9090... (attempt $i/30)" | |
| sleep 1 | |
| done | |
| if ! nc -z localhost 9090 2>/dev/null; then | |
| echo "Synnax failed to start within 30 seconds" | |
| docker logs synnax-test-arc | |
| exit 1 | |
| fi | |
| - name: Install Rust | |
| uses: actions-rust-lang/setup-rust-toolchain@v1 | |
| - name: Update Submodules | |
| run: git submodule update --init --recursive | |
| - name: Setup Bazel | |
| uses: bazel-contrib/setup-bazel@0.19.0 | |
| with: | |
| bazelisk-cache: false | |
| disk-cache: false | |
| repository-cache: false | |
| - name: Install Clang Format | |
| run: scripts/install_clang_format.sh | |
| - name: Check Formatting | |
| run: scripts/check_clang_format.sh arc/cpp | |
| - name: Test | |
| run: | | |
| bazel test --config=asan-leak --test_output=all //arc/cpp/... \ | |
| --remote_cache=${{ env.BAZEL_REMOTE_CACHE }} --remote_cache_compression=true \ | |
| --test_env=LSAN_OPTIONS="suppressions=${{ github.workspace }}/scripts/sanitizers/lsan_suppressions.txt" \ | |
| --spawn_strategy=local \ | |
| --jobs=1 | |
| - name: Stop Synnax | |
| if: always() | |
| run: docker rm -f synnax-test-arc || true | |
| test-cpp: | |
| name: Test C++ (${{ matrix.os }}) | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [macos-build-bot, windows-build-bot] | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - name: Checkout Repository | |
| uses: actions/checkout@v7 | |
| - name: Update Submodules | |
| run: git submodule update --init --recursive | |
| - name: Setup Bazel | |
| uses: bazel-contrib/setup-bazel@0.19.0 | |
| with: | |
| bazelisk-cache: false | |
| disk-cache: false | |
| repository-cache: false | |
| - name: Test (macOS) | |
| if: matrix.os == 'macos-build-bot' | |
| run: | | |
| bazel test --config=asan --test_output=all //arc/cpp/... \ | |
| --test_tag_filters=-no-asan,-requires-core | |
| shell: bash | |
| - name: Test (Windows) | |
| if: matrix.os == 'windows-build-bot' | |
| run: | | |
| bazel --output_user_root=C:/tmp test --test_output=all //arc/cpp/... \ | |
| --remote_cache=${{ env.BAZEL_REMOTE_CACHE }} --remote_cache_compression=true \ | |
| --test_tag_filters=-requires-core | |
| shell: bash |