#!/bin/bash set -euo pipefail # Simple script to update stack.production.yml hostname constraint # Usage: ./update-stack-hostname.sh [target_hostname] # Example: ./update-stack-hostname.sh ingress TARGET_HOSTNAME="${1:-ingress}" STACK_FILE="stack.production.yml" if [ ! -f "${STACK_FILE}" ]; then echo "Error: ${STACK_FILE} not found" exit 1 fi echo "Updating ${STACK_FILE} to use hostname: ${TARGET_HOSTNAME}" # Create backup cp "${STACK_FILE}" "${STACK_FILE}.bak.$(date +%Y%m%d-%H%M%S)" # Update hostname (handles both macOS and Linux sed) if [[ "$OSTYPE" == "darwin"* ]]; then sed -i '' "s/node.hostname == macmini3/node.hostname == ${TARGET_HOSTNAME}/g" "${STACK_FILE}" else sed -i "s/node.hostname == macmini3/node.hostname == ${TARGET_HOSTNAME}/g" "${STACK_FILE}" fi echo "Updated ${STACK_FILE}" echo "Backup saved with timestamp suffix" echo "" echo "Changes:" git diff "${STACK_FILE}" || echo "No git diff available"