setting up pypi-publish env (#9) #47
This file contains 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 | |
jobs: | |
rust-fmt: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
- name: Install nightly toolchain | |
uses: dtolnay/rust-toolchain@nightly | |
- name: Install fmt | |
run: rustup component add rustfmt | |
- name: Rust formatter | |
run: | | |
cargo fmt --all -- --check | |
rust-clippy: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
- name: Install nightly toolchain | |
uses: dtolnay/rust-toolchain@nightly | |
- name: Install clippy | |
run: rustup component add clippy | |
- name: Run cargo clippy | |
run: | | |
cargo clippy --all-features | |
build-rust: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
- name: Rust build | |
run: | | |
cargo build | |
build-rust-release: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
- name: Rust build | |
run: | | |
cargo build --release | |
compile-c: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
# run_c requires nvidia GPU drivers, these are not available on github CI | |
- name: Compile C | |
run: | | |
make compile_c | |
compile-cpp: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
# run_cpp requires nvidia GPU drivers, these are not available on github CI | |
- name: Compile Cpp | |
run: | | |
make compile_cpp | |
build-go: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
# run_go requires nvidia GPU drivers, these are not available on github CI | |
- name: Build Go | |
run: | | |
make build_go | |
build-python: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.10' | |
- name: Install Build dependencies | |
run: | | |
python -m venv ~/.cache/venv-ci | |
source ~/.cache/venv-ci/bin/activate | |
pip install maturin | |
pip install build | |
# running python wheel requires nvidia GPU drivers, these are not available on github CI | |
- name: Build and Install Python Crate | |
run: | | |
source ~/.cache/venv-ci/bin/activate | |
maturin develop --features python | |
- name: Build Distribution Files | |
run: | | |
source ~/.cache/venv-ci/bin/activate | |
python -m build |