32 lines
1.1 KiB
Bash
32 lines
1.1 KiB
Bash
|
|
#!/usr/bin/env bash
|
||
|
|
# Print Certbot dns-cloudflare "Credentials File Content" from project .env.
|
||
|
|
# Run from repo root (or any dir with .env). Output is for pasting into
|
||
|
|
# NPM/Certbot UI "Credentials File Content *" field.
|
||
|
|
# Usage: ./scripts/certbot/print-cloudflare-credentials-from-env.sh
|
||
|
|
|
||
|
|
set -e
|
||
|
|
REPO_ROOT="${REPO_ROOT:-$(cd -P "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)}"
|
||
|
|
ENV_FILE="${ENV_FILE:-$REPO_ROOT/.env}"
|
||
|
|
|
||
|
|
if [ ! -f "$ENV_FILE" ]; then
|
||
|
|
echo "Error: .env not found at $ENV_FILE" >&2
|
||
|
|
echo "Create it from .env.example and set CLOUDFLARE_API_TOKEN or (CLOUDFLARE_EMAIL + CLOUDFLARE_API_KEY)." >&2
|
||
|
|
exit 1
|
||
|
|
fi
|
||
|
|
|
||
|
|
set +u
|
||
|
|
# shellcheck source=/dev/null
|
||
|
|
source "$ENV_FILE"
|
||
|
|
set -u
|
||
|
|
|
||
|
|
if [ -n "${CLOUDFLARE_API_TOKEN:-}" ]; then
|
||
|
|
echo "dns_cloudflare_api_token = $CLOUDFLARE_API_TOKEN"
|
||
|
|
elif [ -n "${CLOUDFLARE_EMAIL:-}" ] && [ -n "${CLOUDFLARE_API_KEY:-}" ]; then
|
||
|
|
echo "dns_cloudflare_email = $CLOUDFLARE_EMAIL"
|
||
|
|
echo "dns_cloudflare_api_key = $CLOUDFLARE_API_KEY"
|
||
|
|
else
|
||
|
|
echo "Error: Set CLOUDFLARE_API_TOKEN or (CLOUDFLARE_EMAIL + CLOUDFLARE_API_KEY) in .env" >&2
|
||
|
|
echo "See: docs/04-configuration/CLOUDFLARE_CREDENTIALS_BOTH_METHODS.md" >&2
|
||
|
|
exit 1
|
||
|
|
fi
|