[v1] Re-export curve25519-dalek #906
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: Rust CI | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
types: [opened, repoened, synchronize] | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
backend_feature: | |
- u64_backend | |
- u32_backend | |
toolchain: | |
- stable | |
- 1.51.0 | |
name: test | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v2 | |
- name: Install ${{ matrix.toolchain }} toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: ${{ matrix.toolchain }} | |
override: true | |
components: rustfmt, clippy | |
- name: Run cargo test | |
uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: --no-default-features --features ${{ matrix.backend_feature }} | |
- name: Run cargo test with std | |
uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: --no-default-features --features std --features ${{ matrix.backend_feature }} | |
cross-test: | |
name: Test on ${{ matrix.target }} (using cross) | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
target: | |
# 32-bit x86 | |
- i686-unknown-linux-gnu | |
backend_feature: | |
- u64_backend | |
- u32_backend | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: hecrj/setup-rust-action@v1 | |
- run: cargo install cross | |
# Note: just use `cross` as you would `cargo`, but always | |
# pass the `--target=${{ matrix.target }}` arg. (Yes, really). | |
- run: cross test --verbose --target=${{ matrix.target }} --no-default-features --features ${{ matrix.backend_feature }} | |
- run: cross test --verbose --target=${{ matrix.target }} --no-default-features --features std --features ${{ matrix.backend_feature }} | |
slow-hash-test: | |
name: Test on ${{ matrix.backend_feature }} with slow hash | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
backend_feature: | |
- u64_backend | |
- u32_backend | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: hecrj/setup-rust-action@v1 | |
- run: cargo test --verbose --features slow-hash --no-default-features --features ${{ matrix.backend_feature }} | |
- run: cargo test --verbose --features slow-hash,std --no-default-features --features ${{ matrix.backend_feature }} | |
simple-login-test: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
toolchain: | |
- stable | |
- 1.51.0 | |
name: test simple_login command-line example | |
steps: | |
- name: install expect | |
run: sudo apt-get install expect | |
- name: Checkout sources | |
uses: actions/checkout@v2 | |
- name: install rust | |
uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: ${{ matrix.toolchain }} | |
override: true | |
components: rustfmt, clippy | |
- name: Run expect (which then runs cargo run) | |
run: expect -f scripts/simple_login.exp | |
digital-locker-test: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
toolchain: | |
- stable | |
- 1.51.0 | |
name: test digital_locker command-line example | |
steps: | |
- name: install expect | |
run: sudo apt-get install expect | |
- name: Checkout sources | |
uses: actions/checkout@v2 | |
- name: install rust | |
uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: ${{ matrix.toolchain }} | |
override: true | |
components: rustfmt, clippy | |
- name: Run expect (which then runs cargo run) | |
run: expect -f scripts/digital_locker.exp | |
build-no-std: | |
name: Build with no-std on ${{ matrix.target }} | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
target: | |
# for wasm | |
- wasm32-unknown-unknown | |
# for any no_std target | |
- thumbv6m-none-eabi | |
backend_feature: | |
- u64_backend | |
- u32_backend | |
frontend_feature: | |
- slow-hash | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: hecrj/setup-rust-action@v1 | |
- run: rustup target add ${{ matrix.target }} | |
- run: cargo build --verbose --target=${{ matrix.target }} --no-default-features --features ${{ matrix.frontend_feature }} --features ${{ matrix.backend_feature }} | |
benches: | |
name: cargo bench compilation | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v2 | |
- name: Install stable toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: stable | |
override: true | |
- name: Run cargo bench --no-run | |
uses: actions-rs/cargo@v1 | |
with: | |
command: bench | |
args: --features "bench" --no-run | |
clippy: | |
name: cargo clippy | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v2 | |
- name: Install stable toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: stable | |
override: true | |
components: rustfmt, clippy | |
- name: Run cargo clippy | |
uses: actions-rs/cargo@v1 | |
with: | |
command: clippy | |
args: -- -D warnings | |
format: | |
name: cargo fmt | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v2 | |
- name: Install stable toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: stable | |
override: true | |
components: rustfmt, clippy | |
- name: Run cargo fmt | |
uses: actions-rs/cargo@v1 | |
with: | |
command: fmt | |
args: --all -- --check | |
deny-check: | |
name: cargo-deny check | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v1 | |
- uses: EmbarkStudios/cargo-deny-action@v1 |