Skip to content

Commit 7feb2c9

Browse files
committed
Support arm64/amd64 for k3s
1 parent e1a913e commit 7feb2c9

File tree

4 files changed

+19
-9
lines changed

4 files changed

+19
-9
lines changed

.github/workflows/docker.yml

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Cache images for tests in GHCR
1+
name: Cache Images
22

33
on:
44
push:
@@ -42,7 +42,14 @@ jobs:
4242
for image in ${IMAGES//,/ }; do
4343
new_image="ghcr.io/gavinbunney/terraform-provider-kubectl/testacc-$(echo $image | sed 's/\//-/')"
4444
echo "Caching $image as $new_image"
45-
docker pull $image
46-
docker tag $image $new_image
47-
docker push $new_image
45+
docker rmi $image --force
46+
docker pull $image --platform linux/amd64
47+
docker tag $image $new_image-amd64
48+
docker push $new_image-amd64
49+
docker tag $image $new_image-x86_64
50+
docker push $new_image-x86_64
51+
docker rmi $image --force
52+
docker pull $image --platform linux/arm64
53+
docker tag $image $new_image-arm64
54+
docker push $new_image-arm64
4855
done

scripts/docker-compose.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
services:
22
server:
3-
image: ghcr.io/gavinbunney/terraform-provider-kubectl/testacc-rancher-k3s:v1.31.2-k3s1
3+
image: ghcr.io/gavinbunney/terraform-provider-kubectl/testacc-rancher-k3s:v1.31.2-k3s1-${ARCH:-amd64}
44
command: server --disable-agent --tls-san 172.17.0.1 --agent-token somethingtotallyrandom
55
privileged: true
66
environment:
@@ -20,7 +20,7 @@ services:
2020
- 6443:6443
2121

2222
node:
23-
image: ghcr.io/gavinbunney/terraform-provider-kubectl/testacc-rancher-k3s:v1.31.2-k3s1
23+
image: ghcr.io/gavinbunney/terraform-provider-kubectl/testacc-rancher-k3s:v1.31.2-k3s1-${ARCH:-amd64}
2424
command: agent --token somethingtotallyrandom --server https://server:6443
2525
privileged: true
2626
restart: always
@@ -35,6 +35,6 @@ services:
3535

3636
registry:
3737
platform: linux/amd64
38-
image: ghcr.io/gavinbunney/terraform-provider-kubectl/testacc-registry:2
38+
image: ghcr.io/gavinbunney/terraform-provider-kubectl/testacc-registry:2-amd64
3939
ports:
4040
- 6500:5000

scripts/start-k3s.sh

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,15 @@ cd ${DIR}
66

77
export KUBECONFIG="${DIR}/kubeconfig.yaml"
88
export COMPOSE_PROJECT_NAME=k3s
9-
export DOCKER_DEFAULT_PLATFORM=linux/$(uname -m)
9+
export ARCH=$(uname -m | tr '[:upper:]' '[:lower:]')
10+
export DOCKER_DEFAULT_PLATFORM=linux/${ARCH}
1011

1112
echo "--> Tearing down k3s in docker-compose"
1213
docker-compose down -v &>/dev/null || true
1314
rm -rf ${KUBECONFIG}
1415
sync; sync;
1516

16-
echo "--> Starting k3s in docker-compose"
17+
echo "--> Starting k3s in docker-compose for arch ${ARCH}"
1718
docker-compose up -d --build --pull always
1819

1920
echo "--> Allow insecure access to registry"

scripts/stop-k3s.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
55
cd ${DIR}
66

77
export COMPOSE_PROJECT_NAME=k3s
8+
export ARCH=$(uname -m | tr '[:upper:]' '[:lower:]')
9+
export DOCKER_DEFAULT_PLATFORM=linux/${ARCH}
810

911
echo "--> Stopping k3s in docker-compose"
1012
docker-compose down -v

0 commit comments

Comments
 (0)