#!/bin/bash set -euo pipefail template="/opt/keycloak/templates/triangulation-realm.template.json" target="/opt/keycloak/data/import/triangulation-realm.json" escape_sed() { printf '%s' "$1" | sed -e 's/[\/&|]/\\&/g' } admin_username_escaped="$(escape_sed "${TRIANGULATION_ADMIN_USERNAME:-admin_ui}")" admin_password_escaped="$(escape_sed "${TRIANGULATION_ADMIN_PASSWORD:-admin123}")" viewer_username_escaped="$(escape_sed "${TRIANGULATION_VIEWER_USERNAME:-viewer}")" viewer_password_escaped="$(escape_sed "${TRIANGULATION_VIEWER_PASSWORD:-viewer123}")" sed \ -e "s|__TRIANGULATION_ADMIN_USERNAME__|${admin_username_escaped}|g" \ -e "s|__TRIANGULATION_ADMIN_PASSWORD__|${admin_password_escaped}|g" \ -e "s|__TRIANGULATION_VIEWER_USERNAME__|${viewer_username_escaped}|g" \ -e "s|__TRIANGULATION_VIEWER_PASSWORD__|${viewer_password_escaped}|g" \ "$template" > "$target" exec /opt/keycloak/bin/kc.sh start-dev --import-realm