Skip to content

Commit eadcec4

Browse files
committed
feat(build): add multi-arch docker images
1 parent 39a01d1 commit eadcec4

File tree

2 files changed

+22
-1
lines changed

2 files changed

+22
-1
lines changed

.circleci/config.yml

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -207,8 +207,25 @@ workflows:
207207
cmd: |
208208
sbt "set codacyAnalysisCli / version := \"dev-snapshot\";
209209
codacyAnalysisCli/stage"
210-
docker build -t $CIRCLE_PROJECT_REPONAME:dev-snapshot .
210+
docker buildx build --platform linux/amd64 -t $CIRCLE_PROJECT_REPONAME:dev-snapshot --load .
211+
docker buildx build --platform linux/arm64 -t $CIRCLE_PROJECT_REPONAME:dev-snapshot --load .
212+
docker buildx build --platform linux/arm/v6 -t $CIRCLE_PROJECT_REPONAME:dev-snapshot --load .
213+
docker buildx build --platform linux/arm/v7 -t $CIRCLE_PROJECT_REPONAME:dev-snapshot --load .
211214
docker save --output docker-image.tar $CIRCLE_PROJECT_REPONAME:dev-snapshot
215+
steps_before_sbt:
216+
- run:
217+
name: Install and set up Docker Buildx
218+
command: |
219+
export DOCKER_BUILDX=1
220+
export BUILDX_VERSION=v0.22.0
221+
export BUILDX_PLATFORMS="linux/amd64,linux/arm64,linux/arm/v6,linux/arm/v7"
222+
mkdir -p ~/.docker/cli-plugins
223+
curl --output ~/.docker/cli-plugins/docker-buildx \
224+
--silent --show-error --location --fail --retry 3 \
225+
"https://github.com/docker/buildx/releases/download/${BUILDX_VERSION}/buildx-${BUILDX_VERSION}.linux-amd64"
226+
chmod +x ~/.docker/cli-plugins/docker-buildx
227+
docker buildx install
228+
docker run --rm --privileged tonistiigi/binfmt:latest --install "$BUILDX_PLATFORMS"
212229
cache_prefix: *cache_prefix
213230
persist_to_workspace: true
214231
requires:

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,3 +92,7 @@ project/project/
9292
.vscode/
9393

9494
.codacy
95+
96+
97+
#Ignore cursor AI rules
98+
.cursor/rules/codacy.mdc

0 commit comments

Comments
 (0)