-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathenv.example
More file actions
101 lines (80 loc) · 5.41 KB
/
Copy pathenv.example
File metadata and controls
101 lines (80 loc) · 5.41 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
# Edge Node Cloud Deployment — Environment Variables
#
# Copy this file to .env.<org>-<env> and fill in your values.
# Source it before running hdeploy commands:
#
# cp deploy/.env.example deploy/.env.acme-staging
# $EDITOR deploy/.env.acme-staging
# source deploy/.env.acme-staging
# hdeploy provision -d acme-staging
#
# Never commit .env.* files — they are gitignored.
# ══════════════════════════════════════════════════════════════════════════════
# FILL THESE IN — required before running any hdeploy command
# ══════════════════════════════════════════════════════════════════════════════
# Hetzner Cloud API token (Project → Security → API Tokens)
HCLOUD_TOKEN=""
# Cloudflare account ID (any zone Overview page → right sidebar)
CLOUDFLARE_ACCOUNT_ID=""
# Cloudflare API token
# Required permissions: Workers Scripts: Edit, Workers KV Storage: Edit,
# DNS: Edit, Account Settings: Read
CLOUDFLARE_API_TOKEN=""
# Cloudflare zone ID for this deployment's domain (zone Overview → right sidebar)
CLOUDFLARE_ZONE_ID=""
# Cloudflare Workers subdomain (Workers & Pages → Overview → "Your subdomain")
CLOUDFLARE_WORKERS_SUBDOMAIN=""
# SSH public key to install on Hetzner VMs (paste contents, e.g. ~/.ssh/id_ed25519.pub)
SSH_PUBLIC_KEY=""
# Kitsune2 bootstrap server URL (enables the h2hc-linker service)
H2HC_LINKER_BOOTSTRAP_URL=""
# Absolute path to the OpenTofu working directory (deploy/tofu in the edgenode repo).
# Must be absolute — hdeploy runs from ../platform-automation and relative paths
# will not resolve. Example: export TOFU_DIR="$(pwd)/deploy/tofu"
TOFU_DIR=""
# Docker image for the bootstrap container (used by bootstrap-harvester and bootstrap-edgenode)
# Built by platform-automation CI: ghcr.io/holo-host/edgenode-bootstrap:latest
BOOTSTRAP_IMAGE=""
# Log-collector source directory (optional for hdeploy provision)
LOG_COLLECTOR_SRC="docker/log-collector"
# ══════════════════════════════════════════════════════════════════════════════
# AUTO-GENERATED BY hdeploy — leave blank; hdeploy provision creates and stores
# these in deployment KV on first run, then reuses them on subsequent runs.
# Set explicitly here only if you need to supply a specific value (e.g. DR).
# ══════════════════════════════════════════════════════════════════════════════
# Lair keystore password for edgenode conductors
LAIR_PASSWORD=""
# Lair keystore password for the harvester conductor
HARVESTER_LAIR_PASSWORD=""
# Admin secret for the log-collector Worker
ADMIN_SECRET=""
# Shared secret between h2hc-linker and the joining service Worker
LINKER_ADMIN_SECRET=""
# Unyt agent public key for log-sender billing attribution
# Populated automatically: bootstrap-harvester generates the harvester agent key and
# bootstrap-edgenode passes it to each edgenode via docker exec --env.
# Leave blank — setting this here has no effect on the bootstrap flow.
LOG_SENDER_UNYT_PUB_KEY=""
# ══════════════════════════════════════════════════════════════════════════════
# OPTIONAL — leave blank if not applicable
# ══════════════════════════════════════════════════════════════════════════════
# Comma-separated invite codes for HWC browser nodes
INVITE_CODES="test-invite-123"
# Path to the joining service repo (required only for: hdeploy deploy-joining-service)
JOINING_SERVICE_DIR=""
# ══════════════════════════════════════════════════════════════════════════════
# TOFU PASSTHROUGH — do not edit
# ══════════════════════════════════════════════════════════════════════════════
export TF_VAR_hcloud_token="$HCLOUD_TOKEN"
export TF_VAR_cloudflare_account_id="$CLOUDFLARE_ACCOUNT_ID"
export TF_VAR_cloudflare_api_token="$CLOUDFLARE_API_TOKEN"
export TF_VAR_cloudflare_workers_subdomain="$CLOUDFLARE_WORKERS_SUBDOMAIN"
export TF_VAR_cloudflare_zone_id="$CLOUDFLARE_ZONE_ID"
export TF_VAR_ssh_public_key="$SSH_PUBLIC_KEY"
export TF_VAR_linker_bootstrap_url="$H2HC_LINKER_BOOTSTRAP_URL"
export TF_VAR_linker_admin_secret="$LINKER_ADMIN_SECRET"
export TF_VAR_invite_codes="$INVITE_CODES"
export TF_VAR_lair_password="$LAIR_PASSWORD"
export TF_VAR_harvester_lair_password="$HARVESTER_LAIR_PASSWORD"
export TF_VAR_log_sender_unyt_pub_key="$LOG_SENDER_UNYT_PUB_KEY"
export TF_VAR_log_collector_admin_secret="$ADMIN_SECRET"