name: Extensions on: push: paths: - 'extension/**' - 'Cargo.toml' - 'Cargo.lock' - '.github/workflows/extensions.yml' jobs: lint: runs-on: ubuntu-latest steps: - name: Checkout the source code uses: actions/checkout@master - name: Install dependencies run: | rustup toolchain update stable --no-self-update rustup default stable rustup component add clippy rustfmt - name: Run rustfmt run: cargo fmt -- --check - name: Run clippy run: cargo clippy --all -- -Dwarnings test: runs-on: ubuntu-latest container: image: xd009642/tarpaulin options: --security-opt seccomp=unconfined steps: - name: Checkout the source code uses: actions/checkout@master - name: Test & Coverage run: cargo tarpaulin --verbose --no-default-features --workspace --timeout 240 build: strategy: matrix: arrays: [ os: { tag: "windows-latest", target: "i686-pc-windows-msvc" }, os: { tag: "windows-latest", target: "x86_64-pc-windows-msvc" }, ] runs-on: ${{ matrix.arrays.os.tag }} steps: - name: Checkout the source code uses: actions/checkout@v4 - name: Install stable Rust uses: actions-rs/toolchain@v1 with: target: ${{ matrix.arrays.os.target }} toolchain: stable default: true - name: Rust Cache uses: Swatinem/rust-cache@v2 - name: Build run: cargo build --verbose - name: Upload uses: actions/upload-artifact@v2 with: name: ${{ matrix.arrays.os.target }} path: target/debug/ace.dll if-no-files-found: error retention-days: 30