From 75a6262f18b2f5fde0f6788eb752f08d2feb8c01 Mon Sep 17 00:00:00 2001 From: rindeal Date: Fri, 21 Jun 2024 02:15:12 +0000 Subject: [PATCH] Update CICD.yml --- .github/workflows/CICD.yml | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/.github/workflows/CICD.yml b/.github/workflows/CICD.yml index a55f925..3e61aeb 100644 --- a/.github/workflows/CICD.yml +++ b/.github/workflows/CICD.yml @@ -22,17 +22,25 @@ jobs: - name: Extract crate information id: crate_metadata run: | - cargo metadata --no-deps --format-version 1 | jq -r '"name=" + .packages[0].name' | tee -a $GITHUB_OUTPUT - cargo metadata --no-deps --format-version 1 | jq -r '"version=" + .packages[0].version' | tee -a $GITHUB_OUTPUT - cargo metadata --no-deps --format-version 1 | jq -r '"maintainer=" + .packages[0].authors[0]' | tee -a $GITHUB_OUTPUT - cargo metadata --no-deps --format-version 1 | jq -r '"homepage=" + .packages[0].homepage' | tee -a $GITHUB_OUTPUT - cargo metadata --no-deps --format-version 1 | jq -r '"msrv=" + .packages[0].rust_version' | tee -a $GITHUB_OUTPUT + cargo metadata --no-deps --format-version 1 | jq -r ' + .packages[0] | + [ + "name=" + .name, + "version=" + .version, + "maintainer=" + (.authors[0] // ""), + "homepage=" + (.homepage // ""), + "msrv=" + (.rust_version // ""), + "bin-name=" + ( (.targets[] | select(.kind[0] == "bin") | .name) // .name ) + ] | + join("\n") + ' | tee -a $GITHUB_OUTPUT outputs: name: ${{ steps.crate_metadata.outputs.name }} version: ${{ steps.crate_metadata.outputs.version }} maintainer: ${{ steps.crate_metadata.outputs.maintainer }} homepage: ${{ steps.crate_metadata.outputs.homepage }} msrv: ${{ steps.crate_metadata.outputs.msrv }} + bin-name: ${{ steps.crate_metadata.outputs.bin-name }} ensure_cargo_fmt: name: Ensure 'cargo fmt' has been run @@ -115,6 +123,7 @@ jobs: - name: Show version information (Rust, cargo, GCC) shell: bash run: | + set -x gcc --version || true rustup -V rustup toolchain list @@ -137,7 +146,7 @@ jobs: esac; # Setup paths - BIN_NAME="${{ needs.crate_metadata.outputs.name }}${EXE_suffix}" + BIN_NAME="${{ needs.crate_metadata.outputs.bin-name }}${EXE_suffix}" BIN_PATH="target/${{ matrix.job.target }}/release/${BIN_NAME}" # Let subsequent steps know where to find the binary @@ -150,7 +159,7 @@ jobs: 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 ${{ needs.crate_metadata.outputs.name }}" ;; esac; + unset CARGO_TEST_OPTIONS ; case ${{ matrix.job.target }} in arm-* | aarch64-*) CARGO_TEST_OPTIONS="--bin ${{ steps.bin.outputs.BIN_NAME }}" ;; esac; echo "CARGO_TEST_OPTIONS=${CARGO_TEST_OPTIONS}" >> $GITHUB_OUTPUT - name: Run tests