linux-keyutils 0.1.0

Rust interface to the Linux key-management facility. Provides a safe interface around the raw system calls allowing user-space programs to perform key manipulation.
Documentation
name: Checks

on:
  push:
    branches: [ "main" ]
  pull_request:
    branches: [ "main" ]

env:
  CARGO_TERM_COLOR: always

jobs:
  # Build and run unit tests
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v3
    - uses: actions-rs/toolchain@v1
      with:
          profile: minimal
          toolchain: stable
          override: true
    - name: Build
      run: cargo build --verbose
    - name: Run tests
      run: cargo test --verbose

  # Ensure clippy and formatting pass
  clippy:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - uses: actions-rs/toolchain@v1
      with:
          profile: minimal
          toolchain: stable
          override: true
          components: clippy
    - name: Run Clippy
      run: cargo clippy --verbose -- --deny "warnings"
    - name: Run RustFmt
      run: cargo fmt -- --check

  # Run miri (commented out since miri doesn't support the keyctl
  # syscalls)
  #miri:
  #  name: "miri"
  #  runs-on: ubuntu-latest
  #  steps:
  #    - uses: actions/checkout@v3
  #    - uses: actions-rs/toolchain@v1
  #      with:
  #        profile: minimal
  #        toolchain: nightly
  #        override: true
  #        components: miri
  #    - name: Setup Miri
  #      run: cargo +nightly miri setup
  #    - name: Test with Miri
  #      run: cargo +nightly miri test