Improve CI speed #6
Workflow file for this run
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: CI | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
branches: [main] | |
jobs: | |
build-and-test: | |
runs-on: ubuntu-latest | |
steps: | |
# 1. Checkout Code | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
# 2. Set up Rust | |
- name: Set up Rust (nightly) | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: nightly | |
components: rustc-dev llvm-tools, cargo | |
# 3. Cargo Caching (Crucial for speed) | |
- name: Cache cargo dependencies | |
uses: Swatinem/rust-cache@v2 | |
# 4. Set up Java | |
- name: Set up Java | |
uses: actions/setup-java@v4 | |
with: | |
distribution: 'temurin' | |
java-version: '21' | |
# 5. Set up Python | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.x' | |
# 6. Set up Gradle) | |
- name: Set up Gradle | |
uses: gradle/actions/setup-gradle@v4 | |
# 7. Build using the CI-specific make target | |
- name: Build CI Target | |
run: make ci # Use your optimized CI build command | |
# 8. Run tests | |
- name: Run integration tests | |
run: python3 Tester.py |