update examples with new vec ops #408
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: Test | |
on: | |
pull_request: | |
branches: | |
- main | |
- dev | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
env: | |
CARGO_TERM_COLOR: always | |
ARCH_TYPE: native | |
jobs: | |
check-changed-files: | |
name: Check Changed Files | |
runs-on: ubuntu-22.04 | |
outputs: | |
golang: ${{ steps.changed_files.outputs.golang }} | |
rust: ${{ steps.changed_files.outputs.rust }} | |
cpp_cuda: ${{ steps.changed_files.outputs.cpp_cuda }} | |
steps: | |
- name: Checkout Repo | |
uses: actions/checkout@v3 | |
- name: Get all changed files | |
id: changed-files-yaml | |
uses: tj-actions/changed-files@v39 | |
# https://github.com/tj-actions/changed-files#input_files_yaml_from_source_file | |
with: | |
files_yaml_from_source_file: .github/changed-files.yml | |
- name: Run Changed Files script | |
id: changed_files | |
# https://github.com/tj-actions/changed-files#outputs- | |
run: | | |
echo "golang=${{ steps.changed-files-yaml.outputs.golang_any_modified }}" >> "$GITHUB_OUTPUT" | |
echo "rust=${{ steps.changed-files-yaml.outputs.rust_any_modified }}" >> "$GITHUB_OUTPUT" | |
echo "cpp_cuda=${{ steps.changed-files-yaml.outputs.cpp_any_modified }}" >> "$GITHUB_OUTPUT" | |
test-rust-linux: | |
name: Test Rust on Linux | |
runs-on: [self-hosted, Linux, X64, icicle] | |
needs: check-changed-files | |
steps: | |
- name: Checkout Repo | |
uses: actions/checkout@v3 | |
- name: Run Rust Tests | |
working-directory: ./wrappers/rust | |
if: needs.check-changed-files.outputs.rust == 'true' || needs.check-changed-files.outputs.cpp_cuda == 'true' | |
# Running tests from the root workspace will run all workspace members' tests by default | |
# We need to limit the number of threads to avoid running out of memory on weaker machines | |
run: cargo test --release --verbose --features=g2 -- --test-threads=2 | |
test-cpp-linux: | |
name: Test C++ on Linux | |
runs-on: [self-hosted, Linux, X64, icicle] | |
needs: check-changed-files | |
strategy: | |
matrix: | |
curve: [bn254, bls12_381, bls12_377, bw6_761] | |
steps: | |
- name: Checkout Repo | |
uses: actions/checkout@v3 | |
- name: Build C++ | |
working-directory: ./icicle | |
if: needs.check-changed-files.outputs.cpp_cuda == 'true' | |
run: | | |
mkdir -p build | |
cmake -DBUILD_TESTS=ON -DCMAKE_BUILD_TYPE=Release -DCURVE=${{ matrix.curve }} -S . -B build | |
cmake --build build | |
- name: Run C++ Tests | |
working-directory: ./icicle/build | |
if: needs.check-changed-files.outputs.cpp_cuda == 'true' | |
run: ctest | |
# TODO: Re-enable once Golang bindings for v1+ is finished | |
# test-golang-linux: | |
# name: Test Golang on Linux | |
# runs-on: [self-hosted, Linux, X64, icicle] | |
# needs: check-changed-files | |
# steps: | |
# - name: Checkout Repo | |
# uses: actions/checkout@v3 | |
# - name: Build CUDA libs | |
# working-directory: ./goicicle | |
# if: needs.check-changed-files.outputs.golang == 'true' || needs.check-changed-files.outputs.cpp_cuda == 'true' | |
# run: make libbn254.so | |
# - name: Run Golang Tests | |
# if: needs.check-changed-files.outputs.golang == 'true' || needs.check-changed-files.outputs.cpp_cuda == 'true' | |
# run: | | |
# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/goicicle | |
# go test ./goicicle/curves/bn254 -count=1 |