#!/bin/bash set -a # read environment variables from .env file # for value of EMAIL . .env # Check if EMAIL environment variable is set if [ -z "$EMAIL" ]; then echo "Error: EMAIL environment variable is not set." echo "Please set the EMAIL variable and try again." exit 1 fi # Get the directory where the script is located SCRIPT_DIR="$(dirname "$(readlink -f "$0")")" cd "$SCRIPT_DIR" || { echo "Failed to change directory to $SCRIPT_DIR"; exit 1; } # Define the template file path and output file path TEMPLATE_FILE="../../k3s/forgejo/issuer.yaml.template" OUTPUT_FILE="../../k3s/forgejo/issuer.yaml" # Use envsubst to substitute the EMAIL variable into the template envsubst < "$TEMPLATE_FILE" > "$OUTPUT_FILE" if [ $? -ne 0 ]; then echo "Error: Failed to substitute variables in the template." exit 1 fi echo "Issuer configuration has been created at $OUTPUT_FILE"