diff --git a/.github/workflows/CICD.yml b/.github/workflows/CICD.yml index c632cb0..fd8bd83 100644 --- a/.github/workflows/CICD.yml +++ b/.github/workflows/CICD.yml @@ -27,16 +27,22 @@ jobs: toolchain: ${{ env.MIN_SUPPORTED_RUST_VERSION }} default: true profile: minimal # minimal component installation (ie, no documentation) - components: clippy + components: clippy, rustfmt + - name: Ensure `cargo fmt` has been run + uses: actions-rs/cargo@v1 + with: + command: fmt + args: -- --check - name: Run clippy (on minimum supported rust version to prevent warnings we can't fix) uses: actions-rs/cargo@v1 with: command: clippy - args: --all-targets --all-features + args: --locked --all-targets --all-features - name: Run tests uses: actions-rs/cargo@v1 with: command: test + args: --locked build: name: ${{ matrix.job.os }} (${{ matrix.job.target }}) @@ -100,7 +106,7 @@ jobs: with: use-cross: ${{ matrix.job.use-cross }} command: build - args: --release --target=${{ matrix.job.target }} + args: --locked --release --target=${{ matrix.job.target }} - name: Strip debug information from executable id: strip @@ -142,8 +148,9 @@ jobs: id: test-options shell: bash run: | + # test only library unit tests and binary for arm-type targets unset CARGO_TEST_OPTIONS - unset CARGO_TEST_OPTIONS ; case ${{ matrix.job.target }} in arm-* | aarch64-*) CARGO_TEST_OPTIONS="--bin ${PROJECT_NAME}" ;; esac; + unset CARGO_TEST_OPTIONS ; case ${{ matrix.job.target }} in arm-* | aarch64-*) CARGO_TEST_OPTIONS="--lib --bin ${PROJECT_NAME}" ;; esac; echo ::set-output name=CARGO_TEST_OPTIONS::${CARGO_TEST_OPTIONS} - name: Run tests @@ -151,7 +158,7 @@ jobs: with: use-cross: ${{ matrix.job.use-cross }} command: test - args: --target=${{ matrix.job.target }} ${{ steps.test-options.outputs.CARGO_TEST_OPTIONS}} + args: --locked --target=${{ matrix.job.target }} ${{ steps.test-options.outputs.CARGO_TEST_OPTIONS}} - name: Create tarball id: package