Skip to content

Commit c2d3533

Browse files
committed
chore: add BASE_IMAGE build arg to Dockerfile
Ticket: WP-6774
1 parent fc82984 commit c2d3533

File tree

3 files changed

+21
-4
lines changed

3 files changed

+21
-4
lines changed

.github/workflows/release-to-ghcr.yaml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -153,13 +153,27 @@ jobs:
153153
uses: docker/build-push-action@v6
154154
with:
155155
context: .
156+
platforms: linux/amd64
156157
push: true
158+
provenance: false
157159
tags: |
158160
ghcr.io/bitgo/advanced-wallets:${{ needs.get-context.outputs.new-version }}
159161
ghcr.io/bitgo/advanced-wallets:latest
160162
build-args: |
163+
BASE_IMAGE=node:22-alpine
161164
BUILD_VERSION=${{ needs.get-context.outputs.new-version }}
162165
BUILD_DATE=${{ github.event.repository.updated_at }}
163166
VCS_REF=${{ github.sha }}
164167
cache-from: type=gha
165168
cache-to: type=gha,mode=max
169+
170+
update-api-docs:
171+
name: Update API Docs (Dev)
172+
uses: BitGo/gha-dev-portal-updater/.github/workflows/generate-and-update.yml@v5
173+
with:
174+
target-repo: api-docs
175+
service-name: advanced-wallets
176+
api-spec-file: src/masterBitgoExpress/routers/index.ts
177+
api-spec-title: Advanced Wallets
178+
remote-working-directory: ''
179+
secrets: inherit

Dockerfile

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@
55
# Pinned to specific SHA256 digest for supply chain security and deterministic builds
66
# To update: podman pull node:22-alpine && podman inspect node:22-alpine --format '{{index .RepoDigests 0}}'
77
# Last updated: 2025-10-24
8-
FROM --platform=$BUILDPLATFORM node:22-alpine@sha256:d31216005bd330aa47f848822d4f269f6c79f0905b60cca1d87577149519daa6 AS builder
8+
# For local builds with network issues, override with: --build-arg BASE_IMAGE=node:22-alpine
9+
ARG BASE_IMAGE=node:22-alpine@sha256:d31216005bd330aa47f848822d4f269f6c79f0905b60cca1d87577149519daa6
10+
FROM ${BASE_IMAGE} AS builder
911

1012
# Set build-time variables for reproducibility
1113
ARG NODE_ENV=development
@@ -57,7 +59,8 @@ RUN npm run build
5759
# Production stage
5860
# Using node:22-alpine with OpenSSL 3.3.2+ to address CVE-2024-6119
5961
# Pinned to specific SHA256 digest for supply chain security and deterministic builds
60-
FROM --platform=$TARGETPLATFORM node:22-alpine@sha256:d31216005bd330aa47f848822d4f269f6c79f0905b60cca1d87577149519daa6 AS production
62+
ARG BASE_IMAGE=node:22-alpine@sha256:d31216005bd330aa47f848822d4f269f6c79f0905b60cca1d87577149519daa6
63+
FROM ${BASE_IMAGE} AS production
6164

6265
# Declare build arguments in production stage
6366
ARG PORT=3081

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@
1818
"lint:fix": "eslint --quiet --ignore-pattern scripts/bump-version.ts . --fix",
1919
"generate-test-ssl": "openssl req -x509 -newkey rsa:2048 -keyout demo.key -out demo.crt -days 365 -nodes -subj '/CN=localhost'",
2020
"generate:openapi:masterExpress": "npx @api-ts/openapi-generator --name @bitgo/master-bitgo-express ./src/api/master/routers/index.ts > masterBitgoExpress.json",
21-
"container:build:master-bitgo-express": "podman build --build-arg PORT=3081 -t master-bitgo-express .",
22-
"container:build:advanced-wallet-manager": "podman build --build-arg PORT=3080 -t advanced-wallet-manager .",
21+
"container:build:master-bitgo-express": "podman build --build-arg PORT=3081 --build-arg BASE_IMAGE=node:22-alpine -t master-bitgo-express .",
22+
"container:build:advanced-wallet-manager": "podman build --build-arg PORT=3080 --build-arg BASE_IMAGE=node:22-alpine -t advanced-wallet-manager .",
2323
"bump-versions": "ts-node scripts/bump-version.ts"
2424
},
2525
"dependencies": {

0 commit comments

Comments
 (0)