#!/usr/bin/env bash set -euo pipefail export GPG_TTY=$(tty) function get_or_gen_secret() { local path=$1 local generate=${2:-false} local description=$3 if ! gopass show "$path" >/dev/null 2>&1; then if [ "$generate" = "true" ]; then local val=$(openssl rand -hex 32) gopass insert -f "$path" <<< "$val" else echo >&2 "$description" echo >&2 "Enter value (leave empty to skip):" read -r val gopass insert -f "$path" <<< "$val" fi fi gopass show -o "$path" } TEST_API_KEY=$(get_or_gen_secret "projects/firecrawl-dokploy/prod/api_key" true "Firecrawl API Key") BULL_AUTH_KEY=$(get_or_gen_secret "projects/firecrawl-dokploy/prod/bull_auth_key" true "Bull Auth Key") POSTGRES_PASSWORD=$(get_or_gen_secret "projects/firecrawl-dokploy/prod/postgres_password" true "PostgreSQL Password") SEARXNG_SECRET_KEY=$(get_or_gen_secret "projects/firecrawl-dokploy/prod/searxng_secret_key" true "SearXNG Secret Key") # FIRECRAWL_DOMAIN is only needed if you use Traefik routing (not required for direct IP access). FIRECRAWL_DOMAIN=$(gopass show -o "projects/firecrawl-dokploy/prod/firecrawl_domain" 2>/dev/null || echo "") # OPENAI_API_KEY is only needed for /extract features. Add it directly in Dokploy if needed. OPENAI_API_KEY=$(gopass show -o "projects/firecrawl-dokploy/prod/openai_api_key" 2>/dev/null || echo "") cat <