Skip to content

Commit ce95af1

Browse files
easelclaude
andcommitted
fix(ci): update Rust version, cross-compile arm64 with cross, fix fail-fast
Dockerfile: - Update FROM rust:1.86-bookworm → rust:1.94-bookworm to match rust-toolchain.toml - Fix health check comment: /healthz → /health release.yml: - Add fail-fast: false so darwin jobs don't get cancelled when linux fails - Replace manual gcc-aarch64 + openssl headers with taiki-e/cross for linux-arm64 - cross handles all system deps (OpenSSL, libc) in a pre-configured Docker image - release job no longer waits for docker job (they're independent) Cross.toml: - Install protobuf-compiler in cross container (needed by tonic-build) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent fe914bb commit ce95af1

3 files changed

Lines changed: 13 additions & 10 deletions

File tree

.github/workflows/release.yml

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ jobs:
1616
build:
1717
name: Build ${{ matrix.artifact }}
1818
strategy:
19+
fail-fast: false
1920
matrix:
2021
include:
2122
- os: ubuntu-latest
@@ -54,16 +55,14 @@ jobs:
5455
if: runner.os == 'macOS'
5556
run: brew install protobuf
5657

57-
- name: Install cross-compilation tools (Linux arm64)
58+
- name: Install cross (for Linux arm64)
5859
if: matrix.cross
59-
run: |
60-
sudo apt-get update
61-
sudo apt-get install -y gcc-aarch64-linux-gnu
60+
uses: taiki-e/install-action@v2
61+
with:
62+
tool: cross
6263

6364
- name: Build
64-
env:
65-
CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER: ${{ matrix.cross && 'aarch64-linux-gnu-gcc' || '' }}
66-
run: cargo build --release -p axon-cli --target ${{ matrix.target }}
65+
run: ${{ matrix.cross && 'cross' || 'cargo' }} build --release -p axon-cli --target ${{ matrix.target }}
6766

6867
- name: Rename binary
6968
run: cp target/${{ matrix.target }}/release/axon ${{ matrix.artifact }}
@@ -111,7 +110,7 @@ jobs:
111110

112111
release:
113112
name: Create Release
114-
needs: [build, docker]
113+
needs: build
115114
runs-on: ubuntu-latest
116115
steps:
117116
- uses: actions/download-artifact@v4

Cross.toml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
[target.aarch64-unknown-linux-gnu]
2+
pre-build = [
3+
"apt-get update && apt-get install -y --no-install-recommends protobuf-compiler"
4+
]

Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,11 @@
55
#
66
# The binary is `axon` (from crates/axon-cli, the unified binary).
77
# Default HTTP port is 4170. gRPC is opt-in via --grpc-port.
8-
# Health check: GET /healthz
8+
# Health check: GET /health
99

1010
# ── Stage 1: Builder ──────────────────────────────────────────────────────────
1111

12-
FROM rust:1.86-bookworm AS builder
12+
FROM rust:1.94-bookworm AS builder
1313

1414
# protobuf-compiler is required by tonic-build for gRPC code generation.
1515
RUN apt-get update && apt-get install -y --no-install-recommends \

0 commit comments

Comments
 (0)