diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index 67af278..613d446 100644 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -4,31 +4,31 @@ on: [push] name: CI jobs: - formatting: - name: Formatting - runs-on: ubuntu-22.04 - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Set up Rust - uses: https://github.com/dtolnay/rust-toolchain@stable - with: - components: rustfmt - - name: Check Rust formatting - run: cargo fmt --all -- --check + # formatting: + # name: Formatting + # runs-on: ubuntu-22.04 + # steps: + # - name: Checkout + # uses: actions/checkout@v4 + # - name: Set up Rust + # uses: https://github.com/dtolnay/rust-toolchain@stable + # with: + # components: rustfmt + # - name: Check Rust formatting + # run: cargo fmt --all -- --check - clippy: - name: Clippy - runs-on: ubuntu-22.04 - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Set up Rust - uses: https://github.com/dtolnay/rust-toolchain@stable - with: - components: clippy - - name: Run Clippy - run: "echo 'pretend i ran'" # cargo clippy -- -D warnings + # clippy: + # name: Clippy + # runs-on: ubuntu-22.04 + # steps: + # - name: Checkout + # uses: actions/checkout@v4 + # - name: Set up Rust + # uses: https://github.com/dtolnay/rust-toolchain@stable + # with: + # components: clippy + # - name: Run Clippy + # run: cargo clippy -- -D warnings build: name: Build (and tests, for now) @@ -42,7 +42,6 @@ jobs: uses: actions/setup-python@v5 with: python-version: "3.13" - cache: pip - name: Set up the Python environment # For most Python CI stuff this isn't needed, but maturin specifically doesn't like to function without a venv run: | @@ -52,19 +51,44 @@ jobs: - name: Build Rust code run: | source venv/bin/activate - maturin develop + maturin build + - name: Save built wheel + uses: forgejo/upload-artifact@v4 + with: + name: pyority_queue.whl + path: target/wheels/*.whl + compression-level: 0 + + python-test: + name: Python tests + runs-on: ubuntu-22.04 + steps: + - name: Checkout the code + uses: actions/checkout@v4 + - name: Set up the Python toolchain + uses: actions/setup-python@v5 + with: + python-version: "3.13" + - name: Set up the Python environment + run: pip install -r requirements.txt + - name: Retrieve built wheel + uses: forgejo/download-artifact@v4 + - name: Install built wheel + run: pip install pyority_queue.whl - name: Run Python tests - run: | - source venv/bin/activate - pytest tests/*.py + run: pytest tests/*.py rust-test: - name: Rust test + name: Rust tests runs-on: ubuntu-22.04 steps: - name: Checkout the code uses: actions/checkout@v4 - name: Set up Rust uses: https://github.com/dtolnay/rust-toolchain@stable + - name: Set up the Python toolchain + uses: actions/setup-python@v5 + with: + python-version: "3.13" - name: Run Rust tests run: cargo test