# Local dev / container runtime values NEAR_INTENTS_API_KEY=replace_me NEAR_INTENTS_WS_URL=wss://solver-relay-v2.chaindefuser.com/ws KAFKA_BROKERS=redpanda:9092 KAFKA_CLIENT_ID=unrip KAFKA_TOPIC_RAW_NEAR_INTENTS_QUOTE=raw.near_intents.quote KAFKA_TOPIC_NORM_SWAP_DEMAND=norm.swap_demand KAFKA_TOPIC_CMD_EXECUTE_TRADE=cmd.execute_trade KAFKA_TOPIC_EXEC_TRADE_RESULT=exec.trade_result KAFKA_CONSUMER_GROUP_DUMMY=dummy-reactor-v1 KAFKA_CONSUMER_GROUP_EXECUTOR=dummy-executor-v1 EXECUTOR_STATE_DIR=/var/lib/unrip/executor-state # Repo-driven Hetzner bootstrap values live separately from the app .env. # Copy scripts/hetzner/bootstrap-secrets.env.example to # scripts/hetzner/bootstrap-secrets.env, fill in the values, then: # source scripts/hetzner/bootstrap-secrets.env # bash scripts/hetzner/bootstrap.sh # # The local-machine bootstrap flow is: # 1. provide Hetzner token + SSH key path + DNS/ingress values + app/bootstrap secrets # 2. run Terraform from infra/terraform/hetzner # 3. wait for cloud-init/k3s readiness # 4. fetch kubeconfig to .state/hetzner/kubeconfig.yaml # 5. create Kubernetes Secrets from local values # 6. build/import the current app image into k3s # 7. apply repo Kubernetes manifests and let the bootstrap job create topics # # Expected bootstrap inputs: # - HCLOUD_TOKEN # - SSH_PUBLIC_KEY_PATH # - TF_ADMIN_CIDR_BLOCKS # - BASE_DOMAIN # - FORGEJO_DOMAIN # - FORGEJO_ROOT_URL # - NEAR_INTENTS_API_KEY # - FORGEJO_RUNNER_REGISTRATION_TOKEN # # Future k3s deployment should source the app values from Kubernetes Secret/ConfigMap. # Hetzner bootstrap path clones the repo to /opt/unrip/repo for later deploy/k8s assets.