Skip to content

Prepare release 1.4.0 #523

Prepare release 1.4.0

Prepare release 1.4.0 #523

Workflow file for this run

name: Rust CI
on:
pull_request:
types: [opened, synchronize, reopened]
branches:
- main
push:
branches:
- main
jobs:
check-formatting-linting:
permissions:
contents: read
checks: write
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
components: rustfmt, clippy
- uses: Swatinem/rust-cache@v2
- name: Check formatting
run: cargo fmt -- --check
- uses: actions-rs/clippy-check@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
args: --all-features --all-targets -p nethsm_pkcs11 -- -D warnings --no-deps
tests:
runs-on: ubuntu-latest
container: debian:12
env:
RUST_BACKTRACE: full
RUST_LOG: trace
services:
nethsm:
image: nitrokey/nethsm:testing
ports:
- 8443:8443
steps:
- uses: actions/checkout@v2
- name: install opensc and dependencies
run: apt-get update && apt-get install -y curl opensc openssl gcc xxd jq gnutls-bin make
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
components: rustfmt, clippy, llvm-tools-preview
- uses: Swatinem/rust-cache@v2
- name: install demangler
run: cargo install rustfilt
- name: Build with profiling
run: ./tools/build_profiling.sh
- name: repalce localhost with nethsm
run: sed -i 's/localhost/nethsm/g' ./tools/*.sh ./tools/tests/*.sh ./p11nethsm.conf ./tools/*.conf
- name: setup NetHSM
run: ./tools/ci_setup.sh
- name: cargo test
run: ./tools/test_profiling.sh
- name: Run integration tests
run: ./tools/ci_integration_tests.sh
- name: get coverage
run: ./tools/get_coverage.sh
- name: upload coverage
uses: codecov/codecov-action@v3
with:
files: ./coverage.txt
verbose: true
- name: build release
run: cargo build --release
- name: run fork tests
run: cd fork-tests && make