fix(lux): workspace-scope after-install; build amd64-only

- yarn after-install lives in apps/web -> run it workspace-scoped (root has
  no such script; typechain generate-types is required by the build)
- drop arm64 (QEMU-emulated Node build, no arm64 runner); lux-k8s is amd64

Co-authored-by: Hanzo Dev <dev@hanzo.ai>
This commit is contained in:
hanzo-dev
2026-07-18 10:56:13 -07:00
parent a730f9cd47
commit 283cd8fad7
2 changed files with 8 additions and 7 deletions
+5 -6
View File
@@ -25,11 +25,6 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
with:
platforms: arm64
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
with:
@@ -55,7 +50,11 @@ jobs:
with:
context: .
file: Dockerfile.lux
platforms: linux/amd64,linux/arm64
# lux-k8s nodes are all amd64 and only an amd64 ARC runner exists;
# a Node/Next build cannot cross-compile (unlike the Go CGW), so an
# arm64 leg would run under QEMU emulation — slow and OOM-prone.
# Build amd64 natively. Revisit if an arm64 runner comes online.
platforms: linux/amd64
push: true
tags: ghcr.io/luxfi/lux-safe:${{ steps.tag.outputs.value }}
provenance: false
+3 -1
View File
@@ -15,7 +15,9 @@ WORKDIR /app
COPY . .
RUN corepack enable && yarn config set httpTimeout 600000
RUN yarn install --immutable
RUN yarn after-install
# after-install = generate-types (typechain ethers-v6 contract types the build
# imports). Defined in apps/web, so invoke it workspace-scoped from the root.
RUN yarn workspace @safe-global/web after-install
ENV NODE_ENV=production
ENV NEXT_TELEMETRY_DISABLED=1
ENV NODE_OPTIONS=--max-old-space-size=8192