@@ -5,6 +5,19 @@ REGISTRY_PORT=5000
55ECR_REGISTRY_IMAGE=public.ecr.aws/docker/library/registry:2
66CLUSTER_NAME=kind-gpu-sim
77LOAD_IMAGE_NAME=not-set
8+ # Detect OS
9+ OS_TYPE=$( uname -s)
10+ if [[ " $OS_TYPE " == " Darwin" ]]; then
11+ IS_MACOS=true
12+ else
13+ IS_MACOS=false
14+ fi
15+ # Use pgrep on macOS instead of pidof
16+ if [ " $IS_MACOS " = true ]; then
17+ PID_CMD=" pgrep"
18+ else
19+ PID_CMD=" pidof"
20+ fi
821
922for arg in " $@ " ; do
1023 case " $arg " in
@@ -26,7 +39,11 @@ if command -v podman &>/dev/null; then
2639 CONTAINER_RUNTIME=" podman"
2740 export KIND_EXPERIMENTAL_PROVIDER=podman
2841 export DOCKER_HOST=unix:///run/user/$UID /podman/podman.sock
29- systemctl --user enable --now podman.socket || true
42+ if [ " $IS_MACOS " = true ]; then
43+ echo " Skipping systemctl command as it's not available on macOS"
44+ else
45+ systemctl --user enable --now podman.socket || true
46+ fi
3047elif command -v docker & > /dev/null; then
3148 echo " Using Docker as container runtime"
3249 CONTAINER_RUNTIME=" docker"
@@ -97,7 +114,7 @@ function create_kind_cluster() {
97114[host."http://${REGISTRY_NAME} :5000"]
98115 capabilities = ["pull", "resolve"]
99116EOF
100- cr exec " $node " kill -SIGHUP $( pidof containerd) 2> /dev/null || echo " Warning: could not reload containerd on $node "
117+ cr exec " $node " kill -SIGHUP $( $PID_CMD containerd) 2> /dev/null || echo " Warning: could not reload containerd on $node "
101118 done
102119}
103120
@@ -125,9 +142,15 @@ function build_and_push_images() {
125142
126143 if [ " $CONTAINER_RUNTIME " = " podman" ]; then
127144 echo " Patching NVIDIA Dockerfile for Podman compatibility..."
128- sed -i ' s|^FROM redhat/ubi9-minimal|FROM registry.access.redhat.com/ubi9/ubi-minimal|' deployments/container/Dockerfile
129- sed -i ' s|^FROM public.ecr.aws/ubi9/ubi-minimal|FROM registry.access.redhat.com/ubi9/ubi-minimal|' deployments/container/Dockerfile
130- sed -i ' s|^FROM registry.access.redhat.com/ubi9/ubi9-minimal|FROM registry.access.redhat.com/ubi9/ubi-minimal|' deployments/container/Dockerfile
145+ if [ " $IS_MACOS " = true ]; then
146+ sed -i ' ' ' s|^FROM redhat/ubi9-minimal|FROM registry.access.redhat.com/ubi9/ubi-minimal|' deployments/container/Dockerfile
147+ sed -i ' ' ' s|^FROM public.ecr.aws/ubi9/ubi-minimal|FROM registry.access.redhat.com/ubi9/ubi-minimal|' deployments/container/Dockerfile
148+ sed -i ' ' ' s|^FROM registry.access.redhat.com/ubi9/ubi9-minimal|FROM registry.access.redhat.com/ubi9/ubi-minimal|' deployments/container/Dockerfile
149+ else
150+ sed -i ' s|^FROM redhat/ubi9-minimal|FROM registry.access.redhat.com/ubi9/ubi-minimal|' deployments/container/Dockerfile
151+ sed -i ' s|^FROM public.ecr.aws/ubi9/ubi-minimal|FROM registry.access.redhat.com/ubi9/ubi-minimal|' deployments/container/Dockerfile
152+ sed -i ' s|^FROM registry.access.redhat.com/ubi9/ubi9-minimal|FROM registry.access.redhat.com/ubi9/ubi-minimal|' deployments/container/Dockerfile
153+ fi
131154 grep FROM deployments/container/Dockerfile
132155 fi
133156
@@ -152,9 +175,15 @@ function build_and_push_images() {
152175 cd k8s-device-plugin-rocm
153176
154177 echo " Patching ROCm Dockerfile for public registry compatibility..."
155- sed -i ' s|FROM alpine:3.21.3|FROM public.ecr.aws/docker/library/alpine:3.21.3|' Dockerfile
156- sed -i ' s|FROM docker.io/golang:1.23.6-alpine3.21|FROM public.ecr.aws/docker/library/golang:1.23.6-alpine3.21|' Dockerfile
157- sed -i ' s|FROM golang:1.23.6-alpine3.21|FROM public.ecr.aws/docker/library/golang:1.23.6-alpine3.21|' Dockerfile
178+ if [ " $IS_MACOS " = true ]; then
179+ sed -i ' ' ' s|FROM alpine:3.21.3|FROM public.ecr.aws/docker/library/alpine:3.21.3|' Dockerfile
180+ sed -i ' ' ' s|FROM docker.io/golang:1.23.6-alpine3.21|FROM public.ecr.aws/docker/library/golang:1.23.6-alpine3.21|' Dockerfile
181+ sed -i ' ' ' s|FROM golang:1.23.6-alpine3.21|FROM public.ecr.aws/docker/library/golang:1.23.6-alpine3.21|' Dockerfile
182+ else
183+ sed -i ' s|FROM alpine:3.21.3|FROM public.ecr.aws/docker/library/alpine:3.21.3|' Dockerfile
184+ sed -i ' s|FROM docker.io/golang:1.23.6-alpine3.21|FROM public.ecr.aws/docker/library/golang:1.23.6-alpine3.21|' Dockerfile
185+ sed -i ' s|FROM golang:1.23.6-alpine3.21|FROM public.ecr.aws/docker/library/golang:1.23.6-alpine3.21|' Dockerfile
186+ fi
158187
159188 cr build -t localhost:${REGISTRY_PORT} /amdgpu-dp:dev -f Dockerfile .
160189
0 commit comments