chore: install full CUDA toolkit #12
Workflow file for this run
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: [pull_request, push] | |
#push: | |
# branches: master | |
# Cancel a job if there's a new on on the same branch started. | |
# Based on https://stackoverflow.com/questions/58895283/stop-already-running-workflow-job-in-github-actions/67223051#67223051 | |
concurrency: | |
group: ${{ github.ref }} | |
cancel-in-progress: true | |
env: | |
#RUSTFLAGS: "-Dwarnings" | |
CARGO_INCREMENTAL: 0 | |
RUST_BACKTRACE: 1 | |
CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse | |
jobs: | |
set-msrv: | |
runs-on: ubuntu-latest | |
outputs: | |
msrv: ${{ steps.msrv.outputs.MSRV }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Get MSRV from rust-toolchain | |
id: msrv | |
run: | | |
MSRV=$(cat ./rust-toolchain) | |
echo "MSRV=$MSRV" | tee --append "$GITHUB_OUTPUT" | |
linux: | |
#strategy: | |
# matrix: | |
# include: | |
# - name: "default features" | |
# cargo-args: "" | |
# - name: "CUDA and OpenCL" | |
# cargo-args: "--features cuda,opencl" | |
# - name: "CUDA only" | |
# cargo-args: "--no-default-features --features cuda" | |
# - name: "OpenCL only" | |
# cargo-args: "--no-default-features --features opencl" | |
needs: set-msrv | |
runs-on: ubuntu-latest | |
#name: Linux ${{ matrix.name }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: ${{needs.set-msrv.outputs.msrv}} | |
- name: Install required packages | |
run: sudo apt install --no-install-recommends --yes ocl-icd-opencl-dev nvidia-cuda-toolkit | |
#- name: Test with ${{ matrix.name }} | |
# run: cargo test --workspace ${{ matrix.cargo-args }} -- --nocapture --test-threads 1 | |
- name: Test with default fetures | |
run: | | |
whereis nvcc | |
cargo test --workspace -- --nocapture --test-threads 1 | |
#clippy_check: | |
# needs: set-msrv | |
# runs-on: ubuntu-latest | |
# steps: | |
# - uses: actions/checkout@v4 | |
# - uses: dtolnay/rust-toolchain@master | |
# with: | |
# toolchain: ${{ needs.set-msrv.outputs.msrv }} | |
# components: clippy | |
# - name: Install required packages | |
# run: sudo apt install --no-install-recommends --yes ocl-icd-opencl-dev nvidia-cuda-dev | |
# - name: Run cargo clippy default features | |
# run: cargo clippy --workspace --all-targets -- -D warnings | |
# - name: Run cargo clippy with cuda and opencl features | |
# run: cargo clippy --workspace --all-targets --features cuda,opencl -- -D warnings | |
# - name: Run cargo clippy with cuda feature | |
# run: cargo clippy --workspace --all-targets --no-default-features --features cuda -- -D warnings | |
# - name: Run cargo clippy with opencl feature | |
# run: cargo clippy --workspace --all-targets --no-default-features --features opencl -- -D warnings | |
#check_fmt_and_docs: | |
# needs: set-msrv | |
# name: Checking fmt and docs | |
# runs-on: ubuntu-latest | |
# steps: | |
# - uses: actions/checkout@v4 | |
# - uses: dtolnay/rust-toolchain@master | |
# with: | |
# toolchain: ${{ needs.set-msrv.outputs.msrv }} | |
# components: rustfmt | |
# - name: fmt | |
# run: cargo fmt --all -- --check | |
# - name: Docs | |
# env: | |
# # Making sure that the documentation can be built without having the NVIDIA toolkit | |
# # installed. | |
# DOCS_RS: true | |
# #run: cargo doc | |
# run: | | |
# cargo rustdoc --package ec-gpu --all-features -- -D warnings | |
# cargo rustdoc --package ec-gpu-gen --all-features -- -D warnings |