export-secret() {
  local name="$1"
  local file="/run/secrets/${name}"

  if [[ ! -f "$file" ]]; then
      echo "Error: secret file not found: $file" >&2
      return 1
  fi

  # Read first line, remove trailing spaces/tabs, convert nulls to newlines
  local value
  value=$(head -n1 "$file" | sed 's/[ \t]*$//' | tr '\0' '\n')

  export "${name}=${value}"
}
