rustypaste-cli 0.9.5

A CLI tool for rustypaste
Documentation
name: Continuous Integration

on:
  push:
    branches:
      - master
  pull_request:
    branches:
      - master
  schedule:
    - cron: "0 0 * * 0"

jobs:
  build:
    name: "Build for ${{ matrix.config.TARGET }} using Rust ${{ matrix.TOOLCHAIN }} (on ${{ matrix.config.OS }}) [args: ${{ matrix.BUILD_ARGS }}]"
    runs-on: ${{ matrix.config.OS }}
    strategy:
      fail-fast: false
      matrix:
        config:
          - { OS: ubuntu-latest, TARGET: "x86_64-unknown-linux-gnu" }
          - { OS: ubuntu-latest, TARGET: "x86_64-unknown-linux-musl" }
          - { OS: ubuntu-latest, TARGET: "i686-unknown-linux-gnu" }
          - { OS: ubuntu-latest, TARGET: "i686-unknown-linux-musl" }
          # - { OS: ubuntu-latest, TARGET: "armv5te-unknown-linux-gnueabi" }
          - {
              OS: ubuntu-latest,
              TARGET: "armv7-unknown-linux-gnueabihf"
            }
          - { OS: ubuntu-latest, TARGET: "aarch64-unknown-linux-gnu" }
          - { OS: ubuntu-latest, TARGET: "aarch64-unknown-linux-musl" }
          - { OS: ubuntu-latest, TARGET: "x86_64-pc-windows-gnu" }
          - { OS: macos-latest, TARGET: "x86_64-apple-darwin" }
          - { OS: macos-latest, TARGET: "aarch64-apple-darwin" }
          - { OS: windows-latest, TARGET: "x86_64-pc-windows-msvc" }
          - { OS: windows-latest, TARGET: "i686-pc-windows-msvc" }
        TOOLCHAIN: [ stable ]
        BUILD_ARGS: [ "", "--features use-native-certs" ]

    steps:
      - name: Checkout the repository
        uses: actions/checkout@v4

      - name: Install Rust
        uses: dtolnay/rust-toolchain@master
        with:
          toolchain: ${{ matrix.TOOLCHAIN }}
          target: ${{ matrix.config.TARGET }}
          components: rustfmt, clippy

      - name: Cache Cargo dependencies
        uses: Swatinem/rust-cache@v2

      - name: Install cross
        uses: taiki-e/install-action@cross

      - name: Build
        run: cross build --target ${{ matrix.config.TARGET }} ${{ matrix.BUILD_ARGS }}

      - name: Check formatting
        run: cargo fmt -- --check --verbose

      - name: Check lints
        run: cargo clippy --tests --verbose -- -D warnings

  audit:
    name: Perform audit for security
    runs-on: ubuntu-latest
    steps:
      - name: Checkout the repository
        uses: actions/checkout@v4
      - name: Run cargo-audit
        uses: rustsec/audit-check@v2.0.0
        with:
          token: ${{ secrets.GITHUB_TOKEN }}