From d02cc01d34ec0325ab62bbdce80cf67ecacdcf8a Mon Sep 17 00:00:00 2001 From: Raphael Coeffic Date: Mon, 4 Nov 2024 11:33:11 +0100 Subject: [PATCH] feat: GH actions build with cross (#1) Co-authored-by: raphaelcoeffic <1050031+raphaelcoeffic@users.noreply.github.com> --- .github/workflows/rust.yml | 59 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 .github/workflows/rust.yml diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml new file mode 100644 index 0000000..b0fa652 --- /dev/null +++ b/.github/workflows/rust.yml @@ -0,0 +1,59 @@ +name: Build + +on: + push: + branches: [ "main" ] + pull_request: + branches: [ "main" ] + +env: + CARGO_TERM_COLOR: always + +jobs: + build: + name: Build - ${{ matrix.platform.os-name }} + strategy: + matrix: + platform: + - os-name: Linux-x86_64 + runs-on: ubuntu-latest + target: x86_64-unknown-linux-musl + + runs-on: ${{ matrix.platform.runs-on }} + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Build base image + run: | + cargo run --bin build-img + cargo clean + + - name: Upload artifacts - base image + uses: actions/upload-artifact@v4 + with: + name: base-${{ matrix.platform.target }} + path: | + base.tar.xz + + - name: Build binary + uses: houseabsolute/actions-rust-cross@v0 + with: + command: ${{ matrix.platform.command }} + target: ${{ matrix.platform.target }} + args: "--locked --release --features embedded_image" + strip: true + + - name: Upload artifacts - binary + uses: actions/upload-artifact@v4 + with: + name: binary-${{ matrix.platform.target }} + path: | + target/${{ matrix.platform.target }}/release/dive + + - name: Publish artifacts and release + uses: houseabsolute/actions-rust-release@v0 + with: + executable-name: dive + target: ${{ matrix.platform.target }} + if: matrix.toolchain == 'stable'