export SERVER_IP=""
export DEPLOY_MODE=nomad # nomad or k8s
# --- Basic variables ---
export ENVIRONMENT=local
export DOMAIN_NAME=localhost
export GCP_ZONE=dc1
export CONSUL_ACL_TOKEN=
export NOMAD_ACL_TOKEN=
export SERVER_IPS="$SERVER_IP"
export NUM_SERVERS=1
export CONSUL_VERSION=1.21.4
export NOMAD_VERSION=1.10.4
export SANDBOX_STORAGE_BACKEND=redis
export ORCHESTRATOR_DIR=/home
# --- Database / Redis / Harbor ---
# Registry address required
export HARBOR_HTTP_PORT=2900
export HARBOR_HTTPS_PORT=40443
export REGISTRY_PROJECT=e2b-orchestration
# PostgreSQL address required
export POSTGRES_CONNECTION_STRING="postgresql://postgres:local@$SERVER_IP:5432/mydatabase?sslmode=disable"
export REDIS_URL="redis.service.consul"
export REDIS_CLUSTER_URL=""
export MINIO_ENDPOINT="$SERVER_IP:9000"
export MINIO_ACCESS_KEY="minioadmin"
export MINIO_SECRET_KEY="minioadmin"

# --- Other secrets ---
# No longer use SUPABASE; connect to self-hosted PostgreSQL
export SUPABASE_JWT_SECRETS=
export POSTHOG_API_KEY=
# ANALYTICS_COLLECTOR is an internal component of api service; token is custom
export ANALYTICS_COLLECTOR_HOST=http://localhost:2901
export ANALYTICS_COLLECTOR_API_TOKEN=token
# Launch Darkly for experimental new features, not yet enabled
export LAUNCH_DARKLY_API_KEY=""
export API_ADMIN_TOKEN=dev_admin

# Recommended to randomly generate; used as api access token
export SANDBOX_ACCESS_TOKEN_HASH_SEED=dadbb9c5-7c79-7bb1-f58c-e0fa61d49c57
export LOGS_COLLECTOR_ADDRESS=localhost:30006
export OTEL_COLLECTOR_GRPC_ENDPOINT=localhost:4317
export LOCAL_CLUSTER_ENDPOINT=localhost:3001
export API_PORT_NAME=api
export NOMAD_TOKEN=

# --- ClickHouse (optional) ---
export CLICKHOUSE_SERVER_COUNT=0   # Set 0 if not needed locally
export CLICKHOUSE_BACKUPS_BUCKET_NAME=
export CLICKHOUSE_USERNAME=e2b
export CLICKHOUSE_PASSWORD=clickity-clicky-click
export CLICKHOUSE_DATABASE=default
export CLICKHOUSE_VERSION=25.4
export CLICKHOUSE_RESOURCES_CPU_COUNT=40000
export CLICKHOUSE_RESOURCES_MEMORY_MB=40960
export CLICKHOUSE_SERVER_SECRET=123456789
export CLICKHOUSE_HOST=127.0.0.1

# --- Loki / Logs collector ---
export LOGS_COLLECTOR_PUBLIC_IP=127.0.0.1
export LOGS_COLLECTOR_VERSION=0.50.0-alpine

# --- docker-reverse-proxy ---
export HARBOR_HOST=$SERVER_IP:2900
export HARBOR_PROJECT=e2b-orchestration
export HARBOR_USERNAME=admin
export HARBOR_PASSWORD=Harbor12345
export DOMAIN_NAME=domain_name
export DOCKER_REVERSE_PROXY_PORT_NAME=docker-reverse-proxy

# --- edge ---
export CLIENT_PROXY_COUNT=1
export EDGE_PROXY_PORT_NAME=session
export EDGE_API_PORT_NAME=edge-api
export CLIENT_PROXY_RESOURCES_CPU_COUNT=40000
export CLIENT_PROXY_RESOURCES_MEMORY_MB=40960
export CLIENT_PROXY_MAX_RESOURCES_MEMORY_MB=61440
export EDGE_API_SECRET=dadbb9c5-7c79-7bb1-f58c-e0fa61d49c57
export LOKI_URL=127.0.0.1:3100
export API_GRPC_ADDRESS=localhost:5009

# --- loki ---
export LOKI_SERVICE_PORT_NAME=loki
export LOKI_BUCKET_NAME=default
export LOKI_RESOURCES_CPU_COUNT=40000
export LOKI_PROXY_RESOURCES_MEMORY_MB=40960
export LOKI_PROXY_MAX_RESOURCES_MEMORY_MB=61440
export LOKI_VERSION=2.9.3

# --- orchestrator ---
export ORCHESTRATOR_PORT_NAME=orchestrator
export ORCHESTRATOR_PROXY_PORT_NAME=orchestrator-proxy
export OTEL_TRACING_PRINT=false
export ENVD_TIMEOUT=60s
export TEMPLATE_BUCKET_NAME=e2b-dev-fc-templates
export ALLOW_SANDBOX_INTERNET=true
export SHARED_CHUNK_CACHE_PATH=
export DOMAIN_NAME=

# --- otel-collector ---
export OTEL_COLLECTOR_RESOURCES_CPU_COUNT=40000
export OTEL_COLLECTOR_PROXY_RESOURCES_MEMORY_MB=40960
export OTEL_COLLECTOR_PROXY_MAX_RESOURCES_MEMORY_MB=61440
export GRAFANA_USERNAME=
export GRAFANA_OTEL_COLLECTOR_TOKEN=
export GRAFANA_OTLP_URL=
export OTEL_COLLECTOR_VERSION=0.119.0


# --- redis ---
export REDIS_PORT_NAME=redis
export REDIS_VERSION=7.4.4-alpine

# --- template-manager ---
export BUILD_CACHE_BUCKET_NAME=e2b-dev-fc-cache

# --- Ports ---
export API_PORT=3000
export API_GRPC_PORT=5009
export EDGE_API_PORT=3001
export EDGE_PROXY_PORT=3002
export EDGE_HEALTH_PORT=3003
export ORCHESTRATOR_PORT=5008
export TEMPLATE_MANAGER_HOST=template-manager.service.consul:5008
export ORCHESTRATOR_PROXY_PORT=5007
export TEMPLATE_MANAGER_PORT=5008
export REDIS_PORT=6379
export DOCKER_REVERSE_PROXY_PORT=5000
export LOKI_SERVICE_PORT=3100
export LOGS_PROXY_PORT=30006
export LOGS_HEALTH_PROXY_PORT=44313
export OTEL_COLLECTOR_GRPC_PORT=4317
export CLICKHOUSE_SERVER_PORT=9010
export CLICKHOUSE_METRICS_PORT=9363
export DNS_PORT=5353

# --- Images ---
export API_DOCKER_IMAGE=api
export DB_MIGRATOR_DOCKER_IMAGE=db-migrator
export DOCKER_REVERSE_PROXY_DOCKER_IMAGE=docker-reverse-proxy
export CLIENT_PROXY_DOCKER_IMAGE=client-proxy

# Manual specification required for installation
export STORAGE_PROVIDER=Local
export ARTIFACTS_REGISTRY_PROVIDER=Local

export API_NODE_POOL=api
export CLICKHOUSE_NODE_POOL=api
export BUILD_NODE_POOL=api
