@@ -10,9 +10,19 @@ IMAGE_NAME="api-boundary-node"
1010IMAGE_TAG=" test"
1111MAX_WAIT=300 # 5 minutes for registry sync + replica discovery
1212
13+ # Use docker if available, fall back to podman
14+ if command -v docker & > /dev/null; then
15+ CONTAINER_CMD=docker
16+ elif command -v podman & > /dev/null; then
17+ CONTAINER_CMD=podman
18+ else
19+ echo " ERROR: Neither docker nor podman found."
20+ exit 1
21+ fi
22+
1323cleanup () {
1424 echo " Cleaning up..."
15- docker rm -f " $CONTAINER_NAME " 2> /dev/null || true
25+ $CONTAINER_CMD rm -f " $CONTAINER_NAME " 2> /dev/null || true
1626}
1727trap cleanup EXIT
1828
@@ -29,16 +39,16 @@ IMAGE_NAME="$IMAGE_NAME" IMAGE_TAG="$IMAGE_TAG" "${SCRIPT_DIR}/build.sh"
2939
3040# ─── Run ───
3141echo " === Starting container ==="
32- docker run -d --name " $CONTAINER_NAME " --network host " ${IMAGE_NAME} :${IMAGE_TAG} "
42+ $CONTAINER_CMD run -d --name " $CONTAINER_NAME " --network host " ${IMAGE_NAME} :${IMAGE_TAG} "
3343
3444# ─── Wait for readiness ───
3545echo " === Waiting for boundary node to become ready (up to ${MAX_WAIT} s) ==="
3646WAITED=0
3747while true ; do
3848 # Check container is still running
39- if ! docker inspect --format=' {{.State.Running}}' " $CONTAINER_NAME " 2> /dev/null | grep -q true ; then
49+ if ! $CONTAINER_CMD inspect --format=' {{.State.Running}}' " $CONTAINER_NAME " 2> /dev/null | grep -q true ; then
4050 echo " FAIL: Container exited unexpectedly."
41- docker logs " $CONTAINER_NAME " 2>&1 | tail -30
51+ $CONTAINER_CMD logs " $CONTAINER_NAME " 2>&1 | tail -30
4252 exit 1
4353 fi
4454
@@ -50,7 +60,7 @@ while true; do
5060
5161 if [ " $WAITED " -ge " $MAX_WAIT " ]; then
5262 echo " FAIL: Boundary node did not become healthy within ${MAX_WAIT} s."
53- docker logs " $CONTAINER_NAME " 2>&1 | tail -30
63+ $CONTAINER_CMD logs " $CONTAINER_NAME " 2>&1 | tail -30
5464 exit 1
5565 fi
5666
0 commit comments