#!/usr/bin/env bash # build-push.sh — build and push humor-units image to the in-cluster registry # Usage: ./build-push.sh [tag] # Requires: buildah, kubectl set -euo pipefail TAG="${1:-latest}" REGISTRY="localhost:5000" # via kubectl port-forward IMAGE="$REGISTRY/humor-units:$TAG" echo "==> Port-forwarding registry..." kubectl port-forward -n registry svc/registry 5000:5000 & PF_PID=$! trap "kill $PF_PID 2>/dev/null" EXIT sleep 2 echo "==> Building $IMAGE..." buildah build \ --format docker \ --tag "$IMAGE" \ "$(dirname "$0")" echo "==> Pushing $IMAGE..." buildah push --tls-verify=false "$IMAGE" echo "==> Restarting humor-units deployment..." kubectl rollout restart deployment/humor-units -n default echo "==> Done. Waiting for rollout..." kubectl rollout status deployment/humor-units -n default