Skip to content

Commit

Permalink
调整workflows/release.yml,支持打linux arm64包
Browse files Browse the repository at this point in the history
  • Loading branch information
heqingpan committed Mar 31, 2024
1 parent 68b734e commit a0b1297
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 3 deletions.
34 changes: 33 additions & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,38 @@ jobs:
*.tar.gz
*.zip
build-musl:
name: Build ${{ matrix.platform.target }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
platform:
- target: "aarch64-unknown-linux-musl"
image: "rust-musl-cross:aarch64-musl"
compatibility: "manylinux2014 musllinux_1_1"
container:
image: docker://ghcr.io/rust-cross/${{ matrix.platform.image }}
env:
RUSTUP_HOME: /root/.rustup
CARGO_HOME: /root/.cargo
steps:
- uses: actions/checkout@v3
- run: rustup target add --toolchain stable ${{ matrix.platform.target }}
if: matrix.platform.target != 'powerpc64le-unknown-linux-musl' && matrix.platform.target != 's390x-unknown-linux-gnu'
- name: Build
run: |
cargo build --release --target ${{ matrix.platform.target }}
- name: Archive binary
run: |
cp doc/conf/.env.example target/${{ matrix.platform.target }}/release/.env
tar czvf target/release/${{ matrix.platform.target }}.tar.gz -C target/${{ matrix.platform.target }}/release rnacos .env
- name: Upload binary artifacts
uses: actions/upload-artifact@v3
with:
name: binaries
path: target/release/${{ matrix.platform.target }}.tar.gz

release-crates-io:
name: Release crates.io
runs-on: ubuntu-latest
Expand All @@ -122,7 +154,7 @@ jobs:
name: Publish to GitHub releases
runs-on: ubuntu-latest
if: "startsWith(github.ref, 'refs/tags/')"
needs: [ build ]
needs: [ build, build-musl ]
steps:
- uses: actions/download-artifact@v3
with:
Expand Down
4 changes: 2 additions & 2 deletions docker/alpine_dockerfile
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# x86_64 base
FROM quay.io/pypa/manylinux2014_x86_64 as base-amd64
# x86_64 builder
FROM --platform=$BUILDPLATFORM messense/rust-musl-cross:x86_64-musl as builder-amd64
FROM --platform=$BUILDPLATFORM ghcr.io/rust-cross/rust-musl-cross:x86_64-musl as builder-amd64

# aarch64 base
FROM quay.io/pypa/manylinux2014_aarch64 as base-arm64
# aarch64 cross compile builder
FROM --platform=$BUILDPLATFORM messense/rust-musl-cross:aarch64-musl as builder-arm64
FROM --platform=$BUILDPLATFORM ghcr.io/rust-cross/rust-musl-cross:aarch64-musl as builder-arm64

ARG TARGETARCH
FROM builder-$TARGETARCH as builder
Expand Down

0 comments on commit a0b1297

Please sign in to comment.