From c90bfd6e44b5ffeb156243ed058c29f861442892 Mon Sep 17 00:00:00 2001 From: michaelfeil <63565275+michaelfeil@users.noreply.github.com> Date: Sun, 19 Jan 2025 23:21:12 +0000 Subject: [PATCH] add truss-transfer-cli-release ci --- .../workflows/truss-transfer-cli-release.yaml | 25 ++++++++++++------- truss-transfer/Cargo.lock | 2 +- truss-transfer/Cargo.toml | 2 +- 3 files changed, 18 insertions(+), 11 deletions(-) diff --git a/.github/workflows/truss-transfer-cli-release.yaml b/.github/workflows/truss-transfer-cli-release.yaml index 58363d301..8b661580b 100644 --- a/.github/workflows/truss-transfer-cli-release.yaml +++ b/.github/workflows/truss-transfer-cli-release.yaml @@ -15,12 +15,19 @@ defaults: jobs: build-and-upload-cli: - name: Build and Upload CLI Binary - runs-on: ubuntu-latest + name: Build and Upload CLI Binaries + strategy: + matrix: + os: [ubuntu-22.04] + target: + - x86_64-unknown-linux-musl + - aarch64-unknown-linux-musl + # - i686-unknown-linux-musl + # - armv7-unknown-linux-musleabihf + # - powerpc64le-unknown-linux-musl + runs-on: ${{ matrix.os }} env: - VERSION: ${{ github.ref_name }} # or ${GITHUB_REF##*/}, see note below - OS: linux - ARCH: x86_64 + NAME: truss-transfer-cli-${{ github.ref_name }}-linux-${{ matrix.target }} steps: - name: Checkout Code uses: actions/checkout@v4 @@ -36,20 +43,20 @@ jobs: components: rust-src - name: Add musl Target - run: rustup target add x86_64-unknown-linux-musl + run: rustup target add ${{ matrix.target }} - name: Build Statically Linked CLI Binary run: | - cargo build --release --target x86_64-unknown-linux-musl --features cli --bin truss_transfer_cli + cargo build --release --target ${{ matrix.target }} --features cli --bin truss_transfer_cli mkdir -p dist/cli - cp target/x86_64-unknown-linux-musl/release/truss_transfer_cli dist/cli/truss_transfer_cli-${VERSION}-${OS}-${ARCH} + cp target/${{ matrix.target }}/release/truss_transfer_cli dist/cli/${{ env.NAME }} - name: Test CLI Binary run: | sudo mkdir -p /bptr sudo chown $(whoami):$(whoami) /bptr cp ./example-bptr-manifest.json /bptr/bptr-manifest - dist/cli/truss_transfer_cli-${VERSION}-${OS}-${ARCH} ./example_bptr_resolved + dist/cli/${{ env.NAME }} ./example_bptr_resolved if [ ! -d "./example_bptr_resolved" ]; then echo "❌ Test failed: output directory not created." exit 1 diff --git a/truss-transfer/Cargo.lock b/truss-transfer/Cargo.lock index d9b50893d..dbc8102df 100644 --- a/truss-transfer/Cargo.lock +++ b/truss-transfer/Cargo.lock @@ -1328,7 +1328,7 @@ dependencies = [ [[package]] name = "truss_transfer" -version = "0.0.1-rc3" +version = "0.0.1-rc4" dependencies = [ "anyhow", "bytes", diff --git a/truss-transfer/Cargo.toml b/truss-transfer/Cargo.toml index b855ecfb0..e57252e1c 100644 --- a/truss-transfer/Cargo.toml +++ b/truss-transfer/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "truss_transfer" -version = "0.0.1-rc3" +version = "0.0.1-rc4" edition = "2021" [lib]