From e5ad25c004b1bcd5fa6eedbc00d095e702e81db0 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Tue, 3 Mar 2026 12:28:21 +0000 Subject: [PATCH 01/59] docs: [#405] create deployment journal directory structure for Hetzner demo tracker --- .../hetzner-demo-tracker/README.md | 72 ++++++++++++++++++ .../hetzner-demo-tracker/configuration.md | 30 ++++++++ .../hetzner-demo-tracker/prerequisites.md | 75 +++++++++++++++++++ .../hetzner-demo-tracker/problems.md | 32 ++++++++ 4 files changed, 209 insertions(+) create mode 100644 docs/deployments/hetzner-demo-tracker/README.md create mode 100644 docs/deployments/hetzner-demo-tracker/configuration.md create mode 100644 docs/deployments/hetzner-demo-tracker/prerequisites.md create mode 100644 docs/deployments/hetzner-demo-tracker/problems.md diff --git a/docs/deployments/hetzner-demo-tracker/README.md b/docs/deployments/hetzner-demo-tracker/README.md new file mode 100644 index 00000000..63732569 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/README.md @@ -0,0 +1,72 @@ +# Deployment Journal: Hetzner Demo Tracker + +**Issue**: [#405](https://github.com/torrust/torrust-tracker-deployer/issues/405) +**Date started**: 2026-03-03 +**Domain**: `torrust-tracker-demo.com` +**Provider**: Hetzner Cloud + +## Purpose + +Deploy a public Torrust Tracker demo instance to Hetzner Cloud and document every step of the process. This journal will serve as the source material for a blog post on [torrust.com](https://torrust.com). + +## Table of Contents + +1. [Prerequisites](prerequisites.md) — Account setup, tools, SSH keys +2. [Configuration](configuration.md) — Environment config decisions and examples +3. [Deployment](#deployment) — Step-by-step deployment walkthrough (below) +4. [Problems](problems.md) — Issues encountered with root causes and resolutions + +## Deployment + +> This section will be filled in as we execute each deployment phase. + +### Phase 1: Setup and Prerequisites + +See [prerequisites.md](prerequisites.md) for the complete checklist. + +### Phase 2: Create and Configure Environment + +See [configuration.md](configuration.md) for config decisions. + + + +### Phase 3: Provision Infrastructure + + + +### Phase 4: Configure Instance + + + +### Phase 5: Release Application + + + +### Phase 6: Run Services + + + +### Phase 7: Verify Deployment + + + +## Service Endpoints + +> Will be filled after deployment. + +| Service | URL | Status | +| ------------ | --- | ------ | +| HTTP Tracker | TBD | - | +| UDP Tracker | TBD | - | +| Tracker API | TBD | - | +| Health Check | TBD | - | +| Grafana | TBD | - | + +## Cost + +> Will be documented after choosing server type. + +| Resource | Monthly Cost (EUR) | +| -------- | ------------------ | +| Server | TBD | +| Total | TBD | diff --git a/docs/deployments/hetzner-demo-tracker/configuration.md b/docs/deployments/hetzner-demo-tracker/configuration.md new file mode 100644 index 00000000..064b83db --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/configuration.md @@ -0,0 +1,30 @@ +# Configuration + +Decisions and examples for the demo tracker environment configuration. + +> **Note**: All secrets, API tokens, and passwords shown here are placeholders. Never commit real credentials. + +## Configuration Decisions + +> This section will be filled as we make decisions during the deployment. + +| Decision | Choice | Rationale | +| ----------------- | ------ | --------- | +| Deployment method | TBD | | +| Server type | TBD | | +| Location | TBD | | +| OS image | TBD | | +| Database | TBD | | +| HTTPS | TBD | | +| Subdomains | TBD | | + +## Environment Configuration File + +> Will be added once we generate and customize the template (sanitized — no real secrets). + +## Related Documentation + +- [Hetzner server types and pricing](../../user-guide/providers/hetzner.md#available-server-types) +- [HTTPS/TLS configuration](../../user-guide/services/https.md) +- [Grafana service](../../user-guide/services/grafana.md) +- [Prometheus service](../../user-guide/services/prometheus.md) diff --git a/docs/deployments/hetzner-demo-tracker/prerequisites.md b/docs/deployments/hetzner-demo-tracker/prerequisites.md new file mode 100644 index 00000000..67fe4ad5 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/prerequisites.md @@ -0,0 +1,75 @@ +# Prerequisites + +Checklist of everything needed before deploying the demo tracker to Hetzner Cloud. + +## Accounts + +- [ ] **Hetzner Cloud account** — [Sign up](https://www.hetzner.com/cloud) if you don't have one +- [ ] **Hetzner API token** — Created in [Hetzner Console](https://console.hetzner.cloud/) → Security → API Tokens (Read & Write) +- [ ] **Domain registrar access** — To configure DNS A records for `torrust-tracker-demo.com` + +## SSH Keys + +An SSH key pair is required for VM access. The deployer uses this to connect to the provisioned server. + +```bash +# Generate a dedicated key pair (if you don't have one) +ssh-keygen -t ed25519 -C "torrust-tracker-deployer" -f ~/.ssh/torrust_tracker_deployer_ed25519 +``` + +- [ ] SSH private key available (e.g., `~/.ssh/torrust_tracker_deployer_ed25519`) +- [ ] SSH public key available (e.g., `~/.ssh/torrust_tracker_deployer_ed25519.pub`) +- [ ] Key permissions are correct (`chmod 600` on private key) + +## Tools + +The deployer can run via Docker (simpler) or natively (more flexibility). We'll document which method we use. + +### Option A: Docker (recommended for cloud providers) + +- [ ] Docker installed and running + +```bash +docker --version +``` + +- [ ] Deployer Docker image pulled + +```bash +docker pull torrust/tracker-deployer:latest +``` + +### Option B: Native Installation + +- [ ] Rust toolchain installed +- [ ] OpenTofu installed +- [ ] Ansible installed +- [ ] cargo-machete installed + +```bash +# Verify all dependencies at once +cargo run --bin dependency-installer check +``` + +## Working Directories + +```bash +mkdir -p data build envs +chmod 700 envs # Contains sensitive configuration +``` + +- [ ] `data/` directory exists +- [ ] `build/` directory exists +- [ ] `envs/` directory exists with restricted permissions + +## DNS (can be done after provisioning) + +DNS records will be configured after we know the server IP address. We need: + +- [ ] A records for `torrust-tracker-demo.com` subdomains pointing to the server IP + +## Related Documentation + +- [Hetzner Cloud Provider guide](../../user-guide/providers/hetzner.md) +- [Quick Start: Docker Deployment](../../user-guide/quick-start/docker.md) +- [Quick Start: Native Installation](../../user-guide/quick-start/native.md) diff --git a/docs/deployments/hetzner-demo-tracker/problems.md b/docs/deployments/hetzner-demo-tracker/problems.md new file mode 100644 index 00000000..7ebd27f3 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/problems.md @@ -0,0 +1,32 @@ +# Problems Encountered + +Issues encountered during the Hetzner demo tracker deployment, with root causes and resolutions. + +> This is a living document — problems are added as they occur during the deployment process. + + + +_No problems encountered yet — deployment has not started._ From 739f00336337b958330ea7c2a92b7d104fe789b3 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Tue, 3 Mar 2026 13:35:42 +0000 Subject: [PATCH 02/59] docs: [#405] document and complete prerequisites for Hetzner demo tracker --- ...nsole-api-token-read-write-permissions.png | Bin 0 -> 34192 bytes ...r-console-create-floating-ip-ipv4-form.png | Bin 0 -> 38689 bytes ...r-console-create-floating-ip-ipv6-form.png | Bin 0 -> 39044 bytes ...hetzner-console-dns-zone-initial-state.png | Bin 0 -> 129128 bytes .../media/hetzner-console-dns-zones-list.png | Bin 0 -> 86678 bytes .../hetzner-console-floating-ips-list.png | Bin 0 -> 108411 bytes .../hetzner-console-generate-api-token.png | Bin 0 -> 100605 bytes .../hetzner-demo-tracker/prerequisites.md | 179 +++++++++++++++--- ...tzner-demo-tracker-and-document-process.md | 6 +- 9 files changed, 155 insertions(+), 30 deletions(-) create mode 100644 docs/deployments/hetzner-demo-tracker/media/hetzner-console-api-token-read-write-permissions.png create mode 100644 docs/deployments/hetzner-demo-tracker/media/hetzner-console-create-floating-ip-ipv4-form.png create mode 100644 docs/deployments/hetzner-demo-tracker/media/hetzner-console-create-floating-ip-ipv6-form.png create mode 100644 docs/deployments/hetzner-demo-tracker/media/hetzner-console-dns-zone-initial-state.png create mode 100644 docs/deployments/hetzner-demo-tracker/media/hetzner-console-dns-zones-list.png create mode 100644 docs/deployments/hetzner-demo-tracker/media/hetzner-console-floating-ips-list.png create mode 100644 docs/deployments/hetzner-demo-tracker/media/hetzner-console-generate-api-token.png diff --git a/docs/deployments/hetzner-demo-tracker/media/hetzner-console-api-token-read-write-permissions.png b/docs/deployments/hetzner-demo-tracker/media/hetzner-console-api-token-read-write-permissions.png new file mode 100644 index 0000000000000000000000000000000000000000..1a14ab49d277b92b4b7a92ba3f654d68b8e342c9 GIT binary patch literal 34192 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 MEjGdo`wOwM%2w%*)BS0x?&*G90eI ztjd)wjm()zDsJg0rSACBci;6?@cN;)Rc}V{n>+sAG*vliYIAx|Jm9XbIJhK;Mk$sJ zXYsr$_Z?yLA^1&}SpF`{dCjD|)$)1Erlh*9W{OgsybaO!f)+b{F`NU<~F}s>2de8d_sDz z3TBFgji3F&*9Lv4RMN8;-G7t;dvn{od^{IZ-8AH@)_fYpH z+rjhcvG|?D4jnq9kobF3m4us65_Y^5$#65qm_CDU1L7f z{tu4F@?%?sDkCe8(iP>CxuL^GKd2mS_w(I#wx*u)$~ztJ&VNN;l(^(qyvi_vbD$Q4 z=NrQr#VY>nZg5=CGp>nGw*NNSLE(-UC7G1;#TO~w)E%KCeT!pYWAAzXB9TJ&Kj-;OkH`cA1A?7`C{^@8T=rM=MW^CX3N39xj+Y@FtbJtJB?(`1s?* z6_KDO!RodiY@SDGb*23un6vaoR%gGtaL$*R9v9!5AlxU;K2#I87LLd}tCnHG9$fL_ zm-CmQOZq>U79@2D_8pZ}f)WCaO;{qU6`3(A1S0~;J5~)0x88kVw5{x4jIAai`@B!S z_KG;F>uI%bryt`}(vsFM6_xa7j!{oqw>8>v=9@!APsGyJ-b>|TSvZkBW`1~$>z}pC z#7q1)KGdjxp0$4$a`iz=nmdESxa)>VIfImyZMXfP+vC+b^_3s@b(TzL@hC5_@LAhS z%)jtsdQQoo>A%pCcKpj_p~JQl?A`bAxq;%%r1iU)LI`Z+L5buWPDt~~SD2rTJ5I1- zxOW-9JdIx2?hyE)NYKfGVCFLO|GT#3FY5V!t7B%V44yyVhWA|$%T!Vf>)Cr6by{C5 zEUkF${Vey%G&lWCqBe>r42qwnU)FfkQf}fUe4$VKC?9MSTlB0=u>VZWJ-v6$XJb2> z)kwSQ!Z#kVi$pXWzd6roMZmroCyOQ2BB-O|Vz#LLP>fdBn&dOypYJmD{4A5H5M0zA zIC<{UEQg}Wi?h9PW-038yP9B)HIB_Gb`PuVMf}|Kx1ZX{nX$))VikF{IL5C^k_2PF zR#PSO=s5FcLxZe&behIu*n_}Q?G<02=_gCa4|v4o?nE}-W&&5(TCyfBGml*gs|v=i z=8_iQ47F8qNJuP|5L~!Q_xf}%uP~F+xxS9w*(pb9xiJ*`l>VoVi;$-4E&fjug4fjC zh|XU>I*|6Or^$<0a2a%e+BgR?B|Uh56iVTS8Vcnmcb@=-;`WinLZO%@x2|4h%o^$;naspc=A+Q=c_pjolVfgo0mkQcCv=;Bx;T8KN6* literal 0 HcmV?d00001 diff --git a/docs/deployments/hetzner-demo-tracker/media/hetzner-console-create-floating-ip-ipv4-form.png b/docs/deployments/hetzner-demo-tracker/media/hetzner-console-create-floating-ip-ipv4-form.png new file mode 100644 index 0000000000000000000000000000000000000000..5edd2d0e5bab113960444c2b0fd841da3eb31231 GIT binary patch literal 38689 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 literal 0 HcmV?d00001 diff --git a/docs/deployments/hetzner-demo-tracker/media/hetzner-console-dns-zones-list.png b/docs/deployments/hetzner-demo-tracker/media/hetzner-console-dns-zones-list.png new file mode 100644 index 0000000000000000000000000000000000000000..9aaeae98b88dc66cd5f8a6f0f96432d13f155704 GIT binary patch literal 86678 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 &Hucfl7;zZv`G|hU4i*UIu6q&U)3u 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%0Ah%c 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Ν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 literal 0 HcmV?d00001 diff --git a/docs/deployments/hetzner-demo-tracker/media/hetzner-console-floating-ips-list.png b/docs/deployments/hetzner-demo-tracker/media/hetzner-console-floating-ips-list.png new file mode 100644 index 0000000000000000000000000000000000000000..6ec0fb9d498789539ce784521a08ccfcf6f3620e GIT binary patch literal 108411 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 **Note**: The Docker image only supports cloud providers (Hetzner). The LXD provider requires native installation. + +- [x] **Docker** — `28.3.3` installed, latest image pulled and verified + +### Native (used for this deployment) + +All dependencies verified with: ```bash -# Verify all dependencies at once -cargo run --bin dependency-installer check +cargo run -p torrust-dependency-installer --bin dependency-installer check ``` +- [x] **Rust toolchain** — `rustc 1.96.0-nightly (ec818fda3 2026-03-02)` +- [x] **OpenTofu** — `v1.10.5` +- [x] **Ansible** — `core 2.19.0` +- [x] **cargo-machete** — `0.9.1` + ## Working Directories +All three directories already existed in the repository. `envs/` permissions were tightened to `700` since it contains the environment config with the Hetzner API token. + ```bash -mkdir -p data build envs -chmod 700 envs # Contains sensitive configuration +chmod 700 envs ``` -- [ ] `data/` directory exists -- [ ] `build/` directory exists -- [ ] `envs/` directory exists with restricted permissions +- [x] `data/` directory exists (`775`) +- [x] `build/` directory exists (`775`) +- [x] `envs/` directory exists with restricted permissions (`700`) + +## Hetzner Infrastructure Resources + +Beyond the server itself, we are setting up two additional Hetzner resources to make the deployment more robust and operationally flexible. + +### Floating IPs (IPv4 and IPv6) + +**Why floating IPs?** +Floating IPs are static IPs that are independent of the server. This means: + +- If we resize or replace the server, we reassign the floating IP — no DNS change needed. +- The DNS records point to the floating IP permanently. + +Floating IPs are created in Hetzner Console → project → Networking → Floating IPs, then assigned to the server after provisioning. -## DNS (can be done after provisioning) +> **Important**: Floating IPs must be created in the **same location** (datacenter) as the server. -DNS records will be configured after we know the server IP address. We need: +**Location chosen**: Nuremberg (`nbg1`) — same location we'll use for the server. -- [ ] A records for `torrust-tracker-demo.com` subdomains pointing to the server IP +**Pricing**: + +| Type | Monthly cost (excl. VAT) | +| ---- | ------------------------ | +| IPv4 | €3.00 | +| IPv6 | €1.00 | + +**Names and addresses**: + +| Name | Type | Address | +| --------------------------- | ---- | ------------------------- | +| `torrust-tracker-demo-ipv4` | IPv4 | `116.202.176.169` | +| `torrust-tracker-demo-ipv6` | IPv6 | `2a01:4f8:1c0c:9aae::/64` | + +![Hetzner Console — Create floating IPv4 form](media/hetzner-console-create-floating-ip-ipv4-form.png) + +![Hetzner Console — Create floating IPv6 form](media/hetzner-console-create-floating-ip-ipv6-form.png) + +![Hetzner Console — Floating IPs list](media/hetzner-console-floating-ips-list.png) + +- [x] IPv4 floating IP created in Hetzner project (`torrust-tracker-demo-ipv4`, `nbg1`, `116.202.176.169`) +- [x] IPv6 floating IP created in Hetzner project (`torrust-tracker-demo-ipv6`, `nbg1`, `2a01:4f8:1c0c:9aae::/64`) +- [ ] Both IPs assigned to the server (after provisioning) + +### Volume for Storage (⚠️ deferred — do after `release`) + +**Why a separate volume?** +The tracker's `storage/` directory holds all persistent data (SQLite database, logs, Grafana data, Prometheus data). Placing it on a dedicated Hetzner Volume means: + +- Resize the server without touching the data. +- Create incremental volume backups without needing a full VM snapshot. +- Detach and reattach to a new server for disaster recovery. + +> ⚠️ **This step is deferred** — the volume must be attached to a running server and mounted at `/opt/torrust/storage/` before the `release` command is run. See the deployment journal for the exact step. + +- [ ] Volume created in Hetzner project (after server is provisioned) +- [ ] Volume attached to server and mounted at `/opt/torrust/storage/` (before `release`) + +## DNS (after provisioning) + +DNS records will be configured after we know the floating IP addresses. We need: + +- [ ] A records for `torrust-tracker-demo.com` subdomains pointing to the **floating IPv4** address +- [ ] AAAA records for subdomains pointing to the **floating IPv6** address + +### Initial DNS State (before deployment) + +The zone was freshly created in Hetzner DNS with only the default SOA and NS records — no A records yet. + +![Hetzner Console — DNS zone initial state](media/hetzner-console-dns-zone-initial-state.png) + +Records at zone creation (queried from `helium.ns.hetzner.de`): + +```text +;; NS records +torrust-tracker-demo.com. 3600 IN NS helium.ns.hetzner.de. +torrust-tracker-demo.com. 3600 IN NS hydrogen.ns.hetzner.com. +torrust-tracker-demo.com. 3600 IN NS oxygen.ns.hetzner.com. + +;; SOA record +torrust-tracker-demo.com. 3600 IN SOA hydrogen.ns.hetzner.com. dns.hetzner.com. ( + 2026030300 ; serial + 86400 ; refresh (1 day) + 10800 ; retry (3 hours) + 3600000 ; expire (5 weeks 6 days 16 hours) + 3600 ; minimum (1 hour) + ) +``` ## Related Documentation diff --git a/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md b/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md index 294d2d4b..9526d7fd 100644 --- a/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md +++ b/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md @@ -49,9 +49,9 @@ docs/deployments/ ### Phase 1: Setup and Prerequisites -- [ ] Task 1.1: Create `docs/deployments/hetzner-demo-tracker/` directory structure -- [ ] Task 1.2: Document prerequisites (Hetzner account, API token, SSH keys, tool versions) -- [ ] Task 1.3: Verify all required tools are installed and working +- [x] Task 1.1: Create `docs/deployments/hetzner-demo-tracker/` directory structure +- [x] Task 1.2: Document prerequisites (Hetzner account, API token, SSH keys, tool versions) +- [x] Task 1.3: Verify all required tools are installed and working ### Phase 2: Create and Configure Environment From 61e24fe4eb32838ff5241b38c2776a7ffdc5f839 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Tue, 3 Mar 2026 14:50:56 +0000 Subject: [PATCH 03/59] docs: [#405] configure environment and create for Hetzner demo tracker (Phase 2) --- .../hetzner-demo-tracker/configuration.md | 233 +++++++++++++++++- .../question-lets-encrypt-email.png | Bin 0 -> 12210 bytes .../question-lets-encrypt.png | Bin 0 -> 18252 bytes .../question-server-type.png | Bin 0 -> 29633 bytes .../question-service-subdomains.png | Bin 0 -> 26890 bytes .../hetzner-demo-tracker/problems.md | 136 ++++++++++ ...tzner-demo-tracker-and-document-process.md | 6 +- project-words.txt | 2 + 8 files changed, 362 insertions(+), 15 deletions(-) create mode 100644 docs/deployments/hetzner-demo-tracker/media/configuratrion-ai-agent-questions/question-lets-encrypt-email.png create mode 100644 docs/deployments/hetzner-demo-tracker/media/configuratrion-ai-agent-questions/question-lets-encrypt.png create mode 100644 docs/deployments/hetzner-demo-tracker/media/configuratrion-ai-agent-questions/question-server-type.png create mode 100644 docs/deployments/hetzner-demo-tracker/media/configuratrion-ai-agent-questions/question-service-subdomains.png diff --git a/docs/deployments/hetzner-demo-tracker/configuration.md b/docs/deployments/hetzner-demo-tracker/configuration.md index 064b83db..9c338c68 100644 --- a/docs/deployments/hetzner-demo-tracker/configuration.md +++ b/docs/deployments/hetzner-demo-tracker/configuration.md @@ -6,21 +6,230 @@ Decisions and examples for the demo tracker environment configuration. ## Configuration Decisions -> This section will be filled as we make decisions during the deployment. +| Decision | Choice | Rationale | +| ----------------- | ------------------------------------------ | ------------------------------------------------------------------------------------------ | +| Deployment method | Docker (`torrust/tracker-deployer:latest`) | Reproducible, no local dependency management; Docker is the recommended approach | +| Server type | `ccx23` — 4 vCPU, 16 GB RAM | Sufficient headroom for a demo with full monitoring stack (tracker + Prometheus + Grafana) | +| Location | `nbg1` (Nuremberg, Germany) | Close to our development machines; matches the floating IP location | +| OS image | `ubuntu-24.04` | LTS release, well-tested with Ansible playbooks | +| Database | MySQL | Production-ready; better suited for a public demo with real traffic | +| HTTPS | Yes — Let's Encrypt (`use_staging: false`) | Production certificates via Caddy reverse proxy; domain is fully registered | +| Backup | Daily at 03:00 UTC, 7-day retention | Good default for a demo; protects against accidental data loss | -| Decision | Choice | Rationale | -| ----------------- | ------ | --------- | -| Deployment method | TBD | | -| Server type | TBD | | -| Location | TBD | | -| OS image | TBD | | -| Database | TBD | | -| HTTPS | TBD | | -| Subdomains | TBD | | +## Service Endpoints -## Environment Configuration File +| Service | URL / Address | +| ---------------- | --------------------------------------------------- | +| HTTP Tracker 1 | `https://http1.torrust-tracker-demo.com/announce` | +| HTTP Tracker 2 | `https://http2.torrust-tracker-demo.com/announce` | +| UDP Tracker 1 | `udp://udp1.torrust-tracker-demo.com:6969/announce` | +| UDP Tracker 2 | `udp://udp2.torrust-tracker-demo.com:6868/announce` | +| REST API | `https://api.torrust-tracker-demo.com` | +| Grafana | `https://grafana.torrust-tracker-demo.com` | +| Health Check API | `127.0.0.1:1313` (internal only) | -> Will be added once we generate and customize the template (sanitized — no real secrets). +## How Decisions Were Made + +Configuration decisions were made interactively with an AI coding agent (GitHub Copilot). The +agent asked targeted questions before generating the config file. The screenshots below capture +those questions and our answers. + +**Should HTTPS with Let's Encrypt be enabled?** + +![AI agent question: Let's Encrypt](media/configuratrion-ai-agent-questions/question-lets-encrypt.png) + +Answer: Yes — production certificates via Caddy. + +**Which Hetzner server type?** + +![AI agent question: server type](media/configuratrion-ai-agent-questions/question-server-type.png) + +Answer: Custom entry `ccx23` — 4 vCPU, 16 GB RAM. + +**What email for Let's Encrypt certificate notifications?** + +![AI agent question: Let's Encrypt email](media/configuratrion-ai-agent-questions/question-lets-encrypt-email.png) + +Answer: `jose.celano@nautilus-cyberneering.dev` + +**What subdomains for each service?** + +![AI agent question: service subdomains](media/configuratrion-ai-agent-questions/question-service-subdomains.png) + +Answer: + +- HTTP Tracker 1: `https://http1.torrust-tracker-demo.com/announce` +- HTTP Tracker 2: `https://http2.torrust-tracker-demo.com/announce` +- UDP Tracker 1: `udp://udp1.torrust-tracker-demo.com:6969/announce` +- UDP Tracker 2: `udp://udp2.torrust-tracker-demo.com:6868/announce` +- REST API: `https://api.torrust-tracker-demo.com` +- Grafana: `https://grafana.torrust-tracker-demo.com` + +> **Note**: The agent also silently used SQLite by default. We caught this and switched to MySQL. +> The bind addresses were also defaulted to `0.0.0.0` (IPv4 only) — we changed them to `[::]` for +> dual-stack. Both issues are documented in [problems.md](problems.md). + +## Generating the Template + +```bash +docker run --rm \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + torrust/tracker-deployer:latest \ + create template --provider hetzner /var/lib/torrust/deployer/envs/torrust-tracker-demo.json +``` + +The deployer generates a fully-featured template with all sections and placeholders. Edit and replace: + +- `REPLACE_WITH_ENVIRONMENT_NAME` → `torrust-tracker-demo` +- `REPLACE_WITH_SSH_PRIVATE_KEY_ABSOLUTE_PATH` → `/home//.ssh/torrust_tracker_deployer_ed25519` +- `REPLACE_WITH_SSH_PUBLIC_KEY_ABSOLUTE_PATH` → `/home//.ssh/torrust_tracker_deployer_ed25519.pub` +- `REPLACE_WITH_HETZNER_API_TOKEN` → Your Hetzner API token (never commit this) + +## Environment Configuration File (sanitized) + +The file is stored at `envs/torrust-tracker-demo.json` (git-ignored — contains the real API token). + +```json +{ + "environment": { + "name": "torrust-tracker-demo", + "description": "Torrust Tracker demo instance at torrust-tracker-demo.com" + }, + "ssh_credentials": { + "private_key_path": "/home//.ssh/torrust_tracker_deployer_ed25519", + "public_key_path": "/home//.ssh/torrust_tracker_deployer_ed25519.pub", + "username": "torrust", + "port": 22 + }, + "provider": { + "provider": "hetzner", + "api_token": "", + "server_type": "ccx23", + "location": "nbg1", + "image": "ubuntu-24.04" + }, + "tracker": { + "core": { + "database": { + "driver": "mysql", + "host": "mysql", + "port": 3306, + "database_name": "torrust", + "username": "root", + "password": "" + }, + "private": false + }, + "udp_trackers": [ + { + "bind_address": "[::]:6969", + "domain": "udp1.torrust-tracker-demo.com" + }, + { "bind_address": "[::]:6868", "domain": "udp2.torrust-tracker-demo.com" } + ], + "http_trackers": [ + { + "bind_address": "[::]:7070", + "domain": "http1.torrust-tracker-demo.com", + "use_tls_proxy": true + }, + { + "bind_address": "[::]:7071", + "domain": "http2.torrust-tracker-demo.com", + "use_tls_proxy": true + } + ], + "http_api": { + "bind_address": "[::]:1212", + "admin_token": "", + "domain": "api.torrust-tracker-demo.com", + "use_tls_proxy": true + }, + "health_check_api": { + "bind_address": "127.0.0.1:1313" + } + }, + "prometheus": { + "scrape_interval_in_secs": 15 + }, + "grafana": { + "admin_user": "admin", + "admin_password": "", + "domain": "grafana.torrust-tracker-demo.com", + "use_tls_proxy": true + }, + "https": { + "admin_email": "", + "use_staging": false + }, + "backup": { + "schedule": "0 3 * * *", + "retention_days": 7 + } +} +``` + +## Validating the Configuration + +After filling in all values, validate before running the full deployment: + +```bash +docker run --rm \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + torrust/tracker-deployer:latest \ + validate --env-file /var/lib/torrust/deployer/envs/torrust-tracker-demo.json +``` + +> **Note**: In this deployment we used `cargo run --bin torrust-tracker-deployer validate ...` +> because we run from source. For end-users the Docker command above is equivalent and simpler. + +Output confirming the config is valid: + +```json +{ + "environment_name": "torrust-tracker-demo", + "config_file": "envs/torrust-tracker-demo.json", + "provider": "hetzner", + "is_valid": true, + "has_prometheus": true, + "has_grafana": true, + "has_https": true, + "has_backup": true +} +``` + +## Creating the Environment + +Once the config is validated, register the environment with the deployer: + +```bash +docker run --rm \ + -v $(pwd)/data:/var/lib/torrust/deployer/data \ + -v $(pwd)/build:/var/lib/torrust/deployer/build \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + -v ~/.ssh:/home/deployer/.ssh:ro \ + torrust/tracker-deployer:latest \ + create environment --env-file /var/lib/torrust/deployer/envs/torrust-tracker-demo.json +``` + +Output: + +```json +{ + "environment_name": "torrust-tracker-demo", + "instance_name": "torrust-tracker-vm-torrust-tracker-demo", + "data_dir": "./data/torrust-tracker-demo", + "build_dir": "./build/torrust-tracker-demo", + "created_at": "2026-03-03T13:59:22.635908188Z" +} +``` + +The deployer created `data/torrust-tracker-demo/environment.json` with the internal state. This +file holds the environment's domain model — it is managed exclusively by the deployer and must +never be edited manually. + +As confirmed by the output, `instance_name: null` in the config results in the auto-generated +server name `torrust-tracker-vm-torrust-tracker-demo` — the Hetzner VM will be named this. ## Related Documentation diff --git a/docs/deployments/hetzner-demo-tracker/media/configuratrion-ai-agent-questions/question-lets-encrypt-email.png b/docs/deployments/hetzner-demo-tracker/media/configuratrion-ai-agent-questions/question-lets-encrypt-email.png new file mode 100644 index 0000000000000000000000000000000000000000..411dc3281d02dbef37446dc61188ce3540dd91fe GIT binary patch literal 12210 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 literal 0 HcmV?d00001 diff --git a/docs/deployments/hetzner-demo-tracker/media/configuratrion-ai-agent-questions/question-lets-encrypt.png b/docs/deployments/hetzner-demo-tracker/media/configuratrion-ai-agent-questions/question-lets-encrypt.png new file mode 100644 index 0000000000000000000000000000000000000000..e936189a90a22989fc3482372a0e99894d12f66b GIT binary patch literal 18252 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 Xp2&PKJ#%9e`BwC?)T7LY>TmxKSs7~6 literal 0 HcmV?d00001 diff --git a/docs/deployments/hetzner-demo-tracker/media/configuratrion-ai-agent-questions/question-server-type.png b/docs/deployments/hetzner-demo-tracker/media/configuratrion-ai-agent-questions/question-server-type.png new file mode 100644 index 0000000000000000000000000000000000000000..61257b89818a2b602ff7971a8bae04c144e5ecdc GIT binary patch literal 29633 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 HV;BAne+E57 literal 0 HcmV?d00001 diff --git a/docs/deployments/hetzner-demo-tracker/media/configuratrion-ai-agent-questions/question-service-subdomains.png b/docs/deployments/hetzner-demo-tracker/media/configuratrion-ai-agent-questions/question-service-subdomains.png new file mode 100644 index 0000000000000000000000000000000000000000..c2223311c44b4e77c9b1a53b6c89f1e780893911 GIT binary patch literal 26890 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 z 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�^s|=p5mc2|FCq z`|7Fo9n0xVzI<<6nprWOANjjg^j-N`;}2BFU7PPS%lds_Xno0E4@S26+w#v+TD$jK zArau?Fy&Tej0;K-8wiK1tEcFI?B~7`RZ5Lav zO|teZ$Hh@`JUgS}4(9~@wdz|9ue9Qkc1^72;Zv@Z)Q5FZ=uG1yao8*}i5nR3Rlm9()JrSf;oaKe*icBe*v!@=S2~vbjJ6 z<9H$dr^PqGJnmEG1IC@dakx;s27OU2*+L<-MiMtbUR|(EWS^~5aQkcNH%#7xqI-7B^7D-g z4}gfMcM2W5fqLlUtZ5lmfr7RbY?;}X-}*LN&_^d+-!x<_4sJF4a&puoax6_Le$t>({)_NQ*(?0h7R-QT5*67s-B!W(*8L3wO=EhO&TrX>b|0p<+=KdzZ>&=k~tBuyk zv?EF?&=q;?x9JyLO^f0LV+A?Lr;T7P$74ka{C1h*C2Hf1!pV^7y5 z-`QG-blqxOXGW#z90`-1MT^S8Ew$JNqG{!*Xhz#tH=Z50eACNFI0fA^@tZCs8rA67 zdzm_MN1Zf@W6iSTA1Iv(bVg$(8bQ#nnN5R#FRL(YK2;>CO}F&wnWT5JKD0zb;7a{2 zc2zLtrwW-{x-&cASQ``((b(UH;nBGs&2|u5`R>gE{%{Xr!em6s*{nn$AYkM+`&LVS zGHX&r>D3_bu^!^SSe4An7mSRQf*LYPLV{XC`5&h=Yw#z8A`^EO^8%pM{1aYV$bSA3 z1p4nS`%O7z3SK=$YDtS@ZvFSTO{kwL(t7K*={Qak z!O)v0Mmg-9x&3ebGNSW87z`9D=%4eI0)Lh{|KQLY)BA;w{=QLDDy2o zxUk{x@$;4{+6sSWu&w*$NZJh8^S#?6C`p7&SZ-v@gQSCRIZg{LyO~a&lj*M@iCj#P z4J<>Z9niPQK+?cQDDOs{!d87*CdmiVu%m>gPw{Pl_UljSoF^3hnZedDhMWK`O|H7{}j2&L@ zwJ}ls{&{(bKEru`TDN8*FP`vr3nhEtJ()hErS7Pw_&dv0eV~HBctI5fWumOt&l<6D zG`9_2&-DD~<{HsEyG8XpPLJQHJ6{p;S@Y&LP(xZ2C9M^~MJl!*79v5QXz?ZqMMIOuDdp`s~&qTP5yjFx?#GxFsZ zLNV8D3+O5jWm$u9LoyLaje)r8M8jpM-l^H5i5tW$lCLWj~#^Ms!gZ zal%$%4JDSLKG29#zIt-HB3ysJ(jwmWzOacyer{%c!@|hS_@_|QOgY+E!t>#{dVnbI zC1#K9E~PpHe+_#5-i1#2_{bxZ0U|5p(ey7~XV@__F{s=*eo0uqdFmUiX%8xUr2b_; zkyR?M@?(Z1vudidJkDd*CPa_AUVl&*Fvgc!cTOWJUD30qZDWAQI*t>8dl>Q0A!@AF zyW13)p*~vhaQn&B{x)`FuVcGE++f&z;IJ@b%}Me=46UK&BG#g1ui0%|7BVl$>B@Nb z&U4OX6}LQ?O}r~AZg?$N^TF;2O8tUz1+XL#43+xcediwCheU{aK%rKck3HlUg|sO z*_x-g*fv}tKPzKw(D4>Pp!N(6Mgo*ep5&}&VeZ7sSL)#T)0`5(rl3mPp_|$Kl^T^w zrOkln&-qwX%y3|z*Ff64x#*b2#H0!~)Q%2MisT+BN)UD)%oBlUTBmrNWffqzmUT@5dE*poO^ChgJrlAqQ;c56iCg)=YGO7}l3yUdgcTJX)tjWJaZ4>?-cjg$!u`#= zrdw(hx7EiVmFhTem)xJdFW`;Z4&541`XKY}d21DK@>YYfJVh7eHcq=^MNNGf)InwQ zt~j~L9qisC{SutetA-aOkeJ(NQU_~aueu0V>P@xN#Pi&h(3!j`!86x(7=5s;eFwJQoiQ)`>hXS1N?t}%O8&Di-YXt17c<>a%CUMb*8lH@c5gER z_a|yA{qgo+V-d6BG&vuW!*eTM!hd=UzIImGqer23))og}!!`q@(!25%blP=!9rzj4 zp7(Ug&;Ho}4`kh*dQtC2RD)K>p5!FEnMzq6)C{Dl^H|S2DD2dlMB- z+TF{O8}#U(-%EEe(B0n^b|W)Spmwad?x(VMJC-=_p8+(UF2Rm!$-h6l`ThTVcgO$U zL4n+3ofv0gV{2|~yo!PGS$)h+K;R0r%T>9YvMC+V|7)j5+Zyi8&=&;#LKr_nLPDsG zpf8@nNchLU9U>J6(-M|UjEv}3^c=xXGn7XEHbt!T!>U1#RqN2K__xbq`|UoNVSAz$ ze(RoC(yPJ@&!3at6~6oBu5!7;ub&i(YTtE?N*(6Qcn3qB?wD_WGASO<88XmdfgMVcctVp6}*oH4b8n9v)uhUubP0sC+M|Khu&C`erOM7wOx~+Kl+Trm-bxH z>uP4zW9Y9*g+6J#+~DBgVrcw@bHn1$t}pH6bfVA`7#5boX}zSrZ<{lGv@>sex>;(! z76bR{is!G5rmCpQz2HMV>|^z12PGll}ettp88ylvq zEG$o2c9BSVIKL1wu4)Yje2&ju=l693cvFx_E9lgbvbD8E9y=4(D5}-!LR(~LZ0wXC zt5!O^F+8Nkl4YYB@W*5@`P&F|$5k;ft4ow-I33;VF^w@Tl8WYDlIskN!g47p+F$ z$@G;jTXbklOqSLKG8`seal9104`<=lQ~A%0N;|_tLXx3rYaPxKj=)(V-@{Ui8S}GK zDOco!SWfGA&=AKyeOl^v%6`5R;5G;cm{_6ZuPc^Y3EGe)C;_u&fyF_%w z@lGf|dI*O!p>d7{kt_0_u2T%1cVnh(j~+fmHJzfKZ#fM;^!u^f&O&gIXQ(as*AONQ@gU3vVp0<=ztkv26p8bVv@Nw>8BT1fw70bdj;s$slW268MX~CB9R>~s zJG&Besc|{{{TW8Dm6MqGLPXZsIHTr#(}J3rSq^$2sp#m2;kYcz$JtkYPZ$M)iV%n9 zv?>LShAz>3E)_&hE6-u#gj_blZWp`pevY+grz}(3Dk>_XqN1`YDv{9apAEh9PqWp` zrUX$Qc6SXtZ2s_cf0_Ss%%K`=4VIq?o-z+_nO{X7lZ!|E1d&RAPTaud@^nTCwSvbT zS{W4;s&Mk6nXz^zciZ)_va5M{aS`P>!|-70d}(TU|nC_+p0Fi8Lp9GiKpVL3G-@a~-#bULQsYB|fa_!G*h ztH)$yW|E1(9JuT@B3$>9i184KJo|%kCu2RXDd3xtUHY`DMZ$1wuN-=5bH9AK$_wWz zm?FhhtDTCWyMIsWa!(5Ss6#aoo2;C%lKT(^U8>-h_4@TN8o&Y1goExS77aHK zjc-$kz&W_V9=8i?jk1rgQJw%$Z;M+`;n+)r>)AZ z-`;Fz#&X~stQ3%0RizG1s7@RCEqmD(E@GLA+5fAxE02eI?c3@}>yzpfofOqcilS2n zC0nb8gR+dWpKN1Ejy(ydIyonl#xjLaS+j+a>`$);A%%&tG)c%75~H%d*FC(?`+5F( zKJOpz`J6vw#&3ReFW>KVUH4qqID8dfjFk~^+Ka1PVgDj@yArZG@~_J=!tdUN`BTTN zNgfrvrluxXO?2N^{|N+MB;k|0{aOAqX|krz;!#dCHY+&QkN2~qLk?e=WMxlUqEM4X z{bg*d$6blk!QFClV~+<)MLu~J6`N;aIdp%WGCX(A-ifl8iWmS!LSdoO6^uw*j!h65 zQ);8OB3A;-4R*_#e)q>uo}7l8z8N3P-b*D_S7^(@c(0BtMkrt_mn?pqlG5jL0TBxZ z=H{`ZN^)|!6*Y|7)T}Hc*kzQ(Z^H_bjL)SzB5i>oJM#)3^lgHzuG_VM<<_eMPtY-# z9WU}OKTb_0lPHnOVzKl+DBR8HJ(KMnvq`Z0_CIZR4s*9(-}(8o%S@I3bRY)AfJRHY ztvdPQAm@B`U!;k1!$too6GVh)CnhHP^h6jL=<7d1$^&I8U07JywTNq6A|>iuY$rD_=vyh-tqv+$)k>eqz=(4XX^gD+w=OVsQ3s3M$E_J#MmI zYZhUi)OQbN@1d8bU+gHIe7?pn-ePW&!&M0E7*RB~%zOhYC&g>n6qmNgZmKhOHx7%9 zbxuD(&q2O~%D4B|F2r`>y6e|l6=$ZWhnIJTR-Ct=SQ3YR-j`W4JTPvzTUK^BvPyjG zA=l$Dyf>`cR~!#JMn6(WXc+A1E;xNMmWg|-Gr}2+hb$K5QCCIiY4o8LHqsRI|V{op-BfG=#`BlNT zBCjm`(^C1+peFI*s!eyU*=c560eDbvn{tQ2_$jwFeR|rrs|1(6wrmYLs}`0Xou{14 zPHky9+r@+JE~M&-R->5L+XwB=McUQX)zVT@XHZq(!BH}pgR=*IzkR7=U)Pdyc%31> zwH_bcKYLsG%b)Lj24y0cOs{rjIO;jrqU~a+ls0)!XClOvy-({Zk6xG5jZF^}_c@jS z)-}i+nE?t_(RDH#4+<{+oz^kuy4pgB5hZ@cDbF}skV5t{W2aWzj53GOF~V`oDoFzS z=UyHu@fphFjK6hz-48oW#;uD^P88MTYHK||zf$-#S_WFwx7GJoY5BLJ?R9$=0q|tN zenp2du&vC0PS`@XaQsrVp9aQPcn^)@*y>1%n%_ijoYdjNCWr3Mmy8GZc`f%@>Os`Xj?$O-_%!j<|E@0bGuGhmz11;KI4^Rmrc+0+{9v zg6G1S%w%NMT~ZdmSNBoGUjQqsl77wpfNS@QH0Qj+=F-A1DJ2o7ut0rgc$_@gh(xC1 ze9svhM`iE7@awM+8XFtCT@D(HnHU%(U{zQg>6shB+G_?%B_o0QUtpRkV%0V&wl6s) zDaK{N@b>XJk7N5a$6nNo5WrGK8ftsOB{slTJ&^$;}P< ziZbl#>go;zr&HH1AtR#=F9;h>*_~!9O*1Ff4T+Tmk`dSzKHeAbG4}Fs13q4#_4rES zBed0VK!m|6wb^VWm^=s%-#{<`%n_o8ToWYhVT=(y?3teJf1|vUE+QH%cDR{7^dp5H zI_l@)k*BGp<VQ+uY&K#?0$V0X@LF zC%XUq_3U+@VJaiI4i*JddwY8V4G;&EtXhRWL4xGCKvHdR#-;H`)edeZ5b(>NUHg{?XS|e1I^vF87CAwd~=7NbqQsd z710HW1U7N7F<;SJaXU!>FPfoeCZOn)w~^ss#uld8VWr9#F6fdz(odV0)H zVeSQ&my>}%dhWLKZ!lMdA}J?CTPIP={}i0lMJ69FgKK!e&&G9otx{Pk254UM`ZWhL z7ZDeir8YZyI|>nTjIc1YmQ(-@(aR5l#Z`=TRlg^og-J_GkHc9yh+GARY~B{I6$|(x z-oO`0O!|Z)%zclWOO2bG?ggy~XZOEB3Y(MD+V=It+KT84pYaBbJir*zsG^Xb1-Nge zEKFs5e+1b)h5f-BHI)6 zXD1c7-@w{B!Q8u35Wt1Bx>i*Mjayq92s|g{0;&;G^`hmvT36-NJ$?a&FsD zDEF`SC5PO$rN)OtQAIHPrh`5kwrLo^*+ykMu6qYf`Ft4501cbhpvu}?l^k4GtEXJT3AFR3HSi(-lIQ{ z|4IUx$6p9iobydYf=)nO7~mFp<-crbX-OFva46soI~VYovVgkXbyM{nRLqksb5D!S z{Ee8d-(Eodng8=YI4h8=O8!$1U02WlL14+I|I@GT$+rlOQ(#&rlhIUTw2XfhUC?kt zz>~JNHcRGFb@nE>*&@LLID--GLqeX1_%HEZ`s`kj6B-(|oh~UkIR{em>OZ_Wf-B{; z58-`-f<2ezUroStXWZ*u`Ry{`OerZT@y$Ol_RzNo1;T%2oqe{jXA+aSdiCo2#)9j` z#ALEK?J_+6^#k6I`jp_dgdEcJF-k&#$568vfDQFBZg^#@TeogdXlW5oCHc?JJci34 zbm&ON_HN^tsM65km3F1RLze#E`40=|Eni9z2}(36zbE;-dVITa%KWdDc62WmoqxHk z&5NVfZrHRb6~T>yMZrSZXZO~;dL`t!iU068eS1FjGtUwp(we%u3!}4G(3#WI)3vew z<*OBU18RWSaL<@CT@P*%RrB)=RNct`JG$9zA^LF9h-yzykCe2urj3maVIM%KYd_^k zP+?+!1L}XxY$^ZQeT#hD)k$pS6XJY)ANX2p4VF(&ZtjT=i#W+vLP0Z4ZusutLFP45_$fv(Czm$U8V`i|AD zT(ydg=K2Qvytr7I^w&zw`*7+x5?%yWn@)2~(=8_;*uc;*agFLXb&_j|)Zjn|GJt@! zdB~1H_1P^cS$R-o`I2!+A(YKqQC^CM3$-v@Y#@>*z&HXJu!=DF%vL9wj?OJ2>($g~ z@`l=tK+KZCQpQ0yK%u1f?b9U&;ALBV>m9U77XVyBC?e(8|60QJ?h0wkzZfUMr++T* z1CXurxUY}Sb!TfwQS2FTT<)SqA#@1jgOw8xyb+$`lQ_RI_73Np37GK4D|yV7U!GY#HZG}TZ$R=pS_ipe7`*bV*=rCD~_$R zWruD*#zIC72tS%FAz=hGO+0f!S)zXNDLL7~mOzXaN_N|mU$4oU7w@K4-elCG1U$~n zR2V?IhO?J1jTQ;$!)vvROU=yG5fl_8{46{yjO}C!eufr+;dDpb7g?Lw<_-Wf5aH0^ zI~00Tva%E%q;~H<4P=?yrJV;HO2?Q~{uWj(5mfOIb28skx-K8QJdqBeAjFX}BiY&6 z$&k%(g3J>Mk^q^_5PT0h(2i}$LP)^Y2^oVvhQ=P<#BY87Fyi$IQy45{gk_w~K8moh z21LfC*~MLH{#LGXSE*>3_Js=>fK7%pTJyl@-Mc>m+ym<;SL_cgZ+H-&h#3Q0{(14W zS1s^g6Fvi*c0U~GO292Py^{lX@#@<54xGT9oiu4?Vxl)6`BMTdt=cxX+DRclJ{tUR*>lKQSY|&WT>a;ari4zG_YXgVc@@i@VBD~-%(tghKmA5(%?o$R7*^Z zPBQ91IJ)-LtBXOFH>Ekkdmj#68IWHwdJwg3$WM_h3ISik+iU1iFt#5syTEQrq-@+F#`TVnXzdVQv~g?my28g0OlZkCwc9HUyi{haQPk zh=`~tX{a&SQ}o6JswS0sr_NR%*WIvjBd2pPGCaHws5%OgB(gxWo;>+^hvh*G))pa+ zT$S@c0;40Tsi~-%j9Gt+NN{)5QEXIFUP!4#(Z^)4kTZdLErmwgm>8K*HdRzMnA4;U zSParqH__1#E#dDF|L*-Fxl=-dV)DT4!#`JG7efC^!EQwrM4@f~PbAWv)myOV@X*kB zDAhlvIqT``XHDkLV?RG1ryzYGU?QIKMmj7YKapBueudX0d+vUNaFoJ|*&M)~lDXL_ zrb<56H5~P9$kGy21l|x)8zIBn1Ir&EEWyk+_Z`C4it$PPhtcSw2T=r zw6Ms+*$Ev%T%-hJy_bIbuu4qLuedz#sU7Z(RA})_-Rr2#|9Xgx>E34w9EQ~4dC5v@ z?NoP|Zg3Z}pqmq@VaO2L-c^Eaw|dio<5;Tl@7&PSKbNoZfUJm6l{1yLRd}j1Z-p^g z!UC)c$bc;a77PfGM=m*e`1(%EPjxk0ALz$~i-|@v80T3}`Ogd()Uvj=W`2a5Uh2Ma zLcNtq4FC56nH!f-=6^aO!dO%np?qi8hTi#K^!*vyF459ERvSed`Cd_$k#MP zMl@9&@%kf4LvG5q^xsf28!H*PrKn3dut_rcxO~kTBP6Co&k_++ARu(D>!OhMp~#B! zXAo9~6#y(rQBWWXwsU?_d9Qbg`MJF!G%o-3UGAg)pUl^O@^9#yf{A&A?zaFNGv#P$ zdF_SXO41UFD}+v9y1#fU0|Vxq-TS}zH>l#L!1C?4s|cW;$G=AnF@0!;8^pviNF*hb zU%v%1uW|+rwY9bD%QyWMki>RybUgMUaQ-3A8smi#yBZuYj~2JRSWdoW0ssBK{_17h zyXSs0lV)j3^A|6D+P0dG-j->|@5K08hY%ce>VzaOaHRiy8|hr_tMgTCuLqkFH; zEdO2k$k*E5vFbtI)5Ef;W&rLu6fjfpva)(4Dk_S$QTQp!=;p%vG$q^v8WUvppYQ$wb-+u($ z2QpDHh5P2dyNcW0AR^M7;btndK)UF_Tf<)>~=uzp6Dr65t$1NB_e)-mgS8TP>z!09M6SHNsg4sY>Wm&T(mnm-I;K zAa}KaprAn7Zi(jckaE8-KX{5B^RN$dHS! zBdQdtH$X+p&={(Y6hI(Om3(+jMnxq%)6&e?!W4yQZK7?w|9zQtetY{CW?0xGNUT&n zoEDNoGc(C4Yex2wO@6z)-}E;}L-NfY0s?&!kYaI`wFh&H-uG!j#abfu;lrauEg*+# zFXdjd3OikP7bPvKL)s}hOUQrclg8!7mA!ojnLZQp?PGB06DLkU!Z8Av$TY0xUpapL zUXdWAlg_QAP$kQUXpcXh5hk~!sc^Xi7Os+V2r4-`QNEs%u+p|3katF>zxDJE* z?(VFU!9PAg-jAo zoQMUr!VBJg!0aA~c^I9f5{K zmGt6(jmRZPL#Az8TMzZ*n!)_eqHBA5KbwbVB5z!haLjcN$)%YuU;ct@=%qz5wJTEt zY|*)~jsUFPgRG$b?b3;<2izwj$o1>jw;AvyG67>!r7%%|Pf{{6GA%uHoH3F^H}gw9 z5w!d>E9AH5ndkro+I(g1kKSjasWSB2IsO|l9YI&YvW*A}+d;)4mBHx&1lLBE@-i;= z8#vTSwM$y=zejBk;&DJI+ttPk3)$@h<%*%i%zAiGFBhU!Z~xDd2e@jN_>2L#WT_v z5$?x%yqAB8dO^aSAZe4sQml8f;hVp^y19}2#sQfdldHOO!ymr{v9U&>`aQQ~&R4F& zQ>fOM3E5yVom&K?l{(s!pbc*9RJWE0*g@2vl8{jRHK7VcTLgU*1gz1>f5$KZTax5wg*QLMovyn%&dg$_Mw|dN$VIv6&YxB^rD?o zUa0cd6>eAUNNbYDc|qd#5Io^^ucLg7y`Gs_26BrqSswkGv6Yo4!AqB@#N1ivOzO)n zmAv!37Cwv`dGx1K{jwKMf|0&AZk``l7jB;Qw+V>Z _No problems encountered yet — deployment has not started._ + +## Problem: Template generates `instance_name: null` with no explanation + +**Phase**: Configuration +**Severity**: Minor + +### Symptom + +Running `create template --provider hetzner` generates a config with `"instance_name": null` in the +`environment` section. It is unclear whether this field is optional or required, and what value the +deployer will use at runtime if it is left as `null`. + +```json +{ + "environment": { + "name": "REPLACE_WITH_ENVIRONMENT_NAME", + "instance_name": null + } +} +``` + +### Root Cause + +`instance_name` is an optional field. When `null`, the deployer auto-generates the server name as +`torrust-tracker-vm-{env_name}` (for example, `torrust-tracker-vm-torrust-tracker-demo`). The +template does not document this, leaving users uncertain. + +### Resolution + +Leave the field as `null` to accept the auto-generated name, or provide a custom value following +instance naming rules (1–63 characters, ASCII letters/numbers/dashes, cannot start or end with a +dash). + +For this deployment we left it as `null`, so the server will be named +`torrust-tracker-vm-torrust-tracker-demo`. + +### Prevention + +The template generator should add an inline comment or a companion `_comment` field explaining +the auto-generation behavior. See related improvement idea for the deployer. + +--- + +## Problem: Template defaults bind addresses to `0.0.0.0` (IPv4 only) + +**Phase**: Configuration +**Severity**: Major + +### Symptom + +The generated template binds all UDP and HTTP tracker sockets to `0.0.0.0`: + +```json +{ "bind_address": "0.0.0.0:6969" } +``` + +This works for IPv4 clients but completely ignores IPv6 connections, which is unacceptable for a +public-facing tracker in 2026. + +### Root Cause + +The `create template` command uses `0.0.0.0` as the hardcoded default, which is the safe minimum +for local/LXD environments. No prompt or note about IPv6 is shown. + +### Resolution + +Change all public-facing bind addresses to `[::]` (the IPv6 any-address). On Linux, `[::]` also +accepts IPv4 connections via the IPv4-mapped address mechanism (`::ffff:x.x.x.x`), so only a +single socket per port is required: + +```json +{ "bind_address": "[::]:6969", "domain": "udp1.torrust-tracker-demo.com" } +``` + +The `health_check_api` is internal (used only by Docker health probes) and remains on +`127.0.0.1:1313`. + +### Prevention + +The template generator should default to `[::]` for public-facing sockets, or at minimum include a +note explaining the dual-stack trade-off. A `validate` warning for `0.0.0.0` on Hetzner +deployments would also help. + +--- + +## Problem: Template silently defaults to SQLite — no database choice presented + +**Phase**: Configuration +**Severity**: Major + +### Symptom + +The generated template uses SQLite without asking the user: + +```json +{ + "database": { + "driver": "sqlite3", + "database_name": "tracker.db" + } +} +``` + +For a production-facing demo tracker, SQLite has limitations (no concurrent writes, no easy +remote inspection). Users may not notice the default until they are deep into the deployment. + +### Root Cause + +The `create template` command uses SQLite as the default database because it requires no additional +configuration fields (no host, port, username, password). It is the simpler default for local +development. No prompt or warning is shown. + +### Resolution + +Manually change the database section to MySQL after generating the template: + +```json +{ + "database": { + "driver": "mysql", + "host": "mysql", + "port": 3306, + "database_name": "torrust", + "username": "root", + "password": "" + } +} +``` + +Use a securely generated password (e.g., `openssl rand -base64 24`). + +### Prevention + +The `create template` command should either prompt the user for a database choice, or include a +prominent comment in the generated file noting that SQLite is the dev default and MySQL is +recommended for production. diff --git a/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md b/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md index 9526d7fd..afc57b57 100644 --- a/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md +++ b/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md @@ -55,9 +55,9 @@ docs/deployments/ ### Phase 2: Create and Configure Environment -- [ ] Task 2.1: Generate environment configuration template for Hetzner -- [ ] Task 2.2: Document configuration decisions (server type, location, image, credentials) -- [ ] Task 2.3: Create the environment using the deployer +- [x] Task 2.1: Generate environment configuration template for Hetzner +- [x] Task 2.2: Document configuration decisions (server type, location, image, credentials) +- [x] Task 2.3: Create the environment using the deployer ### Phase 3: Deploy the Tracker diff --git a/project-words.txt b/project-words.txt index af3a0c31..34e66ffb 100644 --- a/project-words.txt +++ b/project-words.txt @@ -45,6 +45,7 @@ buildx Bynder Caddyfile cdmon +celano certbot Certbot certonly @@ -85,6 +86,7 @@ Cunha cursorignore custompass customuser +cyberneering Datagram dcron dearmor From 2034809e68a9d19050d5a6f3b2cb46d435b33173 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Tue, 3 Mar 2026 16:21:47 +0000 Subject: [PATCH 04/59] docs: [#405] refactor hetzner-demo-tracker docs into per-command subdirectories MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Rename configuration.md → deployment-spec.md (it describes what to deploy, not a command) - Add commands/create/README.md documenting create template, validate, create environment steps - Add commands/provision/README.md documenting provision command and server details (attempt 1) - Split problems.md into commands/create/problems.md (problems 1–3) and commands/provision/problems.md (problems 4–5) - Move create/ and provision/ docs under a commands/ parent folder for cleaner structure - Rename screenshot to hetzner-console-provisioned-server-details-attempt-1.png - Update all internal cross-links to reflect new paths --- .../hetzner-demo-tracker/README.md | 20 +- .../commands/create/README.md | 96 ++++++++ .../{ => commands/create}/problems.md | 18 +- .../commands/provision/README.md | 99 ++++++++ .../commands/provision/problems.md | 233 ++++++++++++++++++ .../{configuration.md => deployment-spec.md} | 95 +------ ...e-provisioned-server-details-attempt-1.png | Bin 0 -> 194366 bytes 7 files changed, 460 insertions(+), 101 deletions(-) create mode 100644 docs/deployments/hetzner-demo-tracker/commands/create/README.md rename docs/deployments/hetzner-demo-tracker/{ => commands/create}/problems.md (90%) create mode 100644 docs/deployments/hetzner-demo-tracker/commands/provision/README.md create mode 100644 docs/deployments/hetzner-demo-tracker/commands/provision/problems.md rename docs/deployments/hetzner-demo-tracker/{configuration.md => deployment-spec.md} (66%) create mode 100644 docs/deployments/hetzner-demo-tracker/media/hetzner-console-provisioned-server-details-attempt-1.png diff --git a/docs/deployments/hetzner-demo-tracker/README.md b/docs/deployments/hetzner-demo-tracker/README.md index 63732569..be10de01 100644 --- a/docs/deployments/hetzner-demo-tracker/README.md +++ b/docs/deployments/hetzner-demo-tracker/README.md @@ -12,9 +12,14 @@ Deploy a public Torrust Tracker demo instance to Hetzner Cloud and document ever ## Table of Contents 1. [Prerequisites](prerequisites.md) — Account setup, tools, SSH keys -2. [Configuration](configuration.md) — Environment config decisions and examples -3. [Deployment](#deployment) — Step-by-step deployment walkthrough (below) -4. [Problems](problems.md) — Issues encountered with root causes and resolutions +2. [Deployment Specification](deployment-spec.md) — What we want to deploy: config decisions, + endpoints, sanitized config +3. Deployment commands — step-by-step per deployer command: + - [create](commands/create/README.md) — generate template, validate, create environment + - [provision](commands/provision/README.md) — create the Hetzner VM +4. Problems — issues encountered, per command: + - [create problems](commands/create/problems.md) + - [provision problems](commands/provision/problems.md) ## Deployment @@ -26,13 +31,14 @@ See [prerequisites.md](prerequisites.md) for the complete checklist. ### Phase 2: Create and Configure Environment -See [configuration.md](configuration.md) for config decisions. - - +See [deployment-spec.md](deployment-spec.md) for config decisions and the sanitized config. +See [commands/create/README.md](commands/create/README.md) for running the `create template`, `validate`, and +`create environment` commands. ### Phase 3: Provision Infrastructure - +See [commands/provision/README.md](commands/provision/README.md) for running the `provision` command and server +details. ### Phase 4: Configure Instance diff --git a/docs/deployments/hetzner-demo-tracker/commands/create/README.md b/docs/deployments/hetzner-demo-tracker/commands/create/README.md new file mode 100644 index 00000000..07d9f9c3 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/commands/create/README.md @@ -0,0 +1,96 @@ +# Command: create + +The `create` command has two sub-commands used before provisioning: + +1. `create template` — generate a starter config file for a given provider +2. `create environment` — register the config with the deployer and create local state + +See [problems.md](problems.md) for issues encountered when running these commands. + +## create template + +Generates a fully-featured JSON template for the chosen provider with placeholders for all +required fields. + +```bash +docker run --rm \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + torrust/tracker-deployer:latest \ + create template --provider hetzner /var/lib/torrust/deployer/envs/torrust-tracker-demo.json +``` + +The generated file is written to `envs/torrust-tracker-demo.json`. Edit it and replace: + +| Placeholder | Value | +| -------------------------------------------- | --------------------------------------------------------------------------- | +| `REPLACE_WITH_ENVIRONMENT_NAME` | `torrust-tracker-demo` | +| `REPLACE_WITH_SSH_PRIVATE_KEY_ABSOLUTE_PATH` | `/home/deployer/.ssh/torrust_tracker_deployer_ed25519` (container path) | +| `REPLACE_WITH_SSH_PUBLIC_KEY_ABSOLUTE_PATH` | `/home/deployer/.ssh/torrust_tracker_deployer_ed25519.pub` (container path) | +| `REPLACE_WITH_HETZNER_API_TOKEN` | Your Hetzner API token (never commit this) | + +> **Important**: When running via Docker, all file paths in the config must be container-internal +> paths (e.g. `/home/deployer/.ssh/...`), not host paths. See [problems.md](problems.md). + +See [deployment-spec.md](../../deployment-spec.md) for the full set of decisions and the sanitized +config used for this deployment. + +## validate + +After editing the config, validate it before registering the environment: + +```bash +docker run --rm \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + torrust/tracker-deployer:latest \ + validate --env-file /var/lib/torrust/deployer/envs/torrust-tracker-demo.json +``` + +Output confirming the config is valid: + +```json +{ + "environment_name": "torrust-tracker-demo", + "config_file": "envs/torrust-tracker-demo.json", + "provider": "hetzner", + "is_valid": true, + "has_prometheus": true, + "has_grafana": true, + "has_https": true, + "has_backup": true +} +``` + +> **Note**: In this deployment we used `cargo run --bin torrust-tracker-deployer validate ...` +> because we ran from source. For end-users the Docker command above is equivalent and simpler. + +## create environment + +Once the config is validated, register the environment with the deployer: + +```bash +docker run --rm \ + -v $(pwd)/data:/var/lib/torrust/deployer/data \ + -v $(pwd)/build:/var/lib/torrust/deployer/build \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + torrust/tracker-deployer:latest \ + create environment --env-file /var/lib/torrust/deployer/envs/torrust-tracker-demo.json +``` + +Output: + +```json +{ + "environment_name": "torrust-tracker-demo", + "instance_name": "torrust-tracker-vm-torrust-tracker-demo", + "data_dir": "./data/torrust-tracker-demo", + "build_dir": "./build/torrust-tracker-demo", + "created_at": "2026-03-03T13:59:22.635908188Z" +} +``` + +The deployer creates `data/torrust-tracker-demo/environment.json` with the internal state. This +file holds the environment's domain model — it is managed exclusively by the deployer and must +never be edited manually. + +As shown in the output, `instance_name: null` in the config results in an auto-generated name: +`torrust-tracker-vm-torrust-tracker-demo`. This will be the name of the Hetzner VM. diff --git a/docs/deployments/hetzner-demo-tracker/problems.md b/docs/deployments/hetzner-demo-tracker/commands/create/problems.md similarity index 90% rename from docs/deployments/hetzner-demo-tracker/problems.md rename to docs/deployments/hetzner-demo-tracker/commands/create/problems.md index 424acf0d..287752ad 100644 --- a/docs/deployments/hetzner-demo-tracker/problems.md +++ b/docs/deployments/hetzner-demo-tracker/commands/create/problems.md @@ -1,15 +1,15 @@ -# Problems Encountered +# Problems: create -Issues encountered during the Hetzner demo tracker deployment, with root causes and resolutions. +Issues encountered while running the `create template` and `create environment` commands. -> This is a living document — problems are added as they occur during the deployment process. +> This is a living document — problems are added as they occur. -_No problems encountered yet — deployment has not started._ - ## Problem: Template generates `instance_name: null` with no explanation -**Phase**: Configuration +**Command**: `create template` **Severity**: Minor ### Symptom @@ -69,13 +67,13 @@ For this deployment we left it as `null`, so the server will be named ### Prevention The template generator should add an inline comment or a companion `_comment` field explaining -the auto-generation behavior. See related improvement idea for the deployer. +the auto-generation behavior. --- ## Problem: Template defaults bind addresses to `0.0.0.0` (IPv4 only) -**Phase**: Configuration +**Command**: `create template` **Severity**: Major ### Symptom @@ -117,7 +115,7 @@ deployments would also help. ## Problem: Template silently defaults to SQLite — no database choice presented -**Phase**: Configuration +**Command**: `create template` **Severity**: Major ### Symptom diff --git a/docs/deployments/hetzner-demo-tracker/commands/provision/README.md b/docs/deployments/hetzner-demo-tracker/commands/provision/README.md new file mode 100644 index 00000000..04eec41c --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/commands/provision/README.md @@ -0,0 +1,99 @@ +# Command: provision + +> **Status**: ❌ ProvisionFailed — destroy + recreate required before retrying. +> See [problems.md](problems.md) for the full failure analysis and recovery steps. + +## What `provision` does + +The `provision` command: + +1. Renders OpenTofu templates (Terraform HCL + cloud-init YAML) into `build//tofu/hetzner/`. +2. Runs `tofu init` + `tofu apply` to create the Hetzner server. +3. Waits for SSH connectivity (up to 120 seconds, 60 × 2 s intervals). +4. Marks the environment as `Provisioned` once SSH responds. + +It does **not** install Docker, configure the tracker, or deploy any software — that is done by +the `configure`, `release`, and `run` commands. + +## Command + +```bash +docker run --rm \ + -v $(pwd)/data:/var/lib/torrust/deployer/data \ + -v $(pwd)/build:/var/lib/torrust/deployer/build \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + -v ~/.ssh:/home/deployer/.ssh:ro \ + torrust/tracker-deployer:latest \ + provision torrust-tracker-demo +``` + +## Provisioned Server Details + +The Hetzner server was created successfully by OpenTofu on 2026-03-03 at ~15:30 UTC. + +| Property | Value | +| ------------ | ----------------------------------------- | +| Server name | `torrust-tracker-vm-torrust-tracker-demo` | +| IPv4 | `46.225.234.201` | +| IPv6 | `2a01:4f8:1c19:620b::/64` | +| IPv6 address | `2a01:4f8:1c19:620b::1` | +| Location | `nbg1` (Nuremberg, Germany) | +| Server type | `ccx23` (4 vCPU, 16 GB RAM) | +| Image | `ubuntu-24.04` | +| SSH user | `torrust` | + +> **Note**: These are the server's own IPs assigned by Hetzner. The floating IPs +> (`116.202.176.169` IPv4, `2a01:4f8:1c0c:9aae::/64` IPv6) are separate and must be +> assigned to this server manually in the Hetzner Console after successful provisioning. + +![Hetzner console showing the provisioned server details](../../media/hetzner-console-provisioned-server-details-attempt-1.png) + +> **Note**: This screenshot shows the first successfully created server. A new server will be +> provisioned after destroying this one; the IP address will be different. + +## Generated Artifacts + +After provisioning the following build artifacts are created: + +- `build/torrust-tracker-demo/tofu/hetzner/` — rendered OpenTofu project (HCL + cloud-init) +- `build/torrust-tracker-demo/tofu/hetzner/cloud-init.yml` — cloud-init config with SSH key +- `data/torrust-tracker-demo/environment.json` — state updated to `Provisioned` (or + `ProvisionFailed` if something went wrong) +- `data/torrust-tracker-demo/traces/` — failure trace files (generated automatically on error) + +## Verifying the SSH Key Injection + +The rendered `build/torrust-tracker-demo/tofu/hetzner/cloud-init.yml` should contain the +public SSH key in the `ssh_authorized_keys` section: + +```yaml +users: + - name: torrust + groups: sudo + shell: /bin/bash + sudo: ["ALL=(ALL) NOPASSWD:ALL"] + ssh_authorized_keys: + - ssh-ed25519 torrust-tracker-deployer +``` + +To verify the key matches your local public key: + +```bash +grep -A1 "ssh_authorized_keys" build/torrust-tracker-demo/tofu/hetzner/cloud-init.yml +cat ~/.ssh/torrust_tracker_deployer_ed25519.pub +``` + +## Manual SSH Verification (After Provisioning) + +Once the server is up, verify SSH access directly from the host: + +```bash +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@ "whoami && cloud-init status" +``` + +Expected output: + +```text +torrust +status: done +``` diff --git a/docs/deployments/hetzner-demo-tracker/commands/provision/problems.md b/docs/deployments/hetzner-demo-tracker/commands/provision/problems.md new file mode 100644 index 00000000..4ae37b94 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/commands/provision/problems.md @@ -0,0 +1,233 @@ +# Problems: provision + +Issues encountered while running the `provision` command. + +> This is a living document — problems are added as they occur. + + + +## Problem: SSH key paths in config must be container-internal paths when running via Docker + +**Command**: `provision` +**Severity**: Blocker + +### Symptom + +Running `provision` via Docker fails immediately with: + +```text +❌ OpenTofu template rendering failed: Failed to render cloud-init template: + SSH public key file not found or unreadable +``` + +The SSH key files exist on the host but the deployer cannot find them. + +Trace file: `data/torrust-tracker-demo/traces/20260303-152806-provision.log` + +```text +Error Summary: OpenTofu template rendering failed: Failed to render cloud-init template: + SSH public key file not found or unreadable +Failed Step: RenderOpenTofuTemplates +Error Kind: TemplateRendering +``` + +### Root Cause + +The `ssh_credentials` paths in the environment config file (`envs/torrust-tracker-demo.json`) were +set to the host machine's paths (e.g. `/home/josecelano/.ssh/torrust_tracker_deployer_ed25519`). +When running the deployer via `docker run`, the SSH directory is mounted into the container at a +different location: + +```bash +-v ~/.ssh:/home/deployer/.ssh:ro +``` + +Inside the container, all SSH keys are under `/home/deployer/.ssh/`, not +`/home//.ssh/`. The deployer reads the path literally from the config, so it looks for +a file that does not exist inside the container. + +### Resolution + +Always use the container-internal path in `ssh_credentials` when running via Docker: + +```json +{ + "ssh_credentials": { + "private_key_path": "/home/deployer/.ssh/torrust_tracker_deployer_ed25519", + "public_key_path": "/home/deployer/.ssh/torrust_tracker_deployer_ed25519.pub" + } +} +``` + +After fixing the paths, the environment must be recreated (the previous environment was purged +with `--force` because no infrastructure had been created yet): + +```bash +docker run --rm \ + -v $(pwd)/data:/var/lib/torrust/deployer/data \ + -v $(pwd)/build:/var/lib/torrust/deployer/build \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + torrust/tracker-deployer:latest \ + purge torrust-tracker-demo --force + +docker run --rm \ + -v $(pwd)/data:/var/lib/torrust/deployer/data \ + -v $(pwd)/build:/var/lib/torrust/deployer/build \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + torrust/tracker-deployer:latest \ + create environment --env-file envs/torrust-tracker-demo.json +``` + +### Prevention + +The documentation for Docker-based usage should explicitly state that all paths in the config file +(SSH keys, etc.) must be the paths as seen **inside the container**, not on the host. The +`validate` command could also check that the referenced SSH key files are readable from within the +process's filesystem context. + +--- + +## Problem: Provisioning fails — SSH connectivity to newly created server times out + +**Command**: `provision` +**Severity**: Blocker + +### Symptom + +The deployer creates the Hetzner server successfully (the VM appears in the Hetzner console) but +then fails while waiting for SSH to become available: + +```text +❌ Provision command failed: Failed to provision environment 'torrust-tracker-demo': + SSH connectivity failed: Failed to establish SSH connectivity to 46.225.234.201 + after 60 attempts (120s total) +Tip: Check if instance is fully booted and SSH service is running +Tip: Check logs and try running with --log-output file-and-stderr for more details +``` + +The server IP `46.225.234.201` is reachable (Hetzner reports it as running) but SSH on port 22 +never responds within the 120-second window. + +Trace file: `data/torrust-tracker-demo/traces/20260303-153332-provision.log` + +The deployment environment state recorded in `data/torrust-tracker-demo/environment.json`: + +```json +{ + "state": { + "context": { + "failed_step": "WaitSshConnectivity", + "error_kind": "NetworkConnectivity", + "error_summary": "SSH connectivity failed: ...", + "failed_at": "2026-03-03T15:33:32.933487060Z", + "execution_started_at": "2026-03-03T15:30:00.047895413Z", + "execution_duration": { "secs": 212, "nanos": 885591647 }, + "trace_id": "bcba0ee9-b2cf-4302-be0e-5ed04c665141", + "trace_file_path": "./data/torrust-tracker-demo/traces/20260303-153332-provision.log" + } + } +} +``` + +### Root Cause + +**The SSH public key was correctly injected** — confirmed by inspecting the rendered +`build/torrust-tracker-demo/tofu/hetzner/cloud-init.yml`, which contains the correct public key: + +```yaml +ssh_authorized_keys: + - ssh-ed25519 torrust-tracker-deployer +``` + +This matches the content of `~/.ssh/torrust_tracker_deployer_ed25519.pub` exactly. A manual SSH +from the host confirms the server accepted the key: + +```bash +$ ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 "whoami && cloud-init status" +torrust +status: done +``` + +The actual root cause is **the 120-second SSH connectivity timeout was too short for this +Hetzner server**. The server booted at ~15:30 UTC and the deployer gave up at ~15:33:32 (roughly +3.5 minutes after the server appeared). By the time we tested manually (>14 minutes after boot), +sshd was fully available. + +**cloud-init timing note**: `cloud-init status --long` reports +`last_update: Thu, 01 Jan 1970 00:00:13 +0000` — the epoch-based timestamp shows the system clock +was not yet NTP-synced when cloud-init completed, which is consistent with cloud-init completing +very early in the boot sequence before network time was established. + +The deployer's SSH probe loop (60 × 2-second intervals = 120 seconds total) is designed for +fast LXD VMs which are typically ready in under 30 seconds. Hetzner bare-metal-class servers with +cloud-init configuration take significantly longer. + +### Resolution + +The environment is in `ProvisionFailed` state. The deployer does not allow re-running provision +from a failed state; the environment must be destroyed and recreated: + +```bash +# Destroy the Hetzner server (cleans up cloud resources and local state) +docker run --rm \ + -v $(pwd)/data:/var/lib/torrust/deployer/data \ + -v $(pwd)/build:/var/lib/torrust/deployer/build \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + -v ~/.ssh:/home/deployer/.ssh:ro \ + torrust/tracker-deployer:latest \ + destroy torrust-tracker-demo + +# Recreate the environment +docker run --rm \ + -v $(pwd)/data:/var/lib/torrust/deployer/data \ + -v $(pwd)/build:/var/lib/torrust/deployer/build \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + torrust/tracker-deployer:latest \ + create environment --env-file envs/torrust-tracker-demo.json + +# Retry provision +docker run --rm \ + -v $(pwd)/data:/var/lib/torrust/deployer/data \ + -v $(pwd)/build:/var/lib/torrust/deployer/build \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + -v ~/.ssh:/home/deployer/.ssh:ro \ + torrust/tracker-deployer:latest \ + provision torrust-tracker-demo +``` + +The retry is expected to succeed because the underlying cause (timeout) is non-deterministic — +the server may be faster on a second attempt. If it times out again, see the Prevention section. + +### Prevention + +The deployer should expose a configurable SSH connectivity timeout (currently hardcoded at 60 +attempts / 120 seconds). For Hetzner servers with cloud-init scripts, a longer timeout is needed. + +Potential improvements: + +- A `--ssh-timeout` parameter on the `provision` command. +- A `wait-for-ssh` command to decouple the retry loop (useful when provision partially succeeds). +- Document in the Hetzner provider guide that the first SSH probe may take 3–5 minutes. diff --git a/docs/deployments/hetzner-demo-tracker/configuration.md b/docs/deployments/hetzner-demo-tracker/deployment-spec.md similarity index 66% rename from docs/deployments/hetzner-demo-tracker/configuration.md rename to docs/deployments/hetzner-demo-tracker/deployment-spec.md index 9c338c68..26222188 100644 --- a/docs/deployments/hetzner-demo-tracker/configuration.md +++ b/docs/deployments/hetzner-demo-tracker/deployment-spec.md @@ -1,8 +1,13 @@ -# Configuration +# Deployment Specification -Decisions and examples for the demo tracker environment configuration. +Decisions and desired end-state for the demo tracker at `torrust-tracker-demo.com`. -> **Note**: All secrets, API tokens, and passwords shown here are placeholders. Never commit real credentials. +> **Note**: This document describes _what_ we want to deploy. For step-by-step command +> documentation see the per-command sub-directories under `commands/` (`commands/create/`, +> `commands/provision/`, etc.). +> +> All secrets, API tokens, and passwords shown here are placeholders. Never commit real +> credentials. ## Configuration Decisions @@ -67,23 +72,7 @@ Answer: > **Note**: The agent also silently used SQLite by default. We caught this and switched to MySQL. > The bind addresses were also defaulted to `0.0.0.0` (IPv4 only) — we changed them to `[::]` for -> dual-stack. Both issues are documented in [problems.md](problems.md). - -## Generating the Template - -```bash -docker run --rm \ - -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ - torrust/tracker-deployer:latest \ - create template --provider hetzner /var/lib/torrust/deployer/envs/torrust-tracker-demo.json -``` - -The deployer generates a fully-featured template with all sections and placeholders. Edit and replace: - -- `REPLACE_WITH_ENVIRONMENT_NAME` → `torrust-tracker-demo` -- `REPLACE_WITH_SSH_PRIVATE_KEY_ABSOLUTE_PATH` → `/home//.ssh/torrust_tracker_deployer_ed25519` -- `REPLACE_WITH_SSH_PUBLIC_KEY_ABSOLUTE_PATH` → `/home//.ssh/torrust_tracker_deployer_ed25519.pub` -- `REPLACE_WITH_HETZNER_API_TOKEN` → Your Hetzner API token (never commit this) +> dual-stack. Both issues are documented in [commands/create/problems.md](commands/create/problems.md). ## Environment Configuration File (sanitized) @@ -96,8 +85,8 @@ The file is stored at `envs/torrust-tracker-demo.json` (git-ignored — contains "description": "Torrust Tracker demo instance at torrust-tracker-demo.com" }, "ssh_credentials": { - "private_key_path": "/home//.ssh/torrust_tracker_deployer_ed25519", - "public_key_path": "/home//.ssh/torrust_tracker_deployer_ed25519.pub", + "private_key_path": "/home/deployer/.ssh/torrust_tracker_deployer_ed25519", + "public_key_path": "/home/deployer/.ssh/torrust_tracker_deployer_ed25519.pub", "username": "torrust", "port": 22 }, @@ -169,68 +158,6 @@ The file is stored at `envs/torrust-tracker-demo.json` (git-ignored — contains } ``` -## Validating the Configuration - -After filling in all values, validate before running the full deployment: - -```bash -docker run --rm \ - -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ - torrust/tracker-deployer:latest \ - validate --env-file /var/lib/torrust/deployer/envs/torrust-tracker-demo.json -``` - -> **Note**: In this deployment we used `cargo run --bin torrust-tracker-deployer validate ...` -> because we run from source. For end-users the Docker command above is equivalent and simpler. - -Output confirming the config is valid: - -```json -{ - "environment_name": "torrust-tracker-demo", - "config_file": "envs/torrust-tracker-demo.json", - "provider": "hetzner", - "is_valid": true, - "has_prometheus": true, - "has_grafana": true, - "has_https": true, - "has_backup": true -} -``` - -## Creating the Environment - -Once the config is validated, register the environment with the deployer: - -```bash -docker run --rm \ - -v $(pwd)/data:/var/lib/torrust/deployer/data \ - -v $(pwd)/build:/var/lib/torrust/deployer/build \ - -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ - -v ~/.ssh:/home/deployer/.ssh:ro \ - torrust/tracker-deployer:latest \ - create environment --env-file /var/lib/torrust/deployer/envs/torrust-tracker-demo.json -``` - -Output: - -```json -{ - "environment_name": "torrust-tracker-demo", - "instance_name": "torrust-tracker-vm-torrust-tracker-demo", - "data_dir": "./data/torrust-tracker-demo", - "build_dir": "./build/torrust-tracker-demo", - "created_at": "2026-03-03T13:59:22.635908188Z" -} -``` - -The deployer created `data/torrust-tracker-demo/environment.json` with the internal state. This -file holds the environment's domain model — it is managed exclusively by the deployer and must -never be edited manually. - -As confirmed by the output, `instance_name: null` in the config results in the auto-generated -server name `torrust-tracker-vm-torrust-tracker-demo` — the Hetzner VM will be named this. - ## Related Documentation - [Hetzner server types and pricing](../../user-guide/providers/hetzner.md#available-server-types) diff --git a/docs/deployments/hetzner-demo-tracker/media/hetzner-console-provisioned-server-details-attempt-1.png b/docs/deployments/hetzner-demo-tracker/media/hetzner-console-provisioned-server-details-attempt-1.png new file mode 100644 index 0000000000000000000000000000000000000000..22c611ca6a7f9705595e14b56e8d2d5f5c5fe13d GIT binary patch literal 194366 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

  • 3q~5M7@C4(@1nn_AT#r$a)+=D;xx-*k@(@ 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 Date: Tue, 3 Mar 2026 16:31:27 +0000 Subject: [PATCH 05/59] docs: [#405] add debug-command-failure skill for investigating deployer errors MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add .github/skills/usage/operations/debug-command-failure/skill.md covering the 5-layer investigation workflow: console output, environment state, trace log, build artifacts, and manual verification - Include common error patterns table (failed_step + error_kind → cause) - Include recovery guide for pre- vs post-cloud-resource failure scenarios - Register skill in AGENTS.md table (alphabetical order) --- .../operations/debug-command-failure/skill.md | 231 ++++++++++++++++++ AGENTS.md | 1 + 2 files changed, 232 insertions(+) create mode 100644 .github/skills/usage/operations/debug-command-failure/skill.md diff --git a/.github/skills/usage/operations/debug-command-failure/skill.md b/.github/skills/usage/operations/debug-command-failure/skill.md new file mode 100644 index 00000000..b2a8766d --- /dev/null +++ b/.github/skills/usage/operations/debug-command-failure/skill.md @@ -0,0 +1,231 @@ +--- +name: debug-command-failure +description: Guide for debugging and investigating deployer command failures. Covers reading error output, locating trace files, inspecting environment state, examining build artifacts, and running manual verification steps. Use when any deployer command (provision, configure, release, run, etc.) fails. Triggers on "command failed", "debug failure", "investigate error", "why did it fail", "trace", "deployer error", or "command error". +metadata: + author: torrust + version: "1.0" +--- + +# Debugging Deployer Command Failures + +This skill walks through collecting and interpreting diagnostic information when any deployer +command fails. + +## Investigation Layers (in order) + +```text +1. Console error output → immediate symptom + tip +2. Environment state → data/{env}/environment.json +3. Trace log → data/{env}/traces/{timestamp}-{command}.log +4. Build artifacts → build/{env}/ +5. Manual verification → SSH, curl, provider console +``` + +Work top-to-bottom. Each layer provides richer context than the previous. + +--- + +## Layer 1 — Console Error Output + +A failed command prints: + +```text +❌ command failed: +Tip: +Tip: Check logs and try running with --log-output file-and-stderr for more details +``` + +Note the **error summary** and the **tip** lines. The summary often names the failed step and the +kind of error. + +--- + +## Layer 2 — Environment State + +After any command failure, the deployer writes machine-readable state: + +```text +data/{env-name}/environment.json +``` + +Key fields to inspect: + +```json +{ + "state": { + "context": { + "failed_step": "WaitSshConnectivity", + "error_kind": "NetworkConnectivity", + "error_summary": "SSH connectivity failed: ...", + "failed_at": "2026-03-03T15:33:32Z", + "execution_started_at": "2026-03-03T15:30:00Z", + "execution_duration": { "secs": 212, "nanos": 885591647 }, + "trace_id": "bcba0ee9-b2cf-4302-be0e-5ed04c665141", + "trace_file_path": "./data/{env-name}/traces/20260303-153332-provision.log" + } + } +} +``` + +| Field | What it tells you | +| -------------------- | ---------------------------------------------------------- | +| `failed_step` | Which internal step failed (maps to deployer source code) | +| `error_kind` | Category: `NetworkConnectivity`, `TemplateRendering`, etc. | +| `error_summary` | Human-readable description of the error | +| `execution_duration` | How long the command ran before failing | +| `trace_file_path` | Exact path to the full trace log | + +```bash +# Quick inspection +cat data/{env-name}/environment.json | python3 -m json.tool +# or +jq '.state.context' data/{env-name}/environment.json +``` + +--- + +## Layer 3 — Trace Log + +The trace log records every step, sub-step, and decision the deployer made: + +```text +data/{env-name}/traces/{YYYYMMDD-HHMMSS}-{command}.log +``` + +The exact path is in `environment.json → state.context.trace_file_path`. + +```bash +# Read the full log +cat data/{env-name}/traces/20260303-153332-provision.log + +# Focus on errors and warnings +grep -E 'ERROR|WARN|failed|error' data/{env-name}/traces/20260303-153332-provision.log + +# Show the last 50 lines (where failures are usually recorded) +tail -50 data/{env-name}/traces/20260303-153332-provision.log +``` + +The trace contains structured log lines with timestamps, log levels, and context fields. Look for +`ERROR` lines and the step names that precede them. + +--- + +## Layer 4 — Build Artifacts + +The `build/` directory holds rendered templates and intermediate files generated before +infrastructure is touched: + +```text +build/{env-name}/ +├── tofu/ +│ └── hetzner/ (or lxd/) +│ ├── main.tf # OpenTofu infrastructure definition +│ ├── cloud-init.yml # cloud-init script run on first boot +│ └── *.tf # Other Terraform/OpenTofu files +└── ansible/ + ├── inventory.ini # Ansible inventory + └── playbooks/ # Ansible playbooks +``` + +Common inspections: + +```bash +# Verify SSH public key was correctly injected into cloud-init +grep -A3 'ssh_authorized_keys' build/{env-name}/tofu/hetzner/cloud-init.yml + +# Compare with the actual public key +cat ~/.ssh/torrust_tracker_deployer_ed25519.pub + +# Inspect the infrastructure definition +cat build/{env-name}/tofu/hetzner/main.tf +``` + +**Why this matters**: Build artifacts are generated from your config file without touching the +cloud provider. If the artifact is wrong, the root cause is in the environment config or a +template bug — not in the network or provider. + +--- + +## Layer 5 — Manual Verification + +When the deployer fails but the cloud resource appears to be up, verify the resource directly. + +### SSH connectivity + +```bash +# Test SSH manually with verbose output (-v shows handshake details) +ssh -v -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@{server-ip} "whoami && cloud-init status" +``` + +A successful response looks like: + +```text +torrust +status: done +``` + +If `cloud-init status` returns `status: running`, cloud-init is still executing — wait and retry. + +### Cloud-init timing + +```bash +# Check cloud-init completion and timing +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@{server-ip} \ + "cloud-init status --long && sudo journalctl -u ssh --since '5 minutes ago' | tail -20" +``` + +**Note**: If the clock timestamp shows `1970-01-01`, the system clock was not yet NTP-synced when +cloud-init completed — this is normal and does not indicate a failure. + +### Port availability + +```bash +# Check if SSH port is open (times out quickly if no service is listening) +nc -zv {server-ip} 22 + +# Check if HTTP tracker port is open +nc -zv {server-ip} 6969 +``` + +--- + +## Common Error Patterns + +| `failed_step` | `error_kind` | Likely Cause | +| ------------------------- | --------------------- | -------------------------------------------------------------------- | +| `RenderOpenTofuTemplates` | `TemplateRendering` | SSH key path not found — check container vs host path in config | +| `WaitSshConnectivity` | `NetworkConnectivity` | Server SSH not ready within timeout — server may need more boot time | +| `RunAnsiblePlaybook` | `Ansible` | SSH key rejected or unreachable — verify `~/.ssh/known_hosts` | +| `CreateServer` | `ProviderApi` | API token invalid or quota exceeded — check Hetzner console | + +--- + +## After Investigation + +Once the root cause is identified, the recovery path depends on how far the command progressed: + +- **Failed before any cloud resources were created** (e.g., `TemplateRendering`): fix the config, + `purge --force`, `create environment`, retry command. + +- **Failed after cloud resources were created** (e.g., `WaitSshConnectivity`): the deployer state + is `ProvisionFailed` or `ConfigureFailed`. Resources exist in the cloud. Must `destroy` to clean + up both cloud resources and local state, then `create environment` and retry. + +```bash +# Destroy cloud resources + local state +docker run --rm \ + -v $(pwd)/data:/var/lib/torrust/deployer/data \ + -v $(pwd)/build:/var/lib/torrust/deployer/build \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + -v ~/.ssh:/home/deployer/.ssh:ro \ + torrust/tracker-deployer:latest \ + destroy {env-name} + +# Recreate local environment +docker run --rm \ + -v $(pwd)/data:/var/lib/torrust/deployer/data \ + -v $(pwd)/build:/var/lib/torrust/deployer/build \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + torrust/tracker-deployer:latest \ + create environment --env-file envs/{env-name}.json +``` diff --git a/AGENTS.md b/AGENTS.md index f0b80370..f1d16c84 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -179,6 +179,7 @@ Available skills: | Creating issues | `.github/skills/dev/planning/create-issue/skill.md` | | Creating new skills | `.github/skills/add-new-skill/skill.md` | | Creating refactor plans | `.github/skills/dev/planning/create-refactor-plan/skill.md` | +| Debugging command failures | `.github/skills/usage/operations/debug-command-failure/skill.md` | | Debugging test errors | `.github/skills/dev/testing/debug-test-errors/skill.md` | | Handling errors in code | `.github/skills/dev/rust-code-quality/handle-errors-in-code/skill.md` | | Handling secrets | `.github/skills/dev/rust-code-quality/handle-secrets/skill.md` | From 010a053dafe2e8e9c1541c7e7100d88314247abb Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Tue, 3 Mar 2026 16:47:12 +0000 Subject: [PATCH 06/59] docs: [#405] refine Problem 5 root cause with precise log-based evidence MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replace the vague 'timeout too short' explanation with a precise timeline reconstructed from data/logs/log.txt: - tofu apply completed in 19s (15:30:13 → 15:30:32) - SSH probe attempts 1-3: ~7s each → port 22 not yet open (ConnectTimeout) - SSH probe attempts 4-60: ~2-3s each → TCP connects but auth rejected - sshd was listening within ~17s of server appearing - Real bottleneck: cloud-init had not yet created the torrust user + authorized_keys — every attempt was rejected with permission denied - cloud-init finished between 15:33:32 and ~15:44:00 (>3m32s after server) - Update Resolution note: retry may also time out for the same reason --- .../commands/provision/problems.md | 40 +++++++++++++++---- 1 file changed, 32 insertions(+), 8 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/commands/provision/problems.md b/docs/deployments/hetzner-demo-tracker/commands/provision/problems.md index 4ae37b94..5e5dcb9d 100644 --- a/docs/deployments/hetzner-demo-tracker/commands/provision/problems.md +++ b/docs/deployments/hetzner-demo-tracker/commands/provision/problems.md @@ -171,10 +171,34 @@ torrust status: done ``` -The actual root cause is **the 120-second SSH connectivity timeout was too short for this -Hetzner server**. The server booted at ~15:30 UTC and the deployer gave up at ~15:33:32 (roughly -3.5 minutes after the server appeared). By the time we tested manually (>14 minutes after boot), -sshd was fully available. +**Precise timeline reconstructed from `data/logs/log.txt`:** + +| Time (UTC) | Event | +| ------------- | --------------------------------------------------------- | +| `15:30:13` | `tofu apply` started | +| `15:30:32` | `tofu apply` done — server `46.225.234.201` created (19s) | +| `15:30:32` | SSH probe starts (attempt 1) | +| `15:30:32–46` | Attempts 1–3: ~7s each (`ConnectTimeout=5` + 2s sleep) | +| `15:30:49+` | Attempts 4–60: ~2–3s each | +| `15:33:32` | Probe exhausted — 60 attempts, 120s total | +| `> 15:44:00` | Manual SSH succeeds (`cloud-init status: done`) | + +The change in per-attempt duration is the key signal: + +- **Attempts 1–3 (~7s each)**: port 22 not yet open — the `ssh` process hangs for the full + `ConnectTimeout=5` seconds before returning. sshd was not listening. +- **Attempts 4–60 (~2–3s each)**: TCP connection to port 22 **succeeds** but sshd rejects the + authentication immediately. sshd is running but the `torrust` user and `~/.ssh/authorized_keys` + do not exist yet — cloud-init has not finished creating them. + +**The real bottleneck is cloud-init user provisioning**, not sshd startup. sshd was listening +within ~17 seconds of the server appearing. But cloud-init had not yet created the `torrust` user +and written their `authorized_keys`. Every one of the 60 probe attempts was rejected with +"permission denied" for this reason. + +Cloud-init finished some time between `15:33:32` (when the deployer gave up) and `~15:44:00` +(when manual SSH succeeded) — meaning cloud-init took **more than 3 minutes 32 seconds** on this +`ccx23` server. The 120-second probe budget was not enough. **cloud-init timing note**: `cloud-init status --long` reports `last_update: Thu, 01 Jan 1970 00:00:13 +0000` — the epoch-based timestamp shows the system clock @@ -182,8 +206,8 @@ was not yet NTP-synced when cloud-init completed, which is consistent with cloud very early in the boot sequence before network time was established. The deployer's SSH probe loop (60 × 2-second intervals = 120 seconds total) is designed for -fast LXD VMs which are typically ready in under 30 seconds. Hetzner bare-metal-class servers with -cloud-init configuration take significantly longer. +fast LXD VMs which are typically ready in under 30 seconds. Hetzner `ccx23` servers with +cloud-init user provisioning take significantly longer. ### Resolution @@ -218,8 +242,8 @@ docker run --rm \ provision torrust-tracker-demo ``` -The retry is expected to succeed because the underlying cause (timeout) is non-deterministic — -the server may be faster on a second attempt. If it times out again, see the Prevention section. +The retry may still time out if cloud-init on the new server also takes more than 120 seconds. +If it does, see the Prevention section for options to increase the probe budget. ### Prevention From f4c5e8f07049706819245abf0002f8827d4140a3 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Tue, 3 Mar 2026 16:57:40 +0000 Subject: [PATCH 07/59] docs: [#405] add provision improvements document with deployer enhancement recommendations Based on problems encountered during the Hetzner provision attempt: 1. Distinguish SSH failure reason in probe loop (timeout vs auth rejected) - Both currently surface as Ok(false) with no diagnostic detail - Recommendation: capture stderr and log different message per failure type 2. Classify error_kind more precisely for auth failures - 'NetworkConnectivity' is misleading for permission-denied cases - Recommendation: add SshAuthenticationFailed / SshUserNotReady variant 3. Include per-attempt failure details in trace file - Current trace only summarises with '60 attempts (120s total)' - Investigation required manual timestamp comparison in data/logs/log.txt - Recommendation: condensed probe phase summary in trace 4. Configurable SSH connectivity timeout - 120s hardcoded; Hetzner ccx23 cloud-init took >3m32s - Recommendation: per-provider default + env config field + CLI flag 5. Resume capability after partial provision failure - destroy + recreate discards a healthy server just because SSH probe timed out - Recommendation: provision --resume or standalone wait-for-ssh command --- .../hetzner-demo-tracker/README.md | 2 + .../commands/provision/README.md | 1 + .../commands/provision/improvements.md | 169 ++++++++++++++++++ 3 files changed, 172 insertions(+) create mode 100644 docs/deployments/hetzner-demo-tracker/commands/provision/improvements.md diff --git a/docs/deployments/hetzner-demo-tracker/README.md b/docs/deployments/hetzner-demo-tracker/README.md index be10de01..7dbe8b04 100644 --- a/docs/deployments/hetzner-demo-tracker/README.md +++ b/docs/deployments/hetzner-demo-tracker/README.md @@ -20,6 +20,8 @@ Deploy a public Torrust Tracker demo instance to Hetzner Cloud and document ever 4. Problems — issues encountered, per command: - [create problems](commands/create/problems.md) - [provision problems](commands/provision/problems.md) +5. Improvements — recommended deployer improvements found during this deployment: + - [provision improvements](commands/provision/improvements.md) ## Deployment diff --git a/docs/deployments/hetzner-demo-tracker/commands/provision/README.md b/docs/deployments/hetzner-demo-tracker/commands/provision/README.md index 04eec41c..fa93a646 100644 --- a/docs/deployments/hetzner-demo-tracker/commands/provision/README.md +++ b/docs/deployments/hetzner-demo-tracker/commands/provision/README.md @@ -2,6 +2,7 @@ > **Status**: ❌ ProvisionFailed — destroy + recreate required before retrying. > See [problems.md](problems.md) for the full failure analysis and recovery steps. +> See [improvements.md](improvements.md) for recommended deployer improvements found during this phase. ## What `provision` does diff --git a/docs/deployments/hetzner-demo-tracker/commands/provision/improvements.md b/docs/deployments/hetzner-demo-tracker/commands/provision/improvements.md new file mode 100644 index 00000000..558aec12 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/commands/provision/improvements.md @@ -0,0 +1,169 @@ +# Deployer Improvements: provision + +Recommendations for improving the deployer based on problems encountered while running the +`provision` command against a Hetzner server. Each improvement is grounded in a specific +observation from the deployment logs. + +> This document captures field experience. The issues described here are not blockers for +> day-to-day use but would significantly reduce debugging time and false-alarm incidents. + +--- + +## 1. Distinguish SSH failure reason in the probe loop + +### Current behavior + +`wait_for_connectivity` treats all failed attempts the same way: `test_connectivity()` returns +`Ok(false)` for any failure — whether the port is not yet open (TCP timeout) or sshd is running +but rejects the connection (authentication failure). The log only says "still waiting": + +```text +INFO ... Still waiting for SSH connectivity attempt=10 max_attempts=60 +``` + +### Observed impact + +When investigating Problem 5, we could not determine from the trace whether the probe was even +reaching the server. We had to cross-reference `data/logs/log.txt` and measure the time between +log lines manually to discover that TCP connections started succeeding at attempt 4 while +authentication was failing until cloud-init finished. + +### Recommendation + +`test_connectivity` (or `check_command`) should capture the stderr output of the ssh process and +expose it alongside the boolean result. `wait_for_connectivity` should then log a different +message depending on the failure type: + +```text +INFO ... SSH probe: connection timeout (port 22 not open yet) attempt=3 +INFO ... SSH probe: authentication rejected (user not ready) attempt=10 +``` + +This can be inferred from stderr: + +| stderr contains | Meaning | +| ----------------------- | --------------------------------- | +| `Connection timed out` | Port 22 not listening | +| `Connection refused` | Port 22 not listening | +| `Permission denied` | sshd up, user/key not ready yet | +| `Host key verification` | Wrong host key (misconfiguration) | + +The ssh exit code is `255` in all failure cases, so stderr is the only signal. + +**Related source**: `src/adapters/ssh/client.rs` — `test_connectivity` and `wait_for_connectivity` + +--- + +## 2. Classify `error_kind` more precisely for auth failures + +### Current behavior + +When `WaitSshConnectivity` fails (for any reason), the `error_kind` in +`data/{env}/environment.json` is always `NetworkConnectivity`. This includes authentication +failures, which are not network problems. + +```json +{ "error_kind": "NetworkConnectivity" } +``` + +### Observed impact + +The label directed investigation towards the network layer (firewall? wrong IP? routing?) when +the actual problem was an application-level issue (cloud-init not yet finished creating the user). + +### Recommendation + +Add a more specific `error_kind` variant such as `SshAuthenticationFailed` or +`SshUserNotReady` for the case where TCP connects but the remote rejects the credentials. Reserve +`NetworkConnectivity` for cases where the TCP connection itself cannot be established. + +**Related source**: `src/adapters/ssh/` — `SshError` variants and how they map to `error_kind` +in the provision command handler + +--- + +## 3. Include per-attempt failure details in the trace file + +### Current behavior + +The provision trace file (`data/{env}/traces/{timestamp}-provision.log`) contains only a summary: + +```text +Error Summary: SSH connectivity failed: ... after 60 attempts (120s total) +``` + +### Observed impact + +Diagnosing Problem 5 required reading `data/logs/log.txt` and manually measuring timestamps +between lines — a non-obvious step that is not documented anywhere in the error output. The trace +file is the first place an operator looks and it contained no actionable detail. + +### Recommendation + +The trace file should include a condensed per-phase summary of the SSH probe, for example: + +```text +SSH Probe Summary: + Attempts 1–3 : connection timeout (port 22 not open) + Attempts 4–60 : authentication rejected (user not ready) + Total duration : 181s + Conclusion : sshd was ready but cloud-init did not finish within the probe window +``` + +This can be generated by tracking failure reason counts inside `wait_for_connectivity` and +passing them to the trace writer on failure. + +--- + +## 4. Support configurable SSH connectivity timeout + +### Current behavior + +The probe loop is hardcoded at 60 attempts × 2-second intervals = 120 seconds. This is sized for +fast LXD VMs (typically ready in under 30 seconds) and is too short for Hetzner servers with +cloud-init user provisioning. + +### Observed impact + +The deployer gave up after 120 seconds. Cloud-init finished more than 3.5 minutes after the +server appeared, meaning a minimum probe budget of ~250 seconds was needed to succeed. + +### Recommendation + +Expose the probe parameters as configuration, ordered by preference: + +1. **Per-provider default** — Hetzner profile uses a longer timeout (e.g. 300s) than LXD (60s) +2. **Environment config field** — `ssh_connectivity_timeout_secs` in `envs/*.json` +3. **CLI override** — `provision --ssh-timeout 300` + +Until provider-level defaults are implemented, document in the Hetzner provider guide that a +timeout of at least 300 seconds (150 attempts × 2s) is recommended. + +**Related source**: `src/adapters/ssh/` — `SshConnectionConfig` struct (likely contains +`max_retry_attempts` and `retry_interval_secs` fields); `src/application/steps/connectivity/` + +--- + +## 5. Add a `wait-for-ssh` command (or `--resume` flag on provision) + +### Current behavior + +When `provision` fails at `WaitSshConnectivity`, the environment transitions to `ProvisionFailed`. +The only recovery path is `destroy` → `create environment` → `provision` again — which destroys +and re-creates a server that is otherwise healthy. + +### Observed impact + +The server created in attempt 2 was fully functional (SSH accessible, cloud-init complete) but +had to be discarded. All the time spent on `tofu apply` and cloud-init startup was wasted. + +### Recommendation + +Two complementary options: + +- **`provision --resume`**: allow re-running `WaitSshConnectivity` (and subsequent steps) against + an already-created server without re-running `tofu apply`. State machine would need a new + `ProvisionPartiallyFailed` state that distinguishes "server exists" from "server never created". +- **`wait-for-ssh `**: a standalone command that only runs the SSH probe and, on + success, transitions the environment to `Provisioned`. Useful for manual recovery without + modifying the main `provision` command. From 019e39cb729d613376278983b416b4b8af6653a9 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Tue, 3 Mar 2026 17:47:05 +0000 Subject: [PATCH 08/59] fix: [#405] add IdentitiesOnly=yes to default SSH options Without IdentitiesOnly=yes, SSH offers all keys loaded in the agent to the server before trying the -i key. If enough agent keys are loaded, the server hits its MaxAuthTries limit and disconnects with: Received disconnect: Too many authentication failures This causes every wait_for_connectivity attempt to fail regardless of whether the host is reachable, making provision always time out when run outside Docker on a machine with an active SSH agent. Add IdentitiesOnly=yes to build_default_ssh_options() so only the explicitly configured private key is used for authentication. --- src/adapters/ssh/client.rs | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/adapters/ssh/client.rs b/src/adapters/ssh/client.rs index 481416fc..f8aa30b4 100644 --- a/src/adapters/ssh/client.rs +++ b/src/adapters/ssh/client.rs @@ -211,6 +211,7 @@ impl SshClient { /// - `StrictHostKeyChecking`: `no` (disable host key verification) /// - `UserKnownHostsFile`: `/dev/null` (ignore known hosts file) /// - `ConnectTimeout`: configured timeout (prevents hanging) + /// - `IdentitiesOnly`: `yes` (only use the configured key, ignore SSH agent) /// /// These defaults ensure reliable automation but can be overridden by /// user-provided options in `additional_options`. @@ -225,6 +226,11 @@ impl SshClient { .connect_timeout_secs .to_string(), ); + // Only use the explicitly configured identity file, ignoring any keys + // loaded in the SSH agent. Without this, SSH may exhaust the server's + // MaxAuthTries limit by trying agent keys before the configured key, + // causing "Too many authentication failures" on every attempt. + defaults.insert("IdentitiesOnly".to_string(), "yes".to_string()); defaults } @@ -580,8 +586,8 @@ mod tests { // Act let default_options = ssh_client.build_default_ssh_options(); - // Assert: Should contain 3 key-value pairs - assert_eq!(default_options.len(), 3); + // Assert: Should contain 4 key-value pairs + assert_eq!(default_options.len(), 4); // Verify expected keys and values assert_eq!( @@ -596,6 +602,10 @@ mod tests { default_options.get("ConnectTimeout"), Some(&expected_timeout.to_string()) ); + assert_eq!( + default_options.get("IdentitiesOnly"), + Some(&"yes".to_string()) + ); } #[test] From 3248a63df48e0b351df8043861b57dba384fe88a Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Tue, 3 Mar 2026 18:06:40 +0000 Subject: [PATCH 09/59] fix: [#405] add IdentitiesOnly=yes to Ansible ssh_args Same root cause as the Rust SSH client fix (019e39cb): when the SSH agent has many keys loaded, SSH tries all of them before the -i key, hitting the server's MaxAuthTries limit with: Too many authentication failures This broke Ansible tasks (wait-cloud-init.yml and all subsequent playbooks) when running outside Docker on a machine with an active agent. Add -o IdentitiesOnly=yes to the ssh_args in ansible.cfg so Ansible only uses the key specified via --private-key. --- templates/ansible/ansible.cfg | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/templates/ansible/ansible.cfg b/templates/ansible/ansible.cfg index d22f9eff..43bab8cb 100644 --- a/templates/ansible/ansible.cfg +++ b/templates/ansible/ansible.cfg @@ -57,4 +57,6 @@ timeout = 30 # - ControlPersist=60s: Keep connections alive for 60 seconds after last use # - StrictHostKeyChecking=no: Don't verify SSH host keys (lab environment only) # - UserKnownHostsFile=/dev/null: Don't save host keys to known_hosts file -ssh_args = -o ControlMaster=auto -o ControlPersist=60s -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null +# - IdentitiesOnly=yes: Only use the explicitly configured key, ignore SSH agent +# (prevents "Too many authentication failures" when agent has many keys loaded) +ssh_args = -o ControlMaster=auto -o ControlPersist=60s -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o IdentitiesOnly=yes From 182e33b9357a8c2e66d3629cf682cb7d97ea3adb Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Tue, 3 Mar 2026 18:06:45 +0000 Subject: [PATCH 10/59] feat: [#405] log full SSH stderr in wait_for_connectivity retry messages Previously, each 'Still waiting for SSH connectivity' log message gave no indication of why the connection was failing. The reason field now contains the raw stderr from the failed SSH attempt, e.g.: ssh: connect to host 46.225.234.201 port 22: Connection timed out torrust@46.225.234.201: Permission denied (publickey). Received disconnect: Too many authentication failures This makes it immediately visible whether sshd is not yet listening, the user/key is not yet provisioned, or another error is occurring, without needing to re-run with verbose SSH flags. Replace the indirect test_connectivity() path (which discarded stderr via check_command_with_options) with execute_with_options() directly so the raw stderr is accessible and logged in the retry loop. --- src/adapters/ssh/client.rs | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/adapters/ssh/client.rs b/src/adapters/ssh/client.rs index f8aa30b4..144106f6 100644 --- a/src/adapters/ssh/client.rs +++ b/src/adapters/ssh/client.rs @@ -158,10 +158,8 @@ impl SshClient { let mut attempt = 0; while attempt < max_attempts { - let result = self.test_connectivity(); - - match result { - Ok(true) => { + match self.execute_with_options("echo 'SSH connected'", &[]) { + Ok(_) => { info!( operation = "ssh_connectivity", host_ip = %self.ssh_config.host_ip(), @@ -170,18 +168,17 @@ impl SshClient { ); return Ok(()); } - Ok(false) => { - // Connection failed, continue trying + Err(CommandError::ExecutionFailed { ref stderr, .. }) => { if (attempt + 1) % conn_config.retry_log_frequency == 0 { info!( operation = "ssh_connectivity", host_ip = %self.ssh_config.host_ip(), attempt = attempt + 1, max_attempts = max_attempts, + reason = %stderr, "Still waiting for SSH connectivity" ); } - tokio::time::sleep(Duration::from_secs(u64::from( conn_config.retry_interval_secs, ))) From a28016be7f67f1525ddf6323f24cfbada0480bd9 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Tue, 3 Mar 2026 18:07:01 +0000 Subject: [PATCH 11/59] feat: [#405] increase SSH retry budget to 5 minutes with 5s interval MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change SSH connectivity wait defaults: - DEFAULT_MAX_RETRY_ATTEMPTS: 60 (was 60, same count) - DEFAULT_RETRY_INTERVAL_SECS: 5s (was 2s) - Total budget: 300s / 5 minutes (was 120s) 2 seconds between attempts is too aggressive — it floods logs and adds unnecessary load. 5 minutes total is a more realistic budget for slower providers and small machines where cloud-init user creation can take over 3 minutes (observed on Hetzner ccx23 in failed attempt 2). --- src/adapters/ssh/config.rs | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/src/adapters/ssh/config.rs b/src/adapters/ssh/config.rs index 269f4fd2..9664db8e 100644 --- a/src/adapters/ssh/config.rs +++ b/src/adapters/ssh/config.rs @@ -24,13 +24,14 @@ pub const DEFAULT_SSH_PORT: u16 = 22; /// Default SSH connection timeout in seconds pub const DEFAULT_CONNECT_TIMEOUT_SECS: u32 = 5; -/// Default maximum number of connection retry attempts -/// Set to 60 to allow up to 120 seconds total wait time (60 attempts × 2 second interval) -/// This accounts for cloud-init completion time when custom SSH ports are configured +/// Default maximum number of connection retry attempts. +/// Set to 60 to allow up to 300 seconds total wait time (60 attempts × 5 second interval). +/// Cloud-init provisioning (user creation, SSH key injection) can take over 3 minutes on some +/// providers and small machines, so a 5-minute budget is used as the default. pub const DEFAULT_MAX_RETRY_ATTEMPTS: u32 = 60; /// Default retry interval in seconds -pub const DEFAULT_RETRY_INTERVAL_SECS: u32 = 2; +pub const DEFAULT_RETRY_INTERVAL_SECS: u32 = 5; /// Default retry log frequency (log every N attempts) pub const DEFAULT_RETRY_LOG_FREQUENCY: u32 = 5; @@ -117,7 +118,7 @@ impl SshConnectionConfig { /// use torrust_tracker_deployer_lib::adapters::ssh::SshConnectionConfig; /// /// let config = SshConnectionConfig::default(); - /// assert_eq!(config.total_timeout_secs(), 120); // 60 attempts × 2 seconds + /// assert_eq!(config.total_timeout_secs(), 300); // 60 attempts × 5 seconds /// ``` #[must_use] pub fn total_timeout_secs(&self) -> u32 { @@ -130,10 +131,10 @@ impl Default for SshConnectionConfig { /// /// Uses constants defined at module level: /// - Connection timeout: `DEFAULT_CONNECT_TIMEOUT_SECS` (5 seconds) - /// - Max retry attempts: `DEFAULT_MAX_RETRY_ATTEMPTS` (30) - /// - Retry interval: `DEFAULT_RETRY_INTERVAL_SECS` (2 seconds) + /// - Max retry attempts: `DEFAULT_MAX_RETRY_ATTEMPTS` (60) + /// - Retry interval: `DEFAULT_RETRY_INTERVAL_SECS` (5 seconds) /// - Retry log frequency: `DEFAULT_RETRY_LOG_FREQUENCY` (every 5 attempts) - /// - Total wait time: 30 × 2 = 60 seconds + /// - Total wait time: 60 × 5 = 300 seconds fn default() -> Self { Self { connect_timeout_secs: DEFAULT_CONNECT_TIMEOUT_SECS, From 642d043f025df8332aad176c941b8459aa0c4ba0 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Tue, 3 Mar 2026 18:26:40 +0000 Subject: [PATCH 12/59] docs: [#405] add cleanup-between-attempts guide and update provision README MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add cleanup-between-attempts.md with step-by-step procedure for cleaning up a failed provision before retrying: 1. Build updated Docker image (if code changed) 2. Destroy failed environment on provider (tofu destroy) 3. Verify server is gone on Hetzner Console 4. Purge local data with 'purge --force' command 5. Clear data/logs/log.txt for a clean retry log - Update provision README: - Status updated from ProvisionFailed to 'Cleaned - ready to retry' - SSH timeout updated from 120s to 300s (60 × 5s) to reflect new defaults - Add link to cleanup-between-attempts.md --- .../commands/provision/README.md | 9 ++- .../provision/cleanup-between-attempts.md | 76 +++++++++++++++++++ 2 files changed, 81 insertions(+), 4 deletions(-) create mode 100644 docs/deployments/hetzner-demo-tracker/commands/provision/cleanup-between-attempts.md diff --git a/docs/deployments/hetzner-demo-tracker/commands/provision/README.md b/docs/deployments/hetzner-demo-tracker/commands/provision/README.md index fa93a646..4aefb27d 100644 --- a/docs/deployments/hetzner-demo-tracker/commands/provision/README.md +++ b/docs/deployments/hetzner-demo-tracker/commands/provision/README.md @@ -1,8 +1,9 @@ # Command: provision -> **Status**: ❌ ProvisionFailed — destroy + recreate required before retrying. -> See [problems.md](problems.md) for the full failure analysis and recovery steps. -> See [improvements.md](improvements.md) for recommended deployer improvements found during this phase. +> **Status**: 🔄 Cleaned — ready to recreate and retry. +> See [problems.md](problems.md) for the full failure analysis. +> See [improvements.md](improvements.md) for deployer improvements applied before this retry. +> See [cleanup-between-attempts.md](cleanup-between-attempts.md) for the cleanup procedure used between attempts. ## What `provision` does @@ -10,7 +11,7 @@ The `provision` command: 1. Renders OpenTofu templates (Terraform HCL + cloud-init YAML) into `build//tofu/hetzner/`. 2. Runs `tofu init` + `tofu apply` to create the Hetzner server. -3. Waits for SSH connectivity (up to 120 seconds, 60 × 2 s intervals). +3. Waits for SSH connectivity (up to 300 seconds, 60 × 5 s intervals). 4. Marks the environment as `Provisioned` once SSH responds. It does **not** install Docker, configure the tracker, or deploy any software — that is done by diff --git a/docs/deployments/hetzner-demo-tracker/commands/provision/cleanup-between-attempts.md b/docs/deployments/hetzner-demo-tracker/commands/provision/cleanup-between-attempts.md new file mode 100644 index 00000000..9e65e074 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/commands/provision/cleanup-between-attempts.md @@ -0,0 +1,76 @@ +# Cleanup Between Provision Attempts + +When `provision` fails, the environment is left in a `ProvisionFailed` state with a live +server still running on Hetzner. Before retrying, the failed environment must be fully +cleaned up — both on the provider and locally. + +## Steps + +### 1. Build the Docker image + +If you have made code changes since the last attempt, rebuild the image first: + +```bash +docker build --target release \ + --tag torrust/tracker-deployer:latest \ + --file docker/deployer/Dockerfile . +``` + +Skip this step if no code has changed since the last Docker build. + +### 2. Destroy the failed environment on the provider + +This runs `tofu destroy` to remove the Hetzner server: + +```bash +docker run --rm \ + -v $(pwd)/data:/var/lib/torrust/deployer/data \ + -v $(pwd)/build:/var/lib/torrust/deployer/build \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + -v ~/.ssh:/home/deployer/.ssh:ro \ + torrust/tracker-deployer:latest \ + destroy torrust-tracker-demo +``` + +### 3. Verify the server is gone on Hetzner + +Log in to the [Hetzner Cloud Console](https://console.hetzner.cloud/) and confirm the +server no longer appears under the project. Also verify the floating IPs are unassigned +but still present (they are not destroyed by `destroy`). + +### 4. Purge local environment data + +This removes `build/torrust-tracker-demo/` and `data/torrust-tracker-demo/` and clears +the environment from the local registry: + +```bash +docker run --rm \ + -v $(pwd)/data:/var/lib/torrust/deployer/data \ + -v $(pwd)/build:/var/lib/torrust/deployer/build \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + torrust/tracker-deployer:latest \ + purge torrust-tracker-demo --force +``` + +> **Note**: `--force` skips the interactive confirmation prompt. Omit it if you want to +> confirm interactively. + +### 5. Clear the global log file + +The global log at `data/logs/log.txt` accumulates entries across all environments and +sessions. Clearing it before a retry makes it much easier to isolate errors from the +new attempt: + +```bash +> data/logs/log.txt +``` + +> **Note**: This truncates the file in-place (preserving the file itself). Git will not +> track the change since `data/logs/` is git-ignored. + +--- + +After completing all steps, the environment is fully clean. You can now proceed to: + +1. Re-create the environment: see [README.md](README.md) +2. Retry provision: see [README.md](README.md) From 9ba435f66607345d0d136513b4c94c51fc4a8821 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Tue, 3 Mar 2026 19:16:16 +0000 Subject: [PATCH 13/59] docs: [#405] document provision success, passphrase bug, IPv6 omission, and UDP domains bug --- .../commands/provision/README.md | 66 ++++++++- .../commands/provision/bugs.md | 128 ++++++++++++++++++ .../commands/provision/improvements.md | 82 +++++++++++ .../commands/provision/problems.md | 120 ++++++++++++++++ 4 files changed, 392 insertions(+), 4 deletions(-) create mode 100644 docs/deployments/hetzner-demo-tracker/commands/provision/bugs.md diff --git a/docs/deployments/hetzner-demo-tracker/commands/provision/README.md b/docs/deployments/hetzner-demo-tracker/commands/provision/README.md index 4aefb27d..e4fc7b86 100644 --- a/docs/deployments/hetzner-demo-tracker/commands/provision/README.md +++ b/docs/deployments/hetzner-demo-tracker/commands/provision/README.md @@ -1,8 +1,8 @@ # Command: provision -> **Status**: 🔄 Cleaned — ready to recreate and retry. -> See [problems.md](problems.md) for the full failure analysis. -> See [improvements.md](improvements.md) for deployer improvements applied before this retry. +> **Status**: ✅ Provisioned successfully (attempt 4, 2026-03-03 ~19:01 UTC). +> See [problems.md](problems.md) for the full failure history and root cause analysis. +> See [improvements.md](improvements.md) for deployer improvements applied during this process. > See [cleanup-between-attempts.md](cleanup-between-attempts.md) for the cleanup procedure used between attempts. ## What `provision` does @@ -31,7 +31,7 @@ docker run --rm \ ## Provisioned Server Details -The Hetzner server was created successfully by OpenTofu on 2026-03-03 at ~15:30 UTC. +The Hetzner server was created successfully by OpenTofu on 2026-03-03 at ~19:00 UTC (attempt 4). | Property | Value | | ------------ | ----------------------------------------- | @@ -47,6 +47,10 @@ The Hetzner server was created successfully by OpenTofu on 2026-03-03 at ~15:30 > **Note**: These are the server's own IPs assigned by Hetzner. The floating IPs > (`116.202.176.169` IPv4, `2a01:4f8:1c0c:9aae::/64` IPv6) are separate and must be > assigned to this server manually in the Hetzner Console after successful provisioning. +> +> **Note**: The `provision` command output currently only reports the IPv4 address. The IPv6 +> address and network must be looked up in the Hetzner console or `terraform.tfstate`. See +> [improvements.md](improvements.md) for the tracked improvement. ![Hetzner console showing the provisioned server details](../../media/hetzner-console-provisioned-server-details-attempt-1.png) @@ -85,6 +89,60 @@ grep -A1 "ssh_authorized_keys" build/torrust-tracker-demo/tofu/hetzner/cloud-ini cat ~/.ssh/torrust_tracker_deployer_ed25519.pub ``` +## Successful Provision Output (Attempt 4) + +Final output of the `provision` command on attempt 4 (2026-03-03 ~19:01 UTC, 50.9 seconds): + +```text +⏳ [1/3] Validating environment... +⏳ ✓ Environment name validated: torrust-tracker-demo (took 0ms) +⏳ [2/3] Creating command handler... +⏳ ✓ Done (took 0ms) +⏳ [3/3] Provisioning infrastructure... +⏳ ✓ Infrastructure provisioned (took 50.9s) +✅ Environment 'torrust-tracker-demo' provisioned successfully + +{ + "environment_name": "torrust-tracker-demo", + "instance_name": "torrust-tracker-vm-torrust-tracker-demo", + "instance_ip": "46.225.234.201", + "ssh_username": "torrust", + "ssh_port": 22, + "ssh_private_key_path": "/home/deployer/.ssh/torrust_tracker_deployer_ed25519", + "provider": "hetzner", + "provisioned_at": "2026-03-03T19:00:42.481676821Z", + "domains": [ + "http1.torrust-tracker-demo.com", + "http2.torrust-tracker-demo.com", + "api.torrust-tracker-demo.com", + "grafana.torrust-tracker-demo.com" + ] +} +``` + +> **Note**: The output includes `instance_ip` (IPv4 only). The IPv6 address +> (`2a01:4f8:1c19:620b::1`) and network (`2a01:4f8:1c19:620b::/64`) are not included. See +> [improvements.md](improvements.md) for the tracked improvement. + +## Key Learnings + +After four attempts, the following were identified as the root causes of all failures: + +1. **SSH key paths must be container-internal paths** — paths in `envs/*.json` must reflect + paths inside the Docker container (`/home/deployer/.ssh/...`), not host paths. + +2. **The deployment SSH key must not have a passphrase** — when running inside Docker there is + no SSH agent and no TTY, so a passphrase-protected key cannot be used for authentication + even if the key file is readable. This was the root cause of all three `Permission denied` + failures in attempts 2, 3, and 4. See [problems.md](problems.md) for full analysis. + +3. **Cloud-init on Hetzner `ccx23` can take 15+ minutes** — the SSH probe budget must account + for this. In attempt 4 the server was ready well within the 300-second window (50.9s total + including `tofu apply`), so this was not an issue once the passphrase was removed. But in + the earlier attempts where the server lingered in "Server is being created" for 15+ minutes + in the Hetzner console, a longer timeout would still not have helped because the fundamental + auth problem was the passphrase. + ## Manual SSH Verification (After Provisioning) Once the server is up, verify SSH access directly from the host: diff --git a/docs/deployments/hetzner-demo-tracker/commands/provision/bugs.md b/docs/deployments/hetzner-demo-tracker/commands/provision/bugs.md new file mode 100644 index 00000000..ee1e2532 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/commands/provision/bugs.md @@ -0,0 +1,128 @@ +# Bugs: provision + +Issues found in the `provision` command output during the Hetzner demo tracker deployment. + +> This is a living document — bugs are added as they are discovered. + + + +## Bug: UDP tracker domains missing from `provision` output + +**Command**: `provision` +**Severity**: Minor + +### Symptom + +The `domains` array in the successful `provision` output only contains HTTP-based domains. +UDP tracker domains are not included: + +```json +{ + "domains": [ + "http1.torrust-tracker-demo.com", + "http2.torrust-tracker-demo.com", + "api.torrust-tracker-demo.com", + "grafana.torrust-tracker-demo.com" + ] +} +``` + +The two UDP tracker domains configured in `envs/torrust-tracker-demo.json` are absent: + +```text +udp1.torrust-tracker-demo.com (port 6969) +udp2.torrust-tracker-demo.com (port 6868) +``` + +### Expected Behavior + +All service domains — HTTP and UDP — should appear in the `domains` array: + +```json +{ + "domains": [ + "http1.torrust-tracker-demo.com", + "http2.torrust-tracker-demo.com", + "udp1.torrust-tracker-demo.com", + "udp2.torrust-tracker-demo.com", + "api.torrust-tracker-demo.com", + "grafana.torrust-tracker-demo.com" + ] +} +``` + +These domains are defined in `envs/torrust-tracker-demo.json` under `tracker.udp_trackers`: + +```json +"udp_trackers": [ + { "bind_address": "[::]:6969", "domain": "udp1.torrust-tracker-demo.com" }, + { "bind_address": "[::]:6868", "domain": "udp2.torrust-tracker-demo.com" } +] +``` + +And in the deployment spec at +[`docs/deployments/hetzner-demo-tracker/deployment-spec.md`](../../deployment-spec.md): + +```text +UDP Tracker 1: udp://udp1.torrust-tracker-demo.com:6969/announce +UDP Tracker 2: udp://udp2.torrust-tracker-demo.com:6868/announce +``` + +### Root Cause + +The `provision` command output is built from the environment configuration. It likely only +collects domains from HTTP-based tracker configs (`http_trackers`, `http_api`, `grafana`) and +does not iterate over `udp_trackers` when assembling the `domains` list. + +### Workaround + +The UDP tracker domains are defined in the environment config file and can be read directly: + +```bash +cat envs/torrust-tracker-demo.json \ + | python3 -c "import json,sys; d=json.load(sys.stdin); \ + [print(t['domain']) for t in d['tracker']['udp_trackers']]" +``` + +Expected output: + +```text +udp1.torrust-tracker-demo.com +udp2.torrust-tracker-demo.com +``` + +### Fix + +The domain collection logic in the `provision` output builder should include domains from all +service types. Specifically, `udp_trackers[].domain` entries should be added to the `domains` +list alongside the HTTP tracker and API domains. + +**Likely location**: the `ProvisionOutput` struct and the code that populates its `domains` +field, in `src/application/commands/provision/`. diff --git a/docs/deployments/hetzner-demo-tracker/commands/provision/improvements.md b/docs/deployments/hetzner-demo-tracker/commands/provision/improvements.md index 558aec12..8c449e1d 100644 --- a/docs/deployments/hetzner-demo-tracker/commands/provision/improvements.md +++ b/docs/deployments/hetzner-demo-tracker/commands/provision/improvements.md @@ -144,6 +144,88 @@ timeout of at least 300 seconds (150 attempts × 2s) is recommended. --- +## 6. Include IPv6 address in `provision` command output + +### Current behavior + +The JSON output of a successful `provision` command only includes `instance_ip` (IPv4): + +```json +{ + "instance_ip": "46.225.234.201" +} +``` + +The IPv6 address and network assigned by Hetzner are not reported anywhere in the command +output. To find them, the operator must either log into the Hetzner console or read the raw +`build/torrust-tracker-demo/tofu/hetzner/terraform.tfstate` file: + +```json +"ipv6_address": "2a01:4f8:1c19:620b::1", +"ipv6_network": "2a01:4f8:1c19:620b::/64" +``` + +### Observed impact + +After successful provisioning, the floating IP assignment step requires knowing the server's +IPv6 network. Without it in the output, the operator cannot complete the setup without +consulting additional sources. + +### Recommendation + +Extend the `ProvisionOutput` JSON to include both IPv4 and IPv6: + +```json +{ + "instance_ip": "46.225.234.201", + "instance_ipv6": "2a01:4f8:1c19:620b::1", + "instance_ipv6_network": "2a01:4f8:1c19:620b::/64" +} +``` + +**Related source**: `src/application/commands/provision/` — output struct; OpenTofu outputs +defined in `templates/tofu/hetzner/main.tf.tera` + +--- + +## 7. Detect passphrase-protected SSH keys early and warn the user + +### Current behavior + +The deployer does not validate whether the configured SSH private key is passphrase-protected. +A key with a passphrase is loaded and offered to the server, but signing fails silently because +there is no agent and no TTY inside the Docker container. The user sees repeated +`Permission denied (publickey,password)` errors with no indication that the key itself is the +problem. + +### Observed impact + +All three provision failures (attempts 2, 3, 4) were caused by this. Investigation consumed +multiple hours chasing unrelated hypotheses (wrong key in cloud-init, SSH agent key exhaustion, +`IdentitiesOnly` flag, cloud-init timing) before the passphrase was identified as the +root cause. + +### Recommendation + +In `create environment` or early in `provision`, attempt to load the private key with an empty +passphrase. If it fails, emit a warning before any infrastructure is created: + +```text +⚠ Warning: The SSH private key at '/home/deployer/.ssh/torrust_tracker_deployer_ed25519' + appears to be passphrase-protected. When running via Docker (no SSH agent, no TTY), + the key cannot be used for authentication. + → Remove the passphrase: ssh-keygen -p -f + → Or add a passphrase-free key and update ssh_credentials in your env config. +``` + +This can be done using `ssh2` or `openssl` bindings in Rust to probe whether the key decrypts +with an empty passphrase. + +**Related source**: `src/application/commands/create/` or `src/adapters/ssh/` — key validation +step before any remote operations + +--- + ## 5. Add a `wait-for-ssh` command (or `--resume` flag on provision) ### Current behavior diff --git a/docs/deployments/hetzner-demo-tracker/commands/provision/problems.md b/docs/deployments/hetzner-demo-tracker/commands/provision/problems.md index 5e5dcb9d..9b0bb2de 100644 --- a/docs/deployments/hetzner-demo-tracker/commands/provision/problems.md +++ b/docs/deployments/hetzner-demo-tracker/commands/provision/problems.md @@ -255,3 +255,123 @@ Potential improvements: - A `--ssh-timeout` parameter on the `provision` command. - A `wait-for-ssh` command to decouple the retry loop (useful when provision partially succeeds). - Document in the Hetzner provider guide that the first SSH probe may take 3–5 minutes. + +--- + +## Problem: SSH probe always fails from Docker container — passphrase-protected private key + +**Command**: `provision` +**Severity**: Blocker + +### Symptom + +All 60 SSH probe attempts fail with `Permission denied (publickey,password)` even after the server +is fully running and cloud-init has completed. The error appears in `data/logs/log.txt`: + +```text +Permission denied, please try again. +Permission denied, please try again. +torrust@46.225.234.201: Permission denied (publickey,password). +``` + +Manual SSH from the host succeeds with the same key: + +```bash +$ ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 "whoami && cloud-init status" +torrust +status: done +``` + +But the same command from inside the Docker container fails: + +```bash +$ docker run --rm --entrypoint bash \ + -v ~/.ssh:/home/deployer/.ssh:ro \ + torrust/tracker-deployer:latest \ + -c "ssh -i /home/deployer/.ssh/torrust_tracker_deployer_ed25519 \ + -o StrictHostKeyChecking=no -o IdentitiesOnly=yes \ + torrust@46.225.234.201 'echo connected'" +Permission denied (publickey,password). +``` + +### Root Cause + +**The private key `~/.ssh/torrust_tracker_deployer_ed25519` is protected by a passphrase.** + +When SSH is invoked without an agent and without a TTY, it cannot decrypt the private key to +sign the authentication challenge. The connection reaches the public-key offer phase (the server +responds PK_OK), but signing fails silently because there is no passphrase source. The server +then rejects the unauthenticated attempt. + +From the host, SSH works because the **GNOME Keyring / SSH agent** has already decrypted the key +and holds it in memory. The agent handles the signing transparently. + +Inside the Docker container there is no SSH agent — and the key file, though readable, cannot be +used for authentication without its passphrase. + +**This was the true root cause of all three provision failures.** The cloud-init timing issue +was an additional factor in attempts 1 and 2, but even with the 300-second probe budget of +attempt 3 (where cloud-init had finished in time), SSH from Docker still failed every attempt +because the passphrase prevented signing. Forwarding the SSH agent socket into the container +confirms this — with the agent socket forwarded, SSH succeeds immediately: + +```bash +docker run --rm --entrypoint bash \ + -v ~/.ssh:/home/deployer/.ssh:ro \ + -v "$SSH_AUTH_SOCK:/tmp/ssh-agent.sock" \ + -e SSH_AUTH_SOCK=/tmp/ssh-agent.sock \ + torrust/tracker-deployer:latest \ + -c "ssh -i /home/deployer/.ssh/torrust_tracker_deployer_ed25519 \ + -o StrictHostKeyChecking=no -o IdentitiesOnly=yes \ + torrust@46.225.234.201 'echo connected'" +# → CONNECTED +``` + +### Resolution + +Remove the passphrase from the deployment key. Deployment keys used for automation do not benefit +from passphrases because: + +- There is no interactive session to prompt for the passphrase. +- The key is already protected by filesystem permissions (`0600`). +- The server already restricts access to injected public keys only. + +```bash +ssh-keygen -p -f ~/.ssh/torrust_tracker_deployer_ed25519 +# Enter current passphrase when prompted +# Leave new passphrase empty (press Enter twice) +``` + +After removing the passphrase, provision works without any agent forwarding: + +```bash +docker run --rm --entrypoint bash \ + -v ~/.ssh:/home/deployer/.ssh:ro \ + torrust/tracker-deployer:latest \ + -c "ssh -i /home/deployer/.ssh/torrust_tracker_deployer_ed25519 \ + -o StrictHostKeyChecking=no -o IdentitiesOnly=yes \ + torrust@46.225.234.201 'echo connected'" +# → CONNECTED +``` + +### Notes + +- Users may prefer to keep the passphrase on their key (e.g. if the same key is also used for + interactive logins). In that case, the alternative is to generate a separate passphrase-free key + specifically for deployment automation and configure it in `ssh_credentials`. +- Hetzner allows setting a default SSH key in the Hetzner console that is automatically added to + all new servers. If a user has already done this (for a key that may be different), SSH may + succeed with the wrong key if `IdentitiesOnly=yes` is not set. Keeping `IdentitiesOnly=yes` + ensures only the explicitly configured deployment key is tried. + +### Prevention + +The deployer `create environment` or `validate` command should detect passphrase-protected keys +early and warn the user: + +```text +⚠ Warning: SSH private key appears to be passphrase-protected. When running via Docker, + no SSH agent is available and the key cannot be used for authentication. + Consider removing the passphrase from the deployment key, or document that the + SSH agent socket must be forwarded into the container. +``` From fda04f1e3fe5c3c4ccaa180c00cc0c16d47b5c24 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Tue, 3 Mar 2026 19:27:41 +0000 Subject: [PATCH 14/59] docs: [#405] add attempt-4 screenshot and document Hetzner activity log confusion --- .../commands/provision/README.md | 12 +++-- .../commands/provision/problems.md | 44 ++++++++++++++++++ ...e-provisioned-server-details-attempt-4.png | Bin 0 -> 192098 bytes 3 files changed, 53 insertions(+), 3 deletions(-) create mode 100644 docs/deployments/hetzner-demo-tracker/media/hetzner-console-provisioned-server-details-attempt-4.png diff --git a/docs/deployments/hetzner-demo-tracker/commands/provision/README.md b/docs/deployments/hetzner-demo-tracker/commands/provision/README.md index e4fc7b86..2757eb17 100644 --- a/docs/deployments/hetzner-demo-tracker/commands/provision/README.md +++ b/docs/deployments/hetzner-demo-tracker/commands/provision/README.md @@ -52,10 +52,16 @@ The Hetzner server was created successfully by OpenTofu on 2026-03-03 at ~19:00 > address and network must be looked up in the Hetzner console or `terraform.tfstate`. See > [improvements.md](improvements.md) for the tracked improvement. -![Hetzner console showing the provisioned server details](../../media/hetzner-console-provisioned-server-details-attempt-1.png) +![Hetzner console showing the provisioned server details — attempt 4 (current)](../../media/hetzner-console-provisioned-server-details-attempt-4.png) -> **Note**: This screenshot shows the first successfully created server. A new server will be -> provisioned after destroying this one; the IP address will be different. +> **Note**: The Hetzner activity log shows "Server is being created" as the last event even +> after the server is fully created and accessible. Hetzner does not emit a matching +> "Server creation finished" event, so this entry can be misleading. See +> [problems.md](problems.md) for full context. + +For reference, the first server created in attempt 1: + +![Hetzner console showing the provisioned server details — attempt 1](../../media/hetzner-console-provisioned-server-details-attempt-1.png) ## Generated Artifacts diff --git a/docs/deployments/hetzner-demo-tracker/commands/provision/problems.md b/docs/deployments/hetzner-demo-tracker/commands/provision/problems.md index 9b0bb2de..c3d436cd 100644 --- a/docs/deployments/hetzner-demo-tracker/commands/provision/problems.md +++ b/docs/deployments/hetzner-demo-tracker/commands/provision/problems.md @@ -375,3 +375,47 @@ early and warn the user: Consider removing the passphrase from the deployment key, or document that the SSH agent socket must be forwarded into the container. ``` + +--- + +## Problem: Hetzner activity log shows "Server is being created" indefinitely — misleading status + +**Command**: `provision` +**Severity**: Minor (documentation / UX confusion) + +### Symptom + +After a server is fully created, accessible via SSH, and cloud-init is complete, the Hetzner +console activity log still shows **"Server is being created"** as the last event — even 15–20 +minutes later. There is no follow-up event such as "Server creation finished". + +This was observed during provision attempts 3 and 4. In attempt 3, we assumed the server was +still being provisioned by Hetzner ("stuck") because the activity log never updated, which +led to unnecessary investigation into cloud-init delays and SSH timeouts. + +### Root Cause + +This is Hetzner's expected (if unintuitive) behavior. The event **"Server is being created"** +is a point-in-time action record — it records that the creation action was initiated — not a +status that transitions when the action completes. Hetzner does not emit a corresponding +"Server creation completed" event. + +The actual completion can be inferred from: + +- The server **status** in the Hetzner console changing from `Initializing` to `Running` +- SSH connectivity being established +- `cloud-init status` returning `done` on the server + +### Resolution + +No action needed — the "Server is being created" entry is normal and permanent. Use server +**status** (`Running`) and direct SSH access to confirm the server is ready, not the activity +log. + +### Prevention + +Document this behavior in the Hetzner provider guide so operators are not misled. Specifically: + +- The Hetzner activity log records what happened, not the current state. +- "Server is being created" is the last event and does not update when creation finishes. +- Use `hcloud server describe ` or SSH connectivity as the authoritative readiness signal. diff --git a/docs/deployments/hetzner-demo-tracker/media/hetzner-console-provisioned-server-details-attempt-4.png b/docs/deployments/hetzner-demo-tracker/media/hetzner-console-provisioned-server-details-attempt-4.png new file mode 100644 index 0000000000000000000000000000000000000000..f7a7f2d6c2821f9a20189919bdad1caf78ce2bc0 GIT binary patch literal 192098 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�g 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 literal 0 HcmV?d00001 From 3872406e4f90242a4ee1c9b4786ef2e5c9e56088 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Tue, 3 Mar 2026 19:39:42 +0000 Subject: [PATCH 15/59] docs: [#405] mark provision task as complete in issue tracker --- .../405-deploy-hetzner-demo-tracker-and-document-process.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md b/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md index afc57b57..407fbf29 100644 --- a/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md +++ b/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md @@ -61,7 +61,7 @@ docs/deployments/ ### Phase 3: Deploy the Tracker -- [ ] Task 3.1: Provision infrastructure (create Hetzner VM) +- [x] Task 3.1: Provision infrastructure (create Hetzner VM) - [ ] Task 3.2: Configure the instance (Docker, SSH, system setup) - [ ] Task 3.3: Release the application (deploy tracker files) - [ ] Task 3.4: Run the services (start the tracker) From db6a702bea6187ed7d50effca62cda86b12dfc75 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 11:13:53 +0000 Subject: [PATCH 16/59] docs: [#405] add post-provision guides (DNS + volume setup) and assign floating IPs - Add post-provision/ directory with README, dns-setup.md, and volume-setup.md - DNS setup: assign IPv4 (116.202.176.169) and IPv6 (2a01:4f8:1c0c:9aae::1) floating IPs, document permanent netplan configuration, include three screenshots - Volume setup: guide for creating and mounting a 50 GB Hetzner volume at /opt/torrust/storage - Update deployment README.md with Phase 3.5 section and TOC entries - Update issue tracker with Phase 3.5 tasks (3.5.1 and 3.5.2 complete) - Add technical words to project-words.txt (blkid, mountpoint, nofail, NXDOMAIN, netplan, etc.) --- .../hetzner-demo-tracker/README.md | 18 +- ...ner-console-assign-floating-ipv4-popup.png | Bin 0 -> 38997 bytes ...ner-console-assign-floating-ipv6-popup.png | Bin 0 -> 39746 bytes ...onsole-floating-ips-assigned-to-server.png | Bin 0 -> 110472 bytes .../post-provision/README.md | 25 +++ .../post-provision/dns-setup.md | 208 ++++++++++++++++++ .../post-provision/volume-setup.md | 182 +++++++++++++++ ...tzner-demo-tracker-and-document-process.md | 20 ++ project-words.txt | 7 + 9 files changed, 458 insertions(+), 2 deletions(-) create mode 100644 docs/deployments/hetzner-demo-tracker/media/hetzner-console-assign-floating-ipv4-popup.png create mode 100644 docs/deployments/hetzner-demo-tracker/media/hetzner-console-assign-floating-ipv6-popup.png create mode 100644 docs/deployments/hetzner-demo-tracker/media/hetzner-console-floating-ips-assigned-to-server.png create mode 100644 docs/deployments/hetzner-demo-tracker/post-provision/README.md create mode 100644 docs/deployments/hetzner-demo-tracker/post-provision/dns-setup.md create mode 100644 docs/deployments/hetzner-demo-tracker/post-provision/volume-setup.md diff --git a/docs/deployments/hetzner-demo-tracker/README.md b/docs/deployments/hetzner-demo-tracker/README.md index 7dbe8b04..bd3e34be 100644 --- a/docs/deployments/hetzner-demo-tracker/README.md +++ b/docs/deployments/hetzner-demo-tracker/README.md @@ -17,10 +17,13 @@ Deploy a public Torrust Tracker demo instance to Hetzner Cloud and document ever 3. Deployment commands — step-by-step per deployer command: - [create](commands/create/README.md) — generate template, validate, create environment - [provision](commands/provision/README.md) — create the Hetzner VM -4. Problems — issues encountered, per command: +4. Post-provision manual steps (done once, before `configure`): + - [DNS setup](post-provision/dns-setup.md) — assign floating IPs, create DNS records, verify + - [Volume setup](post-provision/volume-setup.md) — create and mount Hetzner volume for storage +5. Problems — issues encountered, per command: - [create problems](commands/create/problems.md) - [provision problems](commands/provision/problems.md) -5. Improvements — recommended deployer improvements found during this deployment: +6. Improvements — recommended deployer improvements found during this deployment: - [provision improvements](commands/provision/improvements.md) ## Deployment @@ -42,6 +45,17 @@ See [commands/create/README.md](commands/create/README.md) for running the `crea See [commands/provision/README.md](commands/provision/README.md) for running the `provision` command and server details. +### Phase 3.5: Post-Provision Setup + +Manual steps done once after provisioning, required before `configure`: + +1. [DNS setup](post-provision/dns-setup.md) — assign floating IPs to the server and create DNS + records for all six domains. +2. [Volume setup](post-provision/volume-setup.md) — create a 50 GB Hetzner volume and mount it + at `/opt/torrust/storage` so persistent data lives on a separate disk. + +See [post-provision/README.md](post-provision/README.md) for the full overview. + ### Phase 4: Configure Instance diff --git a/docs/deployments/hetzner-demo-tracker/media/hetzner-console-assign-floating-ipv4-popup.png b/docs/deployments/hetzner-demo-tracker/media/hetzner-console-assign-floating-ipv4-popup.png new file mode 100644 index 0000000000000000000000000000000000000000..96f5f3cee4c58fc9bb40eba091248df960932299 GIT binary patch literal 38997 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

    aQDu5lnl}Kdr1&U+m`iODtir ze4Lp8yLDRlHRX)@v-+a^ClgHN?A+GulHg@ptR!>C-Fb)8m|cqcrunig`xO=WO1pCW z`2$LXuZEX3Xj=AbaJULuyNLF+2Zs$l89m#=dq+A~+gGLXsc4AJ_gG8X?JMSu)3&1y z>}J;0RjXxgOyAO=rroTZ-Rb5ywd6z5ar5TJRd@i49*lod&@MB+p6R-4bYHgHv(pV2Qj1f{?CI#6yr_{?g&mxN^-R@S(4(t?T6uCiVsW+u2wP2&M+vDb#n%69!c=p~j`Zg@j4T`%W6r)PD$RaiDl z`T{pDqM$sv78D-sBg)5_gn^Q$Bmvq%d4z)`aW z`HPm|{FzLHyet}pnTV^CH<0KF_P3SB#9YOL6oSaBf~Q5ucY$Vn?UpU-n5{V)Ny!fPj^X97fOJT7rrhG2C)_1yZ z=y?5>&AnN+IO_MXYx5Jidk*2<`G##1JO>8MgS}&ZJ&9i9INiW#Rj6!U!kWL;1{8|vx^_S z&g%wQJ27sIjF{pkymKvBb)+f6u&rh8{)yQ6pC6ph+O8=2^lfAzwWHvk_sccAnV1g_ zSVq+;sf-l0itOPOo0HJ>cV@k4M?>9o>e5x&1ckIAY}1-MiTJ<-Ryna+ARnz4KsUfBMnSGPA8;G!M~eJYSb@ zUd73}6hy~vVaD{UsWuO$s21x}Ijbrv?yj_iS+;h}-$z4Zzw8G=Dc;E82^Yrs7VF#^ zDNQ{+pK6O3AX@&VW$EdwON@sa3%NSlV_W+RaF~_crHq=g2mFuK{pPK=rftw;6E-|r zQF-cFYuJcY>r$gHE!OQV=Iq1gO~ksk>)N&5-QK6p&v2D_Jp5Pu)zg9*aSOlP?k>CF zV#0npBkc(7{E*G3tlS{l(@Jf}wf-W@I|o-JP0XC>^%b)yF}N-Cp(HEG&*?H#W{~mg zON|b1J<_cbe@`A+&-H8FtrYR0!`wga4LAx;BsQ2X-!ERY@RNIXws+%6i--LcMn+E4`$s_b8un{+-7qChN0*dM)2PPT{{6Ss0io)o$L? z;IGSnXZ@Dw9sTzdgd)}G2?HEYIFb!n_nRKQ+*Y}+#7rx;UvoO&-jbfc&6arPuYw-M zt2#@gS2%^=lXt%OqPx`Q@U`UmwvrvR1HBL5$E;eTCloW$yVCH6%ehdSOyj2t>lenP ze!b5W9Jr9iWB-F~bXR@!EBzdCl?fv;S~ z7VB4=`z3l!&b!xLPNx|CY8j3>eyw66yz~dO~%huVV6e$yys`7B(jF;skIX+ z>o931q@?&l^RHuMl=g+*Y{&qf+?VwwD@zpG7bWDJAd6w~W~WnJZKWPE;$doT^G6+o zhT5D+2#C-YWTmjiC2`_uREjj;PaaMdKR{a z%vle27A*Gk;C`7dYU6im(>Zav3+2eKYl-kARGxd2|nWkYX%n5_DWjgLtGIIgkW6{oyYYnJEX133~ ztbg~KW!Nu-+b0L;cUFd5?r=^qSHGV)+mKrvx|xQ-L*v2*&{~K;!Zr+&9lQpll%! zS5jIdQxda;$GbK{|VM(NHNlIS7p~l1U`tTC%{z zN_D9Uw6&`iY3y^xK_pIK5CGX@T@0UfCq6+OgxVlG#!7-K0bf7{gd7hJY$ZTiT8%QyCM~+od*8+zwr_7pw>k<4_r@I6O&&> zo|*2E{uckjt@YYsj8%6u?()vmg>Evk@3Yye8UB0`!&44*R;Tp4PBW95hHlC6ukUUS zTeaSpTamro?b4o7SLZlKG_h#YQuU1~xm>muk}u6~YLB)pd$>|%`IMT8&{kR1>6>B0 zUP)_8T`xGEN^h`rP$&!Y?Mp5QDv413IDXsCmQ`+@*0LF$;?fY$$ z!d;kumi%~KX<5`z^A=m1$*n@H?h7keBE5WyA2gV4mSJ=9+|J(l+55R3$II@`PBn9b zCChaARW-^~Ki*L`lyVIBU3JQc|B#>_WAaIo)cutk1<+Fp4NUKAkuv$~cTr-{?b67> zvUir1I++V=!adF|iq?4(B|4@3DA%X(y<5(uX(`)K?0PGKvu+SsKYdXDgDjqy)cqroM#q0A3L)JW_7>|$fxIq z9uU7SvHCg8g2dOmWnMHT+Y7>_9cUzw+C`*dAnbzer=cAp#s!T7)7L?`#Juk#Jd|Tz zgTFWyva>Wd)O#<^WIsSi2GkLdkWm$5ftC?~6XI86#I%zK00D;=yL{MXJHCf(As|2T zbb=Ox@aU1!XS}8XPAY~F=QKtktZuw2UP!2Ss*de|yXg1wbwaXb%Zol8e&IcPdv1Pc z%Id3*o$a;C)$!-mrA>uZ9o>xMC!^a3UD)O)!-Dp>Z9ONByL~wE?oLOCZbt3mvYtVO zvXWchnC-P^+Lrwo`f+T$Y5HM;&~W|`f5{qK*YxO%U8jOde=~heQdJO)(D)G~LM{5h z>G!VUsLt~pfxZ)72kEgpd-^hSP7WIe)~;6PRH$P&(J3AloSU6^otN7Gw_9%6R@*#J z@4mdTs!h_IwhFt~jy+N2KKiP00IH`KOY{@~Tb?{edF;hn&vS57KA zw6Un_Y|i_H}7JHiAA*Cb7d6`i<8)S8Tp0FJcq2+bP^k z{?wtD?^jAP9(I3eJ*xC>rd{`Hr6lin8G%B9u zjJguJ!g&Dzfgd2QSzZ0EKI^WWpfRNut`6~e2z&Oqjane%f52hG5oC^L_>D=BEp><8 z9mqY%>i}fn1ZA2b8byH;c2$HrF*+m0o{nXOcr=oJGTrC8{rZ%|w(azdK{#g@$|I77 z05xLa!lvS8xSi@DFQ}6lD!$fkry`Ub1&7r17MtZOk;7`rtEIl|G*Kdf zr(MB+$Nl+|fby}mh(f)tA8>yMIo>AY@9m1@AB>d`Bdm4#_Tqr+Y~*a4i##j%$oCCX z*J+dQ`)~LHtvE~a-!~W0OgWx9ab^-X9GA@#n8XCG=lpx=oqyhX^Im)bwlT;5;|t)t zRXjZx)cWs}>sCNMJAe6zQFB$tBw*UYD literal 0 HcmV?d00001 diff --git a/docs/deployments/hetzner-demo-tracker/media/hetzner-console-assign-floating-ipv6-popup.png b/docs/deployments/hetzner-demo-tracker/media/hetzner-console-assign-floating-ipv6-popup.png new file mode 100644 index 0000000000000000000000000000000000000000..8da29f15e9944d6d064d9c61cdfc3464c6206696 GIT binary patch literal 39746 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�X&0RmgY;#QilRqt5_Hq{|XJ0~hBarq;_X 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 literal 0 HcmV?d00001 diff --git a/docs/deployments/hetzner-demo-tracker/media/hetzner-console-floating-ips-assigned-to-server.png b/docs/deployments/hetzner-demo-tracker/media/hetzner-console-floating-ips-assigned-to-server.png new file mode 100644 index 0000000000000000000000000000000000000000..d5040adcfde993d82576f8ea29376ad56c5705f3 GIT binary patch literal 110472 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 CM9V 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 Ux@;@emtR+gSlC=`F!RdzKV39yg#Z8m literal 0 HcmV?d00001 diff --git a/docs/deployments/hetzner-demo-tracker/post-provision/README.md b/docs/deployments/hetzner-demo-tracker/post-provision/README.md new file mode 100644 index 00000000..5d0946d7 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/post-provision/README.md @@ -0,0 +1,25 @@ +# Post-Provision Steps + +These are manual steps performed **after** `provision` succeeds and **before** running `configure`. + +They are not automated by the deployer CLI — they require actions in the Hetzner Console and +on the server via SSH. + +## Steps + +| Step | Guide | Status | +| --------------- | ---------------------------------- | ---------- | +| 1. DNS Setup | [dns-setup.md](dns-setup.md) | ⏳ Pending | +| 2. Volume Setup | [volume-setup.md](volume-setup.md) | ⏳ Pending | + +## Why Before `configure`? + +- **DNS**: The `configure` command installs Caddy as a TLS reverse proxy. Caddy uses + Let's Encrypt to obtain TLS certificates for the domains in the environment config. This + requires that all DNS records already resolve to the server's IP **before** `configure` runs, + otherwise the ACME challenge will fail and TLS setup will break. + +- **Volume**: The `configure` command creates `/opt/torrust/` and its subdirectories on the + server. If the external volume is attached and mounted at `/opt/torrust/storage` **before** + `configure` runs, Ansible writes all persistent data directly onto the volume — so nothing + needs to be migrated afterwards. diff --git a/docs/deployments/hetzner-demo-tracker/post-provision/dns-setup.md b/docs/deployments/hetzner-demo-tracker/post-provision/dns-setup.md new file mode 100644 index 00000000..a5e02501 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/post-provision/dns-setup.md @@ -0,0 +1,208 @@ +# DNS Setup + +> **Status**: 🔄 In progress — both floating IPs assigned; VM-side configuration and DNS records pending. + +Set up DNS records so that all domain names in the environment config resolve to +the floating IP before running `configure`. + +## Why Floating IPs? + +The deployment uses **Hetzner floating IPs** (static IPs that can be reassigned across servers) +rather than the server's direct IP (`46.225.234.201`). This means: + +- DNS records always point to the same IP, even if the underlying server is ever recreated. +- To rebuild the server, you reassign the floating IP — no DNS changes needed. + +## Floating IPs + +| Type | IP | Notes | +| ---- | ----------------------- | ------------------------------------------------------------------------------------ | +| IPv4 | `116.202.176.169` | Assign as A records | +| IPv6 | `2a01:4f8:1c0c:9aae::1` | First usable address from `/64` block `2a01:4f8:1c0c:9aae::/64`; use as AAAA records | + +## Step 1: Assign Floating IPs to the Server + +In the [Hetzner Console](https://console.hetzner.cloud/): + +1. Open the project `torrust-tracker-demo.com`. +2. Go to **Networking → Floating IPs**. +3. For the IPv4 floating IP (`116.202.176.169`): + - Click **⋯ → Assign**. + - Select server `torrust-tracker-vm-torrust-tracker-demo`. + - Confirm. +4. For the IPv6 floating IP (`2a01:4f8:1c0c:9aae::/64`): + - Same procedure — assign to the same server. + +### IPv4 Assigned (2026-03-04) + +The IPv4 floating IP was assigned successfully. Hetzner showed a confirmation popup: + +![Hetzner console popup after assigning the IPv4 floating IP](../media/hetzner-console-assign-floating-ipv4-popup.png) + +The popup text: + +> **Configure Floating IP** +> +> The Floating IP has been successfully assigned. You now need to configure it on +> your server in order for it to work. +> +> **Command for temporary configuration** +> +> `sudo ip addr add 116.202.176.169 dev eth0` +> +> A temporary configuration will only work until the next reboot. To permanently +> configure the IP have a look at our Docs. + +### IPv6 Assigned (2026-03-04) + +The IPv6 floating IP was assigned successfully. Hetzner showed a confirmation popup: + +![Hetzner console popup after assigning the IPv6 floating IP](../media/hetzner-console-assign-floating-ipv6-popup.png) + +The popup text: + +> **Configure Floating IP** +> +> The Floating IP has been successfully assigned. You now need to configure it on +> your server in order for it to work. +> +> **Command for temporary configuration** +> +> `sudo ip addr add 2a01:4f8:1c0c:9aae::1 dev eth0` +> +> A temporary configuration will only work until the next reboot. To permanently +> configure the IP have a look at our Docs. + +### Both Floating IPs Assigned + +Both IPs now appear in the Hetzner console Floating IPs list assigned to the server: + +![Hetzner console showing both floating IPs assigned to the server](../media/hetzner-console-floating-ips-assigned-to-server.png) + +### Step 1.5: Configure the Floating IPs Inside the VM + +Hetzner's assignment only updates their routing — the VM's network interface still needs to +know about the new IPs. The Hetzner console popup shows a **temporary** command that works +until the next reboot. We need the **permanent** configuration instead. + +Reference: [Hetzner — Persistent Floating IP Configuration](https://docs.hetzner.com/cloud/floating-ips/persistent-configuration/) + +**Temporary (shown by Hetzner popup — lost on reboot):** + +```bash +sudo ip addr add 116.202.176.169 dev eth0 +sudo ip addr add 2a01:4f8:1c0c:9aae::1 dev eth0 +``` + +**Permanent (survives reboot) — recommended:** + +SSH into the server: + +```bash +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 +``` + +Create `/etc/netplan/60-floating-ip.yaml` with both floating IPs. The Hetzner docs specify +`renderer: networkd` and separate IPv4 (`/32`) and IPv6 (`/64`) prefixes: + +```bash +sudo tee /etc/netplan/60-floating-ip.yaml > /dev/null << 'EOF' +network: + version: 2 + renderer: networkd + ethernets: + eth0: + addresses: + - 116.202.176.169/32 + - 2a01:4f8:1c0c:9aae::1/64 +EOF +``` + +Apply (this will briefly reset the network connection): + +```bash +sudo netplan apply +``` + +Verify both IPs appear on the interface: + +```bash +ip addr show eth0 +# Look for: +# inet 116.202.176.169/32 +# inet6 2a01:4f8:1c0c:9aae::1/64 +``` + +> **Note**: The `configure` command does not configure floating IPs — this must be done +> manually before running `configure`. + +## Step 2: Create DNS Records + +In the [Hetzner DNS Console](https://dns.hetzner.com/), open the `torrust-tracker-demo.com` zone +and create the following records: + +| Subdomain | Type | Value | +| --------- | ---- | ----------------------- | +| `http1` | A | `116.202.176.169` | +| `http1` | AAAA | `2a01:4f8:1c0c:9aae::1` | +| `http2` | A | `116.202.176.169` | +| `http2` | AAAA | `2a01:4f8:1c0c:9aae::1` | +| `api` | A | `116.202.176.169` | +| `api` | AAAA | `2a01:4f8:1c0c:9aae::1` | +| `grafana` | A | `116.202.176.169` | +| `grafana` | AAAA | `2a01:4f8:1c0c:9aae::1` | +| `udp1` | A | `116.202.176.169` | +| `udp1` | AAAA | `2a01:4f8:1c0c:9aae::1` | +| `udp2` | A | `116.202.176.169` | +| `udp2` | AAAA | `2a01:4f8:1c0c:9aae::1` | + +Use the default TTL (300 s is fine for initial setup; increase to 3600 s once stable). + +## Step 3: Verify DNS Propagation + +From your local machine, check that all records resolve correctly: + +```bash +# IPv4 records (A) +for subdomain in http1 http2 api grafana udp1 udp2; do + echo -n "$subdomain.torrust-tracker-demo.com A: " + dig +short A "$subdomain.torrust-tracker-demo.com" +done + +# IPv6 records (AAAA) +for subdomain in http1 http2 api grafana udp1 udp2; do + echo -n "$subdomain.torrust-tracker-demo.com AAAA: " + dig +short AAAA "$subdomain.torrust-tracker-demo.com" +done +``` + +Expected output for each: + +```text +http1.torrust-tracker-demo.com A: 116.202.176.169 +http2.torrust-tracker-demo.com A: 116.202.176.169 +api.torrust-tracker-demo.com A: 116.202.176.169 +grafana.torrust-tracker-demo.com A: 116.202.176.169 +udp1.torrust-tracker-demo.com A: 116.202.176.169 +udp2.torrust-tracker-demo.com A: 116.202.176.169 + +http1.torrust-tracker-demo.com AAAA: 2a01:4f8:1c0c:9aae::1 +... +``` + +> DNS propagation with Hetzner's nameservers (`helium.ns.hetzner.de`, `hydrogen.ns.hetzner.com`, +> `oxygen.ns.hetzner.com`) is typically fast (under 1 minute). If you get `NXDOMAIN` or empty +> results, wait a minute and retry. + +## Outcome + +Once all subdomains resolve to `116.202.176.169` / `2a01:4f8:1c0c:9aae::1`, DNS is ready and +you can proceed to [volume-setup.md](volume-setup.md). + +## Problems + + + +## Improvements + + diff --git a/docs/deployments/hetzner-demo-tracker/post-provision/volume-setup.md b/docs/deployments/hetzner-demo-tracker/post-provision/volume-setup.md new file mode 100644 index 00000000..85ee68a5 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/post-provision/volume-setup.md @@ -0,0 +1,182 @@ +# Volume Setup + +> **Status**: ⏳ Pending + +Create a Hetzner volume and mount it at `/opt/torrust/storage` on the server before running +`configure`. + +## Why a Separate Volume? + +The server's root disk contains the OS and application binaries. Persistent tracker data +(database, logs, Grafana state, Prometheus data) lives under `/opt/torrust/storage/`. + +Putting that data on a separate Hetzner volume means: + +- **Targeted backups**: back up only the volume, not the entire server. +- **Easy migration**: detach the volume and reattach to a new server if the VM is recreated. +- **Independent lifecycle**: you can snapshot or resize the volume without touching the server. + +## Volume Specification + +| Property | Value | +| ----------- | ----------------------------------------------------- | +| Name | `torrust-tracker-demo-storage` | +| Size | 50 GB | +| Location | `nbg1` (same as the server — required for attachment) | +| Format | `ext4` | +| Mount point | `/opt/torrust/storage` | + +## Step 1: Create the Volume in Hetzner Console + +In the [Hetzner Console](https://console.hetzner.cloud/): + +1. Open the project `torrust-tracker-demo.com`. +2. Go to **Storage → Volumes → Create Volume**. +3. Set: + - **Name**: `torrust-tracker-demo-storage` + - **Size**: `50 GB` + - **Location**: `nbg1` + - **Format**: leave unformatted (we will format manually below) + - **Server**: select `torrust-tracker-vm-torrust-tracker-demo` to attach immediately +4. Click **Create & Attach**. + +## Step 2: Find the Device Path on the Server + +SSH into the server: + +```bash +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 +``` + +List block devices to find the new volume: + +```bash +lsblk +``` + +The Hetzner volume appears as a new disk (not partitioned). You will see something like: + +```text +NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS +sda 252:0 0 40G 0 disk +├─sda1 252:1 0 39.9G 0 part / +... +sdb 252:16 0 50G 0 disk ← this is the new volume +``` + +Hetzner also provides a stable device symlink: + +```bash +ls /dev/disk/by-id/ | grep HC_Volume +# Example output: scsi-0HC_Volume_12345678 +``` + +Use the stable path for all subsequent commands (replace with your actual volume ID): + +```bash +VOLUME_DEVICE="/dev/disk/by-id/scsi-0HC_Volume_XXXXXXXX" +``` + +## Step 3: Format the Volume + +> **Warning**: This destroys any existing data on the device. Only do this on a brand-new volume. + +```bash +sudo mkfs.ext4 -L torrust-storage "$VOLUME_DEVICE" +``` + +The `-L` flag sets a filesystem label (`torrust-storage`) which can be used in `fstab` as an +alternative to UUID. + +Verify: + +```bash +sudo blkid "$VOLUME_DEVICE" +# Expected: ... TYPE="ext4" LABEL="torrust-storage" ... +``` + +Note the UUID from the output — you will need it for `fstab`. + +## Step 4: Create the Mount Point + +```bash +sudo mkdir -p /opt/torrust/storage +``` + +## Step 5: Mount the Volume + +Mount once manually to verify it works: + +```bash +sudo mount "$VOLUME_DEVICE" /opt/torrust/storage +``` + +Confirm it is mounted: + +```bash +df -h /opt/torrust/storage +# Expected: +# Filesystem Size Used Avail Use% Mounted on +# /dev/sdb 49G 24K 47G 1% /opt/torrust/storage +``` + +## Step 6: Make the Mount Persistent (fstab) + +Get the UUID of the volume: + +```bash +sudo blkid -s UUID -o value "$VOLUME_DEVICE" +# Example output: a1b2c3d4-e5f6-7890-abcd-ef1234567890 +``` + +Add an entry to `/etc/fstab` using the UUID (replace with your actual UUID): + +```bash +echo "UUID= /opt/torrust/storage ext4 defaults,nofail 0 2" \ + | sudo tee -a /etc/fstab +``` + +The `nofail` option prevents the server from failing to boot if the volume is temporarily +unavailable. The `0 2` means: no dump, fsck on boot after root filesystem. + +Verify the fstab entry is correct by simulating a remount: + +```bash +sudo mount -a +df -h /opt/torrust/storage +``` + +## Step 7: Set Correct Ownership + +The `configure` command will create subdirectories under `/opt/torrust/storage/` via Ansible +(running as the `torrust` user). Set ownership in advance: + +```bash +sudo chown -R torrust:torrust /opt/torrust/storage +``` + +## Step 8: Verify (Full Check) + +```bash +# Volume is mounted +mountpoint -q /opt/torrust/storage && echo "Mounted ✓" || echo "NOT mounted" + +# Correct ownership +ls -la /opt/torrust/ | grep storage + +# Write test +touch /opt/torrust/storage/.volume-test && echo "Write OK ✓" && rm /opt/torrust/storage/.volume-test +``` + +## Outcome + +Once the volume is mounted at `/opt/torrust/storage` and owned by `torrust`, you can proceed +to the `configure` command. + +## Problems + + + +## Improvements + + diff --git a/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md b/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md index 407fbf29..6e3f6c37 100644 --- a/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md +++ b/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md @@ -66,6 +66,26 @@ docs/deployments/ - [ ] Task 3.3: Release the application (deploy tracker files) - [ ] Task 3.4: Run the services (start the tracker) +### Phase 3.5: Post-Provision Manual Setup + +Steps required after provisioning and before running `configure`. +See [`docs/deployments/hetzner-demo-tracker/post-provision/`](../deployments/hetzner-demo-tracker/post-provision/README.md). + +**DNS Setup** ([dns-setup.md](../deployments/hetzner-demo-tracker/post-provision/dns-setup.md)): + +- [x] Task 3.5.1: Assign IPv4 floating IP (`116.202.176.169`) to the server in Hetzner Console +- [x] Task 3.5.2: Assign IPv6 floating IP (`2a01:4f8:1c0c:9aae::/64`) to the server in Hetzner Console +- [ ] Task 3.5.3: Configure floating IPs permanently inside the VM (netplan) +- [ ] Task 3.5.4: Create DNS records for all six subdomains in Hetzner DNS Console +- [ ] Task 3.5.5: Verify all DNS records resolve correctly + +**Volume Setup** ([volume-setup.md](../deployments/hetzner-demo-tracker/post-provision/volume-setup.md)): + +- [ ] Task 3.5.6: Create a 50 GB Hetzner volume (`torrust-tracker-demo-storage`) in `nbg1` +- [ ] Task 3.5.7: Format the volume (`ext4`) and mount it at `/opt/torrust/storage` +- [ ] Task 3.5.8: Add the volume to `/etc/fstab` for persistent mounting +- [ ] Task 3.5.9: Verify volume is correctly mounted and writable + ### Phase 4: Verify and Document - [ ] Task 4.1: Verify tracker is accessible and functioning diff --git a/project-words.txt b/project-words.txt index 34e66ffb..9c8bf026 100644 --- a/project-words.txt +++ b/project-words.txt @@ -502,3 +502,10 @@ zstd конфиг файл Nushell +blkid +ethernets +netplan +mountpoint +MOUNTPOINTS +nofail +NXDOMAIN From 837057d1d50cf902e94cbf45b9bf97ed9673b420 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 11:18:34 +0000 Subject: [PATCH 17/59] docs: [#405] configure floating IPs permanently on VM via netplan - Apply permanent netplan config for both floating IPs (116.202.176.169/32 and 2a01:4f8:1c0c:9aae::1/64) on the server - Record actual commands run and their output in dns-setup.md Step 1.5 - Document two problems: SSH host key mismatch and netplan file permissions - Add improvement note: use 'install -m 600' instead of 'tee' for correct permissions - Mark task 3.5.3 complete in issue tracker - Add kernel network terms to project-words.txt (qdisc, qlen, codel) --- .../post-provision/dns-setup.md | 110 +++++++++++++----- ...tzner-demo-tracker-and-document-process.md | 2 +- project-words.txt | 3 + 3 files changed, 88 insertions(+), 27 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/post-provision/dns-setup.md b/docs/deployments/hetzner-demo-tracker/post-provision/dns-setup.md index a5e02501..537a60ef 100644 --- a/docs/deployments/hetzner-demo-tracker/post-provision/dns-setup.md +++ b/docs/deployments/hetzner-demo-tracker/post-provision/dns-setup.md @@ -1,6 +1,6 @@ # DNS Setup -> **Status**: 🔄 In progress — both floating IPs assigned; VM-side configuration and DNS records pending. +> **Status**: 🔄 In progress — both floating IPs assigned and configured on VM; DNS records pending. Set up DNS records so that all domain names in the environment config resolve to the floating IP before running `configure`. @@ -79,7 +79,7 @@ Both IPs now appear in the Hetzner console Floating IPs list assigned to the ser ![Hetzner console showing both floating IPs assigned to the server](../media/hetzner-console-floating-ips-assigned-to-server.png) -### Step 1.5: Configure the Floating IPs Inside the VM +### Step 1.5: Configure the Floating IPs Inside the VM (2026-03-04) Hetzner's assignment only updates their routing — the VM's network interface still needs to know about the new IPs. The Hetzner console popup shows a **temporary** command that works @@ -94,45 +94,78 @@ sudo ip addr add 116.202.176.169 dev eth0 sudo ip addr add 2a01:4f8:1c0c:9aae::1 dev eth0 ``` -**Permanent (survives reboot) — recommended:** +**Permanent (survives reboot) — what we did:** -SSH into the server: +First, we checked the current state of eth0 to confirm the floating IPs were not yet +configured on the VM: ```bash -ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 -o StrictHostKeyChecking=accept-new torrust@46.225.234.201 'ip addr show eth0' ``` -Create `/etc/netplan/60-floating-ip.yaml` with both floating IPs. The Hetzner docs specify -`renderer: networkd` and separate IPv4 (`/32`) and IPv6 (`/64`) prefixes: +Output: + +```text +2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 + link/ether 92:00:07:4f:b3:4f brd ff:ff:ff:ff:ff:ff + inet 46.225.234.201/32 metric 100 scope global dynamic eth0 + valid_lft 71163sec preferred_lft 71163sec + inet6 2a01:4f8:1c19:620b::1/64 scope global + valid_lft forever preferred_lft forever + inet6 fe80::9000:7ff:fe4f:b34f/64 scope link + valid_lft forever preferred_lft forever +``` + +Only the server's own IPs are present — no floating IPs yet. + +> **Note**: We got a `WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED` error because this +> is a new server with the same IP as a previously provisioned server (from an earlier attempt). +> Fixed by removing the stale known_hosts entry: +> +> ```bash +> ssh-keygen -f '/home/josecelano/.ssh/known_hosts' -R '46.225.234.201' +> ``` + +Wrote the netplan config file on the server: ```bash -sudo tee /etc/netplan/60-floating-ip.yaml > /dev/null << 'EOF' -network: - version: 2 - renderer: networkd - ethernets: - eth0: - addresses: - - 116.202.176.169/32 - - 2a01:4f8:1c0c:9aae::1/64 -EOF +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 \ + 'printf "network:\n version: 2\n renderer: networkd\n ethernets:\n eth0:\n addresses:\n - 116.202.176.169/32\n - 2a01:4f8:1c0c:9aae::1/64\n" | sudo tee /etc/netplan/60-floating-ip.yaml' ``` -Apply (this will briefly reset the network connection): +Fixed file permissions (netplan requires `600`) and applied: ```bash -sudo netplan apply +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 \ + 'sudo chmod 600 /etc/netplan/60-floating-ip.yaml && sudo netplan apply' ``` -Verify both IPs appear on the interface: +Verified both floating IPs are now on eth0: ```bash -ip addr show eth0 -# Look for: -# inet 116.202.176.169/32 -# inet6 2a01:4f8:1c0c:9aae::1/64 +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 'ip addr show eth0' +``` + +Output: + +```text +2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 + link/ether 92:00:07:4f:b3:4f brd ff:ff:ff:ff:ff:ff + inet 116.202.176.169/32 scope global eth0 + valid_lft forever preferred_lft forever + inet 46.225.234.201/32 metric 100 scope global dynamic eth0 + valid_lft 86399sec preferred_lft 86399sec + inet6 2a01:4f8:1c0c:9aae::1/64 scope global + valid_lft forever preferred_lft forever + inet6 2a01:4f8:1c19:620b::1/64 scope global + valid_lft forever preferred_lft forever + inet6 fe80::9000:7ff:fe4f:b34f/64 scope link + valid_lft forever preferred_lft forever ``` +Both `116.202.176.169/32` and `2a01:4f8:1c0c:9aae::1/64` are present — `valid_lft forever` +confirms they are permanently configured. + > **Note**: The `configure` command does not configure floating IPs — this must be done > manually before running `configure`. @@ -201,8 +234,33 @@ you can proceed to [volume-setup.md](volume-setup.md). ## Problems - +### SSH host key mismatch when connecting to the new server + +**Symptom**: `WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED` when SSHing to `46.225.234.201`. + +**Cause**: A previous server was provisioned at the same IP during an earlier attempt (see +[provision/problems.md](../commands/provision/problems.md)). The old host key is still in +`~/.ssh/known_hosts`. + +**Fix**: + +```bash +ssh-keygen -f '~/.ssh/known_hosts' -R '46.225.234.201' +``` + +Then reconnect — SSH will accept and store the new host key. + +### Netplan file permissions warning + +**Symptom**: `WARNING: Permissions for /etc/netplan/60-floating-ip.yaml are too open` when +running `sudo netplan apply`. + +**Cause**: Writing with `sudo tee` creates the file world-readable. Netplan requires `600`. + +**Fix**: `sudo chmod 600 /etc/netplan/60-floating-ip.yaml` before or after `netplan apply`. ## Improvements - +- The netplan file should be written with correct permissions from the start. Use + `sudo install -m 600 /dev/stdin /etc/netplan/60-floating-ip.yaml` instead of `tee` to + avoid the permissions warning. diff --git a/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md b/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md index 6e3f6c37..f5566e7b 100644 --- a/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md +++ b/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md @@ -75,7 +75,7 @@ See [`docs/deployments/hetzner-demo-tracker/post-provision/`](../deployments/het - [x] Task 3.5.1: Assign IPv4 floating IP (`116.202.176.169`) to the server in Hetzner Console - [x] Task 3.5.2: Assign IPv6 floating IP (`2a01:4f8:1c0c:9aae::/64`) to the server in Hetzner Console -- [ ] Task 3.5.3: Configure floating IPs permanently inside the VM (netplan) +- [x] Task 3.5.3: Configure floating IPs permanently inside the VM (netplan) - [ ] Task 3.5.4: Create DNS records for all six subdomains in Hetzner DNS Console - [ ] Task 3.5.5: Verify all DNS records resolve correctly diff --git a/project-words.txt b/project-words.txt index 9c8bf026..3f4e214b 100644 --- a/project-words.txt +++ b/project-words.txt @@ -503,8 +503,11 @@ zstd файл Nushell blkid +codel ethernets netplan +qdisc +qlen mountpoint MOUNTPOINTS nofail From 4a4914b6a5e68e02e971a848cea0741634671112 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 11:35:00 +0000 Subject: [PATCH 18/59] docs: document DNS record creation via Hetzner Cloud API - Update dns-setup.md: replace manual UI instructions with Cloud API approach using POST /v1/zones/{zone}/rrsets; add actual command outputs and verification results; document the old dns.hetzner.com API incompatibility with Cloud Console zones - Add hetzner-dns-create-api-token-form.png screenshot - Mark tasks 3.5.4 and 3.5.5 as done in issue tracker - Add rrset/rrsets to project-words.txt All 12 DNS records (A + AAAA for http1, http2, api, grafana, udp1, udp2) now resolve globally to floating IPs 116.202.176.169 / 2a01:4f8:1c0c:9aae::1. --- .../hetzner-dns-create-api-token-form.png | Bin 0 -> 129071 bytes .../post-provision/dns-setup.md | 151 ++++++++++++++---- ...tzner-demo-tracker-and-document-process.md | 4 +- project-words.txt | 2 + 4 files changed, 128 insertions(+), 29 deletions(-) create mode 100644 docs/deployments/hetzner-demo-tracker/media/hetzner-dns-create-api-token-form.png diff --git a/docs/deployments/hetzner-demo-tracker/media/hetzner-dns-create-api-token-form.png b/docs/deployments/hetzner-demo-tracker/media/hetzner-dns-create-api-token-form.png new file mode 100644 index 0000000000000000000000000000000000000000..24ce2bd55f897d5829bdb48de59b0bbe14ed0f53 GIT binary patch literal 129071 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 ALI3~& literal 0 HcmV?d00001 diff --git a/docs/deployments/hetzner-demo-tracker/media/hetzner-console-volumes-list.png b/docs/deployments/hetzner-demo-tracker/media/hetzner-console-volumes-list.png new file mode 100644 index 0000000000000000000000000000000000000000..e8d6fddac26244107ed7b3dc3971eb086830871a GIT binary patch literal 96556 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%0A;7f7pt1G(6msB@U2}GU6tD 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 literal 0 HcmV?d00001 diff --git a/docs/deployments/hetzner-demo-tracker/post-provision/volume-setup.md b/docs/deployments/hetzner-demo-tracker/post-provision/volume-setup.md index 85ee68a5..3a34420b 100644 --- a/docs/deployments/hetzner-demo-tracker/post-provision/volume-setup.md +++ b/docs/deployments/hetzner-demo-tracker/post-provision/volume-setup.md @@ -1,6 +1,6 @@ # Volume Setup -> **Status**: ⏳ Pending +> **Status**: ✅ Done — volume created, attached, formatted, mounted and verified. Create a Hetzner volume and mount it at `/opt/torrust/storage` on the server before running `configure`. @@ -26,157 +26,197 @@ Putting that data on a separate Hetzner volume means: | Format | `ext4` | | Mount point | `/opt/torrust/storage` | -## Step 1: Create the Volume in Hetzner Console +## Step 1: Create the Volume via Cloud API (2026-03-04) -In the [Hetzner Console](https://console.hetzner.cloud/): +The volume was created and attached using the **Hetzner Cloud API** — no UI needed. -1. Open the project `torrust-tracker-demo.com`. -2. Go to **Storage → Volumes → Create Volume**. -3. Set: - - **Name**: `torrust-tracker-demo-storage` - - **Size**: `50 GB` - - **Location**: `nbg1` - - **Format**: leave unformatted (we will format manually below) - - **Server**: select `torrust-tracker-vm-torrust-tracker-demo` to attach immediately -4. Click **Create & Attach**. - -## Step 2: Find the Device Path on the Server - -SSH into the server: +### 1a: Create the volume ```bash -ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 +curl -s -X POST \ + -H "Authorization: Bearer $HCLOUD_TOKEN" \ + -H "Content-Type: application/json" \ + "https://api.hetzner.cloud/v1/volumes" \ + -d '{ + "name": "torrust-tracker-demo-storage", + "size": 50, + "location": "nbg1", + "format": "ext4", + "labels": {"project": "torrust-tracker-demo"} + }' ``` -List block devices to find the new volume: - -```bash -lsblk +Key fields in the response: + +```json +{ + "volume": { + "id": 104927743, + "name": "torrust-tracker-demo-storage", + "size": 50, + "format": "ext4", + "status": "creating", + "linux_device": "/dev/disk/by-id/scsi-0HC_Volume_104927743", + "location": { "name": "nbg1" }, + "server": null + } +} ``` -The Hetzner volume appears as a new disk (not partitioned). You will see something like: +> **Note**: Passing `"format": "ext4"` in the create request tells Hetzner to format the +> volume automatically. This means **`mkfs.ext4` does not need to be run manually** — the +> volume arrives with a ready-to-use ext4 filesystem including a UUID. -```text -NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS -sda 252:0 0 40G 0 disk -├─sda1 252:1 0 39.9G 0 part / -... -sdb 252:16 0 50G 0 disk ← this is the new volume -``` - -Hetzner also provides a stable device symlink: +### 1b: Find the server ID ```bash -ls /dev/disk/by-id/ | grep HC_Volume -# Example output: scsi-0HC_Volume_12345678 +curl -s -H "Authorization: Bearer $HCLOUD_TOKEN" \ + "https://api.hetzner.cloud/v1/servers?name=torrust-tracker-vm-torrust-tracker-demo" ``` -Use the stable path for all subsequent commands (replace with your actual volume ID): +Returned server `id=122663759`. + +### 1c: Attach the volume to the server ```bash -VOLUME_DEVICE="/dev/disk/by-id/scsi-0HC_Volume_XXXXXXXX" +curl -s -X POST \ + -H "Authorization: Bearer $HCLOUD_TOKEN" \ + -H "Content-Type: application/json" \ + "https://api.hetzner.cloud/v1/volumes/104927743/actions/attach" \ + -d '{"server": 122663759, "automount": false}' ``` -## Step 3: Format the Volume - -> **Warning**: This destroys any existing data on the device. Only do this on a brand-new volume. +Confirmed attached: ```bash -sudo mkfs.ext4 -L torrust-storage "$VOLUME_DEVICE" +curl -s -H "Authorization: Bearer $HCLOUD_TOKEN" \ + "https://api.hetzner.cloud/v1/volumes/104927743" | \ + python3 -c "import sys,json; v=json.load(sys.stdin)['volume']; \ + print(f\"status={v['status']} server={v['server']} device={v['linux_device']}\")" +# status=available server=122663759 device=/dev/disk/by-id/scsi-0HC_Volume_104927743 ``` -The `-L` flag sets a filesystem label (`torrust-storage`) which can be used in `fstab` as an -alternative to UUID. +The volume list is visible in the Hetzner Console under **Storage → Volumes**: -Verify: +![Hetzner console volumes list showing torrust-tracker-demo-storage](../media/hetzner-console-volumes-list.png) -```bash -sudo blkid "$VOLUME_DEVICE" -# Expected: ... TYPE="ext4" LABEL="torrust-storage" ... -``` +The console also shows a **Configure volume** popup with the recommended commands: + +![Hetzner console volume configure popup](../media/hetzner-console-volume-configure-popup.png) -Note the UUID from the output — you will need it for `fstab`. +The popup suggests mounting at `/mnt/torrust-tracker-demo-storage`. We use `/opt/torrust/storage` +instead, to match the application's expected directory layout. -## Step 4: Create the Mount Point +## Step 2: Verify Device on the Server (2026-03-04) ```bash -sudo mkdir -p /opt/torrust/storage +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 \ + 'lsblk && echo "---blkid---" && sudo blkid /dev/disk/by-id/scsi-0HC_Volume_104927743' ``` -## Step 5: Mount the Volume +Output: -Mount once manually to verify it works: - -```bash -sudo mount "$VOLUME_DEVICE" /opt/torrust/storage +```text +NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS +sda 8:0 0 152.6G 0 disk +|-sda1 8:1 0 152.3G 0 part / +|-sda14 8:14 0 1M 0 part +`-sda15 8:15 0 256M 0 part /boot/efi +sdb 8:16 0 50G 0 disk +sr0 11:0 1 1024M 0 rom +---blkid--- +/dev/disk/by-id/scsi-0HC_Volume_104927743: UUID="6fb9df14-c744-4e50-a48d-9ca4522a02de" BLOCK_SIZE="4096" TYPE="ext4" ``` -Confirm it is mounted: +The volume appears as `/dev/sdb`, accessible via the stable symlink +`/dev/disk/by-id/scsi-0HC_Volume_104927743`. It is already formatted as `ext4` — Hetzner +handled that when we passed `"format": "ext4"` in the API create call. -```bash -df -h /opt/torrust/storage -# Expected: -# Filesystem Size Used Avail Use% Mounted on -# /dev/sdb 49G 24K 47G 1% /opt/torrust/storage -``` +## Step 3: Format the Volume -## Step 6: Make the Mount Persistent (fstab) +**Skipped** — the volume was formatted automatically by Hetzner when we passed `"format": "ext4"` +in the create request. UUID `6fb9df14-c744-4e50-a48d-9ca4522a02de` was confirmed by `blkid` above. -Get the UUID of the volume: +> If you create a volume **without** specifying `format` in the API (or via the UI with +> "leave unformatted"), run: +> +> ```bash +> sudo mkfs.ext4 -F /dev/disk/by-id/scsi-0HC_Volume_ +> ``` +> +> This matches the command shown in the Hetzner Console "Configure volume" popup. -```bash -sudo blkid -s UUID -o value "$VOLUME_DEVICE" -# Example output: a1b2c3d4-e5f6-7890-abcd-ef1234567890 -``` +## Steps 4–8: Mount, fstab, Ownership, Verify (2026-03-04) -Add an entry to `/etc/fstab` using the UUID (replace with your actual UUID): +All remaining steps were run in a single SSH session: ```bash -echo "UUID= /opt/torrust/storage ext4 defaults,nofail 0 2" \ - | sudo tee -a /etc/fstab -``` +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 'bash -s' << 'ENDSSH' +set -e -The `nofail` option prevents the server from failing to boot if the volume is temporarily -unavailable. The `0 2` means: no dump, fsck on boot after root filesystem. +DEVICE="/dev/disk/by-id/scsi-0HC_Volume_104927743" +MOUNT_POINT="/opt/torrust/storage" +UUID="6fb9df14-c744-4e50-a48d-9ca4522a02de" -Verify the fstab entry is correct by simulating a remount: +# Step 4: Create mount point +sudo mkdir -p "$MOUNT_POINT" -```bash -sudo mount -a -df -h /opt/torrust/storage -``` +# Step 5: Mount with discard,defaults (matches Hetzner's recommendation) +sudo mount -o discard,defaults "$DEVICE" "$MOUNT_POINT" +df -h "$MOUNT_POINT" + +# Step 6: Add to fstab (UUID + discard,nofail,defaults) +echo "UUID=$UUID $MOUNT_POINT ext4 discard,nofail,defaults 0 2" | sudo tee -a /etc/fstab +grep "$UUID" /etc/fstab -## Step 7: Set Correct Ownership +# Step 7: Set ownership +sudo chown -R torrust:torrust "$MOUNT_POINT" +ls -la /opt/torrust/ | grep storage + +# Step 8: Verify +mountpoint -q "$MOUNT_POINT" && echo "Mounted OK" +touch "$MOUNT_POINT/.volume-test" && echo "Write OK" && rm "$MOUNT_POINT/.volume-test" +ENDSSH +``` -The `configure` command will create subdirectories under `/opt/torrust/storage/` via Ansible -(running as the `torrust` user). Set ownership in advance: +Output: -```bash -sudo chown -R torrust:torrust /opt/torrust/storage +```text +Filesystem Size Used Avail Use% Mounted on +/dev/sdb 49G 24K 47G 1% /opt/torrust/storage +UUID=6fb9df14-c744-4e50-a48d-9ca4522a02de /opt/torrust/storage ext4 discard,nofail,defaults 0 2 +drwxr-xr-x 3 torrust torrust 4096 Mar 4 11:38 storage +Mounted OK +Write OK ``` -## Step 8: Verify (Full Check) +Then confirmed fstab survives reboot by unmounting and remounting via `mount -a`: ```bash -# Volume is mounted -mountpoint -q /opt/torrust/storage && echo "Mounted ✓" || echo "NOT mounted" +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 \ + 'sudo umount /opt/torrust/storage && sudo mount -a && df -h /opt/torrust/storage && echo "fstab remount OK"' +``` -# Correct ownership -ls -la /opt/torrust/ | grep storage +Output: -# Write test -touch /opt/torrust/storage/.volume-test && echo "Write OK ✓" && rm /opt/torrust/storage/.volume-test +```text +Filesystem Size Used Avail Use% Mounted on +/dev/sdb 49G 24K 47G 1% /opt/torrust/storage +fstab remount OK ``` ## Outcome -Once the volume is mounted at `/opt/torrust/storage` and owned by `torrust`, you can proceed -to the `configure` command. +✅ Volume `torrust-tracker-demo-storage` (50 GB, ext4) is mounted at `/opt/torrust/storage`, +owned by `torrust:torrust`, and will remount automatically on reboot. The next step is +[running the `configure` command](../commands/configure/). ## Problems - + ## Improvements - +- The `discard` mount option enables TRIM for SSD-backed volumes (Hetzner volumes are + SSD-backed), which helps maintain performance over time. It is already included in both + the mount command and the fstab entry above. diff --git a/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md b/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md index 1bf39160..1ef68e4f 100644 --- a/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md +++ b/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md @@ -81,10 +81,10 @@ See [`docs/deployments/hetzner-demo-tracker/post-provision/`](../deployments/het **Volume Setup** ([volume-setup.md](../deployments/hetzner-demo-tracker/post-provision/volume-setup.md)): -- [ ] Task 3.5.6: Create a 50 GB Hetzner volume (`torrust-tracker-demo-storage`) in `nbg1` -- [ ] Task 3.5.7: Format the volume (`ext4`) and mount it at `/opt/torrust/storage` -- [ ] Task 3.5.8: Add the volume to `/etc/fstab` for persistent mounting -- [ ] Task 3.5.9: Verify volume is correctly mounted and writable +- [x] Task 3.5.6: Create a 50 GB Hetzner volume (`torrust-tracker-demo-storage`) in `nbg1` +- [x] Task 3.5.7: Format the volume (`ext4`) and mount it at `/opt/torrust/storage` +- [x] Task 3.5.8: Add the volume to `/etc/fstab` for persistent mounting +- [x] Task 3.5.9: Verify volume is correctly mounted and writable ### Phase 4: Verify and Document diff --git a/project-words.txt b/project-words.txt index 344ec371..4b11b7df 100644 --- a/project-words.txt +++ b/project-words.txt @@ -514,3 +514,5 @@ nofail NXDOMAIN rrset rrsets +automount +ENDSSH From 1422f834c439382f7e620f58ef9c0e06f6e92b00 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 11:48:50 +0000 Subject: [PATCH 20/59] docs: fix misleading volume snapshot claim; document limitation Hetzner does not support volume snapshots (only server root disk snapshots). Remove the incorrect 'Targeted backups via snapshot' bullet and add a Problems entry explaining the limitation and the alternative (application-level backup command or rsync/tar). --- .../post-provision/volume-setup.md | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/post-provision/volume-setup.md b/docs/deployments/hetzner-demo-tracker/post-provision/volume-setup.md index 3a34420b..5606dc34 100644 --- a/docs/deployments/hetzner-demo-tracker/post-provision/volume-setup.md +++ b/docs/deployments/hetzner-demo-tracker/post-provision/volume-setup.md @@ -12,9 +12,14 @@ The server's root disk contains the OS and application binaries. Persistent trac Putting that data on a separate Hetzner volume means: -- **Targeted backups**: back up only the volume, not the entire server. - **Easy migration**: detach the volume and reattach to a new server if the VM is recreated. -- **Independent lifecycle**: you can snapshot or resize the volume without touching the server. +- **Independent lifecycle**: resize the volume without touching the server. +- **Application-level backups**: back up only the data directory, not the entire server disk + (see the application's backup commands). + +> **Note**: Hetzner does **not** support volume snapshots. Their snapshot feature only captures +> the server's root disk, not attached volumes. Data backup must be done at the application +> level (e.g. the deployer's `backup` command) or via filesystem-level tools (rsync, tar). ## Volume Specification @@ -213,7 +218,14 @@ owned by `torrust:torrust`, and will remount automatically on reboot. The next s ## Problems - +### Hetzner volumes cannot be snapshotted + +The Hetzner Console has no snapshot option for volumes — only for server root disks. There is +no API endpoint for volume snapshots either. + +Data backup must be handled at the application level. The deployer provides a `backup` command +for this purpose. Alternatively, use filesystem tools (`rsync`, `tar`) to copy the volume +data to an off-server location. ## Improvements From 650936f6b9c70bb326faced9a86ab162639d3da2 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 11:57:02 +0000 Subject: [PATCH 21/59] docs: document configure command execution (task 3.2 done) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add commands/configure/README.md with actual output (took ~103 s) - Add commands/release/README.md skeleton (placeholder for next step) - Mark task 3.2 done in issue tracker Server post-configure state: Docker 28.2.2 and Docker Compose v2.29.2 installed and running. No containers running yet (expected — release and run come next). --- .../commands/configure/README.md | 64 +++++++++++++++++++ .../commands/release/README.md | 33 ++++++++++ ...tzner-demo-tracker-and-document-process.md | 2 +- 3 files changed, 98 insertions(+), 1 deletion(-) create mode 100644 docs/deployments/hetzner-demo-tracker/commands/configure/README.md create mode 100644 docs/deployments/hetzner-demo-tracker/commands/release/README.md diff --git a/docs/deployments/hetzner-demo-tracker/commands/configure/README.md b/docs/deployments/hetzner-demo-tracker/commands/configure/README.md new file mode 100644 index 00000000..ac66da79 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/commands/configure/README.md @@ -0,0 +1,64 @@ +# Command: configure + +> **Status**: ✅ Configured successfully (2026-03-04, took ~103 s). + +## What `configure` does + +The `configure` command: + +1. Renders Ansible playbook templates into `build//ansible/`. +2. Runs the Ansible playbook over SSH to set up the server: + - Installs Docker and Docker Compose. + - Creates the application user and directory structure under `/opt/torrust/`. + - Writes the tracker configuration files (`.env`, `docker-compose.yml`, + `tracker.toml`, Prometheus config, Grafana provisioning) to + `/opt/torrust/` on the server. +3. Marks the environment as `Configured` on success. + +It does **not** pull Docker images or start any services — that is done by `release` and `run`. + +## Command + +```bash +docker run --rm \ + -v $(pwd)/data:/var/lib/torrust/deployer/data \ + -v $(pwd)/build:/var/lib/torrust/deployer/build \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + -v ~/.ssh:/home/deployer/.ssh:ro \ + torrust/tracker-deployer:latest \ + configure torrust-tracker-demo 2>&1 | tee -a data/logs/log.txt +``` + +## Output + +```text +[2026-03-04 11:52:13] Starting Torrust Tracker Deployer container... +[2026-03-04 11:52:13] Verifying installed tools... +[2026-03-04 11:52:13] Tool versions: +[2026-03-04 11:52:13] - OpenTofu: OpenTofu v1.11.5 +[2026-03-04 11:52:13] - Ansible: ansible [core 2.20.3] +[2026-03-04 11:52:13] - SSH: OpenSSH_10.0p2 Debian-7, OpenSSL 3.5.4 30 Sep 2025 +[2026-03-04 11:52:13] - Git: git version 2.47.3 +[2026-03-04 11:52:13] SSH directory found, checking permissions... +[2026-03-04 11:52:13] Container initialization complete. Executing command... +⏳ [1/3] Validating environment... +⏳ ✓ Environment name validated: torrust-tracker-demo (took 0ms) +⏳ [2/3] Creating command handler... +⏳ ✓ Done (took 0ms) +⏳ [3/3] Configuring infrastructure... +⏳ ✓ Infrastructure configured (took 103.5s) +✅ Environment 'torrust-tracker-demo' configured successfully + +{ + "environment_name": "torrust-tracker-demo", + "instance_name": "torrust-tracker-vm-torrust-tracker-demo", + "provider": "hetzner", + "state": "Configured", + "instance_ip": "46.225.234.201", + "created_at": "2026-03-03T19:00:42.481676821Z" +} +``` + +## Problems + +None. diff --git a/docs/deployments/hetzner-demo-tracker/commands/release/README.md b/docs/deployments/hetzner-demo-tracker/commands/release/README.md new file mode 100644 index 00000000..f7143a78 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/commands/release/README.md @@ -0,0 +1,33 @@ +# Command: release + +> **Status**: 🔄 In progress (2026-03-04) + +## What `release` does + +The `release` command: + +1. Pulls the latest Docker images for the tracker and monitoring stack on the server. +2. Stages the release artifacts. +3. Marks the environment as `Released` on success. + +It does **not** start the services — that is done by the `run` command. + +## Command + +```bash +docker run --rm \ + -v $(pwd)/data:/var/lib/torrust/deployer/data \ + -v $(pwd)/build:/var/lib/torrust/deployer/build \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + -v ~/.ssh:/home/deployer/.ssh:ro \ + torrust/tracker-deployer:latest \ + release torrust-tracker-demo 2>&1 | tee -a data/logs/log.txt +``` + +## Output + + + +## Problems + + diff --git a/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md b/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md index 1ef68e4f..08804360 100644 --- a/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md +++ b/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md @@ -62,7 +62,7 @@ docs/deployments/ ### Phase 3: Deploy the Tracker - [x] Task 3.1: Provision infrastructure (create Hetzner VM) -- [ ] Task 3.2: Configure the instance (Docker, SSH, system setup) +- [x] Task 3.2: Configure the instance (Docker, SSH, system setup) - [ ] Task 3.3: Release the application (deploy tracker files) - [ ] Task 3.4: Run the services (start the tracker) From 31d724c583b0d2da2e72917488f5ad806dcf06d8 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 12:05:30 +0000 Subject: [PATCH 22/59] docs: document volume/IP setup sequencing tradeoffs in post-provision Add a 'Design Notes' section to post-provision/README.md covering: - Why the deployer has no failure-recovery (intentional design: complexity vs. fast server recreation) - The sequencing dilemma: volume must be set up before configure (so Ansible writes data directly to the volume), but this means extra manual work if provision fails and the server must be recreated - Floating IPs are safe: just reassign to the new server, no DNS changes - Volume is the painful part: detach, reattach, remount on the new server - Alternative approach: defer volume setup until after run succeeds, then migrate data (better for prod, acceptable overhead for demo) Also update status table: DNS and Volume setup both marked done. --- .../post-provision/README.md | 66 +++++++++++++++++-- 1 file changed, 62 insertions(+), 4 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/post-provision/README.md b/docs/deployments/hetzner-demo-tracker/post-provision/README.md index 5d0946d7..2541fb58 100644 --- a/docs/deployments/hetzner-demo-tracker/post-provision/README.md +++ b/docs/deployments/hetzner-demo-tracker/post-provision/README.md @@ -7,10 +7,10 @@ on the server via SSH. ## Steps -| Step | Guide | Status | -| --------------- | ---------------------------------- | ---------- | -| 1. DNS Setup | [dns-setup.md](dns-setup.md) | ⏳ Pending | -| 2. Volume Setup | [volume-setup.md](volume-setup.md) | ⏳ Pending | +| Step | Guide | Status | +| --------------- | ---------------------------------- | ------- | +| 1. DNS Setup | [dns-setup.md](dns-setup.md) | ✅ Done | +| 2. Volume Setup | [volume-setup.md](volume-setup.md) | ✅ Done | ## Why Before `configure`? @@ -23,3 +23,61 @@ on the server via SSH. server. If the external volume is attached and mounted at `/opt/torrust/storage` **before** `configure` runs, Ansible writes all persistent data directly onto the volume — so nothing needs to be migrated afterwards. + +## Design Notes: Tradeoffs in Setup Sequencing + +### Deployer state recovery is intentionally absent + +The deployer has no failure-recovery mechanism — if a command fails (e.g. `provision`), the +environment is left in a failed state (e.g. `ProvisioningFailed`) and the only path forward is +to clean up and start from scratch. This was a deliberate design decision: + +1. **Complexity**: Implementing robust recovery logic for partial infrastructure states + (half-created servers, partial Ansible runs, etc.) is significantly complex. +2. **Speed**: Recreating a server from scratch takes less than 5 minutes. + +This tradeoff works well for the core deployment flow (`provision` → `configure` → `release` +→ `run`). However, it interacts poorly with the extra setup steps introduced by this +deployment's use of floating IPs and an external storage volume. + +### Volume attachment timing: a sequencing dilemma + +For this demo deployment we chose to add two infrastructure extras: + +- **Floating IPs** — so DNS records stay stable if the server is ever recreated. +- **External storage volume** — so tracker data survives server recreation and can be + backed up independently. + +These extras must currently be set up **before** `configure` (see "Why Before `configure`?") +because Ansible writes data directly to `/opt/torrust/storage/` during `configure`. If the +volume is not mounted at that path beforehand, data lands on the root disk and would need to +be migrated later. + +This creates a problem when the deployment fails and must be restarted from scratch: + +- **Floating IPs**: No problem — the IPs are already assigned and the DNS records already + point to them. When a new server is created, you simply reassign the floating IPs to it. + No DNS changes needed. +- **Volume**: The volume must be detached from the old server, then reattached and remounted + on the new server. All the fstab and mount point setup must be repeated. This is not + complex, but it is manual work. + +### Alternative: defer volume setup until after `run` succeeds + +An alternative approach would be to: + +1. Run the full deployment (`provision` → `configure` → `release` → `run`) without the + external volume — all data lands on the root disk at `/opt/torrust/storage/`. +2. Only after `run` succeeds and the tracker is confirmed working, attach the volume and + migrate the data directory to it. + +**Pros**: If `provision` fails and you need to start over, there is no volume to reattach +— just provision a new server and rerun the deployment commands. + +**Cons**: Requires a data migration step (copy `/opt/torrust/storage/` from the root disk to +the volume, update the mount point) after the deployment is confirmed working. Slightly +more complex as a one-time operation. + +For a long-running production server this migration cost is worth it. For a demo that may be +re-provisioned many times during development, the current approach (volume before `configure`) +is acceptable since it only requires rerunning the volume setup script. From beaf2f93676dd763eb6e83580863232b6ba98e40 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 12:14:06 +0000 Subject: [PATCH 23/59] docs: add observations file and fill in missing ToC entries - New observations.md: cross-cutting deployer insights gathered during this deployment. First entry documents the theoretical state recovery path via environment.json snapshots, with a prominent warning about the risks of partial execution states. - Updated main README.md ToC: added configure, release, run to the deployment commands list and added observations.md as item 7. - Updated Phase 4 section to reference the completed configure README. - Added run/README.md placeholder (parallel to existing release placeholder). Refs #405 --- .../hetzner-demo-tracker/README.md | 7 +- .../commands/run/README.md | 30 +++++++ .../hetzner-demo-tracker/observations.md | 82 +++++++++++++++++++ 3 files changed, 118 insertions(+), 1 deletion(-) create mode 100644 docs/deployments/hetzner-demo-tracker/commands/run/README.md create mode 100644 docs/deployments/hetzner-demo-tracker/observations.md diff --git a/docs/deployments/hetzner-demo-tracker/README.md b/docs/deployments/hetzner-demo-tracker/README.md index bd3e34be..23e5a5a0 100644 --- a/docs/deployments/hetzner-demo-tracker/README.md +++ b/docs/deployments/hetzner-demo-tracker/README.md @@ -17,6 +17,9 @@ Deploy a public Torrust Tracker demo instance to Hetzner Cloud and document ever 3. Deployment commands — step-by-step per deployer command: - [create](commands/create/README.md) — generate template, validate, create environment - [provision](commands/provision/README.md) — create the Hetzner VM + - [configure](commands/configure/README.md) — install Docker and Docker Compose on the server + - [release](commands/release/README.md) — pull and stage Docker images + - [run](commands/run/README.md) — start all services 4. Post-provision manual steps (done once, before `configure`): - [DNS setup](post-provision/dns-setup.md) — assign floating IPs, create DNS records, verify - [Volume setup](post-provision/volume-setup.md) — create and mount Hetzner volume for storage @@ -25,6 +28,7 @@ Deploy a public Torrust Tracker demo instance to Hetzner Cloud and document ever - [provision problems](commands/provision/problems.md) 6. Improvements — recommended deployer improvements found during this deployment: - [provision improvements](commands/provision/improvements.md) +7. [Observations](observations.md) — cross-cutting insights and learnings about the deployer ## Deployment @@ -58,7 +62,8 @@ See [post-provision/README.md](post-provision/README.md) for the full overview. ### Phase 4: Configure Instance - +See [commands/configure/README.md](commands/configure/README.md) for running the `configure` +command. Installs Docker 28.2.2 and Docker Compose v2.29.2. ### Phase 5: Release Application diff --git a/docs/deployments/hetzner-demo-tracker/commands/run/README.md b/docs/deployments/hetzner-demo-tracker/commands/run/README.md new file mode 100644 index 00000000..d5b8ae24 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/commands/run/README.md @@ -0,0 +1,30 @@ +# Command: run + +> **Status**: ⏳ Not yet run + +## What `run` does + +The `run` command: + +1. Starts all Docker Compose services on the server (tracker, Prometheus, Grafana). +2. Waits for the services to become healthy. +3. Marks the environment as `Running` on success. + +It requires the environment to already be in a `Released` state (i.e., `release` must have been +run first). + +## Command + +```bash +docker run --rm \ + -v $(pwd)/data:/var/lib/torrust/deployer/data \ + -v $(pwd)/build:/var/lib/torrust/deployer/build \ + -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ + -v ~/.ssh:/home/deployer/.ssh:ro \ + torrust/tracker-deployer:latest \ + run torrust-tracker-demo 2>&1 | tee -a data/logs/log.txt +``` + +## Output + + diff --git a/docs/deployments/hetzner-demo-tracker/observations.md b/docs/deployments/hetzner-demo-tracker/observations.md new file mode 100644 index 00000000..f6f4e230 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/observations.md @@ -0,0 +1,82 @@ +# Deployment Observations + +Cross-cutting learnings and insights gathered during this deployment that apply to the deployer +in general, not to any specific command or step. + +## Deployer State and Recovery + +### No built-in failure recovery (by design) + +The deployer has no mechanism to recover from a failed state. If a command fails (e.g. +`provision` fails halfway through), the environment is left in a failed state +(`ProvisioningFailed`, `ConfigureFailed`, etc.) and the only supported path forward is to clean +up and restart from scratch. + +This is intentional — see +[post-provision/README.md § Design Notes](post-provision/README.md#design-notes-tradeoffs-in-setup-sequencing) +for the rationale (recovery complexity vs. fast server recreation). + +### Potential manual recovery via state snapshot (untested) + +> ⚠️ **Warning**: This approach has not been tested or verified. It is a theoretical recovery +> path. Only attempt it if you understand exactly why the command failed and are confident the +> server is in a state that can be manually completed. Getting this wrong may leave the +> environment in a worse, harder-to-diagnose state. + +The deployer stores the environment state in a JSON file at: + +```text +data//environment.json +``` + +For this deployment: + +```text +data/torrust-tracker-demo/environment.json +``` + +This file tracks the current state (`Provisioned`, `Configured`, `Released`, `Running`, etc.) +and metadata like the server IP and creation timestamp. + +**Theoretical recovery procedure:** + +1. **Before running a command**, take a snapshot of the state file: + + ```bash + cp data/torrust-tracker-demo/environment.json \ + data/torrust-tracker-demo/environment.json.bak-before-configure + ``` + +2. **If the command fails**, identify exactly what the command did before failing. For example: + - `configure` installs Docker, Docker Compose, and then writes application config files. + If it failed after installing Docker but before writing config files, Docker is installed + but the config is incomplete. + - `release` pulls Docker images and stages release artifacts. If it failed midway, some + images may be present, others not. + +3. **Manually complete or undo the partial work** on the server via SSH so the server is in a + consistent state matching the target state of the command. + +4. **Restore the pre-command snapshot**: + + ```bash + cp data/torrust-tracker-demo/environment.json.bak-before-configure \ + data/torrust-tracker-demo/environment.json + ``` + +5. **Retry the command.** + +**When this is safe to attempt:** + +- The failure reason is clear and the root cause is understood. +- The partial work done by the command is reversible or completable manually. +- You can verify the server state via SSH before retrying. + +**When NOT to attempt this:** + +- The failure cause is unknown. +- Infrastructure state (e.g. Hetzner resources created by OpenTofu) is out of sync with + the local Tofu state files — in that case, restoring the environment JSON will not fix the + inconsistency and may cause further problems. +- The command involved OpenTofu (`provision`, `destroy`) — Tofu manages its own state in + `build//tofu/` and that state must also be consistent. From e874e96bce7a468b0662181a765b5d615062ee70 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 12:32:56 +0000 Subject: [PATCH 24/59] docs: document release fails when deployer runs inside Docker (docker not in PATH) The local docker-compose.yml validator added in PR #384 runs 'docker compose config --quiet' on the host. When the deployer is invoked via its Docker container (the standard usage), the docker binary is not installed inside the container and the command fails with ENOENT, aborting the release. Documents: - Root cause: local validator assumes docker is in PATH, but the deployer container has no docker binary installed - Fix applied: handle ErrorKind::NotFound gracefully (skip with warning) - State recovery: how environment.json was manually reset from ReleaseFailed to Configured so release could be retried Also adds 'ENOENT' to project-words.txt. Refs #405 --- .../commands/release/bugs.md | 81 +++++++++++++++++++ project-words.txt | 1 + 2 files changed, 82 insertions(+) create mode 100644 docs/deployments/hetzner-demo-tracker/commands/release/bugs.md diff --git a/docs/deployments/hetzner-demo-tracker/commands/release/bugs.md b/docs/deployments/hetzner-demo-tracker/commands/release/bugs.md new file mode 100644 index 00000000..80926ea2 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/commands/release/bugs.md @@ -0,0 +1,81 @@ +# Release Command — Bugs + +## Bug: `release` fails when deployer runs inside Docker (docker not in PATH) + +**Status**: Fixed in this branch (pending merge) +**Related PR**: [#384](https://github.com/torrust/torrust-tracker-deployer/pull/384) introduced the local validator +**Severity**: High — `release` is completely broken when running the deployer via Docker container + +### Symptom + +Running the `release` command via the Docker container fails immediately with: + +```text +❌ Release command failed: Release command failed: Template rendering failed: +Docker Compose template rendering failed: Rendered docker-compose.yml failed +local validation: Failed to run 'docker compose config --quiet' — is Docker +installed and in PATH? +Source: No such file or directory (os error 2) +``` + +The environment transitions to `ReleaseFailed` state and the deployment cannot continue. + +### Root Cause + +PR [#384](https://github.com/torrust/torrust-tracker-deployer/pull/384) added a +local validation step that runs `docker compose config --quiet` against the rendered +`docker-compose.yml` before uploading it to the remote server. This is a useful check +when the deployer runs natively on a machine where Docker is installed. + +However, the standard production usage is to run the deployer **inside a Docker +container** (`torrust/tracker-deployer:latest`). The deployer container does not +contain a `docker` binary — it has no need to run Docker locally. When `docker` is not +in PATH, the OS returns `ENOENT` (error 2, "No such file or directory"), which the +validator treated as a hard failure. + +### Fix Applied + +The validator in +`src/infrastructure/templating/docker_compose/local_validator.rs` was updated to +handle `io::ErrorKind::NotFound` gracefully: when `docker` is not in PATH, validation +is **skipped** with a warning log rather than failing the command. + +The warning logged when running inside a container: + +```text +WARN Skipping local docker-compose.yml validation: 'docker' is not available +in PATH (deployer may be running inside a container). The rendered file will be +validated by Docker Compose on the remote host. +``` + +Any other OS error (e.g. `PermissionDenied`) is still treated as a hard failure, +since that indicates a real system problem. + +### State Recovery Applied + +After the failed `release`, the environment state was manually reset from +`ReleaseFailed` back to `Configured` so that `release` could be retried: + +```bash +# Before resetting: back up the failed state +cp data/torrust-tracker-demo/environment.json \ + data/torrust-tracker-demo/environment.json.release-failed-bak + +# Reset to Configured (the state serialized as {"Configured": {"context": ..., "state": null}}) +python3 -c " +import json +with open('data/torrust-tracker-demo/environment.json') as f: + data = json.load(f) +context = data['ReleaseFailed']['context'] +new_data = {'Configured': {'context': context, 'state': None}} +with open('data/torrust-tracker-demo/environment.json', 'w') as f: + json.dump(new_data, f, indent=2) +" +``` + +This is the manual state recovery approach described in +[observations.md](../../observations.md#potential-manual-recovery-via-state-snapshot-untested). +It was safe here because: + +- The failure happened at template rendering, **before** any remote action was taken +- The server state was not modified at all during the failed `release` attempt diff --git a/project-words.txt b/project-words.txt index 4b11b7df..6fb802ce 100644 --- a/project-words.txt +++ b/project-words.txt @@ -516,3 +516,4 @@ rrset rrsets automount ENDSSH +ENOENT From fb7a7ff2526a0c3733c386c7bf84b80951765834 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 12:34:31 +0000 Subject: [PATCH 25/59] fix: skip docker-compose local validation when docker is not in PATH When the deployer runs inside a Docker container (the standard production usage), the 'docker' binary is not installed inside the container. The local validator was treating io::ErrorKind::NotFound as a hard failure, blocking the release command entirely. Fix: match on NotFound specifically and skip validation with a warning log. Any other OS error (e.g. PermissionDenied) is still a hard failure. The warning message makes the skip reason explicit: 'Skipping local docker-compose.yml validation: docker is not available in PATH (deployer may be running inside a container). The rendered file will be validated by Docker Compose on the remote host.' Also updates the CommandExecutionFailed error message and test to reflect that NotFound is no longer an error case. Fixes release failure documented in: docs/deployments/hetzner-demo-tracker/commands/release/bugs.md Refs #405 --- .../docker_compose/local_validator.rs | 49 ++++++++++++++----- 1 file changed, 38 insertions(+), 11 deletions(-) diff --git a/src/infrastructure/templating/docker_compose/local_validator.rs b/src/infrastructure/templating/docker_compose/local_validator.rs index 061d7f21..1d31048a 100644 --- a/src/infrastructure/templating/docker_compose/local_validator.rs +++ b/src/infrastructure/templating/docker_compose/local_validator.rs @@ -14,6 +14,14 @@ //! failure. This is a cheap, dependency-free check — `docker` is already a //! project requirement. //! +//! ## Graceful degradation when Docker is not available +//! +//! When the deployer itself runs **inside a Docker container** (the typical +//! production usage pattern), `docker` is not installed inside that container. +//! In that case the validator logs a warning and skips the check rather than +//! failing the command — a missing tool cannot indicate a template error. Any +//! other OS error (e.g. permission denied) is still treated as a hard failure. +//! //! ## Example failure caught by this validator //! //! An empty `networks:` key (no list items) produces: @@ -32,6 +40,7 @@ //! validate_docker_compose_file(Path::new("build/my-env/docker-compose")).unwrap(); //! ``` +use std::io; use std::path::Path; use std::process::Command; @@ -40,9 +49,9 @@ use thiserror::Error; /// Errors that can occur when validating a rendered `docker-compose.yml` #[derive(Error, Debug)] pub enum DockerComposeLocalValidationError { - /// The `docker` binary could not be executed (not installed or not in PATH) + /// The `docker` binary could be found but could not be executed (e.g. permission denied) #[error( - "Failed to run 'docker compose config --quiet' — is Docker installed and in PATH?\n\ + "Failed to run 'docker compose config --quiet' — unexpected OS error.\n\ Source: {source}" )] CommandExecutionFailed { @@ -69,7 +78,8 @@ impl DockerComposeLocalValidationError { pub fn help(&self) -> String { match self { Self::CommandExecutionFailed { .. } => { - "Install Docker and ensure it is added to your PATH, then re-run the command." + "An unexpected OS error occurred while trying to run Docker.\n\ + Check that Docker is installed and that the current user has permission to run it." .to_string() } Self::InvalidDockerComposeFile { .. } => { @@ -89,6 +99,11 @@ impl DockerComposeLocalValidationError { /// The command is executed in `compose_dir` so that it picks up the /// `docker-compose.yml` (and optionally `.env`) that live there. /// +/// When `docker` is not installed (e.g. when the deployer itself runs inside a +/// Docker container), validation is **skipped** with a warning rather than +/// treating the missing tool as a template error. Any other OS error is still +/// a hard failure. +/// /// # Arguments /// /// * `compose_dir` — directory containing the rendered `docker-compose.yml` @@ -96,7 +111,7 @@ impl DockerComposeLocalValidationError { /// # Errors /// /// - [`DockerComposeLocalValidationError::CommandExecutionFailed`] if `docker` -/// cannot be executed (not installed, not in PATH, OS error, …) +/// is found but cannot be executed due to an unexpected OS error /// - [`DockerComposeLocalValidationError::InvalidDockerComposeFile`] if the /// file fails structural validation /// @@ -113,11 +128,25 @@ pub fn validate_docker_compose_file( "Validating rendered docker-compose.yml with 'docker compose config --quiet'" ); - let output = Command::new("docker") + let output = match Command::new("docker") .args(["compose", "config", "--quiet"]) .current_dir(compose_dir) .output() - .map_err(|source| DockerComposeLocalValidationError::CommandExecutionFailed { source })?; + { + Ok(out) => out, + Err(err) if err.kind() == io::ErrorKind::NotFound => { + tracing::warn!( + compose_dir = %compose_dir.display(), + "Skipping local docker-compose.yml validation: \ + 'docker' is not available in PATH (deployer may be running inside a container). \ + The rendered file will be validated by Docker Compose on the remote host." + ); + return Ok(()); + } + Err(source) => { + return Err(DockerComposeLocalValidationError::CommandExecutionFailed { source }); + } + }; if output.status.success() { tracing::debug!( @@ -232,13 +261,11 @@ services: #[test] fn it_should_return_help_message_for_command_execution_failed() { let error = DockerComposeLocalValidationError::CommandExecutionFailed { - source: std::io::Error::new(std::io::ErrorKind::NotFound, "not found"), + // Use PermissionDenied — NotFound is handled as a skip (not an error) + source: std::io::Error::new(std::io::ErrorKind::PermissionDenied, "permission denied"), }; let help = error.help(); assert!(!help.is_empty(), "Help message must not be empty"); - assert!( - help.contains("Docker"), - "Help should mention Docker installation" - ); + assert!(help.contains("Docker"), "Help should mention Docker"); } } From a5c7913397f6c947ca4f8c382e24f07daf64b842 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 12:44:30 +0000 Subject: [PATCH 26/59] docs: document successful release command (task 3.3 done) - release/README.md: populated with actual output (~134 s, state=Released), plus reference to bugs.md for the docker-not-in-PATH issue on first attempt - hetzner-demo-tracker/README.md: Phase 5 section filled in - issue 405: task 3.3 marked done Refs #405 --- .../hetzner-demo-tracker/README.md | 3 +- .../commands/release/README.md | 32 +++++++++++++++++-- ...tzner-demo-tracker-and-document-process.md | 2 +- 3 files changed, 32 insertions(+), 5 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/README.md b/docs/deployments/hetzner-demo-tracker/README.md index 23e5a5a0..de3dd84d 100644 --- a/docs/deployments/hetzner-demo-tracker/README.md +++ b/docs/deployments/hetzner-demo-tracker/README.md @@ -67,7 +67,8 @@ command. Installs Docker 28.2.2 and Docker Compose v2.29.2. ### Phase 5: Release Application - +See [commands/release/README.md](commands/release/README.md) for running the `release` +command. Pulled and staged all Docker images (~134 s, state=`Released`). ### Phase 6: Run Services diff --git a/docs/deployments/hetzner-demo-tracker/commands/release/README.md b/docs/deployments/hetzner-demo-tracker/commands/release/README.md index f7143a78..5a683a3c 100644 --- a/docs/deployments/hetzner-demo-tracker/commands/release/README.md +++ b/docs/deployments/hetzner-demo-tracker/commands/release/README.md @@ -1,6 +1,6 @@ # Command: release -> **Status**: 🔄 In progress (2026-03-04) +> **Status**: ✅ Done (2026-03-04) ## What `release` does @@ -26,8 +26,34 @@ docker run --rm \ ## Output - +```text +[2026-03-04 12:35:20] Starting Torrust Tracker Deployer container... +[2026-03-04 12:35:20] Verifying installed tools... +[2026-03-04 12:35:20] Tool versions: +[2026-03-04 12:35:20] - OpenTofu: OpenTofu v1.11.5 +[2026-03-04 12:35:20] - Ansible: ansible [core 2.20.3] +[2026-03-04 12:35:20] - SSH: OpenSSH_10.0p2 Debian-7, OpenSSL 3.5.4 30 Sep 2025 +[2026-03-04 12:35:20] - Git: git version 2.47.3 +[2026-03-04 12:35:20] SSH directory found, checking permissions... +[2026-03-04 12:35:20] Container initialization complete. Executing command... +⏳ [1/2] Validating environment... +⏳ ✓ Environment name validated: torrust-tracker-demo (took 0ms) +⏳ [2/2] Releasing application... +⏳ ✓ Application released successfully (took 133.5s) +{ + "environment_name": "torrust-tracker-demo", + "instance_name": "torrust-tracker-vm-torrust-tracker-demo", + "provider": "hetzner", + "state": "Released", + "instance_ip": "46.225.234.201", + "created_at": "2026-03-03T19:00:42.481676821Z" +} +``` + +**Duration**: ~134 seconds (image pulls dominate) ## Problems - +See [bugs.md](bugs.md) for the issue encountered on the first attempt: +`release` failed with `docker not in PATH` when running via the deployer container. +The fix was applied and the image was rebuilt before the successful run above. diff --git a/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md b/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md index 08804360..5b2fbc2c 100644 --- a/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md +++ b/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md @@ -63,7 +63,7 @@ docs/deployments/ - [x] Task 3.1: Provision infrastructure (create Hetzner VM) - [x] Task 3.2: Configure the instance (Docker, SSH, system setup) -- [ ] Task 3.3: Release the application (deploy tracker files) +- [x] Task 3.3: Release the application (deploy tracker files) - [ ] Task 3.4: Run the services (start the tracker) ### Phase 3.5: Post-Provision Manual Setup From b136e5cf2675586adc367da1e9997bae36d3db03 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 13:05:08 +0000 Subject: [PATCH 27/59] docs(hetzner-demo): document run command MySQL bugs and failure Add bugs.md documenting two bugs found during the run command: - Bug 1: MYSQL_USER='root' is not rejected at environment creation time, causing MySQL 8.4 to refuse to start with a confusing error - Bug 2: MySQL root password silently gets a '_root' suffix appended, diverging from the configured password in the env JSON config Add problems.md documenting the run command failure symptom, confirmed root cause, required fix, and related deployer improvement needed. --- .../hetzner-demo-tracker/commands/run/bugs.md | 126 ++++++++++++++++++ .../commands/run/problems.md | 101 ++++++++++++++ 2 files changed, 227 insertions(+) create mode 100644 docs/deployments/hetzner-demo-tracker/commands/run/bugs.md create mode 100644 docs/deployments/hetzner-demo-tracker/commands/run/problems.md diff --git a/docs/deployments/hetzner-demo-tracker/commands/run/bugs.md b/docs/deployments/hetzner-demo-tracker/commands/run/bugs.md new file mode 100644 index 00000000..929605bb --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/commands/run/bugs.md @@ -0,0 +1,126 @@ +# Run Command — Bugs + +## Bug 1: MySQL app username `"root"` is not rejected at environment creation time + +**Status**: Open — no fix applied yet +**Severity**: High — silently generates an invalid configuration that prevents MySQL from starting + +### Symptom + +The `run` command fails because the MySQL container is unhealthy. MySQL 8.4 +refuses to start with `MYSQL_USER="root"` and prints the following error +repeatedly in its logs: + +```text +[ERROR] [Entrypoint]: MYSQL_USER="root", MYSQL_USER and MYSQL_PASSWORD are for +configuring a regular user and cannot be used for the root user. + Remove MYSQL_USER="root" and use one of the following to control the root + user password: + - MYSQL_ROOT_PASSWORD + - MYSQL_ALLOW_EMPTY_PASSWORD + - MYSQL_RANDOM_ROOT_PASSWORD +``` + +Because MySQL never reaches a healthy state, the dependent containers (tracker, +caddy, prometheus, grafana) all fail to start. + +### Root Cause + +The deployer accepts any string as `username` in the MySQL database block of the +environment JSON config. When `username` is `"root"`, the template renderer +places it into `MYSQL_USER` in the generated `.env` file: + +```env +MYSQL_USER='root' ← MySQL 8.4 rejects this +``` + +MySQL's `MYSQL_USER` environment variable is intended solely for creating a new +**non-root application user** on first boot. The root user is managed exclusively +via `MYSQL_ROOT_PASSWORD`. Passing `MYSQL_USER=root` is explicitly rejected since +MySQL 8.4. + +The deployer does not validate this constraint. It silently renders an unusable +configuration, which only fails later at `run` time (when MySQL actually starts), +not at creation or release time. + +### Affected Code + +- `src/application/services/rendering/docker_compose.rs` — + `create_mysql_contexts()` passes `username` directly to `MYSQL_USER` without + checking for the reserved value `"root"`. +- `templates/docker-compose/.env.tera` — renders `MYSQL_USER='{{ mysql.user }}'` + verbatim. + +### Proposed Fix + +The deployer should reject `"root"` as a MySQL application username at +**environment creation time**, returning a clear user-facing error such as: + +```text +❌ Invalid MySQL configuration: username "root" is reserved. + Use a non-root application username (e.g. "torrust"). + The MySQL root user is managed automatically via MYSQL_ROOT_PASSWORD. +``` + +The validation should live in the domain layer, close to the environment config +parsing step, so that it fails early and never reaches the rendering stage. + +--- + +## Bug 2: MySQL root password silently diverges from the configured password + +**Status**: Open — no fix applied yet +**Severity**: Medium — the root password is unguessable from the env config, but +the effective root password is inconsistent with what the operator provided + +### Symptom + +The MySQL root user password set inside the container is **not** the password +specified in the environment JSON config. If any tool or script tries to connect +to MySQL as `root` using the configured password it will be denied. + +With `password = "secret"` in the env config, the `.env` file on the server +contains: + +```env +MYSQL_ROOT_PASSWORD='secret_root' ← not "secret" +MYSQL_PASSWORD='secret' +``` + +The auto-derived root password (`secret_root`) is never surfaced to the operator. + +### Root Cause + +In `src/application/services/rendering/docker_compose.rs`, `create_mysql_contexts()` +derives the root password by appending the string `"_root"` to the configured +password: + +```rust +// src/application/services/rendering/docker_compose.rs, inside create_mysql_contexts() +let root_password = format!("{password}_root"); +``` + +This was added so that the root and app passwords differ, which is good security +practice. However, the resulting root password is undocumented and bears a +mechanical relationship to the app password that a knowledgeable attacker could +exploit. + +### Affected Code + +- `src/application/services/rendering/docker_compose.rs` — + the `format!("{password}_root")` derivation inside `create_mysql_contexts()`. + +### Proposed Fix + +The root password should be either: + +1. **Explicitly configurable** — expose a separate `root_password` field in the + environment JSON config so the operator controls it directly; or +2. **Randomly generated at environment creation time** and stored in the + environment state so it can be retrieved if needed. + +Option 2 is preferred because it eliminates any predictable relationship between +the app password and the root password. + +A migration path for existing deployments should be documented and the old +`format!("{password}_root")` derivation removed. diff --git a/docs/deployments/hetzner-demo-tracker/commands/run/problems.md b/docs/deployments/hetzner-demo-tracker/commands/run/problems.md new file mode 100644 index 00000000..c44b3e3d --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/commands/run/problems.md @@ -0,0 +1,101 @@ +# Run Command — Problems + +## Problem: `run` fails — MySQL container is unhealthy (`MYSQL_USER="root"` rejected) + +**Status**: Root cause identified (2026-03-04) +**Severity**: High — `run` is blocked + +### Symptom + +The `run` command fails at the "Start Docker Compose services" Ansible task: + +```text +❌ Run command failed: Failed to start services in environment 'environment': +Ansible playbook 'run-compose-services' failed: Command +'ansible-playbook -v run-compose-services.yml' failed with exit code 2 +``` + +The Docker Compose `up -d` output shows all networks and containers were created, +but `mysql` failed its health check and the dependent containers could not start: + +```text + Container mysql Error +dependency failed to start: container mysql is unhealthy +``` + +### Root Cause + +MySQL 8.4 refuses to start when `MYSQL_USER="root"` is set, because `root` is a +reserved/privileged MySQL user that cannot be created via the `MYSQL_USER` +environment variable. Its log shows this repeatedly: + +```text +[ERROR] [Entrypoint]: MYSQL_USER="root", MYSQL_USER and MYSQL_PASSWORD are for +configuring a regular user and cannot be used for the root user + Remove MYSQL_USER="root" and use one of the following to control the root + user password: + - MYSQL_ROOT_PASSWORD + - MYSQL_ALLOW_EMPTY_PASSWORD + - MYSQL_RANDOM_ROOT_PASSWORD +``` + +The generated `.env` file on the server contains: + +```env +MYSQL_ROOT_PASSWORD='_root' +MYSQL_DATABASE='torrust' +MYSQL_USER='root' ← INVALID: MySQL 8.4 rejects this +MYSQL_PASSWORD='' +``` + +### Why This Happened + +The environment config (`envs/lxd-local-example.json`) was used as the basis for +the Hetzner deployment and had `"username": "root"` for the MySQL database +config. + +The deployer's template rendering service +(`src/application/services/rendering/docker_compose.rs`) passes `username` +directly as `MYSQL_USER`. It is designed to work with a **non-root application +user** — the `root` MySQL user is managed separately via `MYSQL_ROOT_PASSWORD`, +which is auto-derived as `{configured_password}_root`. + +Using `"username": "root"` in the environment config is an unsupported +configuration: it produces `MYSQL_USER=root` which MySQL 8.4 rejects. + +### Fix Required + +The environment config must use a **non-root MySQL username** (e.g. `torrust`). + +**Required change in the env config** (`envs/lxd-local-example.json` → +`envs/hetzner-demo.json`): + +```json +"database": { + "driver": "mysql", + "config": { + "host": "mysql", + "port": 3306, + "database_name": "torrust", + "username": "torrust", ← was "root" + "password": "..." + } +} +``` + +After updating the env config: + +1. Re-run `release` to regenerate the `.env` and `docker-compose.yml` with the + correct username. +2. Re-run `run` to start the services. + +Note: the environment state must first be reset from `RunFailed` to `Released` +before `release` can be retried. See +[observations.md](../../observations.md#potential-manual-recovery-via-state-snapshot-untested) +for the state recovery procedure. + +### Related Deployer Improvement + +The deployer should validate that `MYSQL_USER` is not `root` at environment +creation or template rendering time, and return a clear error instead of +silently generating an invalid configuration. From d3d6c645214fdd7e2303e19582c3a71f5c04a030 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 13:11:52 +0000 Subject: [PATCH 28/59] docs(hetzner-demo): clarify Bug 2 root password was never implemented MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The '_root' suffix is a placeholder stub with a comment explicitly stating it should be managed securely in production. Update the root cause description to reflect this — it was not a design decision but an unfinished implementation. --- .../hetzner-demo-tracker/commands/run/bugs.md | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/commands/run/bugs.md b/docs/deployments/hetzner-demo-tracker/commands/run/bugs.md index 929605bb..cbcaa5d4 100644 --- a/docs/deployments/hetzner-demo-tracker/commands/run/bugs.md +++ b/docs/deployments/hetzner-demo-tracker/commands/run/bugs.md @@ -91,19 +91,20 @@ The auto-derived root password (`secret_root`) is never surfaced to the operator ### Root Cause -In `src/application/services/rendering/docker_compose.rs`, `create_mysql_contexts()` -derives the root password by appending the string `"_root"` to the configured -password: +The feature was never implemented. In +`src/application/services/rendering/docker_compose.rs`, `create_mysql_contexts()` +contains a placeholder that derives the root password by appending `"_root"` to +the configured password, with a comment acknowledging the gap: ```rust -// src/application/services/rendering/docker_compose.rs, inside create_mysql_contexts() +// For MySQL, generate a secure root password (in production, this should be managed securely) let root_password = format!("{password}_root"); ``` -This was added so that the root and app passwords differ, which is good security -practice. However, the resulting root password is undocumented and bears a -mechanical relationship to the app password that a knowledgeable attacker could -exploit. +The comment explicitly says this should be managed securely in production, but +no proper implementation was ever added. The `"_root"` suffix is a stub, not a +deliberate design decision. As a result the root password silently diverges from +the configured password and the gap is invisible to the operator. ### Affected Code From 16167ccbb1bf2472604d42f058e3ba1fb0f04d58 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 14:03:24 +0000 Subject: [PATCH 29/59] docs(hetzner-demo): add Bug 3 (URL encoding) and run improvements doc Add Bug 3 to bugs.md: MySQL password is not URL-encoded when rendered into the tracker.toml connection string. A '/' in the password causes an InvalidPort parse error and the tracker enters a restart loop. Documents the manual workaround applied (%2F encoding + scp + restart). Add improvements.md clarifying that the 'Running' state only means docker compose up -d succeeded, not that all services are healthy. Documents why run intentionally does not wait for service health and points to the 'test' command as the right verification tool. --- .../hetzner-demo-tracker/commands/run/bugs.md | 104 ++++++++++++++++++ .../commands/run/improvements.md | 63 +++++++++++ 2 files changed, 167 insertions(+) create mode 100644 docs/deployments/hetzner-demo-tracker/commands/run/improvements.md diff --git a/docs/deployments/hetzner-demo-tracker/commands/run/bugs.md b/docs/deployments/hetzner-demo-tracker/commands/run/bugs.md index cbcaa5d4..240b1206 100644 --- a/docs/deployments/hetzner-demo-tracker/commands/run/bugs.md +++ b/docs/deployments/hetzner-demo-tracker/commands/run/bugs.md @@ -125,3 +125,107 @@ the app password and the root password. A migration path for existing deployments should be documented and the old `format!("{password}_root")` derivation removed. + +--- + +## Bug 3: MySQL password is not URL-encoded in the tracker connection string + +**Status**: Open — no fix applied yet (worked around manually in this deployment) +**Severity**: High — tracker crashes at startup whenever the MySQL password +contains URL-special characters (e.g. `/`, `@`, `#`, `?`, `+`) + +### Symptom + +The `run` command completes and the state transitions to `Running`, but the +tracker container immediately enters a restart loop with exit code 101. Its +logs show: + +```text +thread 'main' (1) panicked at packages/configuration/src/v2_0_0/database.rs:50:54: +path for MySQL driver should be a valid URL: InvalidPort +``` + +The `InvalidPort` error is misleading — it is caused by the password containing +a `/` character, which the URL parser treats as the start of the database-name +path segment, making the port field invalid. + +### Root Cause + +The `tracker.toml` template renders the MySQL password raw into the connection +URL: + +```text +mysql://{username}:{password}@{host}:{port}/{database} +``` + +When the password contains characters that have special meaning in a URL (such as +`/`, `@`, `#`, `?`, `+`, `%`), the resulting URL is malformed. The tracker +configuration parser rejects it at startup. + +The deployer template does not URL-encode the password before substituting it +into the connection string. + +The generated `tracker.toml` in this deployment contained: + +```toml +# The password contains a '/' character: +path = "mysql://torrust:@mysql:3306/torrust_tracker" +``` + +The `/` in the password was interpreted as a URL path separator, corrupting +the URL structure. + +### Affected Code + +The template or the Rust wrapper that renders `tracker.toml` — somewhere in the +rendering pipeline the password value is inserted as a raw string into the URL. +The exact file is in `templates/tracker/` or the corresponding Rust wrapper +under `src/infrastructure/templating/`. + +### Recovery Applied (Manual Workaround) + +After `run` transitioned the state to `Running`, the tracker restart loop was +diagnosed from SSH: + +```bash +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 +cd /opt/torrust && docker compose logs tracker --tail 30 +``` + +The `tracker.toml` file was manually fixed locally by URL-encoding the `/` as +`%2F` in the connection string: + +```toml +# Before (broken — '/' in password breaks URL parsing): +path = "mysql://torrust:@mysql:3306/torrust_tracker" + +# After (fixed — '/' encoded as '%2F'): +path = "mysql://torrust:@mysql:3306/torrust_tracker" +``` + +The fixed file was uploaded and the tracker container restarted: + +```bash +scp -i ~/.ssh/torrust_tracker_deployer_ed25519 \ + build/torrust-tracker-demo/tracker/tracker.toml \ + torrust@46.225.234.201:/tmp/ +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 " + sudo cp /tmp/tracker.toml /opt/torrust/storage/tracker/etc/tracker.toml + cd /opt/torrust && sudo docker compose restart tracker +" +``` + +The tracker came up healthy after the restart. The environment state was already +`Running` (the state transition happened when `docker compose up -d` returned +successfully), so no state reset was required. + +### Proposed Fix + +The rendering layer must percent-encode any characters with special URL meaning +in the password before substituting it into the MySQL connection URL. At minimum +the following characters must be encoded: `/`, `@`, `#`, `?`, `+`, `%`, `&`, +`=`, ` `. + +The correct place to apply this is in the Rust wrapper or Tera template that +builds the `tracker.toml` connection string, not in the raw password value +stored in the env config. diff --git a/docs/deployments/hetzner-demo-tracker/commands/run/improvements.md b/docs/deployments/hetzner-demo-tracker/commands/run/improvements.md new file mode 100644 index 00000000..fd1422f8 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/commands/run/improvements.md @@ -0,0 +1,63 @@ +# Run Command — Improvements + +## Improvement: `Running` state does not guarantee services are healthy + +**Status**: Documented — existing `test` command is the recommended solution +**Type**: Clarification / UX + +### Observation + +After the `run` command completes and the environment transitions to `Running`, +the individual containers are not necessarily healthy. In this deployment the +state became `Running` while the tracker container was stuck in a restart loop +due to [Bug 3](bugs.md#bug-3-mysql-password-is-not-url-encoded-in-the-tracker-connection-string). +The deployer gave no indication that anything was wrong. + +The `Running` state only means that `docker compose up -d` exited with code 0 — +i.e. Docker accepted the request to start the stack. It says nothing about +whether each service is actually reachable and functioning. + +### Why the `run` Command Does Not Wait for Health + +Waiting inside `run` for all containers to become healthy is difficult in +practice because: + +- Health checks vary per service and are defined in `docker-compose.yml` with + service-specific commands and timeouts. +- Some services (e.g. Caddy obtaining TLS certificates) can take tens of seconds + or minutes to become fully operational depending on DNS propagation and the + ACME provider. +- The deployer has no deep knowledge of what "healthy" means for each service + beyond what Docker's own health-check reports, and Docker's health-check for + the tracker does not distinguish between "still starting" and "crashed". + +Blocking the `run` command until everything is provably healthy would require +duplicating the logic that is already expressed in the `test` command (smoke +tests). + +### Recommended Approach + +The deployer already provides a separate `test` command that runs smoke tests +against the deployed stack. That is the right tool for verifying that services +are actually reachable and responding correctly after `run` completes. + +The intended workflow is: + +```text +release → run → test +``` + +`run` starts the stack; `test` confirms it works. Operators should always run +`test` after `run` and treat a passing `test` as the definitive signal that the +deployment is functional. + +### Possible Future Improvement + +A lightweight post-start check could be added to `run` that waits for Docker's +own health status (not full smoke-test level) to settle — for example polling +`docker compose ps` until no container is in `starting` or `restarting` state, +with a configurable timeout. This would catch fast-failing containers like the +tracker URL-encoding crash without requiring the full `test` logic inside `run`. + +This should be considered only if the cost of running `test` immediately after +`run` becomes a significant friction point for operators. From 45f06bf1d5a8bd068399eb413ce8991f4d233437 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 14:12:19 +0000 Subject: [PATCH 30/59] docs(hetzner-demo): populate run README and add test command docs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Populate run/README.md with the actual command output from the successful run (2026-03-04, ~31.6s, state Released→Running). Adds a note about the Bug 3 tracker restart loop that was fixed manually before testing. Add test/README.md documenting the test command: what it does, the full command invocation, the complete output from the first run including the four DNS warnings, and an explanation of why the warnings are expected (domains resolve to the floating IP 116.202.176.169 rather than the instance IP 46.225.234.201 by design). --- .../commands/run/README.md | 94 +++++++++++++-- .../commands/test/README.md | 109 ++++++++++++++++++ 2 files changed, 195 insertions(+), 8 deletions(-) create mode 100644 docs/deployments/hetzner-demo-tracker/commands/test/README.md diff --git a/docs/deployments/hetzner-demo-tracker/commands/run/README.md b/docs/deployments/hetzner-demo-tracker/commands/run/README.md index d5b8ae24..3bd3b0bf 100644 --- a/docs/deployments/hetzner-demo-tracker/commands/run/README.md +++ b/docs/deployments/hetzner-demo-tracker/commands/run/README.md @@ -1,17 +1,29 @@ # Command: run -> **Status**: ⏳ Not yet run +> **Status**: ✅ Completed (2026-03-04) — state: `Running` +> +> **Note**: The `run` command succeeded and the environment transitioned to +> `Running`, but the tracker container was in a restart loop due to +> [Bug 3](bugs.md#bug-3-mysql-password-is-not-url-encoded-in-the-tracker-connection-string) +> (URL encoding). A manual fix was applied before the `test` command was run. +> See [bugs.md](bugs.md) for details. ## What `run` does The `run` command: -1. Starts all Docker Compose services on the server (tracker, Prometheus, Grafana). -2. Waits for the services to become healthy. -3. Marks the environment as `Running` on success. +1. Validates that the environment is in `Released` state. +2. Runs the `run-compose-services` Ansible playbook on the remote server. +3. The playbook pulls any updated Docker images, then runs `docker compose up -d`. +4. Transitions the environment state to `Running` on success. -It requires the environment to already be in a `Released` state (i.e., `release` must have been -run first). +It requires the environment to already be in a `Released` state (i.e., `release` +must have been run first). + +**Important**: `Running` state only guarantees that `docker compose up -d` +returned successfully — not that all services are healthy and reachable. Use the +`test` command immediately after `run` to verify the stack. +See [improvements.md](improvements.md) for more context. ## Command @@ -19,7 +31,6 @@ run first). docker run --rm \ -v $(pwd)/data:/var/lib/torrust/deployer/data \ -v $(pwd)/build:/var/lib/torrust/deployer/build \ - -v $(pwd)/envs:/var/lib/torrust/deployer/envs \ -v ~/.ssh:/home/deployer/.ssh:ro \ torrust/tracker-deployer:latest \ run torrust-tracker-demo 2>&1 | tee -a data/logs/log.txt @@ -27,4 +38,71 @@ docker run --rm \ ## Output - +```text +[2026-03-04 13:19:16] Starting Torrust Tracker Deployer container... +[2026-03-04 13:19:16] Verifying installed tools... +[2026-03-04 13:19:16] Tool versions: +[2026-03-04 13:19:16] - OpenTofu: OpenTofu v1.11.5 +[2026-03-04 13:19:16] - Ansible: ansible [core 2.20.3] +[2026-03-04 13:19:16] - SSH: OpenSSH_10.0p2 Debian-7, OpenSSL 3.5.4 30 Sep 2025 +[2026-03-04 13:19:16] - Git: git version 2.47.3 +[2026-03-04 13:19:16] SSH directory found, checking permissions... +[2026-03-04 13:19:16] Container initialization complete. Executing command... +⏳ [1/2] Validating environment... +⏳ ✓ Environment name validated: torrust-tracker-demo (took 0ms) +⏳ [2/2] Running application services... +⏳ ✓ Services started (took 31.6s) +✅ Run command completed for 'torrust-tracker-demo' +{ + "environment_name": "torrust-tracker-demo", + "state": "Running", + "services": { + "udp_trackers": [ + "udp://udp1.torrust-tracker-demo.com:6969/announce", + "udp://udp2.torrust-tracker-demo.com:6868/announce" + ], + "https_http_trackers": [ + "https://http1.torrust-tracker-demo.com/announce", + "https://http2.torrust-tracker-demo.com/announce" + ], + "direct_http_trackers": [], + "localhost_http_trackers": [], + "api_endpoint": "https://api.torrust-tracker-demo.com/api", + "api_uses_https": true, + "api_is_localhost_only": false, + "health_check_url": "http://46.225.234.201:1313/health_check", + "health_check_uses_https": false, + "health_check_is_localhost_only": true, + "tls_domains": [ + { + "domain": "http1.torrust-tracker-demo.com", + "internal_port": 7070 + }, + { + "domain": "http2.torrust-tracker-demo.com", + "internal_port": 7071 + }, + { + "domain": "api.torrust-tracker-demo.com", + "internal_port": 1212 + }, + { + "domain": "grafana.torrust-tracker-demo.com", + "internal_port": 3000 + } + ] + }, + "grafana": { + "url": "https://grafana.torrust-tracker-demo.com/", + "uses_https": true + } +} +``` + +### Duration + +- Total: ~31.6s (Ansible `docker compose up -d` + container startup) + +### State Transition + +`Released` → `Running` diff --git a/docs/deployments/hetzner-demo-tracker/commands/test/README.md b/docs/deployments/hetzner-demo-tracker/commands/test/README.md new file mode 100644 index 00000000..c6e0b72c --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/commands/test/README.md @@ -0,0 +1,109 @@ +# Command: test + +> **Status**: ✅ Completed (2026-03-04) — result: `pass` (with DNS warnings) + +## What `test` does + +The `test` command runs smoke tests against a deployed environment to verify +that the infrastructure and services are reachable and responding correctly. +It is the recommended step to run immediately after `run`. + +The test command: + +1. Validates that the environment is in `Running` state. +2. Performs DNS resolution checks for each configured domain, comparing the + resolved IP against the server's instance IP. +3. Reports a `pass` result if the infrastructure tests succeed, even if there + are DNS warnings. + +**Note**: These are infrastructure-level smoke tests. They do not test tracker +protocol logic (announce, scrape, etc.) — those are covered by deeper integration +tests. + +## Command + +```bash +docker run --rm \ + -v $(pwd)/data:/var/lib/torrust/deployer/data \ + -v $(pwd)/build:/var/lib/torrust/deployer/build \ + -v ~/.ssh:/home/deployer/.ssh:ro \ + torrust/tracker-deployer:latest \ + test torrust-tracker-demo 2>&1 | tee -a data/logs/log.txt +``` + +## Output + +```text +[2026-03-04 14:06:48] Starting Torrust Tracker Deployer container... +[2026-03-04 14:06:48] Verifying installed tools... +[2026-03-04 14:06:48] Tool versions: +[2026-03-04 14:06:48] - OpenTofu: OpenTofu v1.11.5 +[2026-03-04 14:06:48] - Ansible: ansible [core 2.20.3] +[2026-03-04 14:06:48] - SSH: OpenSSH_10.0p2 Debian-7, OpenSSL 3.5.4 30 Sep 2025 +[2026-03-04 14:06:48] - Git: git version 2.47.3 +[2026-03-04 14:06:48] SSH directory found, checking permissions... +[2026-03-04 14:06:48] Container initialization complete. Executing command... +⏳ [1/3] Validating environment... +⏳ ✓ Environment name validated: torrust-tracker-demo (took 0ms) +⏳ [2/3] Creating command handler... +⏳ ✓ Done (took 0ms) +⏳ [3/3] Testing infrastructure... +⚠️ DNS check: api.torrust-tracker-demo.com resolves to [116.202.176.169] but expected 46.225.234.201 +⚠️ DNS check: http1.torrust-tracker-demo.com resolves to [116.202.176.169] but expected 46.225.234.201 +⚠️ DNS check: http2.torrust-tracker-demo.com resolves to [116.202.176.169] but expected 46.225.234.201 +⚠️ DNS check: grafana.torrust-tracker-demo.com resolves to [116.202.176.169] but expected 46.225.234.201 +⏳ ✓ Infrastructure tests passed (with DNS warnings) (took 1.0s) +{ + "environment_name": "torrust-tracker-demo", + "instance_ip": "46.225.234.201", + "result": "pass", + "dns_warnings": [ + { + "domain": "api.torrust-tracker-demo.com", + "expected_ip": "46.225.234.201", + "issue": "api.torrust-tracker-demo.com resolves to [116.202.176.169] but expected 46.225.234.201" + }, + { + "domain": "http1.torrust-tracker-demo.com", + "expected_ip": "46.225.234.201", + "issue": "http1.torrust-tracker-demo.com resolves to [116.202.176.169] but expected 46.225.234.201" + }, + { + "domain": "http2.torrust-tracker-demo.com", + "expected_ip": "46.225.234.201", + "issue": "http2.torrust-tracker-demo.com resolves to [116.202.176.169] but expected 46.225.234.201" + }, + { + "domain": "grafana.torrust-tracker-demo.com", + "expected_ip": "46.225.234.201", + "issue": "grafana.torrust-tracker-demo.com resolves to [116.202.176.169] but expected 46.225.234.201" + } + ] +} +``` + +### Duration + +- Total: ~1.0s + +### State Transition + +No state transition — `test` is a read-only verification step. The environment +remains in `Running` state. + +## DNS Warnings Explained + +The test checks that each domain resolves to the server's **instance IP** +(`46.225.234.201`). All four domains instead resolve to `116.202.176.169`, which +is the **floating IP** assigned to this deployment. + +This is expected and correct behavior for this setup — the DNS records +deliberately point to the floating IP, not the instance IP, so that traffic can +be rerouted to a different server instance by reassigning the floating IP without +changing DNS. See the provisioning phase documentation for the floating IP setup. + +The test reports these as warnings (not failures) because the infrastructure +resolves DNS correctly; the resolved IP just differs from the raw instance IP. +A future improvement of the `test` command could be made aware of the floating IP +and treat a match against it as a pass rather than a warning. +See [improvements.md](../run/improvements.md) for related improvement notes. From fb288b3dcd090350024ae93540250a01fe3c0f72 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 14:32:20 +0000 Subject: [PATCH 31/59] docs: add test command output, verify guides, floating IP improvement - Add test/README.md with full command output and DNS warnings explanation - Add commands/improvements.md documenting floating IP awareness gap - Add verify/ folder with service verification guides: - verify/README.md: overview table and prerequisites - verify/http-tracker.md: curl-based HTTP tracker checks - verify/udp-tracker.md: UDP connectivity and BEP 15 handshake - verify/api.md: REST API endpoint checks - verify/grafana.md: Grafana TLS, auth, and dashboard checks - Add 6 cspell words: btih, DGRAM, randint, recvfrom, sendto, settimeout --- .../commands/improvements.md | 75 +++++++++++++ .../commands/test/README.md | 22 ++-- .../hetzner-demo-tracker/verify/README.md | 37 ++++++ .../hetzner-demo-tracker/verify/api.md | 106 ++++++++++++++++++ .../hetzner-demo-tracker/verify/grafana.md | 94 ++++++++++++++++ .../verify/http-tracker.md | 65 +++++++++++ .../verify/udp-tracker.md | 93 +++++++++++++++ project-words.txt | 6 + 8 files changed, 488 insertions(+), 10 deletions(-) create mode 100644 docs/deployments/hetzner-demo-tracker/commands/improvements.md create mode 100644 docs/deployments/hetzner-demo-tracker/verify/README.md create mode 100644 docs/deployments/hetzner-demo-tracker/verify/api.md create mode 100644 docs/deployments/hetzner-demo-tracker/verify/grafana.md create mode 100644 docs/deployments/hetzner-demo-tracker/verify/http-tracker.md create mode 100644 docs/deployments/hetzner-demo-tracker/verify/udp-tracker.md diff --git a/docs/deployments/hetzner-demo-tracker/commands/improvements.md b/docs/deployments/hetzner-demo-tracker/commands/improvements.md new file mode 100644 index 00000000..1a099fdd --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/commands/improvements.md @@ -0,0 +1,75 @@ +# Deployer Commands — Improvements + +Improvements identified during the Hetzner demo tracker deployment that apply +across multiple commands, not just one specific command. + +--- + +## Improvement: Deployer is not aware of floating IPs + +**Status**: Open +**Affects**: `test` command (DNS checks), potentially `configure`, `release`, `run` +**Observed in**: `test` command DNS warnings + +### Observation + +Hetzner and other providers support **floating IPs** — IP addresses that are +owned independently of any single server and can be reassigned between servers +instantly without changing DNS. In this deployment: + +- **Instance IP**: `46.225.234.201` — the bare VM's IP, not published in DNS +- **Floating IP**: `116.202.176.169` — the IP published in all DNS A records + +The deployer `test` command resolves each configured domain and compares the +result against the **instance IP**. Because DNS points to the floating IP, every +domain triggers a warning: + +```text +⚠️ DNS check: api.torrust-tracker-demo.com resolves to [116.202.176.169] + but expected 46.225.234.201 +``` + +This is not a real problem — DNS is configured correctly and traffic reaches the +server. The warning is a false positive produced by the deployer's lack of +floating IP awareness. + +### Why Floating IPs Matter + +Using a floating IP provides two key operational benefits: + +1. **Zero-downtime failover**: If the primary server fails, the floating IP can + be reassigned to a standby server in seconds. DNS does not need to change and + clients are not affected by TTL delays. +2. **Maintenance without downtime**: A new server can be fully provisioned and + configured before cutting traffic over by reassigning the floating IP. + +These benefits are lost if DNS records point directly to the instance IP. + +### Proposed Fix + +The environment JSON config (or a separate provider config section) should allow +specifying a **floating IP** (or more generally, a **public IP**) that is +distinct from the instance IP. For example: + +```json +"provider": { + ... + "floating_ip": "116.202.176.169" +} +``` + +The deployer should then: + +- Use the floating IP (when present) as the expected DNS target in `test` DNS + checks, treating a match as a pass rather than a warning. +- Optionally, during provisioning, automatically assign the floating IP to the + newly created instance. +- Optionally, expose the floating IP in the `Running` state output so operators + can confirm which IP is serving traffic. + +### Current Workaround + +The DNS warnings in `test` output can be safely ignored when a floating IP is in +use. Verify manually that the domains resolve to the expected floating IP and +that the services are reachable through those domains (see +[../verify/](../verify/) for service verification procedures). diff --git a/docs/deployments/hetzner-demo-tracker/commands/test/README.md b/docs/deployments/hetzner-demo-tracker/commands/test/README.md index c6e0b72c..0f7a383e 100644 --- a/docs/deployments/hetzner-demo-tracker/commands/test/README.md +++ b/docs/deployments/hetzner-demo-tracker/commands/test/README.md @@ -97,13 +97,15 @@ The test checks that each domain resolves to the server's **instance IP** (`46.225.234.201`). All four domains instead resolve to `116.202.176.169`, which is the **floating IP** assigned to this deployment. -This is expected and correct behavior for this setup — the DNS records -deliberately point to the floating IP, not the instance IP, so that traffic can -be rerouted to a different server instance by reassigning the floating IP without -changing DNS. See the provisioning phase documentation for the floating IP setup. - -The test reports these as warnings (not failures) because the infrastructure -resolves DNS correctly; the resolved IP just differs from the raw instance IP. -A future improvement of the `test` command could be made aware of the floating IP -and treat a match against it as a pass rather than a warning. -See [improvements.md](../run/improvements.md) for related improvement notes. +This is expected and correct behavior for this setup. The DNS records +deliberately point to the **floating IP**, not the instance IP. The floating IP +is a separate Hetzner resource that can be reassigned to a different server +instance without changing any DNS records — enabling zero-downtime failover. The +instance IP (`46.225.234.201`) is the bare VM's IP and is not published in DNS. + +The deployer's `test` command currently expects the domain to resolve to the +instance IP, so it raises a warning whenever a floating IP is in use. This is a +deployer limitation, not a problem with the deployment. + +See [../improvements.md](../improvements.md) for a proposed improvement to make +the deployer aware of floating IPs. diff --git a/docs/deployments/hetzner-demo-tracker/verify/README.md b/docs/deployments/hetzner-demo-tracker/verify/README.md new file mode 100644 index 00000000..7fe20980 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/verify/README.md @@ -0,0 +1,37 @@ +# Service Verification + +Manual verification procedures for all services in the Hetzner demo tracker +deployment. Run these after the `test` command to confirm that each service +is fully functional end-to-end. + +## Services + +| Service | URL | File | +| ------------ | ------------------------------------------------- | ---------------------------------- | +| HTTP Tracker | `https://http1.torrust-tracker-demo.com/announce` | [http-tracker.md](http-tracker.md) | +| UDP Tracker | `udp://udp1.torrust-tracker-demo.com:6969` | [udp-tracker.md](udp-tracker.md) | +| Tracker API | `https://api.torrust-tracker-demo.com/api/v1` | [api.md](api.md) | +| Grafana | `https://grafana.torrust-tracker-demo.com` | [grafana.md](grafana.md) | + +## Status + +| Service | Status | +| ------------ | ------------------- | +| HTTP Tracker | ⏳ Not yet verified | +| UDP Tracker | ⏳ Not yet verified | +| Tracker API | ⏳ Not yet verified | +| Grafana | ⏳ Not yet verified | + +## Prerequisites + +- The environment must be in `Running` state. +- The `test` command must have passed (even with DNS warnings). +- For UDP tracker tests: `openssl` and `xxd` must be available locally, or use + a BitTorrent client. +- For API tests: `curl` must be available locally. + +## Network Notes + +All domain names resolve to the floating IP `116.202.176.169`. The instance IP +`46.225.234.201` is only used for direct SSH access. The health check endpoint +is bound to `localhost` on the server and is only accessible via SSH. diff --git a/docs/deployments/hetzner-demo-tracker/verify/api.md b/docs/deployments/hetzner-demo-tracker/verify/api.md new file mode 100644 index 00000000..9096c5eb --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/verify/api.md @@ -0,0 +1,106 @@ +# Tracker API Verification + +**Status**: ⏳ Not yet verified + +## Endpoint + +`https://api.torrust-tracker-demo.com/api/v1` + +## Authentication + +All API endpoints require the admin token as a query parameter or header. + +Admin token: see `envs/torrust-tracker-demo.json` → `tracker.http_api.admin_token` + +```bash +# Set token for reuse in the commands below +TOKEN="thmbSikMOIzdJXLT0EMRrx9uyiio4wMeVA75x99cRyM=" +``` + +## 1. TLS Certificate Check + +```bash +curl -v --head "https://api.torrust-tracker-demo.com/api/v1/stats?token=$TOKEN" 2>&1 | grep -E "subject|issuer|SSL|HTTP" +``` + +Expected: valid Let's Encrypt certificate, HTTP 200. + +## 2. Tracker Statistics + +Fetch global tracker statistics (total torrents, peers, etc.). + +```bash +TOKEN="thmbSikMOIzdJXLT0EMRrx9uyiio4wMeVA75x99cRyM=" +curl -s "https://api.torrust-tracker-demo.com/api/v1/stats?token=$TOKEN" | python3 -m json.tool +``` + +Expected response structure: + +```json +{ + "torrents": 0, + "seeders": 0, + "completed": 0, + "leechers": 0, + "tcp4_connections_handled": 0, + "tcp4_announces_handled": 0, + "tcp4_scrapes_handled": 0, + "udp4_connections_handled": 0, + "udp4_announces_handled": 0, + "udp4_scrapes_handled": 0, + "udp6_connections_handled": 0, + "udp6_announces_handled": 0, + "udp6_scrapes_handled": 0 +} +``` + +All counters will be zero on a fresh deployment with no activity. + +## 3. List Torrents + +```bash +TOKEN="thmbSikMOIzdJXLT0EMRrx9uyiio4wMeVA75x99cRyM=" +curl -s "https://api.torrust-tracker-demo.com/api/v1/torrents?token=$TOKEN&limit=10&offset=0" | python3 -m json.tool +``` + +Expected: empty list `[]` on a fresh deployment. + +## 4. Add and Remove a Test Torrent (whitelist mode only) + +> **Note**: This deployment runs in **public mode** (`private = false`), so +> whitelisting is not enforced. Adding a torrent via the API is still useful +> to confirm write access works. + +```bash +TOKEN="thmbSikMOIzdJXLT0EMRrx9uyiio4wMeVA75x99cRyM=" +INFO_HASH="0000000000000000000000000000000000000001" + +# Add +curl -s -X POST "https://api.torrust-tracker-demo.com/api/v1/torrent/$INFO_HASH?token=$TOKEN" + +# Verify it appears +curl -s "https://api.torrust-tracker-demo.com/api/v1/torrents?token=$TOKEN" | python3 -m json.tool + +# Remove +curl -s -X DELETE "https://api.torrust-tracker-demo.com/api/v1/torrent/$INFO_HASH?token=$TOKEN" +``` + +## 5. Invalid Token Returns 401 + +Confirm authentication is enforced. + +```bash +curl -s -o /dev/null -w "%{http_code}" "https://api.torrust-tracker-demo.com/api/v1/stats?token=invalid" +``` + +Expected: `401` + +## Results + +| Check | Result | Notes | +| --------------------- | ------ | ----- | +| TLS certificate valid | ⏳ | | +| GET /api/v1/stats | ⏳ | | +| GET /api/v1/torrents | ⏳ | | +| POST/DELETE torrent | ⏳ | | +| Invalid token → 401 | ⏳ | | diff --git a/docs/deployments/hetzner-demo-tracker/verify/grafana.md b/docs/deployments/hetzner-demo-tracker/verify/grafana.md new file mode 100644 index 00000000..92ecf796 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/verify/grafana.md @@ -0,0 +1,94 @@ +# Grafana Verification + +**Status**: ⏳ Not yet verified + +## Endpoint + +`https://grafana.torrust-tracker-demo.com` + +## Credentials + +- **Username**: `admin` +- **Password**: see `envs/torrust-tracker-demo.json` → `grafana.admin_password` + +## 1. TLS Certificate and Login Page + +Open in a browser or check with curl: + +```bash +curl -sv --head "https://grafana.torrust-tracker-demo.com" 2>&1 | grep -E "HTTP|subject|issuer" +``` + +Expected: HTTP 302 redirect to `/login` (or direct 200), valid Let's Encrypt +certificate for `grafana.torrust-tracker-demo.com`. + +## 2. API Login Check + +Verify the credentials work via the Grafana HTTP API: + +```bash +curl -s "https://admin:/FUYKHCnco72eUb2VjA1MvKvxQ6VuT0Z@grafana.torrust-tracker-demo.com/api/user" | python3 -m json.tool +``` + +Expected response: + +```json +{ + "id": 1, + "email": "admin@localhost", + "name": "admin", + "login": "admin", + "role": "Admin", + ... +} +``` + +## 3. Data Source — Prometheus Connected + +Confirm Grafana is receiving metrics from Prometheus. + +```bash +curl -s "https://admin:/FUYKHCnco72eUb2VjA1MvKvxQ6VuT0Z@grafana.torrust-tracker-demo.com/api/datasources" | python3 -m json.tool +``` + +Expected: a data source named `Prometheus` with `"type": "prometheus"` and +`"url": "http://prometheus:9090"`. + +## 4. Dashboards Provisioned + +Confirm the pre-provisioned dashboards are present. + +```bash +curl -s "https://admin:/FUYKHCnco72eUb2VjA1MvKvxQ6VuT0Z@grafana.torrust-tracker-demo.com/api/dashboards/home" | python3 -m json.tool +``` + +For a full list of dashboards: + +```bash +curl -s "https://admin:/FUYKHCnco72eUb2VjA1MvKvxQ6VuT0Z@grafana.torrust-tracker-demo.com/api/search?type=dash-db" | python3 -m json.tool +``` + +Expected: one or more dashboards from the `torrust` folder as configured in +`templates/grafana/provisioning/dashboards/`. + +## 5. Browser Verification + +Navigate to `https://grafana.torrust-tracker-demo.com` in a browser, log in with +admin credentials, and confirm: + +- Dashboards load without errors +- Prometheus data source shows a green "Data source connected" status + (Settings → Data sources → Prometheus → Test) +- The tracker metrics dashboard shows panels (values may be zero on a fresh + deployment with no traffic) + +## Results + +| Check | Result | Notes | +| ------------------------------ | ------ | ----- | +| TLS certificate valid | ⏳ | | +| Login page reachable | ⏳ | | +| API login with credentials | ⏳ | | +| Prometheus data source present | ⏳ | | +| Dashboards provisioned | ⏳ | | +| Browser login and dashboard | ⏳ | | diff --git a/docs/deployments/hetzner-demo-tracker/verify/http-tracker.md b/docs/deployments/hetzner-demo-tracker/verify/http-tracker.md new file mode 100644 index 00000000..f404d349 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/verify/http-tracker.md @@ -0,0 +1,65 @@ +# HTTP Tracker Verification + +**Status**: ⏳ Not yet verified + +## Endpoints + +| Domain | URL | +| -------------- | ------------------------------------------------- | +| HTTP Tracker 1 | `https://http1.torrust-tracker-demo.com/announce` | +| HTTP Tracker 2 | `https://http2.torrust-tracker-demo.com/announce` | + +## 1. Basic Connectivity (scrape request) + +The simplest check — a scrape request with no info hashes returns a valid +bencoded response. + +```bash +curl -v "https://http1.torrust-tracker-demo.com/announce?info_hash=%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00&peer_id=%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00&port=6881&uploaded=0&downloaded=0&left=0&event=started&compact=1" +``` + +Expected: HTTP 200 with a bencoded response body starting with `d` (a bencoded +dictionary). The response will contain `interval` and `peers` fields. + +## 2. TLS Certificate Check + +Confirm the TLS certificate is valid and issued for the correct domain. + +```bash +curl -v --head https://http1.torrust-tracker-demo.com/announce 2>&1 | grep -E "subject|issuer|expire|SSL" +``` + +Expected: Certificate issued by Let's Encrypt for `http1.torrust-tracker-demo.com`, +not expired. + +## 3. Second Endpoint + +Repeat the connectivity check for the second HTTP tracker: + +```bash +curl -sv "https://http2.torrust-tracker-demo.com/announce?info_hash=%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00&peer_id=%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00&port=6881&uploaded=0&downloaded=0&left=0&event=started&compact=1" 2>&1 | head -20 +``` + +## 4. Health Check (via SSH) + +The tracker exposes a health check endpoint on `localhost:1313` on the server. + +```bash +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 \ + "curl -s http://localhost:1313/health_check" +``` + +Expected response: + +```json +{ "status": "Ok" } +``` + +## Results + +| Check | Result | Notes | +| --------------------------- | ------ | ----- | +| HTTP Tracker 1 connectivity | ⏳ | | +| HTTP Tracker 1 TLS cert | ⏳ | | +| HTTP Tracker 2 connectivity | ⏳ | | +| Health check | ⏳ | | diff --git a/docs/deployments/hetzner-demo-tracker/verify/udp-tracker.md b/docs/deployments/hetzner-demo-tracker/verify/udp-tracker.md new file mode 100644 index 00000000..124ad502 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/verify/udp-tracker.md @@ -0,0 +1,93 @@ +# UDP Tracker Verification + +**Status**: ⏳ Not yet verified + +## Endpoints + +| Domain | URL | +| ------------- | ------------------------------------------ | +| UDP Tracker 1 | `udp://udp1.torrust-tracker-demo.com:6969` | +| UDP Tracker 2 | `udp://udp2.torrust-tracker-demo.com:6868` | + +## 1. Port Connectivity + +Check that the UDP ports are open and reachable. + +```bash +# Test port 6969 +nc -u -z -w 3 udp1.torrust-tracker-demo.com 6969 && echo "port 6969 open" || echo "port 6969 closed" + +# Test port 6868 +nc -u -z -w 3 udp2.torrust-tracker-demo.com 6868 && echo "port 6868 open" || echo "port 6868 closed" +``` + +## 2. UDP Tracker Protocol Test (BEP 15) + +The UDP tracker protocol (defined in +[BEP 15](https://www.bittorrent.org/beps/bep_0015.html)) requires a two-step +handshake: a connection request followed by an announce/scrape request. + +Use this Python script to perform a full connection handshake against tracker 1: + +```python +import socket +import struct +import random + +HOST = "udp1.torrust-tracker-demo.com" +PORT = 6969 + +# Step 1: Send connection request +# Magic: 0x41727101980, Action: 0 (connect), Transaction ID: random +transaction_id = random.randint(0, 0xFFFFFFFF) +packet = struct.pack(">QII", 0x41727101980, 0, transaction_id) + +sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) +sock.settimeout(5) +sock.sendto(packet, (HOST, PORT)) + +# Step 2: Receive connection response +try: + data, _ = sock.recvfrom(16) + action, resp_tid, connection_id = struct.unpack(">IIQ", data) + assert action == 0, f"unexpected action: {action}" + assert resp_tid == transaction_id, "transaction ID mismatch" + print(f"✅ Connected! connection_id = {connection_id:#018x}") +except socket.timeout: + print("❌ Timeout — no response from tracker") +finally: + sock.close() +``` + +Expected output: + +```text +✅ Connected! connection_id = 0x<16-digit hex value> +``` + +## 3. Using a BitTorrent Client + +The most realistic verification is to add a torrent to a BitTorrent client +(e.g. qBittorrent, Transmission, Deluge) and configure it to use one of the +tracker URLs. The client will send a UDP announce and the tracker will respond +with a peer list. + +Example magnet link using both UDP trackers: + +```text +magnet:?xt=urn:btih:0000000000000000000000000000000000000000 + &tr=udp://udp1.torrust-tracker-demo.com:6969/announce + &tr=udp://udp2.torrust-tracker-demo.com:6868/announce +``` + +Note: a real info hash is needed for a meaningful announce. The zero hash above +will return an empty peer list but confirms the tracker is reachable. + +## Results + +| Check | Result | Notes | +| ---------------------------- | ------ | ----- | +| UDP port 6969 open | ⏳ | | +| UDP port 6868 open | ⏳ | | +| BEP 15 handshake (tracker 1) | ⏳ | | +| BEP 15 handshake (tracker 2) | ⏳ | | diff --git a/project-words.txt b/project-words.txt index 6fb802ce..6b25558d 100644 --- a/project-words.txt +++ b/project-words.txt @@ -40,6 +40,7 @@ bootcmd Boto Brinke browsable +btih btrfs buildx Bynder @@ -98,6 +99,7 @@ Desynchronization devkits devpass dfsg +DGRAM dirmngr Distrib distro @@ -328,10 +330,12 @@ pytest Pythonic QUIC RAII +randint rclone readlink realpath rebranded +recvfrom recognisable reentrancy Regenerable @@ -378,10 +382,12 @@ scriptable SCRIPTDIR secureboot selectattr +sendto serde serialisation serialising serverurl +settimeout shellcheck Shivavangari Silverlight From 96224e00a916c027bbb4530a887c492b9bb039ed Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 15:26:41 +0000 Subject: [PATCH 32/59] docs(verify): add API, HTTP tracker, and health check verification results - api.md: mark verified, mask admin token, update stats JSON shape, note HTTP 500 on invalid token (Bug 4), complete results table - http-tracker.md: mark verified, update results, replace incorrect health check section with reference to health-check.md - health-check.md: new file documenting docker exec approach and full JSON response (all 5 services healthy) - verify/README.md: add health-check.md to table, mark HTTP tracker and API as verified --- .../hetzner-demo-tracker/verify/README.md | 6 +- .../hetzner-demo-tracker/verify/api.md | 64 ++++++++---- .../verify/health-check.md | 98 +++++++++++++++++++ .../verify/http-tracker.md | 32 +++--- 4 files changed, 161 insertions(+), 39 deletions(-) create mode 100644 docs/deployments/hetzner-demo-tracker/verify/health-check.md diff --git a/docs/deployments/hetzner-demo-tracker/verify/README.md b/docs/deployments/hetzner-demo-tracker/verify/README.md index 7fe20980..d44b8966 100644 --- a/docs/deployments/hetzner-demo-tracker/verify/README.md +++ b/docs/deployments/hetzner-demo-tracker/verify/README.md @@ -12,15 +12,17 @@ is fully functional end-to-end. | UDP Tracker | `udp://udp1.torrust-tracker-demo.com:6969` | [udp-tracker.md](udp-tracker.md) | | Tracker API | `https://api.torrust-tracker-demo.com/api/v1` | [api.md](api.md) | | Grafana | `https://grafana.torrust-tracker-demo.com` | [grafana.md](grafana.md) | +| Health Check | `http://127.0.0.1:1313/health_check` (internal) | [health-check.md](health-check.md) | ## Status | Service | Status | | ------------ | ------------------- | -| HTTP Tracker | ⏳ Not yet verified | +| HTTP Tracker | ✅ Verified | | UDP Tracker | ⏳ Not yet verified | -| Tracker API | ⏳ Not yet verified | +| Tracker API | ✅ Verified | | Grafana | ⏳ Not yet verified | +| Health Check | ✅ Verified | ## Prerequisites diff --git a/docs/deployments/hetzner-demo-tracker/verify/api.md b/docs/deployments/hetzner-demo-tracker/verify/api.md index 9096c5eb..c90da5f6 100644 --- a/docs/deployments/hetzner-demo-tracker/verify/api.md +++ b/docs/deployments/hetzner-demo-tracker/verify/api.md @@ -1,6 +1,6 @@ # Tracker API Verification -**Status**: ⏳ Not yet verified +**Status**: ✅ Verified (2026-03-04) ## Endpoint @@ -14,7 +14,7 @@ Admin token: see `envs/torrust-tracker-demo.json` → `tracker.http_api.admin_to ```bash # Set token for reuse in the commands below -TOKEN="thmbSikMOIzdJXLT0EMRrx9uyiio4wMeVA75x99cRyM=" +TOKEN="" ``` ## 1. TLS Certificate Check @@ -30,11 +30,12 @@ Expected: valid Let's Encrypt certificate, HTTP 200. Fetch global tracker statistics (total torrents, peers, etc.). ```bash -TOKEN="thmbSikMOIzdJXLT0EMRrx9uyiio4wMeVA75x99cRyM=" +TOKEN="" curl -s "https://api.torrust-tracker-demo.com/api/v1/stats?token=$TOKEN" | python3 -m json.tool ``` -Expected response structure: +Expected response structure (counters may be non-zero if there has been any +network activity since deployment): ```json { @@ -45,21 +46,34 @@ Expected response structure: "tcp4_connections_handled": 0, "tcp4_announces_handled": 0, "tcp4_scrapes_handled": 0, + "tcp6_connections_handled": 0, + "tcp6_announces_handled": 0, + "tcp6_scrapes_handled": 0, + "udp_requests_aborted": 0, + "udp_requests_banned": 0, + "udp_banned_ips_total": 0, + "udp_avg_connect_processing_time_ns": 0, + "udp_avg_announce_processing_time_ns": 0, + "udp_avg_scrape_processing_time_ns": 0, + "udp4_requests": 0, "udp4_connections_handled": 0, "udp4_announces_handled": 0, "udp4_scrapes_handled": 0, + "udp4_responses": 0, + "udp4_errors_handled": 0, + "udp6_requests": 0, "udp6_connections_handled": 0, "udp6_announces_handled": 0, - "udp6_scrapes_handled": 0 + "udp6_scrapes_handled": 0, + "udp6_responses": 0, + "udp6_errors_handled": 0 } ``` -All counters will be zero on a fresh deployment with no activity. - ## 3. List Torrents ```bash -TOKEN="thmbSikMOIzdJXLT0EMRrx9uyiio4wMeVA75x99cRyM=" +TOKEN="" curl -s "https://api.torrust-tracker-demo.com/api/v1/torrents?token=$TOKEN&limit=10&offset=0" | python3 -m json.tool ``` @@ -72,7 +86,7 @@ Expected: empty list `[]` on a fresh deployment. > to confirm write access works. ```bash -TOKEN="thmbSikMOIzdJXLT0EMRrx9uyiio4wMeVA75x99cRyM=" +TOKEN="" INFO_HASH="0000000000000000000000000000000000000001" # Add @@ -85,7 +99,7 @@ curl -s "https://api.torrust-tracker-demo.com/api/v1/torrents?token=$TOKEN" | py curl -s -X DELETE "https://api.torrust-tracker-demo.com/api/v1/torrent/$INFO_HASH?token=$TOKEN" ``` -## 5. Invalid Token Returns 401 +## 5. Invalid Token Rejected Confirm authentication is enforced. @@ -93,14 +107,30 @@ Confirm authentication is enforced. curl -s -o /dev/null -w "%{http_code}" "https://api.torrust-tracker-demo.com/api/v1/stats?token=invalid" ``` -Expected: `401` +Expected: `401` (a `500` is currently returned — see [Bug 4](#bug-4-invalid-token-returns-500-instead-of-401)) ## Results -| Check | Result | Notes | +| Check | Result | Notes | +| ------------------ | ------ | --------------------------------------------------------- | +| TLS certificate | ✅ | Let's Encrypt, valid until Jun 2, 2026 | +| Tracker statistics | ✅ | Non-zero UDP6 counters from network activity after deploy | +| List torrents | ✅ | Empty list on fresh deployment | +| Add/remove torrent | ✅ | Both return empty body on success | +| Invalid token | ⚠️ | Returns HTTP `500` instead of `401` — see Bug 4 below | + +## Bug 4: Invalid Token Returns 500 Instead of 401 + +When sending an invalid token, the API returns: + +- **HTTP status**: `500` +- **Body**: `Unhandled rejection: Err { reason: "token not valid" }` + +A `401 Unauthorized` would be the correct HTTP status for an authentication +failure. This is a bug in the tracker API error handling. | --------------------- | ------ | ----- | -| TLS certificate valid | ⏳ | | -| GET /api/v1/stats | ⏳ | | -| GET /api/v1/torrents | ⏳ | | -| POST/DELETE torrent | ⏳ | | -| Invalid token → 401 | ⏳ | | +| TLS certificate valid | ⏳ | | +| GET /api/v1/stats | ⏳ | | +| GET /api/v1/torrents | ⏳ | | +| POST/DELETE torrent | ⏳ | | +| Invalid token → 401 | ⏳ | | diff --git a/docs/deployments/hetzner-demo-tracker/verify/health-check.md b/docs/deployments/hetzner-demo-tracker/verify/health-check.md new file mode 100644 index 00000000..ca441f00 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/verify/health-check.md @@ -0,0 +1,98 @@ +# Health Check Verification + +**Status**: ✅ Verified (2026-03-04) + +## Endpoint + +The tracker exposes a health check API on `127.0.0.1:1313` **inside the +tracker container** (loopback only). It is not accessible from the host or +from outside Docker. It is also not routed through Caddy. + +The `show` command reports it as: + +```text +"health_check_url": "http://46.225.234.201:1313/health_check" +"health_check_is_localhost_only": true +``` + +## How to Access + +Because the endpoint is bound to the container's loopback interface, it must +be reached via `docker compose exec` on the server: + +```bash +ssh -i ~/.ssh/ torrust@46.225.234.201 \ + "cd /opt/torrust && sudo docker compose exec tracker \ + sh -c 'wget -qO- http://127.0.0.1:1313/health_check'" +``` + +## Expected Response + +A healthy deployment returns a JSON object with `"status": "Ok"` and one +entry per configured service: + +```json +{ + "status": "Ok", + "message": "", + "details": [ + { + "service_binding": "http://[::]:7071/", + "binding": "[::]:7071", + "service_type": "http_tracker", + "info": "checking http tracker health check at: http://[::]:7071/health_check", + "result": { "Ok": "200 OK" } + }, + { + "service_binding": "http://[::]:1212/", + "binding": "[::]:1212", + "service_type": "tracker_rest_api", + "info": "checking api health check at: http://[::]:1212/api/health_check", + "result": { "Ok": "200 OK" } + }, + { + "service_binding": "udp://[::]:6969", + "binding": "[::]:6969", + "service_type": "udp_tracker", + "info": "checking the udp tracker health check at: [::]:6969", + "result": { "Ok": "Connected" } + }, + { + "service_binding": "udp://[::]:6868", + "binding": "[::]:6868", + "service_type": "udp_tracker", + "info": "checking the udp tracker health check at: [::]:6868", + "result": { "Ok": "Connected" } + }, + { + "service_binding": "http://[::]:7070/", + "binding": "[::]:7070", + "service_type": "http_tracker", + "info": "checking http tracker health check at: http://[::]:7070/health_check", + "result": { "Ok": "200 OK" } + } + ] +} +``` + +## Actual Output (2026-03-04) + +The above response matches exactly what was returned on verification. All +five services reported healthy: + +| Service | Port | Result | +| ---------------------------- | ---- | ------------ | +| HTTP Tracker 2 (`http2`) | 7071 | ✅ 200 OK | +| Tracker REST API | 1212 | ✅ 200 OK | +| UDP Tracker 1 (`udp1`, 6969) | 6969 | ✅ Connected | +| UDP Tracker 2 (`udp2`, 6868) | 6868 | ✅ Connected | +| HTTP Tracker 1 (`http1`) | 7070 | ✅ 200 OK | + +## Notes + +- `wget` is available in the tracker container image (`torrust/tracker:develop`) + but `curl` is not. +- The health check is a loopback-only endpoint by design — it is not intended + to be exposed externally. +- Port `1313` appears in `docker compose ps` output but is not published to + the host (no `0.0.0.0:1313->1313/tcp` mapping). diff --git a/docs/deployments/hetzner-demo-tracker/verify/http-tracker.md b/docs/deployments/hetzner-demo-tracker/verify/http-tracker.md index f404d349..3a47a893 100644 --- a/docs/deployments/hetzner-demo-tracker/verify/http-tracker.md +++ b/docs/deployments/hetzner-demo-tracker/verify/http-tracker.md @@ -1,6 +1,6 @@ # HTTP Tracker Verification -**Status**: ⏳ Not yet verified +**Status**: ✅ Verified (2026-03-04) ## Endpoints @@ -40,26 +40,18 @@ Repeat the connectivity check for the second HTTP tracker: curl -sv "https://http2.torrust-tracker-demo.com/announce?info_hash=%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00&peer_id=%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00&port=6881&uploaded=0&downloaded=0&left=0&event=started&compact=1" 2>&1 | head -20 ``` -## 4. Health Check (via SSH) +## 4. Health Check -The tracker exposes a health check endpoint on `localhost:1313` on the server. - -```bash -ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 \ - "curl -s http://localhost:1313/health_check" -``` - -Expected response: - -```json -{ "status": "Ok" } -``` +The tracker exposes a health check API bound to the container's loopback +interface (`127.0.0.1:1313`). It is not accessible from the host directly. +See [health-check.md](health-check.md) for the verification procedure and +actual output. ## Results -| Check | Result | Notes | -| --------------------------- | ------ | ----- | -| HTTP Tracker 1 connectivity | ⏳ | | -| HTTP Tracker 1 TLS cert | ⏳ | | -| HTTP Tracker 2 connectivity | ⏳ | | -| Health check | ⏳ | | +| Check | Result | Notes | +| --------------------------- | ------ | -------------------------------------- | +| HTTP Tracker 1 connectivity | ✅ | HTTP 200 with bencoded response | +| HTTP Tracker 1 TLS cert | ✅ | Let's Encrypt, valid until Jun 2, 2026 | +| HTTP Tracker 2 connectivity | ✅ | HTTP 200 with bencoded response | +| Health check | ✅ | See [health-check.md](health-check.md) | From a2d454c92405f7ef3eb26e039459df34bbcbf395 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 15:29:23 +0000 Subject: [PATCH 33/59] docs(verify): fix corrupted results table in api.md Remove leftover stale skeleton rows that were appended after the Bug 4 section, leaving the already-populated results table intact. --- docs/deployments/hetzner-demo-tracker/verify/api.md | 6 ------ 1 file changed, 6 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/verify/api.md b/docs/deployments/hetzner-demo-tracker/verify/api.md index c90da5f6..3de04edc 100644 --- a/docs/deployments/hetzner-demo-tracker/verify/api.md +++ b/docs/deployments/hetzner-demo-tracker/verify/api.md @@ -128,9 +128,3 @@ When sending an invalid token, the API returns: A `401 Unauthorized` would be the correct HTTP status for an authentication failure. This is a bug in the tracker API error handling. -| --------------------- | ------ | ----- | -| TLS certificate valid | ⏳ | | -| GET /api/v1/stats | ⏳ | | -| GET /api/v1/torrents | ⏳ | | -| POST/DELETE torrent | ⏳ | | -| Invalid token → 401 | ⏳ | | From c0dd03aa55cb918b5a03d608ee51a74de7b68780 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 15:35:43 +0000 Subject: [PATCH 34/59] docs(verify): add Grafana verification results - grafana.md: mark verified, mask admin password, switch curl commands from URL-embedded to -u flag (URL form breaks on passwords with /), add note about this, complete results table - verify/README.md: mark Grafana as verified --- .../hetzner-demo-tracker/verify/README.md | 2 +- .../hetzner-demo-tracker/verify/grafana.md | 34 +++++++++++-------- 2 files changed, 21 insertions(+), 15 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/verify/README.md b/docs/deployments/hetzner-demo-tracker/verify/README.md index d44b8966..0d4dafc7 100644 --- a/docs/deployments/hetzner-demo-tracker/verify/README.md +++ b/docs/deployments/hetzner-demo-tracker/verify/README.md @@ -21,7 +21,7 @@ is fully functional end-to-end. | HTTP Tracker | ✅ Verified | | UDP Tracker | ⏳ Not yet verified | | Tracker API | ✅ Verified | -| Grafana | ⏳ Not yet verified | +| Grafana | ✅ Verified | | Health Check | ✅ Verified | ## Prerequisites diff --git a/docs/deployments/hetzner-demo-tracker/verify/grafana.md b/docs/deployments/hetzner-demo-tracker/verify/grafana.md index 92ecf796..2b7772da 100644 --- a/docs/deployments/hetzner-demo-tracker/verify/grafana.md +++ b/docs/deployments/hetzner-demo-tracker/verify/grafana.md @@ -1,6 +1,6 @@ # Grafana Verification -**Status**: ⏳ Not yet verified +**Status**: ✅ Verified (2026-03-04) ## Endpoint @@ -24,10 +24,14 @@ certificate for `grafana.torrust-tracker-demo.com`. ## 2. API Login Check -Verify the credentials work via the Grafana HTTP API: +Verify the credentials work via the Grafana HTTP API. + +> **Note**: use `-u` flag — URL-embedded credentials (`admin:pass@host`) will +> fail if the password contains `/`, as does this deployment's password. ```bash -curl -s "https://admin:/FUYKHCnco72eUb2VjA1MvKvxQ6VuT0Z@grafana.torrust-tracker-demo.com/api/user" | python3 -m json.tool +GRAFANA_PASS="" +curl -s -u "admin:${GRAFANA_PASS}" "https://grafana.torrust-tracker-demo.com/api/user" | python3 -m json.tool ``` Expected response: @@ -48,7 +52,8 @@ Expected response: Confirm Grafana is receiving metrics from Prometheus. ```bash -curl -s "https://admin:/FUYKHCnco72eUb2VjA1MvKvxQ6VuT0Z@grafana.torrust-tracker-demo.com/api/datasources" | python3 -m json.tool +GRAFANA_PASS="" +curl -s -u "admin:${GRAFANA_PASS}" "https://grafana.torrust-tracker-demo.com/api/datasources" | python3 -m json.tool ``` Expected: a data source named `Prometheus` with `"type": "prometheus"` and @@ -59,13 +64,14 @@ Expected: a data source named `Prometheus` with `"type": "prometheus"` and Confirm the pre-provisioned dashboards are present. ```bash -curl -s "https://admin:/FUYKHCnco72eUb2VjA1MvKvxQ6VuT0Z@grafana.torrust-tracker-demo.com/api/dashboards/home" | python3 -m json.tool +GRAFANA_PASS="" +curl -s -u "admin:${GRAFANA_PASS}" "https://grafana.torrust-tracker-demo.com/api/dashboards/home" | python3 -m json.tool ``` For a full list of dashboards: ```bash -curl -s "https://admin:/FUYKHCnco72eUb2VjA1MvKvxQ6VuT0Z@grafana.torrust-tracker-demo.com/api/search?type=dash-db" | python3 -m json.tool +curl -s -u "admin:${GRAFANA_PASS}" "https://grafana.torrust-tracker-demo.com/api/search?type=dash-db" | python3 -m json.tool ``` Expected: one or more dashboards from the `torrust` folder as configured in @@ -84,11 +90,11 @@ admin credentials, and confirm: ## Results -| Check | Result | Notes | -| ------------------------------ | ------ | ----- | -| TLS certificate valid | ⏳ | | -| Login page reachable | ⏳ | | -| API login with credentials | ⏳ | | -| Prometheus data source present | ⏳ | | -| Dashboards provisioned | ⏳ | | -| Browser login and dashboard | ⏳ | | +| Check | Result | Notes | +| ------------------------------ | ------ | ------------------------------------------------------------ | +| TLS certificate valid | ✅ | Let's Encrypt, valid until Jun 2, 2026 | +| Login page reachable | ✅ | HTTP 302 redirect to `/login` | +| API login with credentials | ✅ | Returns admin user details | +| Prometheus data source present | ✅ | `http://prometheus:9090`, default, `readOnly: true` | +| Dashboards provisioned | ✅ | 2 dashboards in "Torrust Tracker" folder (metrics and stats) | +| Browser login and dashboard | ⏳ | Manual browser check not yet performed | From 7c3d68b47096b5f18dc9fa77f0be1baf97492cac Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 15:40:28 +0000 Subject: [PATCH 35/59] docs(verify): add UDP tracker verification results - udp-tracker.md: mark verified, consolidate BEP 15 script to cover both trackers in one loop, add nc reliability note, update results table with actual connection IDs from successful handshakes - verify/README.md: mark UDP Tracker as verified (all services now verified except browser check for Grafana) --- .../hetzner-demo-tracker/verify/README.md | 14 ++-- .../verify/udp-tracker.md | 67 ++++++++++--------- 2 files changed, 42 insertions(+), 39 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/verify/README.md b/docs/deployments/hetzner-demo-tracker/verify/README.md index 0d4dafc7..c03036f1 100644 --- a/docs/deployments/hetzner-demo-tracker/verify/README.md +++ b/docs/deployments/hetzner-demo-tracker/verify/README.md @@ -16,13 +16,13 @@ is fully functional end-to-end. ## Status -| Service | Status | -| ------------ | ------------------- | -| HTTP Tracker | ✅ Verified | -| UDP Tracker | ⏳ Not yet verified | -| Tracker API | ✅ Verified | -| Grafana | ✅ Verified | -| Health Check | ✅ Verified | +| Service | Status | +| ------------ | ----------- | +| HTTP Tracker | ✅ Verified | +| UDP Tracker | ✅ Verified | +| Tracker API | ✅ Verified | +| Grafana | ✅ Verified | +| Health Check | ✅ Verified | ## Prerequisites diff --git a/docs/deployments/hetzner-demo-tracker/verify/udp-tracker.md b/docs/deployments/hetzner-demo-tracker/verify/udp-tracker.md index 124ad502..b0d80044 100644 --- a/docs/deployments/hetzner-demo-tracker/verify/udp-tracker.md +++ b/docs/deployments/hetzner-demo-tracker/verify/udp-tracker.md @@ -1,6 +1,6 @@ # UDP Tracker Verification -**Status**: ⏳ Not yet verified +**Status**: ✅ Verified (2026-03-04) ## Endpoints @@ -13,6 +13,9 @@ Check that the UDP ports are open and reachable. +> **Note**: `nc -u -z` is unreliable for UDP — there is no handshake to confirm +> the port is open. Use the BEP 15 script below as the real connectivity test. + ```bash # Test port 6969 nc -u -z -w 3 udp1.torrust-tracker-demo.com 6969 && echo "port 6969 open" || echo "port 6969 closed" @@ -27,42 +30,42 @@ The UDP tracker protocol (defined in [BEP 15](https://www.bittorrent.org/beps/bep_0015.html)) requires a two-step handshake: a connection request followed by an announce/scrape request. -Use this Python script to perform a full connection handshake against tracker 1: +Use this Python script to perform a full connection handshake against both +trackers: ```python import socket import struct import random -HOST = "udp1.torrust-tracker-demo.com" -PORT = 6969 - -# Step 1: Send connection request -# Magic: 0x41727101980, Action: 0 (connect), Transaction ID: random -transaction_id = random.randint(0, 0xFFFFFFFF) -packet = struct.pack(">QII", 0x41727101980, 0, transaction_id) - -sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) -sock.settimeout(5) -sock.sendto(packet, (HOST, PORT)) - -# Step 2: Receive connection response -try: - data, _ = sock.recvfrom(16) - action, resp_tid, connection_id = struct.unpack(">IIQ", data) - assert action == 0, f"unexpected action: {action}" - assert resp_tid == transaction_id, "transaction ID mismatch" - print(f"✅ Connected! connection_id = {connection_id:#018x}") -except socket.timeout: - print("❌ Timeout — no response from tracker") -finally: - sock.close() +for host, port, label in [ + ("udp1.torrust-tracker-demo.com", 6969, "UDP Tracker 1 (port 6969)"), + ("udp2.torrust-tracker-demo.com", 6868, "UDP Tracker 2 (port 6868)"), +]: + transaction_id = random.randint(0, 0xFFFFFFFF) + packet = struct.pack(">QII", 0x41727101980, 0, transaction_id) + sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) + sock.settimeout(5) + try: + sock.sendto(packet, (host, port)) + data, _ = sock.recvfrom(16) + action, resp_tid, connection_id = struct.unpack(">IIQ", data) + assert action == 0, f"unexpected action: {action}" + assert resp_tid == transaction_id, "transaction ID mismatch" + print(f"✅ {label}: Connected! connection_id = {connection_id:#018x}") + except socket.timeout: + print(f"❌ {label}: Timeout — no response") + except Exception as e: + print(f"❌ {label}: Error — {e}") + finally: + sock.close() ``` Expected output: ```text -✅ Connected! connection_id = 0x<16-digit hex value> +✅ UDP Tracker 1 (port 6969): Connected! connection_id = 0x<16-digit hex value> +✅ UDP Tracker 2 (port 6868): Connected! connection_id = 0x<16-digit hex value> ``` ## 3. Using a BitTorrent Client @@ -85,9 +88,9 @@ will return an empty peer list but confirms the tracker is reachable. ## Results -| Check | Result | Notes | -| ---------------------------- | ------ | ----- | -| UDP port 6969 open | ⏳ | | -| UDP port 6868 open | ⏳ | | -| BEP 15 handshake (tracker 1) | ⏳ | | -| BEP 15 handshake (tracker 2) | ⏳ | | +| Check | Result | Notes | +| ---------------------------- | ------ | ------------------------------------ | +| UDP port 6969 open | ✅ | BEP 15 handshake succeeded | +| UDP port 6868 open | ✅ | BEP 15 handshake succeeded | +| BEP 15 handshake (tracker 1) | ✅ | `connection_id = 0x927bc33b3260b795` | +| BEP 15 handshake (tracker 2) | ✅ | `connection_id = 0x59c13493038e3be3` | From c5ab1db94948e004d2d24ad1ce2536597c8fee62 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 15:47:27 +0000 Subject: [PATCH 36/59] docs(verify): add Docker services health and log verification --- .../hetzner-demo-tracker/verify/README.md | 30 ++--- .../verify/docker-services.md | 106 ++++++++++++++++++ project-words.txt | 3 + 3 files changed, 125 insertions(+), 14 deletions(-) create mode 100644 docs/deployments/hetzner-demo-tracker/verify/docker-services.md diff --git a/docs/deployments/hetzner-demo-tracker/verify/README.md b/docs/deployments/hetzner-demo-tracker/verify/README.md index c03036f1..ef5106af 100644 --- a/docs/deployments/hetzner-demo-tracker/verify/README.md +++ b/docs/deployments/hetzner-demo-tracker/verify/README.md @@ -6,23 +6,25 @@ is fully functional end-to-end. ## Services -| Service | URL | File | -| ------------ | ------------------------------------------------- | ---------------------------------- | -| HTTP Tracker | `https://http1.torrust-tracker-demo.com/announce` | [http-tracker.md](http-tracker.md) | -| UDP Tracker | `udp://udp1.torrust-tracker-demo.com:6969` | [udp-tracker.md](udp-tracker.md) | -| Tracker API | `https://api.torrust-tracker-demo.com/api/v1` | [api.md](api.md) | -| Grafana | `https://grafana.torrust-tracker-demo.com` | [grafana.md](grafana.md) | -| Health Check | `http://127.0.0.1:1313/health_check` (internal) | [health-check.md](health-check.md) | +| Service | URL | File | +| --------------- | ------------------------------------------------- | ---------------------------------------- | +| HTTP Tracker | `https://http1.torrust-tracker-demo.com/announce` | [http-tracker.md](http-tracker.md) | +| UDP Tracker | `udp://udp1.torrust-tracker-demo.com:6969` | [udp-tracker.md](udp-tracker.md) | +| Tracker API | `https://api.torrust-tracker-demo.com/api/v1` | [api.md](api.md) | +| Grafana | `https://grafana.torrust-tracker-demo.com` | [grafana.md](grafana.md) | +| Health Check | `http://127.0.0.1:1313/health_check` (internal) | [health-check.md](health-check.md) | +| Docker Services | All containers | [docker-services.md](docker-services.md) | ## Status -| Service | Status | -| ------------ | ----------- | -| HTTP Tracker | ✅ Verified | -| UDP Tracker | ✅ Verified | -| Tracker API | ✅ Verified | -| Grafana | ✅ Verified | -| Health Check | ✅ Verified | +| Service | Status | +| --------------- | ----------- | +| HTTP Tracker | ✅ Verified | +| UDP Tracker | ✅ Verified | +| Tracker API | ✅ Verified | +| Grafana | ✅ Verified | +| Health Check | ✅ Verified | +| Docker Services | ✅ Verified | ## Prerequisites diff --git a/docs/deployments/hetzner-demo-tracker/verify/docker-services.md b/docs/deployments/hetzner-demo-tracker/verify/docker-services.md new file mode 100644 index 00000000..fac49a54 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/verify/docker-services.md @@ -0,0 +1,106 @@ +# Docker Services Verification + +**Status**: ✅ Verified (2026-03-04) + +## How to Check + +```bash +ssh -i ~/.ssh/ torrust@46.225.234.201 " + cd /opt/torrust + sudo docker compose ps + sudo docker compose logs --tail=30 tracker + sudo docker compose logs --tail=20 mysql + sudo docker compose logs --tail=20 caddy + sudo docker compose logs --tail=20 prometheus + sudo docker compose logs --tail=20 grafana +" +``` + +## 1. Container Health Status + +All containers must report `(healthy)`. Docker evaluates each service's +health check before setting this status. + +Expected: + +```text +NAME IMAGE SERVICE STATUS +caddy caddy:2.10 caddy Up X hours (healthy) +grafana grafana/grafana:12.3.1 grafana Up X hours (healthy) +mysql mysql:8.4 mysql Up X hours (healthy) +prometheus prom/prometheus:v3.5.0 prometheus Up X hours (healthy) +tracker torrust/tracker:develop tracker Up X hours (healthy) +``` + +### Actual Output (2026-03-04) + +| Container | Image | Status | +| ---------- | ------------------------- | ---------- | +| caddy | `caddy:2.10` | ✅ healthy | +| grafana | `grafana/grafana:12.3.1` | ✅ healthy | +| mysql | `mysql:8.4` | ✅ healthy | +| prometheus | `prom/prometheus:v3.5.0` | ✅ healthy | +| tracker | `torrust/tracker:develop` | ✅ healthy | + +## 2. Service Logs + +### Tracker + +✅ **Clean** — INFO level only. Logs show periodic health check polling and +Prometheus metrics scrapes, all returning `200 OK`. No warnings or errors. + +### MySQL + +⚠️ **Expected warnings at startup** — three cosmetic warnings that appear on +every MySQL 8.4 container start: + +- `Unable to load '/usr/share/zoneinfo/zone.tab' as time zone` — MySQL 8.4 + cosmetic warning; timezone data not installed in the container image. Does + not affect operation. +- `CA certificate ca.pem is self signed` — default self-signed cert for + encrypted connections; not used in this deployment. +- `Insecure configuration for --pid-file` — the `/var/run/mysqld` path is + accessible to all OS users inside the container; harmless in Docker context. + +No errors. Database initialization log shows `torrust_tracker` database and +`torrust` user were created successfully. + +### Caddy + +⚠️ **Two categories of expected noise** — no application errors: + +1. **Transient DNS errors at startup** (`ERROR: dial tcp: lookup grafana on +127.0.0.11:53: server misbehaving`): Docker's internal DNS resolver + was not ready when Caddy first tried to resolve `grafana`. These appear + only during the first seconds after `docker compose up` and self-resolve. + Not present in steady-state operation. + +2. **WARN: aborting with incomplete response**: External bots and scanners + (probing for `/wp-login.php`, `/wp-admin/`, `/administrator/`) dropped + TCP connections before Caddy finished sending the response. No legitimate + traffic is affected. + +### Prometheus + +✅ **Clean** — INFO level only. Startup, WAL replay, and scrape configuration +loaded successfully. No warnings or errors. + +### Grafana + +✅ **Clean** — INFO level only. The only notable entries: + +- Periodic cleanup jobs and plugin update checks — expected background tasks. +- `404` responses for `/api/dashboards/uid/*/public-dashboards` — these are + expected because public dashboards are not configured. Grafana logs these + at INFO (not ERROR), and they do not affect dashboard functionality. + +## Results + +| Check | Result | Notes | +| ---------------------- | ------ | --------------------------------------------------- | +| All containers healthy | ✅ | All 5 report `(healthy)` status | +| Tracker logs clean | ✅ | INFO only | +| MySQL logs clean | ⚠️ | 3 cosmetic startup warnings — expected, harmless | +| Caddy logs clean | ⚠️ | Transient DNS + bot scan WARNs — expected, harmless | +| Prometheus logs clean | ✅ | INFO only | +| Grafana logs clean | ✅ | INFO only; 404 for unconfigured public dashboards | diff --git a/project-words.txt b/project-words.txt index 6b25558d..71d9a32f 100644 --- a/project-words.txt +++ b/project-words.txt @@ -253,6 +253,7 @@ myenv MyISAM mysqladmin mysqlcheck +mysqld mysqldump mysqlpump nameof @@ -467,6 +468,7 @@ turbofish typestate tzdata ulpn +unconfigured undertested unergonomic Unflushed @@ -502,6 +504,7 @@ Zálešák zcat zeroize Zeroize +zoneinfo zstd значение ключ From 8f97bf8351e7c052ae5cc3b1268251dbb37035ad Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 15:55:58 +0000 Subject: [PATCH 37/59] docs(verify): add MySQL database connectivity verification --- .../hetzner-demo-tracker/verify/README.md | 2 + .../hetzner-demo-tracker/verify/mysql.md | 112 ++++++++++++++++++ 2 files changed, 114 insertions(+) create mode 100644 docs/deployments/hetzner-demo-tracker/verify/mysql.md diff --git a/docs/deployments/hetzner-demo-tracker/verify/README.md b/docs/deployments/hetzner-demo-tracker/verify/README.md index ef5106af..c7ebfae2 100644 --- a/docs/deployments/hetzner-demo-tracker/verify/README.md +++ b/docs/deployments/hetzner-demo-tracker/verify/README.md @@ -14,6 +14,7 @@ is fully functional end-to-end. | Grafana | `https://grafana.torrust-tracker-demo.com` | [grafana.md](grafana.md) | | Health Check | `http://127.0.0.1:1313/health_check` (internal) | [health-check.md](health-check.md) | | Docker Services | All containers | [docker-services.md](docker-services.md) | +| MySQL Database | `torrust_tracker` DB (internal) | [mysql.md](mysql.md) | ## Status @@ -25,6 +26,7 @@ is fully functional end-to-end. | Grafana | ✅ Verified | | Health Check | ✅ Verified | | Docker Services | ✅ Verified | +| MySQL Database | ✅ Verified | ## Prerequisites diff --git a/docs/deployments/hetzner-demo-tracker/verify/mysql.md b/docs/deployments/hetzner-demo-tracker/verify/mysql.md new file mode 100644 index 00000000..5bbc6261 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/verify/mysql.md @@ -0,0 +1,112 @@ +# MySQL Database Verification + +**Status**: ✅ Verified (2026-03-04) + +## Overview + +Verifies that the MySQL database is reachable from the tracker container and +that reads and writes work correctly. The tracker uses MySQL as its persistent +store for whitelisted torrents, authentication keys, torrent stats, and +aggregate metrics. + +## Database Schema + +Connect to MySQL using the `MYSQL_PWD` environment variable to avoid shell +escaping issues with the password (which contains a `/`): + +```bash +ssh -i ~/.ssh/ torrust@46.225.234.201 " + cd /opt/torrust + MYSQL_PWD=\$(sudo grep MYSQL_PASSWORD .env | cut -d= -f2 | tr -d \"'\") + sudo docker compose exec -e MYSQL_PWD=\"\$MYSQL_PWD\" mysql \ + mysql -u torrust torrust_tracker -e 'SHOW TABLES;' +" +``` + +### Tables + +```text ++-----------------------------+ +| Tables_in_torrust_tracker | ++-----------------------------+ +| keys | +| torrent_aggregate_metrics | +| torrents | +| whitelist | ++-----------------------------+ +``` + +| Table | Description | +| --------------------------- | ------------------------------------------------------------------ | +| `keys` | Authentication keys (id, key varchar(32), valid_until int) | +| `torrent_aggregate_metrics` | Named aggregate counters (id, metric_name varchar(50), value int) | +| `torrents` | Persisted torrent stats (id, info_hash varchar(40), completed int) | +| `whitelist` | Whitelisted info hashes (id, info_hash varchar(40)) | + +## Read/Write Verification + +Verifying the tracker→MySQL connection requires an actual write. The simplest +approach is to add a torrent to the whitelist via the API and confirm it +appears in the `whitelist` table immediately. + +> **Note**: The tracker is running in open mode (`listed = false`), so the +> whitelist table is not used for access control here. The entry can be safely +> deleted after the test. + +### 1. Add a torrent to the whitelist + +```bash +curl -s -X POST \ + "https://api.torrust-tracker-demo.com/api/v1/whitelist/0000000000000000000000000000000000000001?token=" +``` + +Expected response: + +```json +{ "status": "ok" } +``` + +### 2. Verify the row in the database + +```bash +ssh -i ~/.ssh/ torrust@46.225.234.201 " + cd /opt/torrust + MYSQL_PWD='' + sudo docker compose exec -e MYSQL_PWD=\"\$MYSQL_PWD\" mysql \ + mysql -u torrust torrust_tracker \ + -e 'SELECT * FROM whitelist;' +" +``` + +Expected output: + +```text +id info_hash +1 0000000000000000000000000000000000000001 +``` + +### 3. Clean up + +```bash +curl -s -X DELETE \ + "https://api.torrust-tracker-demo.com/api/v1/whitelist/0000000000000000000000000000000000000001?token=" +``` + +Expected response: + +```json +{ "status": "ok" } +``` + +## Results (2026-03-04) + +| Check | Result | +| ----------------------------- | ------- | +| Tables present (4 tables) | ✅ Pass | +| Whitelist write via API | ✅ Pass | +| Row visible in DB immediately | ✅ Pass | +| Whitelist delete via API | ✅ Pass | +| Row removed from DB | ✅ Pass | + +The tracker→MySQL connection is working correctly. Writes are synchronous — +rows appear in the database immediately after the API call completes. From 31c4869b9fa3327d430b458838406da9b368a20e Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 16:01:02 +0000 Subject: [PATCH 38/59] docs(verify): add storage volume mount verification --- .../hetzner-demo-tracker/verify/README.md | 2 + .../hetzner-demo-tracker/verify/storage.md | 101 ++++++++++++++++++ 2 files changed, 103 insertions(+) create mode 100644 docs/deployments/hetzner-demo-tracker/verify/storage.md diff --git a/docs/deployments/hetzner-demo-tracker/verify/README.md b/docs/deployments/hetzner-demo-tracker/verify/README.md index c7ebfae2..7001e73b 100644 --- a/docs/deployments/hetzner-demo-tracker/verify/README.md +++ b/docs/deployments/hetzner-demo-tracker/verify/README.md @@ -15,6 +15,7 @@ is fully functional end-to-end. | Health Check | `http://127.0.0.1:1313/health_check` (internal) | [health-check.md](health-check.md) | | Docker Services | All containers | [docker-services.md](docker-services.md) | | MySQL Database | `torrust_tracker` DB (internal) | [mysql.md](mysql.md) | +| Storage Volume | `/opt/torrust/storage` on `sdb` (internal) | [storage.md](storage.md) | ## Status @@ -27,6 +28,7 @@ is fully functional end-to-end. | Health Check | ✅ Verified | | Docker Services | ✅ Verified | | MySQL Database | ✅ Verified | +| Storage Volume | ✅ Verified | ## Prerequisites diff --git a/docs/deployments/hetzner-demo-tracker/verify/storage.md b/docs/deployments/hetzner-demo-tracker/verify/storage.md new file mode 100644 index 00000000..90615a55 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/verify/storage.md @@ -0,0 +1,101 @@ +# Storage Volume Verification + +**Status**: ✅ Verified (2026-03-04) + +## Overview + +Verifies that all persistent data is written to the attached Hetzner volume +(`/dev/sdb`, 50 GB) and **not** to the server's internal disk (`/dev/sda`). + +## How to Verify + +### 1. Confirm the volume is mounted + +```bash +ssh -i ~/.ssh/ torrust@46.225.234.201 "lsblk && df -h | grep -v tmpfs | grep -v udev" +``` + +### 2. Confirm the storage directory is on the volume + +```bash +ssh -i ~/.ssh/ torrust@46.225.234.201 "df -h /opt/torrust/storage" +``` + +### 3. Inspect the storage tree + +```bash +ssh -i ~/.ssh/ torrust@46.225.234.201 " + find /opt/torrust/storage -maxdepth 3 | sort + sudo du -sh /opt/torrust/storage/mysql/ +" +``` + +## Results (2026-03-04) + +### Block devices + +```text +NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS +sda 8:0 0 152.6G 0 disk +|-sda1 8:1 0 152.3G 0 part / +|-sda14 8:14 0 1M 0 part +`-sda15 8:15 0 256M 0 part /boot/efi +sdb 8:16 0 50G 0 disk /opt/torrust/storage +``` + +`sdb` (the attached Hetzner volume) is mounted at `/opt/torrust/storage`. +`sda` (the internal disk) only holds the OS (`/`) and the EFI partition. + +### Filesystem usage + +```text +Filesystem Size Used Avail Use% Mounted on +/dev/sda1 150G 4.1G 140G 3% / +/dev/sda15 253M 146K 252M 1% /boot/efi +/dev/sdb 49G 261M 47G 1% /opt/torrust/storage +``` + +### Docker Compose volume mounts + +The `docker-compose.yml` uses **relative paths** (`./storage/...`) for all +volume mounts. Because the working directory is `/opt/torrust` and +`/opt/torrust/storage` is on `sdb`, every bind mount resolves to the Hetzner +volume: + +| Service | Host path (→ sdb) | Container path | Purpose | +| ---------- | -------------------------------- | --------------------------- | ------------------ | +| caddy | `./storage/caddy/etc/Caddyfile` | `/etc/caddy/Caddyfile` | Config (read-only) | +| caddy | `./storage/caddy/data` | `/data` | TLS certificates | +| caddy | `./storage/caddy/config` | `/config` | Runtime config | +| tracker | `./storage/tracker/lib` | `/var/lib/torrust/tracker` | Tracker library | +| tracker | `./storage/tracker/log` | `/var/log/torrust/tracker` | Logs | +| tracker | `./storage/tracker/etc` | `/etc/torrust/tracker` | Config | +| mysql | `./storage/mysql/data` | `/var/lib/mysql` | MySQL data files | +| prometheus | `./storage/prometheus/etc` | `/etc/prometheus` | Config | +| grafana | `./storage/grafana/data` | `/var/lib/grafana` | Grafana database | +| grafana | `./storage/grafana/provisioning` | `/etc/grafana/provisioning` | Dashboards/DS | + +### Data on the volume + +```text +/opt/torrust/storage/backup/etc/backup.conf +/opt/torrust/storage/caddy/data/caddy/ ← TLS certificates +/opt/torrust/storage/caddy/etc/Caddyfile +/opt/torrust/storage/grafana/data/grafana.db ← Grafana database +/opt/torrust/storage/grafana/provisioning/ +/opt/torrust/storage/mysql/ ← 209 MB MySQL data +/opt/torrust/storage/mysql/data/torrust_tracker/ ← tracker database +/opt/torrust/storage/prometheus/etc/prometheus.yml +/opt/torrust/storage/tracker/etc/tracker.toml +/opt/torrust/storage/tracker/lib/database/ ← 8 KB (SQLite stub) +``` + +MySQL occupies ~209 MB on the volume. The volume has 47 GB free (1% used). + +## Conclusion + +All persistent data — MySQL, TLS certificates, Grafana database, tracker +config, and logs — is written to the attached 50 GB Hetzner volume (`sdb`). +The server's internal disk is used only for the OS. If the server is destroyed +and a new one is created with the same volume attached and mounted at +`/opt/torrust/storage`, all data will be preserved. From 68705123948e3b8df70b29f9ecaa7d77859071bb Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 16:04:39 +0000 Subject: [PATCH 39/59] docs(verify): add actual tree output to storage verification --- .../hetzner-demo-tracker/verify/storage.md | 81 ++++++++++++++++--- project-words.txt | 3 + 2 files changed, 74 insertions(+), 10 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/verify/storage.md b/docs/deployments/hetzner-demo-tracker/verify/storage.md index 90615a55..6ab80f92 100644 --- a/docs/deployments/hetzner-demo-tracker/verify/storage.md +++ b/docs/deployments/hetzner-demo-tracker/verify/storage.md @@ -77,19 +77,80 @@ volume: ### Data on the volume +Command (run with `sudo` to read MySQL-owned files; excludes MySQL internal +schemas and InnoDB redo/temp directories for brevity): + +```bash +sudo tree /opt/torrust/storage -L 4 --prune \ + -I 'performance_schema|#innodb_redo|#innodb_temp|sys' +``` + +Output (2026-03-04, post-deployment): + ```text -/opt/torrust/storage/backup/etc/backup.conf -/opt/torrust/storage/caddy/data/caddy/ ← TLS certificates -/opt/torrust/storage/caddy/etc/Caddyfile -/opt/torrust/storage/grafana/data/grafana.db ← Grafana database -/opt/torrust/storage/grafana/provisioning/ -/opt/torrust/storage/mysql/ ← 209 MB MySQL data -/opt/torrust/storage/mysql/data/torrust_tracker/ ← tracker database -/opt/torrust/storage/prometheus/etc/prometheus.yml -/opt/torrust/storage/tracker/etc/tracker.toml -/opt/torrust/storage/tracker/lib/database/ ← 8 KB (SQLite stub) +/opt/torrust/storage +├── backup +│ └── etc +│ ├── backup.conf +│ └── backup-paths.txt +├── caddy +│ ├── config +│ │ └── caddy +│ │ └── autosave.json +│ ├── data +│ │ └── caddy +│ │ ├── instance.uuid +│ │ └── last_clean.json +│ └── etc +│ └── Caddyfile +├── grafana +│ ├── data +│ │ └── grafana.db +│ └── provisioning +│ ├── dashboards +│ │ └── torrust.yml +│ └── datasources +│ └── prometheus.yml +├── mysql +│ └── data +│ ├── auto.cnf +│ ├── binlog.000001 +│ ├── binlog.000002 +│ ├── binlog.index +│ ├── ca-key.pem +│ ├── ca.pem +│ ├── client-cert.pem +│ ├── client-key.pem +│ ├── ib_buffer_pool +│ ├── ibdata1 +│ ├── mysql.ibd +│ ├── mysql_upgrade_history +│ ├── private_key.pem +│ ├── public_key.pem +│ ├── server-cert.pem +│ ├── server-key.pem +│ ├── torrust_tracker +│ │ ├── keys.ibd +│ │ ├── torrent_aggregate_metrics.ibd +│ │ ├── torrents.ibd +│ │ └── whitelist.ibd +│ ├── undo_001 +│ └── undo_002 +├── prometheus +│ └── etc +│ └── prometheus.yml +└── tracker + ├── etc + │ └── tracker.toml + └── lib + └── database + └── tracker.db ``` +> **Note**: TLS certificates are stored deeper inside `caddy/data/caddy/` under +> `acme/` (ACME account) and `certificates/` (one subdirectory per domain) — +> omitted above by the depth limit. + MySQL occupies ~209 MB on the volume. The volume has 47 GB free (1% used). ## Conclusion diff --git a/project-words.txt b/project-words.txt index 71d9a32f..eeae0155 100644 --- a/project-words.txt +++ b/project-words.txt @@ -32,6 +32,7 @@ Banuba BBDBE bencoded Bilu +binlog binstall bitrot Bitwarden @@ -171,11 +172,13 @@ Hostnames hotfixes htdocs hugepages +ibdata idna impls incompletei initialisation Inno +innodb inspectable instructionsets intervali From 487c1b50411f00d45702d8ebc481fabc883a9889 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 16:12:41 +0000 Subject: [PATCH 40/59] docs(verify): add backup verification and document credentials oversight --- .../hetzner-demo-tracker/verify/README.md | 2 + .../hetzner-demo-tracker/verify/backup.md | 189 ++++++++++++++++++ 2 files changed, 191 insertions(+) create mode 100644 docs/deployments/hetzner-demo-tracker/verify/backup.md diff --git a/docs/deployments/hetzner-demo-tracker/verify/README.md b/docs/deployments/hetzner-demo-tracker/verify/README.md index 7001e73b..e1fd5a2f 100644 --- a/docs/deployments/hetzner-demo-tracker/verify/README.md +++ b/docs/deployments/hetzner-demo-tracker/verify/README.md @@ -16,6 +16,7 @@ is fully functional end-to-end. | Docker Services | All containers | [docker-services.md](docker-services.md) | | MySQL Database | `torrust_tracker` DB (internal) | [mysql.md](mysql.md) | | Storage Volume | `/opt/torrust/storage` on `sdb` (internal) | [storage.md](storage.md) | +| Backup | `storage/backup/` on volume (internal) | [backup.md](backup.md) | ## Status @@ -29,6 +30,7 @@ is fully functional end-to-end. | Docker Services | ✅ Verified | | MySQL Database | ✅ Verified | | Storage Volume | ✅ Verified | +| Backup | ✅ Verified | ## Prerequisites diff --git a/docs/deployments/hetzner-demo-tracker/verify/backup.md b/docs/deployments/hetzner-demo-tracker/verify/backup.md new file mode 100644 index 00000000..4096cf60 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/verify/backup.md @@ -0,0 +1,189 @@ +# Backup Verification + +**Status**: ✅ Verified (2026-03-04) + +## Architecture + +Backups run daily at 03:00 UTC via a host cron job that orchestrates a +graceful maintenance window: + +```text +/etc/cron.d/tracker-backup (03:00 daily) + └─▶ /usr/local/bin/maintenance-backup.sh + ├─ stop tracker container + ├─ docker compose --profile backup run --rm backup + │ ├─ mysqldump torrust_tracker → mysql_.sql.gz + │ └─ tar config files → config_.tar.gz + └─ start tracker container +``` + +The backup container uses the `backup` Docker Compose profile, so it is +**not** started on `docker compose up` — it only runs when explicitly invoked. + +### Retention + +Old backups older than **7 days** are deleted automatically at the end of each +backup cycle. + +## What Gets Backed Up + +### MySQL dump + +The full `torrust_tracker` database is exported with `mysqldump` and compressed +with gzip. Output: `storage/backup/mysql/mysql_.sql.gz`. + +### Config files + +The following files are archived into a tarball: +`storage/backup/config/config_.tar.gz`. + +| File | Description | +| --------------------------------------------------- | ------------------------------- | +| `storage/tracker/etc/tracker.toml` | Tracker configuration | +| `storage/prometheus/etc/prometheus.yml` | Prometheus configuration | +| `storage/grafana/provisioning/datasources/*.yml` | Grafana datasource provisioning | +| `storage/grafana/provisioning/dashboards/*.yml` | Grafana dashboard provisioning | +| `storage/grafana/provisioning/dashboards/torrust/*` | Dashboard JSON definitions | +| `storage/caddy/etc/Caddyfile` | Caddy reverse-proxy config | + +## How to Trigger a Manual Backup + +```bash +ssh -i ~/.ssh/ torrust@46.225.234.201 " + cd /opt/torrust + sudo docker compose --profile backup run --rm backup +" +``` + +## How to List Existing Backups + +```bash +ssh -i ~/.ssh/ torrust@46.225.234.201 " + sudo find /opt/torrust/storage/backup -type f | sort +" +``` + +## How to Inspect a Backup + +```bash +# List SQL dump tables +ssh -i ~/.ssh/ torrust@46.225.234.201 " + sudo zcat /opt/torrust/storage/backup/mysql/.sql.gz | grep '^CREATE TABLE' +" + +# List config archive contents +ssh -i ~/.ssh/ torrust@46.225.234.201 " + sudo tar -tzf /opt/torrust/storage/backup/config/.tar.gz +" +``` + +## Issues Found and Fixed During Verification + +### Oversight: backup.conf not updated after manual credentials fix + +During the initial deployment the `run` command failed because the MySQL root +user password was not URL-encoded in `tracker.toml` (see Bug 1 and Bug 3 in +`commands/improvements.md`). That was fixed manually — the templates were +updated and the `run` command was retried. + +However, `backup.conf` was also generated at the same time with the original +credentials, and was **not updated** when the tracker credentials were fixed. +As a result the backup container could not authenticate to MySQL: + +| Setting | Value in backup.conf | Required value | +| --------- | -------------------- | ----------------- | +| `DB_USER` | `root` | `torrust` | +| `DB_NAME` | `torrust` | `torrust_tracker` | + +The fix was to align `backup.conf` with the credentials that were already +working for the tracker: + +```bash +sudo sed -i \ + -e 's/^DB_USER=root/DB_USER=torrust/' \ + -e 's/^DB_NAME=torrust$/DB_NAME=torrust_tracker/' \ + /opt/torrust/storage/backup/etc/backup.conf +``` + +This is a process gap: whenever credentials are changed or fixed manually +after a deployment, all configuration files that reference those credentials +must be updated together — including `backup.conf`. + +### Known warning: PROCESS privilege + +The backup container uses `mariadb-dump` (from the MariaDB Docker image) +against a MySQL 8.4 server. MariaDB's dump client emits the following +non-critical warning: + +```text +mysqldump: Error: 'Access denied; you need (at least one of) the PROCESS privilege(s) +for this operation' when trying to dump tablespaces +``` + +This only affects tablespace metadata, not the actual table data. All table +structures and rows are dumped correctly. The `torrust` user would need +`GRANT PROCESS ON *.* TO 'torrust'@'%'` or the `--no-tablespaces` flag added +to the `mysqldump` command to suppress this warning. + +## Results (2026-03-04) + +### Test run output + +```text +[2026-03-04 16:07:58] Torrust Backup Container starting +[2026-03-04 16:07:58] Loading configuration from: /etc/backup/backup.conf +[2026-03-04 16:07:58] Configuration: +[2026-03-04 16:07:58] Retention: 7 days +[2026-03-04 16:07:58] Database: mysql +[2026-03-04 16:07:58] Config paths file: /etc/backup/backup-paths.txt +[2026-03-04 16:07:58] Starting backup cycle +[2026-03-04 16:07:58] Starting MySQL backup: torrust_tracker@mysql:3306 +[2026-03-04 16:07:58] MySQL backup completed: /backups/mysql/mysql_20260304_160758.sql.gz +[2026-03-04 16:07:59] Size: 4.0K +[2026-03-04 16:07:59] Starting config files backup +[2026-03-04 16:07:59] Config backup completed: /backups/config/config_20260304_160759.tar.gz +[2026-03-04 16:07:59] Files backed up: 4 +[2026-03-04 16:07:59] Size: 8.0K +[2026-03-04 16:07:59] Cleaning up backups older than 7 days +[2026-03-04 16:07:59] No old backups to delete +[2026-03-04 16:07:59] Backup cycle completed successfully +``` + +### SQL dump content + +```text +-- Host: mysql Database: torrust_tracker +CREATE TABLE `keys` (...) +CREATE TABLE `torrent_aggregate_metrics` (...) +CREATE TABLE `torrents` (...) +CREATE TABLE `whitelist` (...) +``` + +### Config archive content + +```text +data/storage/tracker/etc/tracker.toml +data/storage/prometheus/etc/prometheus.yml +data/storage/grafana/provisioning/datasources/prometheus.yml +data/storage/grafana/provisioning/dashboards/torrust.yml +data/storage/grafana/provisioning/dashboards/torrust/stats.json +data/storage/grafana/provisioning/dashboards/torrust/metrics.json +data/storage/caddy/etc/Caddyfile +``` + +### Verification summary + +| Check | Result | +| -------------------------------- | ------------------------------------------------------- | +| Cron job installed | ✅ `/etc/cron.d/tracker-backup` | +| Schedule | ✅ Daily at 03:00 UTC | +| Maintenance script present | ✅ `/usr/local/bin/maintenance-backup.sh` | +| Manual test run | ✅ Exit code 0 | +| MySQL dump created | ✅ `mysql_20260304_160758.sql.gz` (4 KB) | +| All 4 tables present in dump | ✅ keys, torrent_aggregate_metrics, torrents, whitelist | +| Config archive created | ✅ `config_20260304_160759.tar.gz` (8 KB, 4 paths) | +| Retention policy | ✅ 7 days | +| Backups stored on volume (`sdb`) | ✅ `/opt/torrust/storage/backup/` | +| Wrong DB_USER in backup.conf | ⚠️ Oversight — fixed (root → torrust) | +| Wrong DB_NAME in backup.conf | ⚠️ Oversight — fixed (torrust → torrust_tracker) | +| PROCESS privilege warning | ⚠️ Non-critical (tablespaces only) | From 7a4f714176df32a700353c052f9a5a42f5e93838 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 16:20:56 +0000 Subject: [PATCH 41/59] docs(verify): add Torrust tracker client announce tests for HTTP and UDP trackers --- .../verify/http-tracker.md | 75 +++++++++++++++++-- .../verify/udp-tracker.md | 74 ++++++++++++++++-- 2 files changed, 137 insertions(+), 12 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/verify/http-tracker.md b/docs/deployments/hetzner-demo-tracker/verify/http-tracker.md index 3a47a893..f69f7371 100644 --- a/docs/deployments/hetzner-demo-tracker/verify/http-tracker.md +++ b/docs/deployments/hetzner-demo-tracker/verify/http-tracker.md @@ -47,11 +47,74 @@ interface (`127.0.0.1:1313`). It is not accessible from the host directly. See [health-check.md](health-check.md) for the verification procedure and actual output. +## 5. Using the Torrust Tracker Client + +The [Torrust Tracker](https://github.com/torrust/torrust-tracker) project ships +a reference `http_tracker_client` binary located in +[`console/tracker-client`](https://github.com/torrust/torrust-tracker/tree/develop/console/tracker-client). +It sends a full BEP 3 HTTP announce request and displays the JSON-decoded +response. + +### HTTP Tracker 1 + +```bash +# From the torrust-tracker console/tracker-client directory +cargo run --bin http_tracker_client announce \ + https://http1.torrust-tracker-demo.com \ + 9c38422213e30bff212b30c360d26f9a02136422 +``` + +Output: + +```json +{ + "complete": 3, + "incomplete": 0, + "interval": 300, + "min interval": 300, + "peers": [ + { "ip": "::ffff:2.137.92.24", "port": 34094 }, + { "ip": "::ffff:2.137.92.24", "port": 48887 } + ] +} +``` + +### HTTP Tracker 2 + +```bash +cargo run --bin http_tracker_client announce \ + https://http2.torrust-tracker-demo.com \ + 9c38422213e30bff212b30c360d26f9a02136422 +``` + +Output: + +```json +{ + "complete": 3, + "incomplete": 0, + "interval": 300, + "min interval": 300, + "peers": [ + { "ip": "::ffff:2.137.92.24", "port": 34094 }, + { "ip": "::ffff:2.137.92.24", "port": 48887 } + ] +} +``` + +Both trackers returned the same response — they share the same backend database. +The IP `::ffff:2.137.92.24` is the IPv4-mapped IPv6 form of the local machine's +public IP (`2.137.92.24`), confirming the peer was registered correctly from the +client's perspective. The two ports (`34094` and `48887`) correspond to peers +registered from previous HTTP and UDP announces during this verification session. + ## Results -| Check | Result | Notes | -| --------------------------- | ------ | -------------------------------------- | -| HTTP Tracker 1 connectivity | ✅ | HTTP 200 with bencoded response | -| HTTP Tracker 1 TLS cert | ✅ | Let's Encrypt, valid until Jun 2, 2026 | -| HTTP Tracker 2 connectivity | ✅ | HTTP 200 with bencoded response | -| Health check | ✅ | See [health-check.md](health-check.md) | +| Check | Result | Notes | +| ----------------------------------- | ------ | ---------------------------------------------- | +| HTTP Tracker 1 connectivity | ✅ | HTTP 200 with bencoded response | +| HTTP Tracker 1 TLS cert | ✅ | Let's Encrypt, valid until Jun 2, 2026 | +| HTTP Tracker 2 connectivity | ✅ | HTTP 200 with bencoded response | +| Health check | ✅ | See [health-check.md](health-check.md) | +| Torrust client announce (tracker 1) | ✅ | `interval=300`, `complete=3`, 2 peers returned | +| Torrust client announce (tracker 2) | ✅ | `interval=300`, `complete=3`, 2 peers returned | diff --git a/docs/deployments/hetzner-demo-tracker/verify/udp-tracker.md b/docs/deployments/hetzner-demo-tracker/verify/udp-tracker.md index b0d80044..3b0eb001 100644 --- a/docs/deployments/hetzner-demo-tracker/verify/udp-tracker.md +++ b/docs/deployments/hetzner-demo-tracker/verify/udp-tracker.md @@ -86,11 +86,73 @@ magnet:?xt=urn:btih:0000000000000000000000000000000000000000 Note: a real info hash is needed for a meaningful announce. The zero hash above will return an empty peer list but confirms the tracker is reachable. +## 4. Using the Torrust Tracker Client + +The [Torrust Tracker](https://github.com/torrust/torrust-tracker) project ships +a reference `udp_tracker_client` binary located in +[`console/tracker-client`](https://github.com/torrust/torrust-tracker/tree/develop/console/tracker-client). +It implements the full BEP 15 protocol and sends a real `announce` request, +making it a definitive end-to-end test. + +### UDP Tracker 1 (port 6969) + +```bash +# From the torrust-tracker console/tracker-client directory +cargo run --bin udp_tracker_client announce \ + udp://udp1.torrust-tracker-demo.com:6969 \ + 9c38422213e30bff212b30c360d26f9a02136422 +``` + +Output: + +```json +{ + "AnnounceIpv4": { + "transaction_id": -888840697, + "announce_interval": 300, + "leechers": 0, + "seeders": 1, + "peers": [] + } +} +``` + +### UDP Tracker 2 (port 6868) + +```bash +cargo run --bin udp_tracker_client announce \ + udp://udp2.torrust-tracker-demo.com:6868 \ + 9c38422213e30bff212b30c360d26f9a02136422 +``` + +Output: + +```json +{ + "AnnounceIpv4": { + "transaction_id": -888840697, + "announce_interval": 300, + "leechers": 0, + "seeders": 2, + "peers": ["0.0.0.0:0", "0.0.0.0:65535", "2.137.92.24:48887"] + } +} +``` + +Both trackers responded with `announce_interval: 300` (5 minutes), confirming +announces were processed correctly. Tracker 2 returned peers registered from +previous announces: the `0.0.0.0` entries are placeholder peers from the BEP 15 +handshake script, and `2.137.92.24:48887` is the local machine running the +tracker client — confirming the announce was registered correctly and the peer +IP was recorded as seen by the server. + ## Results -| Check | Result | Notes | -| ---------------------------- | ------ | ------------------------------------ | -| UDP port 6969 open | ✅ | BEP 15 handshake succeeded | -| UDP port 6868 open | ✅ | BEP 15 handshake succeeded | -| BEP 15 handshake (tracker 1) | ✅ | `connection_id = 0x927bc33b3260b795` | -| BEP 15 handshake (tracker 2) | ✅ | `connection_id = 0x59c13493038e3be3` | +| Check | Result | Notes | +| ----------------------------------- | ------ | ------------------------------------------------------ | +| UDP port 6969 open | ✅ | BEP 15 handshake succeeded | +| UDP port 6868 open | ✅ | BEP 15 handshake succeeded | +| BEP 15 handshake (tracker 1) | ✅ | `connection_id = 0x927bc33b3260b795` | +| BEP 15 handshake (tracker 2) | ✅ | `connection_id = 0x59c13493038e3be3` | +| Torrust client announce (tracker 1) | ✅ | `announce_interval=300`, `seeders=1`, peers=0 | +| Torrust client announce (tracker 2) | ✅ | `announce_interval=300`, `seeders=2`, 3 peers returned | From 700112374eede7eafcc6b289ebdb9ecaafd82987 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 16:24:14 +0000 Subject: [PATCH 42/59] =?UTF-8?q?docs(deploy):=20update=20progress=20?= =?UTF-8?q?=E2=80=94=20all=209=20services=20verified,=20fill=20in=20servic?= =?UTF-8?q?e=20endpoints=20table?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hetzner-demo-tracker/README.md | 41 +++++++++++++------ 1 file changed, 29 insertions(+), 12 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/README.md b/docs/deployments/hetzner-demo-tracker/README.md index de3dd84d..99ffc31d 100644 --- a/docs/deployments/hetzner-demo-tracker/README.md +++ b/docs/deployments/hetzner-demo-tracker/README.md @@ -23,12 +23,22 @@ Deploy a public Torrust Tracker demo instance to Hetzner Cloud and document ever 4. Post-provision manual steps (done once, before `configure`): - [DNS setup](post-provision/dns-setup.md) — assign floating IPs, create DNS records, verify - [Volume setup](post-provision/volume-setup.md) — create and mount Hetzner volume for storage -5. Problems — issues encountered, per command: +5. [Service Verification](verify/README.md) — verifying all services after deployment: + - [HTTP Tracker](verify/http-tracker.md) + - [UDP Tracker](verify/udp-tracker.md) + - [Tracker API](verify/api.md) + - [Grafana](verify/grafana.md) + - [Health Check](verify/health-check.md) + - [Docker Services](verify/docker-services.md) + - [MySQL Database](verify/mysql.md) + - [Storage Volume](verify/storage.md) + - [Backup](verify/backup.md) +6. Problems — issues encountered, per command: - [create problems](commands/create/problems.md) - [provision problems](commands/provision/problems.md) -6. Improvements — recommended deployer improvements found during this deployment: +7. Improvements — recommended deployer improvements found during this deployment: - [provision improvements](commands/provision/improvements.md) -7. [Observations](observations.md) — cross-cutting insights and learnings about the deployer +8. [Observations](observations.md) — cross-cutting insights and learnings about the deployer ## Deployment @@ -72,23 +82,30 @@ command. Pulled and staged all Docker images (~134 s, state=`Released`). ### Phase 6: Run Services - +See [commands/run/README.md](commands/run/README.md) for running the `run` +command. All services started successfully (state=`Running`). ### Phase 7: Verify Deployment - +See [verify/README.md](verify/README.md) for the full verification index. +All 9 services verified — HTTP tracker, UDP tracker, Tracker API, Grafana, +health check, Docker services, MySQL database, storage volume, and backup. +Verification included end-to-end announce tests using the Torrust reference +client (`http_tracker_client` and `udp_tracker_client`). ## Service Endpoints > Will be filled after deployment. -| Service | URL | Status | -| ------------ | --- | ------ | -| HTTP Tracker | TBD | - | -| UDP Tracker | TBD | - | -| Tracker API | TBD | - | -| Health Check | TBD | - | -| Grafana | TBD | - | +| Service | URL | Status | +| -------------- | ------------------------------------------------- | ---------- | +| HTTP Tracker 1 | `https://http1.torrust-tracker-demo.com/announce` | ✅ Running | +| HTTP Tracker 2 | `https://http2.torrust-tracker-demo.com/announce` | ✅ Running | +| UDP Tracker 1 | `udp://udp1.torrust-tracker-demo.com:6969` | ✅ Running | +| UDP Tracker 2 | `udp://udp2.torrust-tracker-demo.com:6868` | ✅ Running | +| Tracker API | `https://api.torrust-tracker-demo.com/api/v1` | ✅ Running | +| Health Check | `http://127.0.0.1:1313/health_check` (internal) | ✅ Running | +| Grafana | `https://grafana.torrust-tracker-demo.com` | ✅ Running | ## Cost From 36af759b02883c44726e4af7448cf4dbee68c296 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 16:36:36 +0000 Subject: [PATCH 43/59] docs(post-provision): add screenshot of Hetzner backups enabled state --- ...console-backups-enabled-no-backups-yet.png | Bin 0 -> 164362 bytes .../post-provision/hetzner-backups.md | 89 ++++++++++++++++++ 2 files changed, 89 insertions(+) create mode 100644 docs/deployments/hetzner-demo-tracker/media/hetzner-console-backups-enabled-no-backups-yet.png create mode 100644 docs/deployments/hetzner-demo-tracker/post-provision/hetzner-backups.md diff --git a/docs/deployments/hetzner-demo-tracker/media/hetzner-console-backups-enabled-no-backups-yet.png b/docs/deployments/hetzner-demo-tracker/media/hetzner-console-backups-enabled-no-backups-yet.png new file mode 100644 index 0000000000000000000000000000000000000000..3b1909ff80a4d2a2aae3e94ab6053c9559a20379 GIT binary patch literal 164362 zcmcG$cQlv(A3yw7q@sk3P?ADcC?YdNkwQi#J0rU!dnA%1DWjB(lAY|z-ceGrXGqH4 z+3v^nS>OAg`<&mo&wY2k-}5=v`+Z&4>-Bm*AM5!JR6nDB@wk@Dv(awX z^IB%>vXe)JDz<0U6~7yZ`2Nsc$4W3E;Yot|!KI{-kNJaNHER!~f6BUa?Nr4cfy0qC z0%g%!m&h(?k!z7(esn@^{-*KIKa?eoCPwEsh1UNWd0*(4-8J;wag(`AgQrY>L>4tk zE>8W|m&f8VkoK2v+Uma{At8Z8O4j1FlT-Zf zpHreb&)&$7RV&(hdaNDgAI|&BlaanOH=FUO{`WgtXLE9M<5E+pNG7=(Y)K|Ue4!^( zY<=$h_itEfU#Ql0^Kg{|%5`+K|NfKa?C9uNznobve`fr|e=jy`vqd6JY~zLht~LI4 z6>au^KUUnP$R^zRVRi3+KX)4!dVJu&udIxy%>(~?V;1IH|F;*~RBaUT-;a`R3jaU< z+2fa)l7BsfdOZyd+PgtP9FZSc3-}Zj)gl!4-F*F8aCUC)udkaF|9r?Ei|X1tHvF%us!B*q>~@}*y-~u?7eYd8?cQt(YyNU!l?TX3FJEsLa!aQ9#1(w= zcnlNEyMPqUbLWgrO~18u?@bBSxpF00GfqAB?OW#Cw{Hh`v+s+ynxcrfll1#TZLKjL zy%r^1Ao;6TuY$X`#a}$NXvvV}v0bYm_+2Y`Tl#wZO*gH>YuzW+^p77WyYA$4!St`& zKBB9oRjG~_x&Pyu#NE4hSqfMcMco!!Mp+atkUmUH_ypM3+xhIF&E^055uP-~9Rzn% z?29)KE>TWSR>j*)e>O;-n|HOy*gN<_yWx$pq5#d`Pq>j;`6C^z^zOAi39r(GgbH;y z&G_o@n&qXF7GF5yBLd6#|6TXMtaWjndH+GGH(frV3N|q>T%M)e=hp^!Gj%d-@h*}FW<1pw1Mo`@riWrvaGY4 z_JnxTFK%Zq?R)C_Mx6f6y+UW>600LSOVUa!ULJq5`g7y?`w~GfdmpZ?7Ym$IQQ7L@ z=~*=)EiK*m`*-q<=;-L(N+EmnQ$1rSi;IglZ`*d_cVp5aWLzkzpu~UDff{oN28+4XVU*1a(#TyU0*4Q-`R2)c5>%&d2!{0+3!KIM|NI=Cn)QiziKF(n6BD_0G7JQ6 z-`^lBD{IqJ_^#ShFDoo8Ol7G0^XKgx92}dsY`KYFDl96B>2%0DZYWU~kVSgneUQ0@ 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


    QQ__FB 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
    i`2`X%7{hD-R~M`iKl^tqCl8e6N)2Y2Z2x0 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
    sU9hP3i!N{ek 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 e=6?>?H$C;_OEd@R>L(h=$DriZ **Status**: ✅ Done — Hetzner automated backups enabled (2026-03-04). + +Enable Hetzner's automated server backup feature so that a full server image is +taken once daily. This complements the application-level backup (MySQL dump + +config files) that runs inside the container. + +> **This step can be done at any time** after provisioning — it does not depend +> on `configure`, `release`, or `run`. + +## Why Hetzner Backups in Addition to the Application Backup? + +The application-level backup (`backup` container + cron job) captures only the +application data stored on the Hetzner volume: + +- MySQL database dumps (`mysql_*.sql.gz`) +- Config file archives (`config_*.tar.gz`) + +It does **not** capture the OS, Docker installation, Caddy TLS certificates, +container images, or any data outside `/opt/torrust/storage/`. + +Hetzner Backups capture the **entire server root disk** as a snapshot image. +This protects against catastrophic failures such as: + +- OS corruption +- Accidental deletion of system files or Docker config +- Need to roll back to a known-good server state + +| Layer | What it covers | Storage location | +| --------------- | --------------------------------------- | ------------------------- | +| App backup | MySQL dump + config files | Hetzner volume (internal) | +| Hetzner Backups | Full root disk (OS, Docker, everything) | Hetzner infrastructure | + +> **Note**: Hetzner Backups do **not** include attached volumes. The 50 GB +> storage volume (`torrust-tracker-demo-storage`) is not captured by this +> feature. Application-level backups remain essential for data recovery. + +## Hetzner Backup Options + +Hetzner offers two image-based backup mechanisms for servers: + +| Feature | Backups | Snapshots | +| ------------- | ------------------------------------- | ------------------------------------ | +| Trigger | Automatic (daily, Hetzner picks time) | Manual or via API | +| Retention | Last 7 kept automatically | Kept until deleted manually | +| Cost | 20% of server price (~€0.76/mo) | €0.0119/GB/month of compressed image | +| Configuration | Enable/disable toggle only | Fully manual | +| Use case | Ongoing safety net | Point-in-time capture before changes | + +For this deployment we enable **Backups** (automated daily) as the ongoing +safety net. Snapshots can be taken manually before risky operations like +secrets rotation. + +## Step 1: Enable Backups via the Hetzner Console (2026-03-04) + +1. Open [Hetzner Cloud Console](https://console.hetzner.cloud/) +2. Navigate to **Projects → torrust-tracker-demo → Servers → + torrust-tracker-demo** +3. Click the **Backups** tab +4. Click **Enable backups** + + The console presents a confirmation showing the cost: **+20% of server price**. + + ![Hetzner Console — Backups tab before enabling](../media/hetzner-console-backups-tab.png) + +5. Confirm by clicking **Enable backups** in the dialog + +Once enabled, the Backups tab immediately shows **Backups enabled** with an +empty list — no backups exist yet. The first backup will be taken automatically +during the next maintenance window (usually within 24 hours). + +![Hetzner Console — Backups enabled, no backups yet](../media/hetzner-console-backups-enabled-no-backups-yet.png) + +## What Happens After Enabling + +- Hetzner takes one backup per day, automatically +- The last **7 backups** are retained; the oldest is deleted when a new one is + created +- Each backup appears as a server image in **Images → Backups** in the console +- To restore: navigate to the server → **Backups** tab → select a backup → + **Rebuild server from image** (this replaces the current root disk) + +## Cost + +| Resource | Price | Notes | +| --------------- | ------------------- | ---------------------------- | +| Hetzner Backups | 20% of server price | CX22 = ~€3.79/mo → ~€0.76/mo | +| Snapshots | €0.0119/GB/month | Only if taken manually | From ea7ea224917ecda6d57c4b90583b71f0d3c5e8c5 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 16:37:36 +0000 Subject: [PATCH 44/59] docs(post-provision): add Hetzner backups step to ToC and post-provision index --- .../deployments/hetzner-demo-tracker/README.md | 3 +++ .../media/hetzner-console-backups-tab.png | Bin 0 -> 149068 bytes .../post-provision/README.md | 9 +++++---- 3 files changed, 8 insertions(+), 4 deletions(-) create mode 100644 docs/deployments/hetzner-demo-tracker/media/hetzner-console-backups-tab.png diff --git a/docs/deployments/hetzner-demo-tracker/README.md b/docs/deployments/hetzner-demo-tracker/README.md index 99ffc31d..4cb6a3a8 100644 --- a/docs/deployments/hetzner-demo-tracker/README.md +++ b/docs/deployments/hetzner-demo-tracker/README.md @@ -23,6 +23,7 @@ Deploy a public Torrust Tracker demo instance to Hetzner Cloud and document ever 4. Post-provision manual steps (done once, before `configure`): - [DNS setup](post-provision/dns-setup.md) — assign floating IPs, create DNS records, verify - [Volume setup](post-provision/volume-setup.md) — create and mount Hetzner volume for storage + - [Hetzner Backups](post-provision/hetzner-backups.md) — enable automated server backups (can be done any time after provisioning) 5. [Service Verification](verify/README.md) — verifying all services after deployment: - [HTTP Tracker](verify/http-tracker.md) - [UDP Tracker](verify/udp-tracker.md) @@ -67,6 +68,8 @@ Manual steps done once after provisioning, required before `configure`: records for all six domains. 2. [Volume setup](post-provision/volume-setup.md) — create a 50 GB Hetzner volume and mount it at `/opt/torrust/storage` so persistent data lives on a separate disk. +3. [Hetzner Backups](post-provision/hetzner-backups.md) — enable automated daily server backups + via the Hetzner Console (can be done at any time after provisioning). See [post-provision/README.md](post-provision/README.md) for the full overview. diff --git a/docs/deployments/hetzner-demo-tracker/media/hetzner-console-backups-tab.png b/docs/deployments/hetzner-demo-tracker/media/hetzner-console-backups-tab.png new file mode 100644 index 0000000000000000000000000000000000000000..cb6e9316c387d8a951762a209fd56f59e340601b GIT binary patch literal 149068 zcmcG$cQlv(A3yw7q@sk3P?ADcC?YdNkwQi#J0rU!dnA%1DWjB(lAY|z-ceGrXGqH4 z+3v^nS>OAg`<&mo&wY2k-}5=v`+Z&4>-Bm*AM5!JR6nDB@wk@Dv(awX z^IB%>vXe)JDz<0U6~7yZ`2Nsc$4W3E;Yot|!KI{-kNJaNHER!~f6BUa?Nr4cfy0qC z0%g%!m&h(?k!z7(esn@^{-*KIKa?eoCPwEsh1UNWd0*(4-8J;wag(`AgQrY>L>4tk zE>8W|m&f8VkoK2v+Uma{At8Z8O4j1FlT-Zf zpHreb&)&$7RV&(hdaNDgAI|&BlaanOH=FUO{`WgtXLE9M<5E+pNG7=(Y)K|Ue4!^( zY<=$h_itEfU#Ql0^Kg{|%5`+K|NfKa?C9uNznobve`fr|e=jy`vqd6JY~zLht~LI4 z6>au^KUUnP$R^zRVRi3+KX)4!dVJu&udIxy%>(~?V;1IH|F;*~RBaUT-;a`R3jaU< z+2fa)l7BsfdOZyd+PgtP9FZSc3-}Zj)gl!4-F*F8aCUC)udkaF|9r?Ei|X1tHvF%us!B*q>~@}*y-~u?7eYd8?cQt(YyNU!l?TX3FJEsLa!aQ9#1(w= zcnlNEyMPqUbLWgrO~18u?@bBSxpF00GfqAB?OW#Cw{Hh`v+s+ynxcrfll1#TZLKjL zy%r^1Ao;6TuY$X`#a}$NXvvV}v0bYm_+2Y`Tl#wZO*gH>YuzW+^p77WyYA$4!St`& zKBB9oRjG~_x&Pyu#NE4hSqfMcMco!!Mp+atkUmUH_ypM3+xhIF&E^055uP-~9Rzn% z?29)KE>TWSR>j*)e>O;-n|HOy*gN<_yWx$pq5#d`Pq>j;`6C^z^zOAi39r(GgbH;y z&G_o@n&qXF7GF5yBLd6#|6TXMtaWjndH+GGH(frV3N|q>T%M)e=hp^!Gj%d-@h*}FW<1pw1Mo`@riWrvaGY4 z_JnxTFK%Zq?R)C_Mx6f6y+UW>600LSOVUa!ULJq5`g7y?`w~GfdmpZ?7Ym$IQQ7L@ z=~*=)EiK*m`*-q<=;-L(N+EmnQ$1rSi;IglZ`*d_cVp5aWLzkzpu~UDff{oN28+4XVU*1a(#TyU0*4Q-`R2)c5>%&d2!{0+3!KIM|NI=Cn)QiziKF(n6BD_0G7JQ6 z-`^lBD{IqJ_^#ShFDoo8Ol7G0^XKgx92}dsY`KYFDl96B>2%0DZYWU~kVSgneUQ0@ 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
    QQ__FB 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
    i`2`X%7{hD-R~M`iKl^tqCl8e6N)2Y2Z2x0 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 literal 0 HcmV?d00001 diff --git a/docs/deployments/hetzner-demo-tracker/post-provision/README.md b/docs/deployments/hetzner-demo-tracker/post-provision/README.md index 2541fb58..0a1cedfc 100644 --- a/docs/deployments/hetzner-demo-tracker/post-provision/README.md +++ b/docs/deployments/hetzner-demo-tracker/post-provision/README.md @@ -7,10 +7,11 @@ on the server via SSH. ## Steps -| Step | Guide | Status | -| --------------- | ---------------------------------- | ------- | -| 1. DNS Setup | [dns-setup.md](dns-setup.md) | ✅ Done | -| 2. Volume Setup | [volume-setup.md](volume-setup.md) | ✅ Done | +| Step | Guide | Status | +| ------------------ | ---------------------------------------- | ------- | +| 1. DNS Setup | [dns-setup.md](dns-setup.md) | ✅ Done | +| 2. Volume Setup | [volume-setup.md](volume-setup.md) | ✅ Done | +| 3. Hetzner Backups | [hetzner-backups.md](hetzner-backups.md) | ✅ Done | ## Why Before `configure`? From 0894d853be54e3a30abc2bd76bf1275920a3778b Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 17:06:08 +0000 Subject: [PATCH 45/59] docs(maintenance): add secrets rotation guide for post-AI-agent deployment - Add maintenance/README.md index - Add maintenance/secrets-rotation.md with 7 rotation steps - Include secret-to-files relationship map (admin token in .env AND prometheus.yml x2; MySQL torrust password in .env, tracker.toml, backup.conf; MySQL root and Grafana passwords in .env only) - Step 1 expanded into 1a/1b/1c covering both .env and prometheus.yml token update, with tracker + prometheus restart and verification - Update deployment README.md ToC with Maintenance section --- .../hetzner-demo-tracker/README.md | 2 + .../maintenance/README.md | 9 + .../maintenance/secrets-rotation.md | 452 ++++++++++++++++++ 3 files changed, 463 insertions(+) create mode 100644 docs/deployments/hetzner-demo-tracker/maintenance/README.md create mode 100644 docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md diff --git a/docs/deployments/hetzner-demo-tracker/README.md b/docs/deployments/hetzner-demo-tracker/README.md index 4cb6a3a8..5aa1a558 100644 --- a/docs/deployments/hetzner-demo-tracker/README.md +++ b/docs/deployments/hetzner-demo-tracker/README.md @@ -40,6 +40,8 @@ Deploy a public Torrust Tracker demo instance to Hetzner Cloud and document ever 7. Improvements — recommended deployer improvements found during this deployment: - [provision improvements](commands/provision/improvements.md) 8. [Observations](observations.md) — cross-cutting insights and learnings about the deployer +9. [Maintenance](maintenance/README.md) — post-deployment operational tasks: + - [Secrets rotation](maintenance/secrets-rotation.md) — rotate all secrets after AI-assisted deployment ## Deployment diff --git a/docs/deployments/hetzner-demo-tracker/maintenance/README.md b/docs/deployments/hetzner-demo-tracker/maintenance/README.md new file mode 100644 index 00000000..008637b8 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/maintenance/README.md @@ -0,0 +1,9 @@ +# Maintenance + +Post-deployment maintenance procedures for the Hetzner demo tracker instance. + +## Tasks + +| Task | Guide | Status | +| ---------------- | ------------------------------------------ | ---------- | +| Secrets Rotation | [secrets-rotation.md](secrets-rotation.md) | ⏳ Pending | diff --git a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md new file mode 100644 index 00000000..8440ce46 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md @@ -0,0 +1,452 @@ +# Secrets Rotation + +**Date**: 2026-03-04 +**Reason**: Full deployment was performed with an AI coding agent (Claude Sonnet 4.6 +via GitHub Copilot in Visual Studio Code). All secrets that appeared in terminal output, +configuration files, or SSH sessions were potentially sent to Microsoft (GitHub +Copilot), Anthropic (Claude), and processed by cloud infrastructure operated by +those companies. All live secrets must be rotated. + +## What to Rotate vs Delete + +| Secret | Action | Reason | +| ----------------------------- | ------- | ---------------------------------------------------- | +| Tracker admin token | Rotate | In `.env`, `prometheus.yml`, terminal, docs | +| MySQL `torrust` user password | Rotate | In `.env`, `tracker.toml`, `backup.conf` | +| MySQL `root` user password | Rotate | In `.env`, terminal session | +| Grafana admin password | Rotate | In `.env`, used in `curl` commands | +| SSH deployer key | Rotate | Agent ran `ssh`/`scp` commands using this key | +| Hetzner Cloud API token | Delete | No longer needed after deployment is complete | +| Hetzner DNS API token | Delete | No longer needed after DNS records are set | +| Local sensitive files | Archive | `build/`, `data/`, `envs/` dirs contain live secrets | + +> **Nothing to delete**: all tokens and keys are still needed for ongoing +> administration of the running instance, **except** the Hetzner Cloud and DNS +> API tokens which are only needed during deployment and can be deleted. + +## Secret-to-Files Relationship Map + +The same secret can appear in multiple configuration files. Every location must +be updated when rotating — missing one will cause service failures. + +| Secret | Server file path | Variable / field | +| ------------------------ | ---------------------------------------------------- | ----------------------------------------------------------------------------- | +| Tracker admin token | `/opt/torrust/.env` | `TORRUST_TRACKER_CONFIG_OVERRIDE_HTTP_API__ACCESS_TOKENS__ADMIN` | +| Tracker admin token | `/opt/torrust/storage/prometheus/etc/prometheus.yml` | `params.token` in `tracker_stats` scrape job | +| Tracker admin token | `/opt/torrust/storage/prometheus/etc/prometheus.yml` | `params.token` in `tracker_metrics` scrape job | +| MySQL `torrust` password | `/opt/torrust/.env` | `MYSQL_PASSWORD` | +| MySQL `torrust` password | `/opt/torrust/storage/tracker/etc/tracker.toml` | `core.database.path` connection string (password is URL-encoded: `%2F` → `/`) | +| MySQL `torrust` password | `/opt/torrust/storage/backup/etc/backup.conf` | `DB_PASSWORD` | +| MySQL `root` password | `/opt/torrust/.env` | `MYSQL_ROOT_PASSWORD` | +| Grafana admin password | `/opt/torrust/.env` | `GF_SECURITY_ADMIN_PASSWORD` | + +> **Rule**: whenever Step 1 updates the tracker admin token in `.env`, you must +> **also** update `prometheus.yml` (step 1b below) — otherwise Prometheus can no +> longer scrape tracker metrics. + +## Suggested Password Generation Commands + +Run these locally to generate new secrets before starting rotation. Use the +output as your `` values below. + +```bash +# New tracker admin token (URL-safe base64) +openssl rand -base64 32 | tr -d '\n=' + +# New MySQL torrust password (hex — no special chars, no URL-encoding needed) +openssl rand -hex 24 + +# New MySQL root password (hex) +openssl rand -hex 24 + +# New Grafana admin password +openssl rand -base64 24 | tr -d '\n=' +``` + +Keep these values in a local password manager — do not share them with any AI +agent or paste them into a chat window. + +--- + +## Step 1: Rotate the Tracker Admin Token + +The admin token appears in **three places**: `.env` (used by the tracker +container at startup) and **two scrape jobs** in `prometheus.yml` (used by +Prometheus to poll `/api/v1/stats` and `/api/v1/metrics`). All three must be +updated together. + +**On the server:** + +```bash +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 +``` + +### 1a. Update `.env` + +```bash +sudo vim /opt/torrust/.env +``` + +Change: + +```text +TORRUST_TRACKER_CONFIG_OVERRIDE_HTTP_API__ACCESS_TOKENS__ADMIN='' +``` + +To: + +```text +TORRUST_TRACKER_CONFIG_OVERRIDE_HTTP_API__ACCESS_TOKENS__ADMIN='' +``` + +### 1b. Update `prometheus.yml` + +```bash +sudo vim /opt/torrust/storage/prometheus/etc/prometheus.yml +``` + +Find and replace the token in **both** scrape jobs (`tracker_stats` and +`tracker_metrics`): + +```yaml +params: + token: [""] +``` + +Change to: + +```yaml +params: + token: [""] +``` + +There are two occurrences — update both. + +### 1c. Restart tracker and Prometheus + +```bash +cd /opt/torrust && sudo docker compose restart tracker prometheus +``` + +Verify the new token works: + +```bash +curl -s "https://api.torrust-tracker-demo.com/api/v1/stats?token=" | head -c 200 +``` + +Verify Prometheus is scraping again (wait ~30 s then check targets): + +```bash +curl -s http://localhost:9090/api/v1/targets | python3 -m json.tool | grep -A3 'scrapePool' +``` + +--- + +## Step 2: Rotate the MySQL Passwords + +### 2a. Change passwords in MySQL + +```bash +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 +cd /opt/torrust +sudo docker compose exec mysql mysql -u root -p +``` + +Enter the current root password when prompted. Then inside MySQL: + +```sql +ALTER USER 'torrust'@'%' IDENTIFIED BY ''; +ALTER USER 'root'@'%' IDENTIFIED BY ''; +ALTER USER 'root'@'localhost' IDENTIFIED BY ''; +FLUSH PRIVILEGES; +EXIT; +``` + +Verify the new torrust user password works: + +```bash +sudo docker compose exec -e MYSQL_PWD="" mysql \ + mysql -u torrust torrust_tracker -e "SELECT COUNT(*) FROM torrents;" +``` + +### 2b. Update `/opt/torrust/.env` + +```bash +sudo vim /opt/torrust/.env +``` + +Change: + +```text +MYSQL_ROOT_PASSWORD='' +MYSQL_PASSWORD='' +``` + +To: + +```text +MYSQL_ROOT_PASSWORD='' +MYSQL_PASSWORD='' +``` + +> **Note**: These vars only take effect when the MySQL container is first created. +> Since MySQL passwords are now changed directly in the database (step 2a), the +> `.env` update is for documentation and future container rebuilds only. + +### 2c. Update `tracker.toml` + +```bash +sudo vim /opt/torrust/storage/tracker/etc/tracker.toml +``` + +Find the line like: + +```toml +path = "mysql://torrust:@mysql:3306/torrust_tracker" +``` + +Change to (if your new password contains no special characters, no URL-encoding +needed): + +```toml +path = "mysql://torrust:@mysql:3306/torrust_tracker" +``` + +> **Note**: If the new password contains `/`, encode it as `%2F`. If it contains +> `@`, encode it as `%40`. Using a hex password avoids this entirely. + +### 2d. Update `backup.conf` + +```bash +sudo vim /opt/torrust/storage/backup/etc/backup.conf +``` + +Change: + +```text +DB_PASSWORD= +``` + +To: + +```text +DB_PASSWORD= +``` + +### 2e. Restart tracker and backup containers + +```bash +cd /opt/torrust +sudo docker compose restart tracker backup +``` + +Verify tracker is up and connected: + +```bash +sudo docker compose ps tracker +sudo docker compose logs --tail=20 tracker +``` + +--- + +## Step 3: Rotate the Grafana Admin Password + +### Option A: Change via the Grafana UI (simplest) + +1. Log in at `https://grafana.torrust-tracker-demo.com` with `admin` / current + password +2. Click your profile avatar (bottom-left) → **Profile** +3. Scroll to **Change Password** +4. Enter the current password and the new one, then click **Change Password** + +Then update `.env` to keep it in sync: + +```bash +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 +sudo vim /opt/torrust/.env +``` + +Change: + +```text +GF_SECURITY_ADMIN_PASSWORD='' +``` + +To: + +```text +GF_SECURITY_ADMIN_PASSWORD='' +``` + +### Option B: Change via the Grafana CLI (headless) + +```bash +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 +cd /opt/torrust +sudo docker compose exec grafana grafana-cli admin reset-admin-password '' +``` + +Then update `.env` as shown in Option A. + +Verify login at `https://grafana.torrust-tracker-demo.com` with credentials +`admin` / ``. + +--- + +## Step 4: Rotate the SSH Deployer Key + +The `torrust_tracker_deployer_ed25519` key was used by the AI agent to SSH into +the server and run `scp` commands. Generate a new key pair and replace it. + +### 4a. Generate the new key pair (on your local machine) + +```bash +ssh-keygen -t ed25519 -C "torrust-tracker-deployer" \ + -f ~/.ssh/torrust_tracker_deployer_ed25519_new +``` + +Leave the passphrase empty (or add one if you prefer). + +### 4b. Add the new public key to the server + +```bash +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 \ + "echo '$(cat ~/.ssh/torrust_tracker_deployer_ed25519_new.pub)' >> ~/.ssh/authorized_keys" +``` + +### 4c. Test the new key + +```bash +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519_new torrust@46.225.234.201 "echo OK" +``` + +### 4d. Remove the old public key from the server + +```bash +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519_new torrust@46.225.234.201 +``` + +Then inside the server: + +```bash +vim ~/.ssh/authorized_keys +``` + +Delete the line with `torrust-tracker-deployer` that contains the **old** key +fingerprint (the first line — there should now be two entries, old and new). + +### 4e. Replace the local key files + +```bash +mv ~/.ssh/torrust_tracker_deployer_ed25519_new ~/.ssh/torrust_tracker_deployer_ed25519 +mv ~/.ssh/torrust_tracker_deployer_ed25519_new.pub ~/.ssh/torrust_tracker_deployer_ed25519.pub +``` + +### 4f. Update the deployer env file + +Edit `envs/torrust-tracker-demo.json` and update the `ssh_private_key_path` +field (or equivalent) to point to the same path — no change needed if the path +did not change. + +--- + +## Step 5: Delete the Hetzner Cloud API Token + +The token was only needed during provisioning (`provision` command). The server +is running and no further OpenTofu operations are planned, so it can be deleted. + +1. Open [Hetzner Cloud Console](https://console.hetzner.cloud/) +2. Go to **Security → API Tokens** +3. Find the token used by the deployer (e.g. `torrust-tracker-deployer`) +4. Click **Delete** + +If you need to run deployer commands again in the future, create a new token at +that point. + +--- + +## Step 6: Delete the Hetzner DNS API Token + +The token was only needed during DNS setup. All DNS records are in place and no +changes are planned, so it can be deleted. + +1. Open [Hetzner DNS Console](https://dns.hetzner.com/) +2. Go to **API Tokens** +3. Delete the token used during setup + +If you need to manage DNS records again in the future, create a new token at +that point. + +--- + +## Step 7: Archive and Remove Local Sensitive Files + +The following local directories and files were generated by the deployer and +contain real secrets (API tokens, passwords, SSH key paths). They are +git-ignored and must be archived in a safe place before being removed from +the local machine. + +| Path | Sensitive contents | +| -------------------------------- | ----------------------------------------------------------- | +| `build/torrust-tracker-demo/` | Generated configs with real passwords and tokens | +| `data/torrust-tracker-demo/` | Deployment state including any cached credentials | +| `envs/torrust-tracker-demo.json` | Full environment config: Hetzner tokens, DB passwords, etc. | + +### 7a. Archive to a safe location + +Move the files to an encrypted vault or password manager attachment before +deleting them. At minimum, store `envs/torrust-tracker-demo.json` — it is the +source of truth for recreating the deployment. + +Example using a local encrypted directory (adjust path to your vault): + +```bash +cp -r build/torrust-tracker-demo ~/vault/torrust-tracker-demo-build-2026-03-04 +cp -r data/torrust-tracker-demo ~/vault/torrust-tracker-demo-data-2026-03-04 +cp envs/torrust-tracker-demo.json ~/vault/torrust-tracker-demo-env-2026-03-04.json +``` + +> **Note**: Do not commit these files to git or store them in any cloud service +> accessible without encryption. + +### 7b. Remove the local copies + +Once archived safely: + +```bash +rm -rf build/torrust-tracker-demo +rm -rf data/torrust-tracker-demo +rm envs/torrust-tracker-demo.json +``` + +> **When to do this**: After all secrets are rotated on the server (steps 1–4), +> so the archived files reflect the **old** credentials only. If you archive +> before rotation, you archive the same compromised secrets — which is still +> useful as a record, but make sure the archived copy is clearly labelled as +> pre-rotation. + +--- + +## Verification Checklist + +After completing all steps, run through this checklist: + +- [ ] HTTP tracker responds: `curl -s https://http1.torrust-tracker-demo.com/announce?...` +- [ ] UDP tracker responds: BEP 15 handshake or `udp_tracker_client` +- [ ] API responds with new token: `curl .../api/v1/stats?token=` +- [ ] Grafana login works with new password +- [ ] SSH access works with new key +- [ ] Application backup runs successfully — SSH in and run: + `cd /opt/torrust && sudo docker compose run --rm backup` +- [ ] MySQL dumps are not empty (check last backup file size) +- [ ] Local sensitive files archived to safe storage (step 7) +- [ ] `build/torrust-tracker-demo/`, `data/torrust-tracker-demo/`, `envs/torrust-tracker-demo.json` removed from local machine + +--- + +## Local Files to Update + +| File | What to update | +| ----------------------------------------- | ------------------------------------------------------ | +| `envs/torrust-tracker-demo.json` | Tracker admin token, MySQL passwords (if stored there) | +| `~/.ssh/torrust_tracker_deployer_ed25519` | New private key (step 4e) | From 96d1628f02c431e9bb1c07dc083ac120e07baaf1 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 17:10:23 +0000 Subject: [PATCH 46/59] docs(maintenance): mark Hetzner Cloud and DNS API tokens as deleted Steps 5 and 6 completed on 2026-03-04. Both tokens deleted from their respective consoles. --- .../maintenance/secrets-rotation.md | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md index 8440ce46..23f7fc55 100644 --- a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md +++ b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md @@ -9,16 +9,16 @@ those companies. All live secrets must be rotated. ## What to Rotate vs Delete -| Secret | Action | Reason | -| ----------------------------- | ------- | ---------------------------------------------------- | -| Tracker admin token | Rotate | In `.env`, `prometheus.yml`, terminal, docs | -| MySQL `torrust` user password | Rotate | In `.env`, `tracker.toml`, `backup.conf` | -| MySQL `root` user password | Rotate | In `.env`, terminal session | -| Grafana admin password | Rotate | In `.env`, used in `curl` commands | -| SSH deployer key | Rotate | Agent ran `ssh`/`scp` commands using this key | -| Hetzner Cloud API token | Delete | No longer needed after deployment is complete | -| Hetzner DNS API token | Delete | No longer needed after DNS records are set | -| Local sensitive files | Archive | `build/`, `data/`, `envs/` dirs contain live secrets | +| Secret | Action | Reason | +| ----------------------------- | ------- | ------------------------------------------------------ | +| Tracker admin token | Rotate | In `.env`, `prometheus.yml`, terminal, docs | +| MySQL `torrust` user password | Rotate | In `.env`, `tracker.toml`, `backup.conf` | +| MySQL `root` user password | Rotate | In `.env`, terminal session | +| Grafana admin password | Rotate | In `.env`, used in `curl` commands | +| SSH deployer key | Rotate | Agent ran `ssh`/`scp` commands using this key | +| Hetzner Cloud API token | ✅ Done | Deleted 2026-03-04 — no longer needed after deployment | +| Hetzner DNS API token | ✅ Done | Deleted 2026-03-04 — no longer needed after DNS setup | +| Local sensitive files | Archive | `build/`, `data/`, `envs/` dirs contain live secrets | > **Nothing to delete**: all tokens and keys are still needed for ongoing > administration of the running instance, **except** the Hetzner Cloud and DNS @@ -350,7 +350,7 @@ did not change. --- -## Step 5: Delete the Hetzner Cloud API Token +## Step 5: Delete the Hetzner Cloud API Token ✅ Done (2026-03-04) The token was only needed during provisioning (`provision` command). The server is running and no further OpenTofu operations are planned, so it can be deleted. @@ -365,7 +365,7 @@ that point. --- -## Step 6: Delete the Hetzner DNS API Token +## Step 6: Delete the Hetzner DNS API Token ✅ Done (2026-03-04) The token was only needed during DNS setup. All DNS records are in place and no changes are planned, so it can be deleted. From 8a0064d114e0172fbe5ee1f1d730d43de0971e41 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 17:12:23 +0000 Subject: [PATCH 47/59] docs(maintenance): mark Grafana admin password as rotated (step 3 done) --- .../hetzner-demo-tracker/maintenance/secrets-rotation.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md index 23f7fc55..1286434f 100644 --- a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md +++ b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md @@ -14,7 +14,7 @@ those companies. All live secrets must be rotated. | Tracker admin token | Rotate | In `.env`, `prometheus.yml`, terminal, docs | | MySQL `torrust` user password | Rotate | In `.env`, `tracker.toml`, `backup.conf` | | MySQL `root` user password | Rotate | In `.env`, terminal session | -| Grafana admin password | Rotate | In `.env`, used in `curl` commands | +| Grafana admin password | ✅ Done | Rotated 2026-03-04 | | SSH deployer key | Rotate | Agent ran `ssh`/`scp` commands using this key | | Hetzner Cloud API token | ✅ Done | Deleted 2026-03-04 — no longer needed after deployment | | Hetzner DNS API token | ✅ Done | Deleted 2026-03-04 — no longer needed after DNS setup | @@ -249,7 +249,7 @@ sudo docker compose logs --tail=20 tracker --- -## Step 3: Rotate the Grafana Admin Password +## Step 3: Rotate the Grafana Admin Password ✅ Done (2026-03-04) ### Option A: Change via the Grafana UI (simplest) From a3775f1010f927693ad36e4f71370f970846f925 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 17:15:52 +0000 Subject: [PATCH 48/59] docs(maintenance): add OS updates guide with apply/verify/reboot procedure - Add maintenance/os-updates.md with step-by-step apt update procedure, reboot check, service verification, and a log table - Update maintenance/README.md with OS Updates row - Add 'autoremove' to project-words.txt --- .../maintenance/README.md | 1 + .../maintenance/os-updates.md | 77 +++++ project-words.txt | 287 +++++++++--------- 3 files changed, 222 insertions(+), 143 deletions(-) create mode 100644 docs/deployments/hetzner-demo-tracker/maintenance/os-updates.md diff --git a/docs/deployments/hetzner-demo-tracker/maintenance/README.md b/docs/deployments/hetzner-demo-tracker/maintenance/README.md index 008637b8..5a2b963d 100644 --- a/docs/deployments/hetzner-demo-tracker/maintenance/README.md +++ b/docs/deployments/hetzner-demo-tracker/maintenance/README.md @@ -7,3 +7,4 @@ Post-deployment maintenance procedures for the Hetzner demo tracker instance. | Task | Guide | Status | | ---------------- | ------------------------------------------ | ---------- | | Secrets Rotation | [secrets-rotation.md](secrets-rotation.md) | ⏳ Pending | +| OS Updates | [os-updates.md](os-updates.md) | ⏳ Pending | diff --git a/docs/deployments/hetzner-demo-tracker/maintenance/os-updates.md b/docs/deployments/hetzner-demo-tracker/maintenance/os-updates.md new file mode 100644 index 00000000..e013eb44 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/maintenance/os-updates.md @@ -0,0 +1,77 @@ +# OS Updates + +**Instance**: Hetzner demo tracker (`46.225.234.201`) +**OS**: Ubuntu 24.04.3 LTS + +Apply OS security and package updates periodically to keep the server patched. + +## When to Run + +- After initial deployment (first login often shows pending updates) +- When the login banner reports security updates available +- At least once a month as routine maintenance + +## Procedure + +### 1. SSH into the server + +```bash +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 +``` + +The login banner shows the number of pending updates: + +```text +59 updates can be applied immediately. +37 of these updates are standard security updates. +``` + +### 2. Update package lists and upgrade + +```bash +sudo apt update && sudo apt upgrade -y +``` + +This upgrades all installed packages. It may prompt to restart services — accept +the defaults (press Enter or choose "Ok"). + +### 3. Remove unused packages + +```bash +sudo apt autoremove -y +``` + +### 4. Check if a reboot is required + +```bash +[ -f /var/run/reboot-required ] && echo "REBOOT REQUIRED" || echo "No reboot needed" +``` + +Kernel and libc updates typically require a reboot. + +### 5. Reboot if required + +```bash +sudo reboot +``` + +Wait ~30 seconds for the server to come back up, then reconnect and verify +services: + +```bash +ssh -i ~/.ssh/torrust_tracker_deployer_ed25519 torrust@46.225.234.201 +cd /opt/torrust && sudo docker compose ps +``` + +All services should show `running` or `healthy`. If any container failed to +start, check the logs: + +```bash +sudo docker compose logs --tail=30 +``` + +## Log + +| Date | Updates Applied | Reboot Required | Notes | +| ---------- | ---------------- | --------------- | -------------------------------- | +| 2026-03-04 | 59 (37 security) | TBD | First post-deployment update run | diff --git a/project-words.txt b/project-words.txt index eeae0155..9553272d 100644 --- a/project-words.txt +++ b/project-words.txt @@ -1,55 +1,166 @@ AAAAB AAAAC AAAAI +AGENTS Adapty -addgroup Addrs +Alertmanager +André +Apryse +Aridane +Ashburn +Autorestic +Avalonia +Azevedo +BBDBE +Backblaze +Banuba +Bilu +Bitwarden +Boto +Brinke +Bynder +CIFS +CRCL +Caddyfile +Certbot +Ciphernutz +Cockburn +Codegen +Containerfile +Cowan +Crossplane +Cunha +DGRAM +Datagram +Desynchronization +Distrib +Dockerfiles +Dreamfactory +Duplicati +EAAAADAQABAAABAQC +ENDSSH +ENISA +ENOENT +EPEL +Fairchild +Falkenstein +Firestore +Frontegg +Geeksfor +Gossman +Grafana +Grafonnet +Graça +HIDS +Herberto +Hillsboro +Hostnames +ISAM +Inno +Kiota +Kopia +LUKS +Liskov +Litestream +Luciq +MAAACBA +MLKEM +MOUNTPOINTS +MTCPS +MVCC +MVVM +Martín +Mermaid +Moreira +MyISAM +NOPASSWD +NXDOMAIN +Nushell +OAAAAN +OCSP +OOXML +OSSEC +Ollama +Ondřej +Osherove +Pikuma +Pingoo +Preinstalling +Promon +Pulumi +Pygame +Pythonic +QUIC +RAII +RUSTDOCFLAGS +Regenerable +Repomix +Repositóri +Rescan +Restic +Runrestic +Rustdoc +SARIF +SCRIPTDIR +SWEBOK +Scanbot +Scribd +Scriptability +Shivavangari +Silverlight +Sophos +StorageGRID +Subissue +Swatinem +Swebok +Tablespace +Taplo +Tera +Testcontain +Testcontainers +Testinfra +Torrust +Traefik +Unflushed +Unkey +VARCHAR +Wazuh +XTSTEP +Xtra +Zeroize +Zálešák +addgroup adduser agentic -AGENTS agentskills -Alertmanager alpn -André androiddev appender appendonly -Apryse aquasec aquasecurity architecting -Aridane -Ashburn autocheckpoint autolinks +automount +autoremove autorestart -Autorestic -Avalonia -Azevedo -Backblaze backlinks -Banuba -BBDBE bencoded -Bilu binlog binstall bitrot -Bitwarden blackbox +blkid bootcmd -Boto -Brinke browsable btih btrfs buildx -Bynder -Caddyfile cdmon celano certbot -Certbot certonly chatbots chdir @@ -60,53 +171,40 @@ checkpointing childlogdir chkdsk chrono -CIFS -Ciphernutz clig clippy clonable cloneable cloudinit -Cockburn -Codegen +codel completei concepsts configurator connectionless connrefused containerd -Containerfile copilotignore -Cowan cpus -CRCL creds crond crontabs -Crossplane -Cunha cursorignore custompass customuser cyberneering -Datagram dcron dearmor debootstrap debuginfo deogmiudufm derefs -Desynchronization devkits devpass dfsg -DGRAM dirmngr -Distrib distro distroless distutils -Dockerfiles dockerhub doctest doctests @@ -114,61 +212,43 @@ downcasted downcasting downloadedi dpkg -Dreamfactory drwxr drwxrwxr dtolnay -Duplicati -EAAAADAQABAAABAQC ehthumbs elif -Émojis endfor endraw -ENISA entr envsubst epel -EPEL eprint eprintln equalto esac +ethernets executability exfiltration exitcode -Fairchild -Falkenstein filesd -Firestore flatlined -Frontegg frontends frontmatter fswc gamedev -Geeksfor getent getopt gobinary goroutines -Gossman gosu gpgv -Graça -Grafana -Grafonnet handleable hashset healthcheck healthchecks -Herberto hetznercloud hexdigit hexdump -HIDS -Hillsboro -Hostnames hotfixes htdocs hugepages @@ -177,13 +257,11 @@ idna impls incompletei initialisation -Inno innodb inspectable instructionsets intervali ionice -ISAM isdir isreg josecelano @@ -194,9 +272,7 @@ keepalive keygen keypair keyrings -Kiota kopia -Kopia kutca larstobi leecher @@ -210,32 +286,24 @@ libpython libsqlite lifecycles lineinfile -Liskov listenfd listhost litestream -Litestream loadability logfile logfiles logicaldisk loglevel lspconfig -Luciq -LUKS lvremove lxdbr -MAAACBA -Martín maxbytes memalign -Mermaid mgmt millis minizip mkdir mktemp -MLKEM mlock mlockfile mmin @@ -243,17 +311,13 @@ moby mockall mocksecret momentjs -Moreira +mountpoint mprotect mpsc -MTCPS mtorrust multiprocess -MVCC -MVVM myapp myenv -MyISAM mysqladmin mysqlcheck mysqld @@ -263,6 +327,7 @@ nameof namespacing nanos netfilter +netplan networkd newgrp newtype @@ -274,20 +339,13 @@ nmap nocapture noconfirm nodaemon +nofail noninteractive noout -NOPASSWD nslookup nullglob -OAAAAN -OCSP -Ollama -Ondřej oneline ooxml -OOXML -Osherove -OSSEC overpromise pacman parameterizing @@ -302,9 +360,7 @@ peerslee pgzip pidfile pids -Pikuma pingoo -Pingoo pingooio pipeable pipefail @@ -313,77 +369,61 @@ pkcs pkill postconditions preconfigured -Preinstalling preinstalls prereq println procps prodrigestivill -Promon promtool ptracker publickey publicsuffix pullable -Pulumi purgeable -Pygame pypdf pytesseract pytest -Pythonic -QUIC -RAII +qdisc +qlen randint rclone readlink realpath rebranded -recvfrom recognisable +recvfrom reentrancy -Regenerable reimplementation reissuance -Repomix -Repositóri reprioritize reprovision reprovisioning reqwest -Rescan resolv restic -Restic returncode rgba rootpass rpcinterface +rrset +rrsets rsplit rstest runbooks runcmd runnability runpip -Runrestic rustc -Rustdoc -RUSTDOCFLAGS rustflags rustls rustup rwxrwx sandboxed sarif -SARIF -Scanbot scannability schemafile schemars -Scribd -Scriptability scriptable -SCRIPTDIR secureboot selectattr sendto @@ -393,25 +433,20 @@ serialising serverurl settimeout shellcheck -Shivavangari -Silverlight smallstep smorimoto -Sophos sourceable -spëcial spki +spëcial sqlx sshpass standardisation startretries stdlib -StorageGRID stringly subcontroller subcontrollers subhandlers -Subissue subissues subshell subshells @@ -420,27 +455,17 @@ substep supervisorctl supervisord swappability -Swatinem -Swebok -SWEBOK sysfs sysv -Tablespace tablespaces taiki tamasfe -Taplo taskkill tasklist -Tera terraformrc -tést -Testcontain testcontainer testcontainers -Testcontainers testhost -Testinfra testkey testpass testuser @@ -459,9 +484,7 @@ tokei toolkits toolsets torrust -Torrust touchpoint -Traefik transactionally trixie tryfrom @@ -470,13 +493,12 @@ tulpn turbofish typestate tzdata +tést ulpn unconfigured undertested unergonomic -Unflushed unittests -Unkey unrepresentable unsubscription userexample @@ -486,46 +508,25 @@ userpass userspace usize utmp -VARCHAR vbqajnc venv venvs versionable viewmodel vulns -Wazuh webservers writability writeln wrongpassword -Xtra xtrabackup -XTSTEP yourdomain youruser -Zálešák zcat zeroize -Zeroize zoneinfo zstd +Émojis значение ключ конфиг файл -Nushell -blkid -codel -ethernets -netplan -qdisc -qlen -mountpoint -MOUNTPOINTS -nofail -NXDOMAIN -rrset -rrsets -automount -ENDSSH -ENOENT From c684920c34792c9143d8ff746249d92e48393d29 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 17:23:40 +0000 Subject: [PATCH 49/59] docs(maintenance): fix restart vs recreate for env var changes in step 1 docker compose restart is not enough when rotating the admin token because it is injected as an env var at container creation time. Use: docker compose up -d --force-recreate tracker prometheus Add note in step 2e clarifying that restart IS sufficient for tracker.toml and backup.conf since they are bind-mounted files re-read on startup. --- .../maintenance/secrets-rotation.md | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md index 1286434f..7989a114 100644 --- a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md +++ b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md @@ -122,10 +122,16 @@ params: There are two occurrences — update both. -### 1c. Restart tracker and Prometheus +### 1c. Recreate tracker and Prometheus containers + +> **Important**: `docker compose restart` is **not enough** here. The admin +> token is injected as an environment variable when the container is first +> created. `restart` only restarts the process inside the existing container — +> it does not re-read `.env`. You must recreate the containers to pick up the +> new value. ```bash -cd /opt/torrust && sudo docker compose restart tracker prometheus +cd /opt/torrust && sudo docker compose up -d --force-recreate tracker prometheus ``` Verify the new token works: @@ -235,6 +241,10 @@ DB_PASSWORD= ### 2e. Restart tracker and backup containers +> **Note**: `restart` is sufficient here. Unlike the admin token (an env var), +> `tracker.toml` and `backup.conf` are bind-mounted files — the process re-reads +> them on each startup, so no container recreation is needed. + ```bash cd /opt/torrust sudo docker compose restart tracker backup From c55763c685354604258aa2914da3b529f93e62a6 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 17:25:36 +0000 Subject: [PATCH 50/59] docs(maintenance): mark tracker admin token rotation as done (step 1) --- .../maintenance/secrets-rotation.md | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md index 7989a114..bac39d8e 100644 --- a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md +++ b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md @@ -9,16 +9,16 @@ those companies. All live secrets must be rotated. ## What to Rotate vs Delete -| Secret | Action | Reason | -| ----------------------------- | ------- | ------------------------------------------------------ | -| Tracker admin token | Rotate | In `.env`, `prometheus.yml`, terminal, docs | -| MySQL `torrust` user password | Rotate | In `.env`, `tracker.toml`, `backup.conf` | -| MySQL `root` user password | Rotate | In `.env`, terminal session | -| Grafana admin password | ✅ Done | Rotated 2026-03-04 | -| SSH deployer key | Rotate | Agent ran `ssh`/`scp` commands using this key | -| Hetzner Cloud API token | ✅ Done | Deleted 2026-03-04 — no longer needed after deployment | -| Hetzner DNS API token | ✅ Done | Deleted 2026-03-04 — no longer needed after DNS setup | -| Local sensitive files | Archive | `build/`, `data/`, `envs/` dirs contain live secrets | +| Secret | Action | Reason | +| ----------------------------- | ------- | ------------------------------------------------------- | +| Tracker admin token | ✅ Done | Rotated 2026-03-04 — tracker and Prometheus scraping OK | +| MySQL `torrust` user password | Rotate | In `.env`, `tracker.toml`, `backup.conf` | +| MySQL `root` user password | Rotate | In `.env`, terminal session | +| Grafana admin password | ✅ Done | Rotated 2026-03-04 | +| SSH deployer key | Rotate | Agent ran `ssh`/`scp` commands using this key | +| Hetzner Cloud API token | ✅ Done | Deleted 2026-03-04 — no longer needed after deployment | +| Hetzner DNS API token | ✅ Done | Deleted 2026-03-04 — no longer needed after DNS setup | +| Local sensitive files | Archive | `build/`, `data/`, `envs/` dirs contain live secrets | > **Nothing to delete**: all tokens and keys are still needed for ongoing > administration of the running instance, **except** the Hetzner Cloud and DNS @@ -68,7 +68,7 @@ agent or paste them into a chat window. --- -## Step 1: Rotate the Tracker Admin Token +## Step 1: Rotate the Tracker Admin Token ✅ Done (2026-03-04) The admin token appears in **three places**: `.env` (used by the tracker container at startup) and **two scrape jobs** in `prometheus.yml` (used by From d3d14017c0e9fa806560d0781a294214e58a604e Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 17:34:31 +0000 Subject: [PATCH 51/59] docs(maintenance): mark MySQL torrust and root password rotation as done (step 2) --- .../hetzner-demo-tracker/maintenance/secrets-rotation.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md index bac39d8e..092b3416 100644 --- a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md +++ b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md @@ -12,8 +12,8 @@ those companies. All live secrets must be rotated. | Secret | Action | Reason | | ----------------------------- | ------- | ------------------------------------------------------- | | Tracker admin token | ✅ Done | Rotated 2026-03-04 — tracker and Prometheus scraping OK | -| MySQL `torrust` user password | Rotate | In `.env`, `tracker.toml`, `backup.conf` | -| MySQL `root` user password | Rotate | In `.env`, terminal session | +| MySQL `torrust` user password | ✅ Done | Rotated 2026-03-04 | +| MySQL `root` user password | ✅ Done | Rotated 2026-03-04 | | Grafana admin password | ✅ Done | Rotated 2026-03-04 | | SSH deployer key | Rotate | Agent ran `ssh`/`scp` commands using this key | | Hetzner Cloud API token | ✅ Done | Deleted 2026-03-04 — no longer needed after deployment | @@ -148,7 +148,7 @@ curl -s http://localhost:9090/api/v1/targets | python3 -m json.tool | grep -A3 ' --- -## Step 2: Rotate the MySQL Passwords +## Step 2: Rotate the MySQL Passwords ✅ Done (2026-03-04) ### 2a. Change passwords in MySQL From fda93d0cafb2ec71db99ba395e2d5d49fc068245 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 17:44:36 +0000 Subject: [PATCH 52/59] docs(maintenance): mark SSH deployer key rotation as done (step 4) --- .../hetzner-demo-tracker/maintenance/secrets-rotation.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md index 092b3416..68f41915 100644 --- a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md +++ b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md @@ -15,7 +15,7 @@ those companies. All live secrets must be rotated. | MySQL `torrust` user password | ✅ Done | Rotated 2026-03-04 | | MySQL `root` user password | ✅ Done | Rotated 2026-03-04 | | Grafana admin password | ✅ Done | Rotated 2026-03-04 | -| SSH deployer key | Rotate | Agent ran `ssh`/`scp` commands using this key | +| SSH deployer key | ✅ Done | Rotated 2026-03-04 | | Hetzner Cloud API token | ✅ Done | Deleted 2026-03-04 — no longer needed after deployment | | Hetzner DNS API token | ✅ Done | Deleted 2026-03-04 — no longer needed after DNS setup | | Local sensitive files | Archive | `build/`, `data/`, `envs/` dirs contain live secrets | @@ -303,7 +303,7 @@ Verify login at `https://grafana.torrust-tracker-demo.com` with credentials --- -## Step 4: Rotate the SSH Deployer Key +## Step 4: Rotate the SSH Deployer Key ✅ Done (2026-03-04) The `torrust_tracker_deployer_ed25519` key was used by the AI agent to SSH into the server and run `scp` commands. Generate a new key pair and replace it. From 954a6a8cf0826151d51049b86014bf3c29a10905 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 17:46:20 +0000 Subject: [PATCH 53/59] docs(maintenance): mark local file archival done (step 7) and secrets rotation complete --- .../hetzner-demo-tracker/maintenance/README.md | 2 +- .../hetzner-demo-tracker/maintenance/secrets-rotation.md | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/maintenance/README.md b/docs/deployments/hetzner-demo-tracker/maintenance/README.md index 5a2b963d..2c9aa100 100644 --- a/docs/deployments/hetzner-demo-tracker/maintenance/README.md +++ b/docs/deployments/hetzner-demo-tracker/maintenance/README.md @@ -6,5 +6,5 @@ Post-deployment maintenance procedures for the Hetzner demo tracker instance. | Task | Guide | Status | | ---------------- | ------------------------------------------ | ---------- | -| Secrets Rotation | [secrets-rotation.md](secrets-rotation.md) | ⏳ Pending | +| Secrets Rotation | [secrets-rotation.md](secrets-rotation.md) | ✅ Done | | OS Updates | [os-updates.md](os-updates.md) | ⏳ Pending | diff --git a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md index 68f41915..433bad28 100644 --- a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md +++ b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md @@ -18,7 +18,7 @@ those companies. All live secrets must be rotated. | SSH deployer key | ✅ Done | Rotated 2026-03-04 | | Hetzner Cloud API token | ✅ Done | Deleted 2026-03-04 — no longer needed after deployment | | Hetzner DNS API token | ✅ Done | Deleted 2026-03-04 — no longer needed after DNS setup | -| Local sensitive files | Archive | `build/`, `data/`, `envs/` dirs contain live secrets | +| Local sensitive files | ✅ Done | Archived and removed 2026-03-04 | > **Nothing to delete**: all tokens and keys are still needed for ongoing > administration of the running instance, **except** the Hetzner Cloud and DNS @@ -389,7 +389,7 @@ that point. --- -## Step 7: Archive and Remove Local Sensitive Files +## Step 7: Archive and Remove Local Sensitive Files ✅ Done (2026-03-04) The following local directories and files were generated by the deployer and contain real secrets (API tokens, passwords, SSH key paths). They are @@ -449,8 +449,8 @@ After completing all steps, run through this checklist: - [ ] Application backup runs successfully — SSH in and run: `cd /opt/torrust && sudo docker compose run --rm backup` - [ ] MySQL dumps are not empty (check last backup file size) -- [ ] Local sensitive files archived to safe storage (step 7) -- [ ] `build/torrust-tracker-demo/`, `data/torrust-tracker-demo/`, `envs/torrust-tracker-demo.json` removed from local machine +- [x] Local sensitive files archived to safe storage (step 7) +- [x] `build/torrust-tracker-demo/`, `data/torrust-tracker-demo/`, `envs/torrust-tracker-demo.json` removed from local machine --- From 4b55ad04c5d47c2bc1f2fef0cb3dad2a078c8520 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 17:48:21 +0000 Subject: [PATCH 54/59] docs(maintenance): add step 4g - delete old SSH key from Hetzner console (done) --- .../maintenance/secrets-rotation.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md index 433bad28..0862c717 100644 --- a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md +++ b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md @@ -358,6 +358,20 @@ Edit `envs/torrust-tracker-demo.json` and update the `ssh_private_key_path` field (or equivalent) to point to the same path — no change needed if the path did not change. +### 4g. Delete the old SSH key from the Hetzner console ✅ Done (2026-03-04) + +The deployer uploaded the old public key to Hetzner during provisioning so +cloud-init could inject it into the server. Now that the key has been rotated, +the Hetzner console entry is stale and should be removed. + +1. Open [Hetzner Cloud Console](https://console.hetzner.cloud/) +2. Go to **Security → SSH Keys** +3. Find the old `torrust-tracker-deployer` key and click **Delete** + +> **Note**: Deleting the key from the Hetzner console has no effect on the +> running server — `authorized_keys` on the server is independent and was +> already updated in steps 4b and 4d. + --- ## Step 5: Delete the Hetzner Cloud API Token ✅ Done (2026-03-04) From 9b11d270f6ca8de934b457feef78250225ba3695 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 17:57:53 +0000 Subject: [PATCH 55/59] docs: record successful reboot, tick API/SSH checklist, add public REST health check endpoint - os-updates.md: update log entry with successful reboot result - secrets-rotation.md: tick off SSH access and API with new token - health-check.md: add Public REST API Health Check section (port 1212 via Caddy, no auth token required) --- .../hetzner-demo-tracker/maintenance/os-updates.md | 6 +++--- .../maintenance/secrets-rotation.md | 4 ++-- .../hetzner-demo-tracker/verify/health-check.md | 12 ++++++++++++ 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/docs/deployments/hetzner-demo-tracker/maintenance/os-updates.md b/docs/deployments/hetzner-demo-tracker/maintenance/os-updates.md index e013eb44..b671a57f 100644 --- a/docs/deployments/hetzner-demo-tracker/maintenance/os-updates.md +++ b/docs/deployments/hetzner-demo-tracker/maintenance/os-updates.md @@ -72,6 +72,6 @@ sudo docker compose logs --tail=30 ## Log -| Date | Updates Applied | Reboot Required | Notes | -| ---------- | ---------------- | --------------- | -------------------------------- | -| 2026-03-04 | 59 (37 security) | TBD | First post-deployment update run | +| Date | Updates Applied | Reboot Required | Notes | +| ---------- | ---------------- | --------------- | ----------------------------------------------------------------------------------------------------------------- | +| 2026-03-04 | 59 (37 security) | Yes | First post-deployment update run — all services healthy after reboot (caddy, grafana, mysql, prometheus, tracker) | diff --git a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md index 0862c717..5b2d0bdb 100644 --- a/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md +++ b/docs/deployments/hetzner-demo-tracker/maintenance/secrets-rotation.md @@ -457,9 +457,9 @@ After completing all steps, run through this checklist: - [ ] HTTP tracker responds: `curl -s https://http1.torrust-tracker-demo.com/announce?...` - [ ] UDP tracker responds: BEP 15 handshake or `udp_tracker_client` -- [ ] API responds with new token: `curl .../api/v1/stats?token=` +- [x] API responds with new token: `curl .../api/v1/stats?token=` - [ ] Grafana login works with new password -- [ ] SSH access works with new key +- [x] SSH access works with new key - [ ] Application backup runs successfully — SSH in and run: `cd /opt/torrust && sudo docker compose run --rm backup` - [ ] MySQL dumps are not empty (check last backup file size) diff --git a/docs/deployments/hetzner-demo-tracker/verify/health-check.md b/docs/deployments/hetzner-demo-tracker/verify/health-check.md index ca441f00..b75dae29 100644 --- a/docs/deployments/hetzner-demo-tracker/verify/health-check.md +++ b/docs/deployments/hetzner-demo-tracker/verify/health-check.md @@ -96,3 +96,15 @@ five services reported healthy: to be exposed externally. - Port `1313` appears in `docker compose ps` output but is not published to the host (no `0.0.0.0:1313->1313/tcp` mapping). + +## Public REST API Health Check + +The Tracker REST API (port 1212, routed through Caddy) also exposes its own +health check endpoint publicly: + +```bash +curl -s "https://api.torrust-tracker-demo.com/api/health_check" +``` + +This is a lighter check — it only confirms the REST API itself is responding, +not the individual tracker services. It does not require an auth token. From 4c79724b4d4db143a9a5801ffe485ea5dd755232 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 18:02:41 +0000 Subject: [PATCH 56/59] docs(maintenance): add uptime monitoring guide Hetzner does not include native uptime monitoring unlike DigitalOcean. Add documentation to cover this gap: - Explain context and comparison with DigitalOcean - Add comparison table of external tools (UptimeRobot, Freshping, Better Uptime, Checkly, statuspage.io) with free-tier details - List public endpoints to monitor with expected responses - Note UDP monitoring limitations - Add Checkly, Freshping, statuspage to project-words.txt --- .../maintenance/README.md | 9 ++-- .../maintenance/uptime-monitoring.md | 45 +++++++++++++++++++ project-words.txt | 3 ++ 3 files changed, 53 insertions(+), 4 deletions(-) create mode 100644 docs/deployments/hetzner-demo-tracker/maintenance/uptime-monitoring.md diff --git a/docs/deployments/hetzner-demo-tracker/maintenance/README.md b/docs/deployments/hetzner-demo-tracker/maintenance/README.md index 2c9aa100..2b3d028c 100644 --- a/docs/deployments/hetzner-demo-tracker/maintenance/README.md +++ b/docs/deployments/hetzner-demo-tracker/maintenance/README.md @@ -4,7 +4,8 @@ Post-deployment maintenance procedures for the Hetzner demo tracker instance. ## Tasks -| Task | Guide | Status | -| ---------------- | ------------------------------------------ | ---------- | -| Secrets Rotation | [secrets-rotation.md](secrets-rotation.md) | ✅ Done | -| OS Updates | [os-updates.md](os-updates.md) | ⏳ Pending | +| Task | Guide | Status | +| ----------------- | -------------------------------------------- | ---------- | +| Secrets Rotation | [secrets-rotation.md](secrets-rotation.md) | ✅ Done | +| OS Updates | [os-updates.md](os-updates.md) | ⏳ Pending | +| Uptime Monitoring | [uptime-monitoring.md](uptime-monitoring.md) | ⏳ Pending | diff --git a/docs/deployments/hetzner-demo-tracker/maintenance/uptime-monitoring.md b/docs/deployments/hetzner-demo-tracker/maintenance/uptime-monitoring.md new file mode 100644 index 00000000..82536c30 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/maintenance/uptime-monitoring.md @@ -0,0 +1,45 @@ +# Uptime Monitoring + +## Context + +The Torrust demo instance previously hosted on DigitalOcean used DigitalOcean's +built-in **Monitoring** feature, which allows configuring uptime checks against +HTTP/HTTPS URLs. When a check fails, DigitalOcean sends an automatic email +alert. This made it easy to detect when services went down without any +additional infrastructure. + +**Hetzner does not offer an equivalent native monitoring feature.** The Hetzner +Cloud Console has no uptime check or alert capability. + +## Recommended External Tools + +The following free or low-cost external services can replicate this +functionality: + +| Tool | Free tier | Notes | +| -------------------------------------------------------------- | ------------------ | ---------------------------------- | +| [UptimeRobot](https://uptimerobot.com/) | 50 monitors, 5 min | HTTP/HTTPS, email + webhook alerts | +| [Freshping](https://www.freshping.io/) | 50 monitors, 1 min | HTTP, email alerts | +| [Better Uptime](https://betterstack.com/) | Limited free tier | HTTP, phone/SMS/email alerts | +| [Checkly](https://www.checklyhq.com/) | Limited free tier | HTTP + browser checks | +| [statuspage.io](https://www.atlassian.com/software/statuspage) | Paid | Public status page | + +## What to Monitor + +These are the public endpoints that should be checked: + +| Endpoint | Expected response | +| ------------------------------------------------------- | ----------------- | +| `https://api.torrust-tracker-demo.com/api/health_check` | HTTP 200 | +| `https://grafana.torrust-tracker-demo.com` | HTTP 200 | +| `https://http1.torrust-tracker-demo.com/health_check` | HTTP 200 | +| `https://http2.torrust-tracker-demo.com/health_check` | HTTP 200 | + +> **Note**: UDP tracker health cannot be checked by standard HTTP monitoring +> tools. Monitoring the HTTP API health check endpoint is sufficient as a +> proxy for overall service availability, since the tracker container runs +> all services (UDP + HTTP + API) as a single process. + +## Status + +⏳ Not yet configured — tracked as a future improvement. diff --git a/project-words.txt b/project-words.txt index 9553272d..9d949158 100644 --- a/project-words.txt +++ b/project-words.txt @@ -24,6 +24,7 @@ CIFS CRCL Caddyfile Certbot +Checkly Ciphernutz Cockburn Codegen @@ -46,6 +47,7 @@ EPEL Fairchild Falkenstein Firestore +Freshping Frontegg Geeksfor Gossman @@ -442,6 +444,7 @@ sqlx sshpass standardisation startretries +statuspage stdlib stringly subcontroller From 81a31b9c04828e5dd0165b872aab8e7ad2f564e7 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 18:10:54 +0000 Subject: [PATCH 57/59] docs: add tracker registry guide for newTrackon submission - Add tracker-registry.md with newTrackon submission instructions - Only udp1 (udp://udp1.torrust-tracker-demo.com:6969/announce) is submitted; udp2 kept off public lists to avoid announce noise in logs - Mark submitted on 2026-03-04, pending appearance in public list - Link from deployment README ToC (item 10) - Remove newTrackon section from uptime-monitoring.md (wrong place) - Add Trackon to project-words.txt --- .../hetzner-demo-tracker/README.md | 1 + .../maintenance/uptime-monitoring.md | 2 +- .../hetzner-demo-tracker/tracker-registry.md | 41 +++++++++++++++++++ project-words.txt | 1 + 4 files changed, 44 insertions(+), 1 deletion(-) create mode 100644 docs/deployments/hetzner-demo-tracker/tracker-registry.md diff --git a/docs/deployments/hetzner-demo-tracker/README.md b/docs/deployments/hetzner-demo-tracker/README.md index 5aa1a558..237b5bc3 100644 --- a/docs/deployments/hetzner-demo-tracker/README.md +++ b/docs/deployments/hetzner-demo-tracker/README.md @@ -42,6 +42,7 @@ Deploy a public Torrust Tracker demo instance to Hetzner Cloud and document ever 8. [Observations](observations.md) — cross-cutting insights and learnings about the deployer 9. [Maintenance](maintenance/README.md) — post-deployment operational tasks: - [Secrets rotation](maintenance/secrets-rotation.md) — rotate all secrets after AI-assisted deployment +10. [Tracker Registry](tracker-registry.md) — submit the tracker to public registries (newTrackon) ## Deployment diff --git a/docs/deployments/hetzner-demo-tracker/maintenance/uptime-monitoring.md b/docs/deployments/hetzner-demo-tracker/maintenance/uptime-monitoring.md index 82536c30..f6f15a8c 100644 --- a/docs/deployments/hetzner-demo-tracker/maintenance/uptime-monitoring.md +++ b/docs/deployments/hetzner-demo-tracker/maintenance/uptime-monitoring.md @@ -42,4 +42,4 @@ These are the public endpoints that should be checked: ## Status -⏳ Not yet configured — tracked as a future improvement. +⏳ Uptime monitoring not yet configured — tracked as a future improvement. diff --git a/docs/deployments/hetzner-demo-tracker/tracker-registry.md b/docs/deployments/hetzner-demo-tracker/tracker-registry.md new file mode 100644 index 00000000..c2195456 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/tracker-registry.md @@ -0,0 +1,41 @@ +# Tracker Registry + +Public tracker registries list open BitTorrent trackers so clients can +discover and use them. Submitting the demo tracker improves community +visibility and provides a passive uptime signal. + +## newTrackon + +[newTrackon](https://newtrackon.com/) continuously monitors the health of +submitted trackers and publishes them in public lists. + +The previous Torrust demo tracker (`udp://tracker.torrust-demo.com:6969/announce`) +was already listed there. The new Hetzner demo tracker should be submitted as +well. + +### Which tracker to submit + +Only **UDP Tracker 1** is submitted to public registries: + +```text +udp://udp1.torrust-tracker-demo.com:6969/announce +``` + +**UDP Tracker 2** (`udp://udp2.torrust-tracker-demo.com:6868/announce`) is +intentionally kept off all public tracker lists. Once a tracker appears in +public lists it receives a continuous stream of announces from BitTorrent +clients worldwide. That background noise makes it very hard to read logs +and debug issues when testing something in production. Keeping `udp2` quiet +reserves it as a low-traffic endpoint for manual testing and investigation. + +### How to submit + +1. Go to +2. Paste `udp://udp1.torrust-tracker-demo.com:6969/announce` into the submission box +3. Click **Submit** +4. Wait a few minutes while newTrackon gathers data +5. Verify it appears in the [Submitted](https://newtrackon.com/submitted) section + +### Status + +✅ Submitted (2026-03-04) — pending appearance in the public list. diff --git a/project-words.txt b/project-words.txt index 9d949158..fd4f71f3 100644 --- a/project-words.txt +++ b/project-words.txt @@ -123,6 +123,7 @@ Testcontain Testcontainers Testinfra Torrust +Trackon Traefik Unflushed Unkey From 11c020e49846a3ffa2bfca7ce0700d0ee2ef1693 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 18:21:34 +0000 Subject: [PATCH 58/59] docs: add bugs index for hetzner demo tracker deployment Collect all deployer bugs found during this deployment in one file with links to full descriptions in the relevant command docs. 11 bugs total across create/provision/release/run/test: - B-01: create template binds to 0.0.0.0 (IPv4 only) - B-02: create template defaults to SQLite silently - B-03: instance_name: null unexplained in template - B-04: provision SSH probe budget too short for Hetzner (120s) - B-05: passphrase-protected SSH keys fail silently in Docker - B-06: UDP tracker domains missing from provision output - B-07: release fails when docker not in PATH [FIXED] - B-08: MySQL 'root' username not rejected at creation time - B-09: MySQL root password silently diverges (_root suffix) - B-10: MySQL password not URL-encoded in tracker.toml - B-11: test DNS check false positives with floating IP --- .../hetzner-demo-tracker/README.md | 1 + docs/deployments/hetzner-demo-tracker/bugs.md | 177 ++++++++++++++++++ 2 files changed, 178 insertions(+) create mode 100644 docs/deployments/hetzner-demo-tracker/bugs.md diff --git a/docs/deployments/hetzner-demo-tracker/README.md b/docs/deployments/hetzner-demo-tracker/README.md index 237b5bc3..a8d362a6 100644 --- a/docs/deployments/hetzner-demo-tracker/README.md +++ b/docs/deployments/hetzner-demo-tracker/README.md @@ -43,6 +43,7 @@ Deploy a public Torrust Tracker demo instance to Hetzner Cloud and document ever 9. [Maintenance](maintenance/README.md) — post-deployment operational tasks: - [Secrets rotation](maintenance/secrets-rotation.md) — rotate all secrets after AI-assisted deployment 10. [Tracker Registry](tracker-registry.md) — submit the tracker to public registries (newTrackon) +11. [Bugs](bugs.md) — all deployer bugs discovered during this deployment (11 bugs, 1 fixed) ## Deployment diff --git a/docs/deployments/hetzner-demo-tracker/bugs.md b/docs/deployments/hetzner-demo-tracker/bugs.md new file mode 100644 index 00000000..6ed0c23e --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/bugs.md @@ -0,0 +1,177 @@ +# Bugs Found During Hetzner Demo Tracker Deployment + +All deployer bugs discovered during this deployment, collected in one place. +Each entry links to the full description in the relevant command document. + +> **Legend**: 🔴 Open  |  🟢 Fixed (in this branch, pending merge) + +--- + +## `create` command + +### B-01 — Template defaults bind addresses to `0.0.0.0` (IPv4 only) + +🔴 Open  |  **Severity**: Major + +The `create template` command hard-codes `0.0.0.0` as the default bind address for +all UDP and HTTP tracker sockets. IPv6 clients cannot connect. Public trackers +should bind to `[::]` by default. + +Full description: [commands/create/problems.md — Template defaults bind addresses to `0.0.0.0`](commands/create/problems.md#problem-template-defaults-bind-addresses-to-0000-ipv4-only) + +--- + +### B-02 — Template silently defaults to SQLite with no database choice + +🔴 Open  |  **Severity**: Major + +The `create template` command uses SQLite without prompting the user or noting that +MySQL is the recommended choice for production. Users may not notice until +deep into the deployment. + +Full description: [commands/create/problems.md — Template silently defaults to SQLite](commands/create/problems.md#problem-template-silently-defaults-to-sqlite--no-database-choice-presented) + +--- + +### B-03 — `instance_name: null` generated with no explanation + +🔴 Open  |  **Severity**: Minor + +The `create template` command outputs `"instance_name": null` with no +documentation of what the deployer will do with a null value (it auto-generates +`torrust-tracker-vm-{env_name}`). The template should explain this. + +Full description: [commands/create/problems.md — Template generates `instance_name: null`](commands/create/problems.md#problem-template-generates-instance_name-null-with-no-explanation) + +--- + +## `provision` command + +### B-04 — SSH probe budget too short for Hetzner (120 s hardcoded) + +🔴 Open  |  **Severity**: Major + +The deployer polls SSH with a fixed budget of 60 × 2 s = 120 s. +On Hetzner `ccx23`, cloud-init user provisioning can take over 3 minutes, +causing `provision` to fail even when the server eventually comes up healthy. + +Full description: [commands/provision/problems.md — SSH connectivity times out](commands/provision/problems.md#problem-provisioning-fails--ssh-connectivity-to-newly-created-server-times-out) + +--- + +### B-05 — Passphrase-protected SSH keys fail silently inside Docker + +🔴 Open  |  **Severity**: Major + +When the deployer runs inside Docker (the standard production workflow), there is +no SSH agent. If the configured deployment key has a passphrase, every probe +attempt silently returns `Permission denied`. Neither `create environment` nor +`validate` warns about this. The user sees repeated SSH failures with no +diagnostic pointing at the passphrase as the cause. + +Full description: [commands/provision/problems.md — SSH probe always fails — passphrase-protected key](commands/provision/problems.md#problem-ssh-probe-always-fails-from-docker-container--passphrase-protected-private-key) + +--- + +### B-06 — UDP tracker domains missing from `provision` output + +🔴 Open  |  **Severity**: Minor + +The `domains` array in the `provision` JSON output only contains HTTP-based +domains. The two UDP tracker domains configured in the environment are silently +omitted. + +Full description: [commands/provision/bugs.md — UDP tracker domains missing](commands/provision/bugs.md#bug-udp-tracker-domains-missing-from-provision-output) + +--- + +## `release` command + +### B-07 — `release` fails when `docker` is not in PATH (Docker-based usage) + +🟢 Fixed (this branch)  |  **Severity**: High + +The `release` command validates the rendered `docker-compose.yml` locally by +running `docker compose config`. When the deployer runs inside its own Docker +container (where `docker` is not installed), this validation fails with +`ENOENT`. The `release` command is completely broken for Docker-based usage. + +**Fix**: the validator now skips with a warning when `docker` is not in PATH +instead of hard-failing. + +Full description: [commands/release/bugs.md — `release` fails when docker not in PATH](commands/release/bugs.md#bug-release-fails-when-deployer-runs-inside-docker-docker-not-in-path) + +--- + +## `run` command + +### B-08 — MySQL `"root"` username not rejected at creation time + +🔴 Open  |  **Severity**: High + +The deployer accepts `"root"` as the MySQL application username. MySQL 8.4 +explicitly rejects `MYSQL_USER=root`. The error only surfaces at `run` time +when MySQL fails to start, not at `create environment` when the bad value is first +accepted. + +Full description: [commands/run/bugs.md — MySQL `"root"` not rejected at creation time](commands/run/bugs.md#bug-1-mysql-app-username-root-is-not-rejected-at-environment-creation-time) + +--- + +### B-09 — MySQL root password silently diverges from operator-configured password + +🔴 Open  |  **Severity**: Medium + +The deployer auto-derives the MySQL root password by appending `"_root"` to the +configured application password (`format!("{password}_root")`). The effective +root password is never surfaced to the operator, making it impossible to connect +to MySQL as `root` using the value from the env config. + +Full description: [commands/run/bugs.md — MySQL root password silently diverges](commands/run/bugs.md#bug-2-mysql-root-password-silently-diverges-from-the-configured-password) + +--- + +### B-10 — MySQL password not URL-encoded in `tracker.toml` connection string + +🔴 Open  |  **Severity**: High + +The tracker `tracker.toml` template renders the MySQL password raw into the +database connection URL. If the password contains URL-special characters (e.g. +`/`, `@`, `#`), the URL is malformed and the tracker crashes at startup with a +misleading `InvalidPort` error. Worked around in this deployment by manually +URL-encoding the password. + +Full description: [commands/run/bugs.md — MySQL password not URL-encoded](commands/run/bugs.md#bug-3-mysql-password-is-not-url-encoded-in-the-tracker-connection-string) + +--- + +## `test` command + +### B-11 — DNS check produces false positives when a floating IP is in use + +🔴 Open  |  **Severity**: Minor + +The `test` command resolves each domain and compares the result against the +**instance IP**. When a floating IP is assigned and DNS points to it instead, +every domain triggers a false-positive warning (`expected 46.225.234.201, got +116.202.176.169`). The deployer has no concept of floating IPs. + +Full description: [commands/improvements.md — Deployer is not aware of floating IPs](commands/improvements.md#improvement-deployer-is-not-aware-of-floating-ips) + +--- + +## Summary + +| ID | Command | Description | Severity | Status | +| ---- | ----------- | ----------------------------------------------------- | -------- | -------- | +| B-01 | `create` | Template binds to `0.0.0.0` (IPv4 only) | Major | 🔴 Open | +| B-02 | `create` | Template defaults to SQLite silently | Major | 🔴 Open | +| B-03 | `create` | `instance_name: null` unexplained | Minor | 🔴 Open | +| B-04 | `provision` | SSH probe budget too short for Hetzner (120 s) | Major | 🔴 Open | +| B-05 | `provision` | Passphrase-protected SSH keys fail silently in Docker | Major | 🔴 Open | +| B-06 | `provision` | UDP tracker domains missing from output | Minor | 🔴 Open | +| B-07 | `release` | Fails when `docker` not in PATH (Docker-based usage) | High | 🟢 Fixed | +| B-08 | `run` | MySQL `"root"` username not rejected at creation time | High | 🔴 Open | +| B-09 | `run` | MySQL root password silently diverges | Medium | 🔴 Open | +| B-10 | `run` | MySQL password not URL-encoded in connection string | High | 🔴 Open | +| B-11 | `test` | DNS check false positives with floating IP | Minor | 🔴 Open | From 675b826c457f8119c401cc66fe70b2b4ec021ca7 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 18:24:32 +0000 Subject: [PATCH 59/59] docs: add improvements index for hetzner demo tracker deployment Collect all deployer improvement recommendations found during this deployment in one file with links to full descriptions. 13 items across create/provision/run/cross-cutting/post-provision: - I-01: create template should document instance_name auto-generation - I-02: create template should default to [::] for public sockets - I-03: create template should prompt for database choice - I-04: provision SSH probe should distinguish failure reasons - I-05: provision error_kind should be specific for SSH auth failures - I-06: provision trace file should include per-attempt SSH details - I-07: provision SSH connectivity timeout should be configurable - I-08: provision should detect passphrase-protected SSH keys early - I-09: provision should have wait-for-ssh or --resume flag - I-10: provision output should include IPv6 address - I-11: run should add lightweight post-start health check - I-12: env config should support floating IP for DNS checks - I-13: post-provision netplan config should use correct permissions --- .../hetzner-demo-tracker/README.md | 1 + .../hetzner-demo-tracker/improvements.md | 180 ++++++++++++++++++ 2 files changed, 181 insertions(+) create mode 100644 docs/deployments/hetzner-demo-tracker/improvements.md diff --git a/docs/deployments/hetzner-demo-tracker/README.md b/docs/deployments/hetzner-demo-tracker/README.md index a8d362a6..83424dd1 100644 --- a/docs/deployments/hetzner-demo-tracker/README.md +++ b/docs/deployments/hetzner-demo-tracker/README.md @@ -44,6 +44,7 @@ Deploy a public Torrust Tracker demo instance to Hetzner Cloud and document ever - [Secrets rotation](maintenance/secrets-rotation.md) — rotate all secrets after AI-assisted deployment 10. [Tracker Registry](tracker-registry.md) — submit the tracker to public registries (newTrackon) 11. [Bugs](bugs.md) — all deployer bugs discovered during this deployment (11 bugs, 1 fixed) +12. [Improvements](improvements.md) — all improvement recommendations collected in one place (13 items) ## Deployment diff --git a/docs/deployments/hetzner-demo-tracker/improvements.md b/docs/deployments/hetzner-demo-tracker/improvements.md new file mode 100644 index 00000000..d6f3f591 --- /dev/null +++ b/docs/deployments/hetzner-demo-tracker/improvements.md @@ -0,0 +1,180 @@ +# Improvements & Recommendations from Hetzner Demo Tracker Deployment + +All deployer improvements and recommendations identified during this deployment, +collected in one place. Each entry links to the full description in the relevant +document. + +--- + +## `create` command + +### I-01 — Document `instance_name: null` auto-generation in template + +The `create template` output contains `"instance_name": null` with no explanation +of the auto-generated value (`torrust-tracker-vm-{env_name}`). The template should +include an inline comment or a `_comment` field describing this behavior. + +Full description: [commands/create/problems.md — instance_name: null unexplained](commands/create/problems.md#problem-template-generates-instance_name-null-with-no-explanation) + +--- + +### I-02 — Default bind addresses to `[::]` (dual-stack) for public trackers + +The `create template` command defaults to `0.0.0.0` (IPv4 only). Public trackers +should bind to `[::]`, which accepts both IPv4 and IPv6 on Linux. The template +generator should either default to `[::]` or include a note about the trade-off. + +Full description: [commands/create/problems.md — Template defaults to `0.0.0.0`](commands/create/problems.md#problem-template-defaults-bind-addresses-to-0000-ipv4-only) + +--- + +### I-03 — Prompt for database choice or note SQLite dev default + +The `create template` command silently selects SQLite without informing the user. +It should either prompt for a database choice interactively or include a comment +noting that SQLite is the development default and MySQL is recommended for +production. + +Full description: [commands/create/problems.md — Template silently defaults to SQLite](commands/create/problems.md#problem-template-silently-defaults-to-sqlite--no-database-choice-presented) + +--- + +## `provision` command + +### I-04 — Distinguish SSH failure reason in the probe loop + +The SSH probe logs a generic "still waiting" message for every failed attempt +regardless of whether the port is unreachable (TCP timeout) or sshd is up +but authentication is rejected. Logging a different message per failure type +would significantly reduce investigation time. + +Full description: [commands/provision/improvements.md — Distinguish SSH failure reason](commands/provision/improvements.md#1-distinguish-ssh-failure-reason-in-the-probe-loop) + +--- + +### I-05 — Classify `error_kind` more precisely for SSH auth failures + +A `WaitSshConnectivity` failure is always recorded as `NetworkConnectivity` in +the environment JSON, even when the root cause is authentication rejection (not +a network problem). A more specific `SshAuthenticationFailed` variant would +direct investigation to the right layer immediately. + +Full description: [commands/provision/improvements.md — Classify error_kind more precisely](commands/provision/improvements.md#2-classify-error_kind-more-precisely-for-auth-failures) + +--- + +### I-06 — Include per-attempt failure details in the provision trace file + +The trace file only records a final summary. A condensed per-phase breakdown +of the SSH probe (how many attempts timed out vs. were rejected by sshd) would +be immediately actionable for operators without requiring analysis of +`data/logs/log.txt`. + +Full description: [commands/provision/improvements.md — Per-attempt details in trace file](commands/provision/improvements.md#3-include-per-attempt-failure-details-in-the-trace-file) + +--- + +### I-07 — Make SSH connectivity timeout configurable + +The probe budget is hardcoded at 60 × 2 s = 120 s. Hetzner servers with +cloud-init user provisioning require over 3 minutes. This should be +configurable per provider, per env config, and via a CLI flag, with a longer +default for Hetzner. + +Full description: [commands/provision/improvements.md — Configurable SSH connectivity timeout](commands/provision/improvements.md#4-support-configurable-ssh-connectivity-timeout) + +--- + +### I-08 — Detect passphrase-protected SSH keys early and warn + +The deployer does not check whether the configured SSH private key has a +passphrase. When running inside Docker (no agent, no TTY), a passphrase-protected +key silently fails every attempt. This should be caught at `create environment` +or `validate` time, with a clear actionable warning. + +Full description: [commands/provision/improvements.md — Detect passphrase-protected keys early](commands/provision/improvements.md#7-detect-passphrase-protected-ssh-keys-early-and-warn-the-user) + +--- + +### I-09 — Add `wait-for-ssh` command or `provision --resume` flag + +When `provision` fails at `WaitSshConnectivity`, the server itself is healthy +but the environment must be destroyed and recreated from scratch. A +`wait-for-ssh` command or `provision --resume` flag would allow retrying only +the SSH probe step against an already-created server, saving the full +`tofu apply` + cloud-init cycle. + +Full description: [commands/provision/improvements.md — `wait-for-ssh` command](commands/provision/improvements.md#5-add-a-wait-for-ssh-command-or---resume-flag-on-provision) + +--- + +### I-10 — Include IPv6 address in `provision` output + +The `provision` JSON output only includes the IPv4 instance IP. Hetzner +assigns an IPv6 address and /64 network to every server, but these are only +visible in the raw Tofu state file. Exposing them in the output avoids +operators having to consult the state file during post-provision steps like +floating IP setup. + +Full description: [commands/provision/improvements.md — Include IPv6 in provision output](commands/provision/improvements.md#6-include-ipv6-address-in-provision-command-output) + +--- + +## `run` command + +### I-11 — Add lightweight post-start health check to `run` + +The `Running` state only indicates that `docker compose up -d` returned exit +code 0, not that services are healthy. A lightweight poll of `docker compose ps` +after startup (until no container is in `starting` or `restarting` state) would +catch fast-failing containers — such as the tracker URL-encoding crash in this +deployment — without duplicating the full `test` smoke-test logic. + +Full description: [commands/run/improvements.md — `Running` state does not guarantee healthy services](commands/run/improvements.md#improvement-running-state-does-not-guarantee-services-are-healthy) + +--- + +## Cross-cutting + +### I-12 — Add floating IP support to environment config and DNS checks + +The `test` command compares resolved DNS addresses against the bare instance IP. +When a floating IP is in use (the recommended production setup), every domain +produces a false-positive DNS warning. The environment config should allow +specifying a `floating_ip` so the deployer uses it as the expected DNS target +and can optionally auto-assign it during provisioning. + +Full description: [commands/improvements.md — Deployer not aware of floating IPs](commands/improvements.md#improvement-deployer-is-not-aware-of-floating-ips) + +--- + +## Post-provision / operational + +### I-13 — Write netplan floating IP config with correct permissions from the start + +The post-provision guide writes the netplan file with `sudo tee`, which creates +it world-readable. Netplan then logs a warning requiring `chmod 600`. Using +`sudo install -m 600 /dev/stdin /etc/netplan/60-floating-ip.yaml` instead +avoids the warning and the manual fix step. + +Full description: [post-provision/dns-setup.md — Improvements](post-provision/dns-setup.md#improvements) + +--- + +## Summary + +| ID | Area | Description | +| ---- | -------------- | ------------------------------------------------------------ | +| I-01 | `create` | Document `instance_name` auto-generation in template | +| I-02 | `create` | Default bind addresses to `[::]` for public trackers | +| I-03 | `create` | Prompt for database choice or note SQLite dev default | +| I-04 | `provision` | Distinguish SSH failure reason in probe loop | +| I-05 | `provision` | Classify `error_kind` more precisely for SSH auth failures | +| I-06 | `provision` | Include per-attempt SSH failure details in trace file | +| I-07 | `provision` | Make SSH connectivity timeout configurable | +| I-08 | `provision` | Detect passphrase-protected SSH keys early and warn | +| I-09 | `provision` | Add `wait-for-ssh` command or `provision --resume` flag | +| I-10 | `provision` | Include IPv6 address in provision output | +| I-11 | `run` | Add lightweight post-start health check | +| I-12 | Cross-cutting | Add floating IP support to env config and DNS checks | +| I-13 | Post-provision | Write netplan config with correct permissions from the start |

    =Y(8AQcXCuc1s)Sl*9t~(FS>8 zJneh^+~t;~TrHDe6H{6=eh2%Q5chmib;N0N7`OmXj&w89n5>+vK${ zwZ5!@pqT(YNHIWNoE;N5PDbs>x?o1L;PD0ER=mT9(A9CNM{#gABhyxbsjMeux8%t_ zb9UOz!W_`DVDr!{`Xi5IYD5|1z-Co`CcVMZ(6Fy1lI0^RvZ$)d_DGd3QgZXUL!$h( z8vNkYmS}oLz?P=+(#YGj136~H(Y~sZ*x0#A(R5na9isJ`K0f!C_PSqUiJ(;e`qM@;!@dS%{Xb8)D$LePU@v$IJ|Q zhbP0BrXX!fmV~?eM-b?eYC(O8ncj2xjGolx7E`Paugci+rMCiVDgHZ(qS67c)&%CIe=tL@_=lNI;Zcb|KS* zzGfWvpn4R6D2s9NTC*_6;O9{jRI+)H*ZQ!ixLX#tX@8wv{sEO)v2A(&(D)ghJ?HM| z)+wi4puR3w2z33i!5keo*3)-M4fj$B(M%p}k$zf_4nGYjDXR^Xhb2B_r4^UK(VDts zZ7W|=ofx{OtK-FR@Mh#Z(G5E^qSqah6uHEoQIj)#YW(>^_3PMpAACVC=ykP1a%+8Slg{YPi_=H(XxUWKw`$;&RiAvRhQ&$WX=16uS#2cj|NPRkj&x(_ki zI|Uw{3sPmLQv+FmS9mdh~9L?VQ-2 zk(WWb!y3VUkV99R|cy-7=a2gp;sOIDYzEzXs$ z-OL64dgo1om0ydW%;s!pNN>pu|qJ8ZGBmSkU}21i{P{EwUCZ5vW%9 zl z_R|T>l0`+_3WCSHHg!)GEmm4Z=q3)~l3Az&H$9&QH?qpD5bN{aUQ9c4R!zZ5OCxjA zra-4xI6==SoxzrwXmT#fF*1?)LcDlak{<(iYZhBKAnSDLTDw?p%NC*eXoQT8Ht(F_ z_`Pu0pr+>PV^)h0!%W(hb<5V~U{5}F8yosj#W1yTb5A9N3Ct-zsD4jT%Ve@$@tMpH zlfwyHrgCd_u@q=DY16Xt!7dhtiF&(Y?T2L!Ty7bOLvoz0b?FEx=c3?3s0LdQL6#8z zDX(Cu=kRDex!`u2LFb2bkKf}bN38MY<$?S|6kax5RdXfOn(Yy(G~l*~`;rB7jkJiB zH@kRts^C5$+vndzjFv0cb7$R+?UBix_t?JMU8DP##EG?R%@4#?5x`Idq>rmNeT z_a@qVdl6EzC0l1-(JV2~qkcTukks3v$X4`d$nHiUsg7)zFrv?t~P? z&*_8`?KDkyniDOK4QmV^odn30h1uJ|B^T$N;G`<^=A&oR;2;|*s4)}Si))w0RS;GJ z(?9+zMs%B2LN6K=Zs8{2UieA}8doytEiBPlavMYI&vKC?SWq>YKg}3eES(5CT9@S! zuppbaAnQ@Tc+%4j;wsl{T(QPk+k>Z=@`I+)CB}7DulP(I6*rqUfv$6WJldkWGfAbR z{THwnbBxQj@>Og}IayjikB{@Q>BakZOU(J(9qmp{Nc=6ISKF-G1@_h|pB*tV4tW1W zICziQQ2F@Z8;$@i=_^gI<*vpoO@j)mEai2tc7B4eg7104a=^uf9!v;k!#PzIrTW8q z+(0T3hya!{o<*O-SlAlh+wo5JqS7dGw<#f8iWG0`~YOCmLH|xZ$J3hFp8XH zvVFV?vymPT^pmpgP-LmTXhhvN)jvx7(07bvs)V<}?46=Tr7d)I`>r>WX9S}YEvPv< z^ae&_YWX6Q$fY4FK;_Y%CfgXJJf?f^f$PAz47OT~N>d@+i5YtbV#BK;4Qa-pZK*nu z^N4@4MkQB;m+2|Rml_&AGI7n1SFLZv+!HsA?kf;5SXL7lopf$OwzFB&7CV_Li{HjY z6Hkme=w=@cNYRUpNr>A9au;>ef>fkl@p-3URJR*pn^ zD2NPSbLKxO<2|^Bv{d^H3Hx$bX^QujX-RmO%lI-U10e39VI8mz3fui{MYs()v=6%6 zC&F|{!0@|xFBRkY zS`rfd0^%j5_0sTje~!FEJd*MbXE6Z@1!_FxyvZ`p;|2LQIf!rOVi|5^Ri{n{5xUq~ zVIX66CGAqu`Jny4X@nh}@yu)i;i|NKO4dAiBY<0;0y@uI z^3Ph8xWZr%Kb)1{4ABfwWl4|ssz~euzJn8gLS)`YAvc$n%n4Z>DkaUQ=q2LKf|T~S zB%b!v8`BYHShl2Gbh(y^IZYcz=Og-e(@WifrJ{Yp7FQFhQ%~rDU zl{QiJ2Y7%#`x>Q<2L^E~DamlrB`V)`27=7(GQxQrR%nElX@uy5=W+CoR_8!zwu@mi7 z#=!TQ_@L;73P{|}xr>2UGN_$${2(SI)wzEChFZ$qlOgiO{FD83B%HQbGl^NAx1k;|VTlwy+G%h4_#+lm|62N_Lw*fgrIp-kqMQu@VNEyLLt zGmczVOqjc2J17&ny_at5K2z4Rl{L8a&{BgwRkz)htCB6_F_=41IHHx~d||tO7!B2L z+s)2NSFRH(Z)08$q<`HG_@KMI3^DT4E*_zIGLT-7I5N{M?K*zrf@a_{P?=h&DKBWR zMcUZ7u)U(m63EGI@v#CPv7kZKTC#7wV#))1?4sJ?$`kE}*g2Q}k{Uo#;pvOW7b7^r zcJ_JDCmZ~cNH{t0860mhBwd+ewkHW8sYW`<1^0Th2@U0tY7OU#8e`9v zbj9ZH{<%*H-8~QSc&dNz0xVhht%&!VRDfV3tsidnutn#jyL;YWPRBFx5=MOz+1J5# zYl?AB!!I~2$BAn=egEF*w_!$JNk(ghs=@Xi>YK*S4px@0t6OFMx3&7C_UPLYdy~&C zj?udkewi3B37%3UaGdxpk5?abhoiWch4x|bTv&LMJu+%ekA8tKF(2g-Dl%dezpgLB z7kgFlL+^M<>q=nO7I?%sFG|^=4~ls{_fPGrhK4L{eXMCs?BzEhw|B0TXezaI)kW!y zzyR0yJCqW#V1L}Smfs|l%cA7A0cQH8Pyu$Mf8|JS*V_HwjpWf^p$S~0sSea;KRWqf zfq}KA+15#XMlJPtg=BqZPT^b`_f@LeMC3P+@>4+EE;_s13ihg^n79kwO;mgMiElLCa8I(_u+N}|NbC^H%i{U0yc@G;`O8K* zdVmL9>Gil6M4+NE&*+XI#h(woJkES_eCWqg?;mTXR=7HWlqvVw2%MBpR&kV!$5?xC zY+Nw4(aUckqP{btf6>I1Q)C%Vwn(fq0v`A0`*u>{V1Ep)Sn_c%*0Lv%oXA}D4)*FR0u9aYxuIyrG z(`}E2SPmPA1-7Tu!3tHI@9$Dr%apze-bzzen-|?~OpzCwfu%qlKQ_2(!aZcN9;en9 zy!Z7n`65+;2Z2RiI@co*sAnH&m=5uKn*l4Z*U9xRT+>H@bTJoZIpt!UOcq}F>6vkt z7@#j=^>J|errh!HjHY12g53oquCfl^2xpVm#5-IQ^@YAu9uotJ#5ZOT5?@R{GJ33x z{4#)opE~OBuSJXFp8X^EX~VV1Q{YMC_-V3U;Os|Xu3k2{hDU5Qkv(?&9vWiSM1uG3WFh1m&v#68TrML9-Cp;zb8lHO zf)rH>A~AO!;bNH6kDpJeyI8Lg>3Tm{6eIf$43ZqVgk?y#hi5eVMxev#WgUh6hLpkz zrC`~eTf;|UW4&bH#7nRTAuvE?Wcu}Qa}3wIn5Vcfl`D}Kq*k_#PZ0(DbW@U@IY>yj ziaJgK3oldfriV&Z#a5pjoU-&})U1w&>$fgzR4V4*+{fOQV+Uq9Cun z*I&=2B^5{Iw`X`COg6QY(NhjJz9x7jzc@8escQFQdYL01eSJGMLEMwYga znsRXOi&gM%48pZwld|Ja7RQf`a7r`@S9V22Ha&^FR#hEa01mHi`>p0#eoJ0JM9mi> zYP9g_?4SE11SL{dW_tsA#PuY-4_H^tFtWT~coF4R+X-5uzcO5LRPG->C5- zTTuZ`qXNuQqr$gjKQ>&T4kE98LD#BhvB?DgK;&ym-$C!kvt&$nHo}uFJhlD{$ZOZ@WDhqrn9CeNU@&8X(Mfy=n*NShpiyC zG98?*n&uE|kKQ zpYJ%YTSvDF5c(Jgw<6>iNLBvsnUS&1ni6Fd> z1Hz^Z4rQuu1ujKdg$f!w8PDtGTGiHK^hKN@8@ls7s{ru#EmqAYT*_w&Lj&g@_6--$ zWv`725YzJ^)Q#NUN7giS2tn5aCt;Jf61=tQYKZ7ZD@$Q3SXM_;P5lc$Zfh&oY~`%S z)l7+ta?4+Ctl?nT?T=0KpIR!4;UlUTk^OG{@w1%xAlaXX?i+JcXjU;+PM9;vM;AL zGEL9e$P#%?=PnWiPSe#~yhEi$vc8h)h{W*Kw8vXj9%*AJ;ricvE8f^_btfeVADk@E zx)|VuMbZDt`yBN7FVTd$JD|8v?jM1R9Ix)>FqC*NqHmhOK z10s)OhmA(j7F?~r4mEUTL}LZj!ZM%P$LYR18a8wKect_9Ma6&I1j9WiCh}TUVYeSQ zQ6!n+)I9WMNZ3r1eE0N}dR(|NsqIO{LAapfuZTWG>@7=TQ&XhN;zxx8($RZy zlII+VFO{L>!r!sS2m5C5^p21*B%~2fCx%o)zXeYDJY`wbK^7krqqf>Ko>6Iv%rtkLVQ$+LFFT7o2 zi;t9l-djUGJR41%k?}s8%78uqDXm1QeycZ@mG9BWl0Hvo)%1Axr~aK8kS-b%#&BOF;q12lecI=9OCF*6%~3(Q^y$U5I1)3qrvksdwYZp-eA z)Wv3+-bBOCPm%`#2DgB0hhg|d+Vk|yVEhYPkc0fElzL}tB8%LMDy7o4yOmG6Zl>#E z^GcEC4MKxPPMgb2K<5jIDwD;U)I zpAS->e{_CpX9x!;k17(v4{51M8D&AaOveRq6B_SVGL0FGHgDl>z(Np-tKOcO<=+>S z`O{It(IlnYTF&}x?w`H3Oy`RvPLHlD*w8>dPl%qNN+BBmK{!B(n z(d-UAo+ocRHA&6EuW?6cI`~Twa?$rTaMcdgOirjeoksD~_0wl2B%b6?G#t$Ed#A>Z zwG{@J~x0yY!r-RwVmqPIheBwBB|${z|NEXH}pp*~u2(dGg|Ze1wu<5HcovQmZ|ygXSw5FD#5+*q2|UY}{x>yBQ+RWYzoA2_$$ zV6l7Zz6Q9}UE~%x+3q{h8?IFORxi-YVeYyh8O}OrfE#mbESLJm@U->7N39wcNk1Q- zc-OdkL$}dJuKBdQs!}o-+Qh~c;kG>%0@%T><%g@nQ&ImPcW)Wh=DI!lwxyH;Ezsf` zq_~&j)}qDT-QC^Y-Q6kfE&+-=DHc4qyGxLhwf0{7?s4z`em!HH^M1)lM(llL>hGEJ z89Qppxej{l7@qtbi`lFh#rf&(PRoCs(azNz2rNqVJRfC1IknVXs+P1jHrjkz+#k^e zdOm&)I(#FnnME|}1pOInMX#sHPPg_zD}wuO6}`yGgLbkaL;o5{H-8u#z0hTbi%UHt zHn*zS^Thm7$JTbMQMrj1`k9cjs_3r$bx}5l$N}b@-Ac-|n3!!=f;r=W`ZJ%2gXtWb zKe}=4+Cc%&%jQeJj5beTuMYyMVxny$VrI=}n}G4Soc_aU_G*&@csXsa&NNwbqSdy^ z2u|i7E1a8bqr!8b;5mcAL<_3BMPbLIyH6QD%YD&W(7k(eYRuc!-s`GFzsrTExR~EM z+UPcO524R>X*+WYt=`_Bba;f1y6ya=21hHI4xx#U_rC%JxfQfD*)Pi_@2V-huY|~? zK+T`i9SK*vy8OF_CqlJSkhMI|C35;7s&~ySmj@&exLWhqL>PFNCu$iH?uz&~3)#MG z$J6mBL{FZNuw{F;1*yQgt-2Is?BUB5LGI`;ii#*pmcC3XN6Tl6?l?pz42>dQ962y} z>STzoE?FH}dS|bByjy@(M2UIKSiVlEbrGKL<`oT9x?+^rezNMSXCs{NjnX_vIaF8W(vS3w^O<(4w)Z5%{* zT23%2S7@c<1s)oBs$Mh`vt+E+MP+O@f9Yb}())n;6Ic6`a$ZvuZKUrE*cC?YzFdnn zJ^2vEI>EUmpq}6KS#~NpvPPSJwQ>h&yfP<|R9-QcquWKN_)w zG&J&_)_Fjsqb2D#G<^6lMST`2i|mDy#a!pCdrIfdDl_VaZ3|=hj`1M#)H>Zt6;~RNH@K-!4Rl zG)C#(&Mtpr%#e^_A(I4UFiu_pv|JQSrF zbtR&(laboN%TnZ*mjt@GNj~L95xzkBF8R5|4_J}!pgwm?s%VcreO56A4i&c`88xT{ z*H9{7@~%rj{W7{af=W5EbG zW)GMSc+KH_go92gP2eh(%A~he>|gDp{-GC#3L)M3FE&kRBAoCeI@ceO(IR86E?JQu z$#4Fu4nazq%lUVKpDjA4lS-pm!5{ARZxolC*JRpm|2k40IwYI!ycXjNYr*($aE+7y z+p%xtH^)UkxnhfdYKp-AL_O@p$zLD%`x@eq{pmg*#efC%cLH(Bi~&-*p+`7|Y;D`y*=qAqr`nW9F+ zsl9W9hKehh`5?mx5hj;y&~~9E519uCotj|wvFeM5KXWFqjBhWmP&Uuc)$@60%Eg=w z`rDlI9e$!Mp(%uySk%*u(eA^ty=V%EI_xOFOw!*sdVye!?%kI8*khmGljHwWR3-L6 zxjc2`(4lg~JOMvaV zkEe=uK+`V<;kCH`mW%`C&o0>A9BnyMkAUo8 z-?un2Crpc2ejD!o0{Sp!qdD;QRn_iBM%CtAvuDQb%eGszSAFITzvmRJ)XTGB$u4YJ zd0q$wD6XV~dP49@v|3|(9$|-YsEQsZ!RvwoP&$F7aC}Q^3c;~)8tBc5yt@<6T^}1HQ6BP9>0M|Ot9+v)$>qkN_M`0O z+SzXBdwN>r;jZ%R9r`4?^c27ns7_ryuTC*wUb^8EY|M!N< zxRLg712-nvH;$H>5rNA=6m`XZBNss!6Jz8)5K@{Pb9}yUoZg)gJA+edz=q`HJYH#; zj2OXaI~8WwU)}=g^p#0f28MjFYes35?Xs7n>q3f9dz2-!5*6W`HjOR2zo*k&4Yq2O z>tM?1fg*&+=di7cj^?P8sio$C@E3_mq|sLA<}mFq-koyh(+P?+A5fd*;CLHJy&?Pit$2 zpa|v38g_re7Z2}efdkYJMbmsULiZo<>D+-&GuOm;`A#~NRXv|ihCsx1#X++1g6UDE z-j6AQyX$1dyv=%_XJYEB2g43QV)-O^$^%tOC(A)}t1}~U24qdOJq&K&|tLV7dRnu7-I)OVzL0hY{Lu>ns4L0gR&p@RH0&-;?n_-jn2V*=y_}pn)5M5hW z+@Hz!Rx(O*-WGhV_m`?y-{Gu8LkPI_pqaUknN25+Q)j<7=2=_yh$7}#(TTuxB8Ys- z(&ryrYa3Qpzb{QDglwVinH8^3Ja&5sy}0o&OHQ}-kF}F{qq^T+9n0lg=r_*RG5HWB zRezxVBdVdw%9taZq3_hgB@60#6c_`FU9hQ!~44zJ|JmPiTu1XHLIHcZ{ zr`(-gqsk=wCdpKZOLoBp-cocON}rHug_-EfBOhpbtXu^d(kw>kGXd9ndvuv@5*xa`&^bf=vrq(I;!K!L^mDY zE$XR*RVL@-espJHD)P1X!)L#jI#ix^B_4j=AgWR7Rg(Qg?Jb_HROf6&?cJVqfN+R7 z&=o0qYpr|#RBI)!qAbhC9q@;r(O{vdN%gFhQgT{QqQt!_p?qgWqQ6exQ<)`6LS+!d zZpWu?bxqgh!*ZPVTA4@o$M6SJ4^PZ;BAW=Uh=R%)h>DoPjKpxAxboPo?s0|DLV6`7 z=tufV!B!p~jkTQtj&-;SSk^&>Xd-dzvLokO9j=_nyeGZYpLO+cRTQrLxeDeAGm_sb z*@~h7ABXH|atJ@u9Y#&nbtXTV1ueHXM5-zDG|VVX-W?1b>aWpgO0NhSZT$*J(->G3 zrFn0N`)5|<>8ZTL2JQtmrYY}iLo$N54ymt1Ox^O~JGI68y?$XBioCa0AINW~Syt2yiWm++QL06hN3jLymG9lI(S$pIsWup?i__6ZrT3&fsE3&ve>A?vfk%-mS%L|K7 zG;j^ly{541M@-m~mgIpsKwU>Q1s13o6^2N{5}mDv1Rtl|iHG+NYpKA@wuQJj!yf=L ziu@Blc%@Z+MCy9K@it^W@UlHG!5ASK-!b+KQ(W~bSeDybReC#tkOM}01G^%78qhw{ zrqtx|*QC^(P>xbOO2S#02`8>J`^Rfiu4^^Yby+Ygc@TT7BaQ5|g`Jd{To-{|YxvV{ zIDg!8YOQFrhCk#8o@8NGw2X%|7KCr(Kg3vlTC59Kk_lvb21bS_8I6grfWW-4vagj^ z=-x%);~~p*Ehg~4blBhXDoBmrC_HWwr&+{b<dPCD@NX5gb!~SzRWsMtWP)r|{oT&_ zo^2d<&vN$@l7J4UU3NT&SVfka0S;KI_krnuL@r>?R50`yy<+K*?Tp+xCJE7&Ak+Qp2r|K*b* z!2Ca$z##m0;#FjqO5?+5=Wy#r^c{mM-O$k9!SH_aw+!sLOsF~K;RB|DrZIr%!1uyg zTS+N$UzZTaNayPP(g{CBJ1)3VqH<0r&db`NaCN^{86O(hWy@tu_w1aG@G40wLpVV6 z7%6FG^j#wEjHztU`K){VfOL`h8_4rDhB5yj4QtUPWj*?|+X1S6aB^c%^nDE^$%So0 zd?kXhWP{SqFo41MY*7HrG)9}aTD$dNu0`Z;Pun5WPM)bO?n8(Ejr_o@9Rr0>|6c_k z5@K?EAX-Tksi)yS6ahvq%G1nN%oZxx>*BACp=%!74M6Y@$82PieET(isONcx?56K@b7G`=hUFE)jR1hcD9?V)l)USK-Yumjd!!Z?D4u?1%56HA=n- zUzT>KlXCWpOFX#Qrak)v_aE>^j8ngV^4_Jv;%`byUb>(XL!ErId_OpbWbTa?N(g<& zFI}EkCMcHk^;NJBBCCajzSZIKzO5^>6he>Vjhlg!Q=gNBqm-r?VE)VL3DQYNzgPOj z?C4;7_U7iM&cJ;XW32sxux8>e@x`OVRU(M^_*+Wz>G9m%TCKVF928y| zw`?|B0ZZV^1u>7%=TQsEHmF?H-RT^vrNQ$3+@te!#MMMw8v4sMO_RYpg=g{2$mw;%QNy~NR53nPABvJnjyxUzdw!-~SyQ9-dVh^4A zp&=0ddoDje3u9m4pa$Zx#bEk=^pkTqHt5$Ag3I4*1y!;X-O!%hr$z12jhu$hTs%1M z?A2DT1}4s~B(Wj1^yvUbli4b?byFW7T6CM{k6L;HdiZmhJeqLbEO4hlBy-P>mQ1!R z?!|pa*K-;Ci^kQo!3`%TA%&Hz&XrVRz@@Fp|CdnV;NQSNwXTm#7FABbLS&+4$6w9F zoEZ~y^cQq&q>MY&esyFT8XSU$ScFk~^E~C6%hnXr1Sj{^9_gJ=%0}Pr?ZzF5O+fTm z^^CPYY;9M{xLkF|zu{Bfp90={eNRio;qz7P%+fxFS<3p}zHPNSdHK zf{gP9L5m1moJv5T0!(pH7@QUC^C9iJF0{GvBakAeX74S>Yxj)&jx$DS>PMl(E%IYt z;GI7yOy$TjuGqB$sD>n1=E$gci?GPvh7UspUUonHgF=OEo0DO%p092Lc$z**-f$e}xB5E(PPfP_ z!au~(6|J?503$>Ud)f8{r`5jNE8#``$nKY9vA;4UbSYz@cCARy@szk+A2=nzSVY)= z;MZ{Vji8rr_Y2F4ZkG``yJO@3Oi(27u2-R5-zH6;HDv%7$m!0Ywjvp&RmlC%)*ACo zereVpWGvdai45yQRoNtoKKTy(-acP{Q(^o0KJ|aXP2M~zd>EqB?-yjNqHLb3D~&G_ z?an099iIC7W;)?WE5)&M$+m$W49D~)wqpEo0DY2*?=&`#3UN zid*d{qT2?p^(jjLyZJ;g{XwR>f+gvk!1k4x@7oGMbv_t-8V4+s5h;G32rNSFub5g}oWm9ts&$m5B;Lgz~V z@#z}pJUchxqH4D%LT9VM$0upC-kRX^vZJluJ>FMiqrTlt2itCy&dA<<9IxF1j`Q=7 z%-@Fb(~*petRrjyNBcJj=!`_#&Xin?2JvtYe0$rsW>}OIT789|mI@7}Hd&r*I^`y| z@fkOoKY~6zJv%sV{Dv8H5-O`Ai$=r6YOv@_g1}#arTdwhd^yVxV~VffM8m^gCXmF7 zGJ4^hOVeDZ))niIaMRopms3QCy>tn!4R(`1TDq3J8D0L_{|()tPKpDM5K>;r$d_W+ zmNugqf74$1?fIMk=}FYg3K1Y3W=?Z0{Nyr4e{w?~Cu9%@&(-z;kiV!R2&6{4z8VXK zS0-J#p>|*6WSaU|Q>kjREXP7-#}}`^kp*)KT8(r?%~q$!2Cf_FJkYXTTi)Ip+D^Q$ zF%gOY~g zZ15}}%x{j2PPa)aXyJO@kx{2FvAV%%&N))kQv&HCk8Uqj9f7-8EKCO7h4UC#&lQCQ zm1JM4{$4Z+KEYq7C2OpX6rNKC{o;)EuN*(~8ndWsSXMC5f(2Q|e`?+$fW9uUh-rU5 z9>FpBalFbLtq8X)thlW3ZN46p_%C)R0y#Q0^=fK`1!dPsd{`5G?VE*n)Og6%k!u_z z#*fuU3Yz}O$9tW;&BuXkKc#npHyEWdVN z(BDy1KBI=UWLPvx0H&9fUvBF=sq#8V=!#Kwio!T&Lnu2^$mHOvSN}pm+6Dp!H}N23 zc6-{~=_Q(N;lXqI9i3yNPj9WE6rD5DJt17R)4W^KE}!p(W1~p~bto^~{Rbl8s&I$7F`;HE*n=fz%y4Y-!0fa(O6<(R!wVWN|DX>T%-ZI6b zB4^O0@}zy=Zzm}>25z<^&+p%U&Q{*jdD6WNyNILe7EP&tT)z|04@N&d(ib;wuUS1N z_8gZYuV$M%KI&vnOQL?YI zMY$s7oE+xV*Rzjn&)^Lp0x7jfGtcnW-ofuhbVYvfH^OiGb1@dWs>AHnc?unCAN;(HsMTfgv*6?i3IdSj1f$7=>)DCb;d>7H( zKUT9Tcu{DbQNBjsI7JL~}Ta_`bD zF94ZAC$)R)w-pCmirvPam!jJO2UmGm2*-!`;IA@TIjWOdtcvM!;SMWk)2YgYIs3)E72P($Vl@cjP)U7SB4Lq2T(BF3==!QyF;97nbJ?Y2v&Nu3p#UG?kNsNlZlsu@-=UVGrSu4`8h%LsNgC)j|3zi^4O zAQl**VH*8F#krjbhjm;HlpOp5FlvS$y8N&@V$d{QR~!e1p=iX1WrZM4F1@EXnecO_vRAVz#}IZHE3uT{bP@kRk2IId)vfCy*Ocp zb^r2zU^{Rmq5&`c4vt-JpGpt0&lfn!-0R)f3yPhmSAeL{oea=QN{56=tT!~}zNRQ# z$H$2<#k+T{z^8PB{pE&4bEQiPW#Zy+Ut6jFQ;d|m^gBw3XY|C&IUf3MRoJ+chaO4_ zY)!AgxEdF}XOw+TY`v~CjF($@gdP5sP_l8u9u=0FuC8kv6k~X7uFBhR*5Nra z*yyMXrYvTkZZV?Gn6nC!1h`$&sCq;ISo(>)RLl1Z9LLq&0h&_1=(7#F8|iU_@lFwH zvG}W(SMuiIjG2nnu>&JH%ipZ^iH*0*pL7$rb9sU_t%V>m6VC4F z{_BlF^p7_DoIx=Qm)CB^>Grv_l83Z}snaU5YkY3_EakrWW>GU;QzIJ9nod)=Im~2o zPaI3`mTTgQKGF}N85>ZG8ltLvJu~LUQtOLn{n!23;|(`92^;yQM)c8AtTQ&M(t_B! z?(dgXL>C_KuHGYpJ}w81mU74oKHZ2X^P6o)WH|Irn18BNVIt>?Z__L!PTN(B&cFsRmw!pDVIMYAQD?4>14$HvaK`x;jK#7E2j5+7Ic6#=^n)3t%?X=gD< z+a@)ICTG-)P4#+syG``*=8MSQJoKy0FKh+z&k-uH1^}5R=zI@*1rD5~!V>|oBy!}# zb6*&GvFFqCZ5QBf;YD03Dk=`R6)*9;wo6Rvc%AO!PfIOhE~;| zzq8Gc`;!fDK5t3=fM_jzUrhJ|_4D3Uy@VgJrq!yfJp3jep{r~mznadx@?$NyY+ z;bqpV`>p+>Bc4^Uf71W=im4oOUijNHid_Gs_l1N8{Mv*^L+`sFP=hAm1)DP<_J(}N8>-w{q)%y5woB;z z0*!b)fWv1R0`5@k?09CgSYrOG$I2E4hG!B#;*ADl?Jqm_l~-PLmYLr&me1O;F-wL@z(AA$oS>`A~}tdeQ?{V@huo|IR&k4 z&S~x%`1lX-k?DZcIpSv2Ri713j(=z5@`#PC0}5Y6+R-jT^9_9r+w%@d$@Yk2fAGkA z=<4_EYGaM~dy_vh!{CyM0&DNMX3 z9cRq($krKe&8XJO9GkF&_;|4|JzF8P3)-Ab*tF|ikZYdzSD#_NTtCi^&&8O1!i9F| zTueDEE!5ts0M8-N`NH%2^3J}Ls?O+EW zU>+x@-Jj9xT*7nGh0tMF6O=Mx`hz@!-P@7Tg}o2kq|K6V_QjQQ;wHt_8w7Igc=`x& zJ@h(C{Kn9FB;Fa%opQel^s6SXeUkaRned@rXRvMvM8!=k$Mltkp`85F&j686oug5j{N>wJEpFMJt00%tyi#~ z9L(}FdR|i6!LXyj-faDu>?!WK>bvmn?!D`k-1JV{MTfWW!^G}`C*jQLiip{)UNjN1 zd`JLL$&DjHJvnTx+A}GBh3HKl)4IaAohLB7TbG!#-;egvSaYR=f@@t66WH1Q29)<| zy(T!?Ki#nB>zJR%QDsYThU^0egmQPGq`d5R{VHhE;Psol_wMtik zAm~K_oIoCNH@Y5a6wPd%L2_7>l(Z0%iq_2(px2{AZ^BH0}|MqoG3|6 zOH$=4R270ZhFWlUZ57y|^}NS{sG#hxG-Z!(r2`9g{mp+T>hBIzSS}k_UO7HwpI*cj z5REt|t(V@QTXHs0po7=h<9R2d9Dd61Dme8ZjLtXJzgdkVUJnh1yrn`i&-XK|kCMZ+ zw(jhP?5CQOFd8jMlyczYo)})?y@H?B{T*xAoqW>63l5_%ZH6mFpU)JXxO|rGLbL*r zdw47vOy7}ar=DBAbA_D-!t@BvIFcOX>MaIdWZ?*4RPN+r^k(DN(?BQcj52nifGf&#tIRc*bHiEj9P9l2{a{pgSoq5LWN^- z;HDHsG6H^#&*#lr!fp_^kIkx*YZ_hEl(Nv@C;-K>00k2#3)febgu3xi;~13TzGvd@ zy5g^A8NE%<=dT-Am6#+1^SuM&`DyiI@M--hnVZsvi#EI8TG6us*k6?irs~yf;t>?) zw=Gq^k>uFLjAfr#bUFhUewtU1>_*27%xKezh~J=a(L*^QA-u5)VNxJu4LWN1%BIvG zIlPv?#(vL{@Evxl6PO=bXV5XnpJ7A0G0aKmUmBVdPl=@3-dt?;uD4`=i!sxmx3rg$ zE83+5xn0?>IAr=mLc;R4n_;oz{LKIw<{=XGBIaI4I``y2U(mfIVA>9Rk23fTB7I_m zG|YB;Tru6N4d#~@8t%@%Mfe8j{ngrn;8K55^uBXk7{mI^*(d8&s@4|61c`@f2-=lr zip>Xw+N#{SC$o_u5*ul@n`n{}tXxN@*ZoQB+1iA!jOHD~0onen*?Z7lu)symZT@vr z?g8;BJA8*E!MxYqqTKG866Fm_tr3^nLQ{kw2s``jy1 zK5+Gr$#h;a?~2nI9;c$fWHor>xKv9rKPv3xFc`Vi4?X% z-jnq8pPvr`;LavR0nEC;eZkcd46TLN9xgiH4{xyu0TGM$UyQ*c{&Ktj%}f9N>X3-4pilEZe)S>ypU){{Nmi4 zvO^90CQ%WQ%a9j02*&_e~e|{>MY4juVO`K3J~J2;42H?FM&kG`MEy- zQmd0$XusN6VV=ZQ=>vtN*fCj$?Y8>GiO$lq>o?)EibGP@CiSy5zOoi=sS9xDqNT}hVXtdyN!Z*gVfvo*_Pk8#hY(Jw~Cmi1_ zA-CMBbiA#87dD})U85PrV949w)mtb1TPAou7asfGEeGAE$lFzH$05$CA{22DL&8}` zy9WfbO=WGjl*CcnhViHSk9*xy!&%`g_;D@=UE;IC66)+eH0!bM%@CeD*xFFzyWC>& z?7elylxyLo_!Gvmp6SS4CFg8u4EKP@-+6%4WOX9ZZ!Uu|mZmTS*({c{vxmB}7s$sm zQ{c*GkOs!wpC3`{8MuwAk}6tyB^}9e&Oglf=Y^;c#Y>$4OIw1Q-WGAi9efT~hZD^D z4HgKOl#yqus+4D_bDeO}1 z4li|7kA;@DP$_!7$y#}~V`qadmZHza`*7)3Gt$a9m!PUMNS%F}W z1oam)z!*nFiqa+-AG(%``l$g8qJ>Y*X{f)Ex^ws)`D|w*71dZ$+8%p%4G(KNKTnKI zwlzwsU2uMY`@!}ILo%%u!{`kqE!CYHN%oEuOU!t&X>_GS#%p5v#^j!213_K%Xfsa9 z;Tk<=>b-U1=MM6Ul{K^H8lk~kPZEo98RsYMMR;CCk;wpI#Y|It3zhD2BASA`xX%Lg zfRQhpsb3jGO6j2=vwk{J_sdlDJG}Yc3w8WNP8}qPyEqGOloORE@i|u{pr7-)tfgOE zc+@V0F5K9|Pi!w-)xOgFTRFZbVL(FE>EA79_BBzF3}xOjUS{?Q%n)g{`*Tw=HPL#(fP_roW?+WF#N|*ow zCl0ulJX^F!*FK?(4%?)i0R<^IPJv4GmwZhL&MEb)kEatV=O$Ys&||iDu={yDIU_>9R)Bj;ZX^S2r;(8-YOF;l5H>}4PVr= z`I1&^lv?`{5UwZ2kdZF9J46EbF&?(g19zJmr%$Bu8=0M|1SaeP7Q%Zi`}t;mK6_c5 zv%WEXTlOS0kgndW!oQwp=phN;IxPHL7Co1VfB2KKAQwG9uP7sH zfkr_hPd#>HF`b})$!ZL=!e0V_n zOW_QUY{J(oG60NIQ<~j2bib@!uG@9&Ot7*QKB9}QFrc>NjdroYxkzA5aDBG3p1f() z~c6d6p9#Zd^F-z%_839+?lRuODSF?Exy zsa{Ou8plKj4s=E$?q*HfH3f6yL3kl2<>{N2%Zpm92KktSXQ`LlhQ7AgA>|5Zi*|(j z%!9-S_6DSTR16|G?$ zl=(;8kd}I4<^XsjT~stM$;G6X3%I0H^L2-9H|Gxq%U=glEp2au^QxNE)-t~J!r z8F_9pcl!Fn?mL94bu9o(?@#QBFN~O!uN@zkkW=flx^+(b}!) ze-h7NF;EL?@!qT`N;+ruD)A&u8ePfya(x`rGExf&j-OgNy0)Wv7l1@>B3B@-5~6?# zg~=`fH7DP;pM|>yi-iS;T$*e9futcYm#gu^>Azeqg;V_wziE0w)2a7FADguJ-+6%M zG)1uu?^8QlKcNOGXky%$>192jJME>)A#mEoEQ{o}a;cYV%RsiSOT>)hKO*8t8jlGQ zwpiQhMjh{GnD)B`L`@~%;On9G-?~#NOQlMQM81P7!r-33*W`G2E3fWO)L>9MSAaN( zqrv|An{PO|7Y4Y}ZwIxElzI*uG?chkDP1p)9Lu$=ns^@Qh5R@>TnN zY;9q`vJ)iL>q$o;gi^rusnvem@8tD24?Sk7EMOJCqxsv!4!qM(I8*YpZXl~xz;lpj zxqs)ftF{vc8Oh4h>sj(#>QGh^=&#+g>XqYiZ}%_8uZT^L` zboWe%S(Rx(aE|~^?k~Og1k;PVJnCLWI80ZHPKdb;sD|IP5F8z)4wr=Fv?i}ldU*p% zy=?KgF%lw{LmXArB!v(A6u9DKecz*T9Q7(__dK|=Oo&aV@j=4W;L{gFX3X=$rxaGl zIp78Jk?5sR@ETLaLD2#7duG@)c5ntnP7s6jj{fDY{Dw;Qo!v^Y-dlUVd&b+Z=bFuq z4f8^3N*>FAr_M){!sg6~bK^Q}?0kN?p~Vg>>|E!sLTg`a`(m2wBIApdD$*3vct!ka3P2s1(#`6?!R0;7Wq0DVWdvQ4cxy)~9apww^=)zyb`@8C*PAKn4-ShUqk zX+=c?M}BsZ6q`SIZ8{!Q-;0|I6^Ou9)a2WKVOcZ~C)ncI_2hGLMYUny%dTeKNOWGO z#Xd~`{4aMnlrJ7O4SeaOFd5L_faLoJtXbE5qo>CE`>-9@qCrV4FKh6^HAkwYj5kp6 z>R7Qb+M_*YbArhlkg>Fta~>BXw=om%ca5pd|_;A&-@ACOTOjI57>4 zJoCyE4b7a&D_)qxCu8QdD}bu(x7aYPWhO{C>(D}HwyZTUe*Y#4kYnwadS;O>BD&b% z-WqIPjkvXKd1AKwu)ZMcdumDq;#nJ*S#NSbR&+2jajBjzMCZhGz;^~N3SzGRKJlKU zeG-DV$O%Q%Mz7>x5zzyf_Z!M;*p#DoC`q1YKZ|XVLFW`O(1A3@2vy9^mej_Q^mFnG zIG|vC@fb%Zdl%qN1IYEG=GwLr_w=rep(y}LOiN**ab46s(6^mo3%J~zL{V#!2SrmA)c##uf2{g*%-IZjmX<|`BTseFtPJN^q5`DvVpG;Ql{NMUA%z>d z7H@;Clu3jWDze@n(@%J;TXWbTt(79h@)ovR!K4n?V%4?4NbVlX(rL!~?gSd}($PxA z?wbe&W>gnFq7zc6^mpV<{=Ln!Py7&Gqq}s33MG}bkL^Q5iIM#k0uG0-pKLEd?TBty zHK?HO)FHRnq%Gu5y-Dp~5O9`-@kU)fg8(Ptb?7IqIilX> z0j$q(>MK>1kCz+C;O`5)J0sd(Pd|*=MxZSC0|a6fGE9sl#_eirm7zGV;T`>UT5|lu zDiGpzhXOr6rMEbY!n={RGv%7VU(^;AtJ}b_=x25&<=hjBemE!OihTK#k*E}$9x#cP zJ@QH+L}%XO*QQ63OLb0ZFTskZY3`?r@Z%^eVxyY8-CNAriL32n|&{ zzilBaX*s#KIcx9Z;8f&q)Bik@2_k1eu~>;>xD);llBE=PEgi7;flAX5mU)`M431@jg!VK_^m8| z?&PxV8)L*;yneHU;*6bt7)T>Q)&2_o(|&QAsY`BpO_Uvroe0srLnd>=$&6@u(x&9R zX#d+Wm=lIi(`JpD7jkZ?8d2P6F4vuGeOk+Lr^zaGu+&682`iswJy{!b9yC+=D$LM*_W>`dz1RN7-$N&bS3)l;Z?m03sx?S@Yy!@ zjoq%8AX&feq@B;XD|#;Z#vsHRZiR4i9-&z#8s9$IxWw!pQiG6CcKZPuELD;f2x_H}6s2 zRb^8+pOYd(36Q|0U}T5{1DhKjlz8E`)zV$8B`zIT^d1n6jaRmB$ks;qg;LHIJ}d_ju&;aJK9V zg+XM&J=QK$2rB$!aC6Q#QEpA~^GgUazWlcbwXQEQ51hAOS*L?Zq{-|_L#rR*!Pe3H zdSU*&hsKul>zesd8H1cu8q+*PE1)9bTU*;BMT%%AT^4-V2Cm1Dn@zVvr;)N=-Lu{@ z&*cCR^Y8~1Sw|fb?b$GoOyu34+~6Npyk?EDDRsP^O-}_B3Co_)R%%}Slm!X1OH0$Z z5mMujr~jAF--KEq#ZbpGhVANJPGunf6=@tZuK3MejEHSx`P~fSv6_V4J-pf1Nwv&y z>QXBKrl&yE7custAIuu%q8ccP1c%^lsU;#gQ>M;NeKKLfbvHGb`~iF|sDDU8TGt#{CrJxiO1aFD zFF2|p>9Sl}F|XO^TT=?A?Nj6RdiCZ1^!|ACkWg*!7HqlplIiAS!1q86>M6pf*dSWG z@ixIr5PWVxbE8j)G~)wTL4J<(a!y|N;nu{oV_IyxznP?5^WqBeD630z&%lSqZtYz= z&&Rmf;Qre7{wDc0NpyJh?n6Q);$N|ASY$FKGq5^8$L#Hh#Cg+>=DSR_2}pp-tJ#t9 zO@hQKYZN?EBJowEHDGUeeyS~KxYwt`w+?->ShNfruhRHwdd=|j###f`ml-W1O>QLc zdFvLDwve2JMIbsR#*+oS#kg`j=J#q!oP#PG%T?-tB~TNQD`$!aN^9%&JMN;E_kK^9 ziApyLPO1jJQ?sp!RVUBX!I7HwgZ;s=NIMmp_Azw%H9&GF@Y$(agb!%3O6Bu;jdwe? zs6`9}B+%PzL54}`mp~+*eI`4_gAy?8ON8ihfN4H4HZUn)XKu^nb?z9=ptg#ayDvII zr7jPClAuv8qMO+F#D9j*)5Y5!NZX3CM%NPu07DAW7FtBqWgCeh%_Aio%QD@xLV|U* z3}ZG)LN+S=`+2rEmOPu*19AG_`PX~vi$Cbt0BHJfZO4bna7IiNBy?2AW%dtv#M?C} zAi)-qjhulztJ_j7#@p-s$uedVLkl=P^?7KZ;417nRO`(kaqJ+q$r{EwAAI~=w@^Z;)z)$={Po%N;Gru3}q#mv}S z1J|xJ-tYOFcQcQO57+L9D~%662%|3;Gv$hs?ujuVWseP}&3N(>X$k3B_^dHOKEk`U zFChH!)QUM>h7^k0(KLyP_tU%OB^o0-XKZ(dy&pG~*_Im=gp1^3b>TBDAMn=!Gs8%Y`X_9cXxacFJIN zd>u9{c2Xu#R6JNEL*_~Mea$qN-c`w}#l~UEpfX8+pyN*Ng8PbPR$$TzUOfQj&H5i{ z2Eg@4dU!LOq*{d&&>1`(2p|E}B*Yxf%21l@yLZH6ST@J@=w0P%WoXtW`%fmiTl9Na zU-T{pZs>u`MqBb6hnoH>xnc(j z-D0qrpZujGXZ(i6CVIk{o5w8fM%m?nb+J9H8R-Ek@YAt;(#nn~GjR&T8G1GvJ_heW z;6{w6ve=D}X||HITfV)*H*_g4l zX&1xcwNZNBY3m{+^d4GaJ{UVB>~o*g>IXV%b3TrDF8TX%%*NTPJs)$GMB$~@hiw*@ zSD~xLW|R(nqB9BZMuKW#`5WJz>|uT-8Ae+Yw*Aewn9WC5%~y=N*!p#)czt;&j~>6u z8RW%A+cT!xnCI}uM{fPTKAyXRLsx>=DJa7}UcITZcZ$SVL}%G0<7%A$nZdHVj1N1s zc!PuR!Ti&Yvc)Nl-e)W|XWA&wOVde)_$Na#tP5{W;5HC4~G zq56Bu*aGUsUh~pee#R~)c6lIoIj}Z#{#s`Z)j;aG2~CX@m5-64F4ikC_N_SEMgw;g zKOFz@0;nR71xzS49JA5&pa2O{DALF z{---L^)EAd#+c<4Ygq1nrAc=?kmIn$-(V*`%!l}jM`$x)Ja9% zbm?+mx}Q|snbp7fmMyGBYrTA*Ne;JCs{nFjZ3YbjCQYz!^0+KE*W?E&EI)tvwfdpE z)Ri*i;OWqn&YBnzV?ceibAws^I*>EI`rjlZ z{of~{_0o(`8sR=o2x7VJQhl7|=QCB{5R*63m-qW#`;|X#=Kb(f)XhQGY3sWR|g&jl5 z>?iI8mlano5%cQYN@pqzhjy+g7|S1(d_EH7l@|CV4GN)J#)m#_xX51mmLa~@_=o6S z!*Skwd}U-$sA5%tj7Fn&8)(X{{&^Lk=v0~*b86L=KEaAP%`GHyvAnlEUK^O0=u#9T zAd&6Aqtf@uZuM9jeMr#xn+GUenjB9yM;OoDQ6H!sU>$tb!ghg+AH~N5!FXi$(o73T*VjP)dNu36kLaZO)O;Vcl}(}w`FAt!@mtvEe7SMt(_N~AJ| z)#$^|lwlS#W|h9Nr!w)5huoGs4Yu+)OiZXCVoGVk4XGFV{Plut3AbDt23j(Tiaf-l z(l^}l>IcCwmJYP<6G4{KeDAlo#>!lL2@-ss99;wj}lB_7k)OIXpk1eQx00 zJ|j|U`KocJLLi9wYT(ghfe8YX3f}o#AyZ*}^F4{U&bxJfsv%acrK`t_*d71Hmi>9jIIhX2j$Gd%sjr#Q*(1E61X`p_V_l&XamvK&f)9tbUQ3e@Q zQ6sY5g&<+I9z@`|L5_FFL-(M~VXsk#*YX}?Ntkq+o}r-dJ>_0=nogZ5ot+H2MjRsx zYk`mkX#ZK6DP^%7yQj7K&m*_>_R1&D3=`!=eUAsqnMbgg+JU_^zjf$YF_#KE zX`pk2mL5K?>G;-7F1ENQ}wR3X>Evll66*dRdzmvlJWusUG=cWq=IO+e3#a%WiARyDrk&zKE zu(zqZo)i+45+v6!$B^rb;{(#K4xup}Hm@rT_Bf%vkCs%V5c~obqb4_F8Q0Qz!yI86 z6emU0txba-ma-i6)P)KC(`zxP27irX_Q>Y>FA8(J{D$v?A2-G?1pZs&J4kXf#>PgB zy48&WJ3r>BPSYjNERL@KsX%C!S?{-Ii4|@uwl>_0K}Egwk2rmXKpWKpg62>0*b*eK zl5P4VrxJk0H1@BOGU5s$p+jj(%cVP9^hD>{-mCcfx^HA1$%9WPMZfk;9@P=Hn8jff z4Te+BA1eK~{-5s|Q$ZWAwCgNYf5JYzB<0%WfhS>P6aDOv3QwT8{wNkHY$HVT0ZegS zMGcOMJw1M7wOP(GNO8Q8r%3yV3S8BBO)GBxCxcSf=Ng+{B9SFs1a5tUMU_yCR>Oml?O%}Q7^Tjp!k(r0z; zx)uGOxavDRt}48qa0wsv*TTmmWj1wG?m;DAV{qod0j1U-dEOyzWH4M;MQG;f*K{&Y zZ%1NE34p=&M>+LfI$4BGFzRqCm`R{`IlWc{FF7Rf3Ay(pvYv33vHfwvc z!Ft>a?zuCPId{SVNCyOppaJ0iv$7cfi3M1km%MiT@5*t*d-s1x#P~li2yk}(#&`z6 zrwc;xWR;%nm*u;mx+PYE`fqXKMyY)V)b6uf@x3+TLpXlys-Lpx`Yu&Qlt(4^lKBfN$J2}5AUoOTuX>2n8CmZZ?|Mx|twW(MMw3qFCoAPRQ+3mSD<;g@fynbB5kV*aV%%rgpyiBC z_RUcs#%!U_fqMSS+a=20DrB!}k$Un&wK~_;lfK=3I;=FLXsQq;vgZc?+^Y`p-7!m4 z_{>FuiVY!~h1r+g(0`cpF<-+eL$duE#;BfX;&# zlY1Z%%Uw_Mr-h-+$uKfSg9KM-MJRoQv0RFxU}u!3Dx)oXh)KQn4+~9b{Te~uV%poq zs^=0|<@iCsXeQrrqDG4(fkW$J6O-`}2{9ipeWuw9+TAaTyF{ypk6XB`?k>2!j~G;H z12o5fNG3EeJp&3=8ryLE3k%13rE1pt(zW%k)f{rTgWJ791;;DwK1Jtjfua}OxYLri zIavI`o6dphtR*<)L8k=S%s}bTN!%cyJ#P1tLzAFuSftI zwrH5=bbn8E)UD4HvNH8G6;*d!LfyPK{HyhQkdX4fbew>`0N$keX2YVM!{BMeUMcbN zd8c+U#dtvkvCk$xE>%KMD9^*6KH7?BG6A1ZYE0MV0inZsTRcb;mQD|I9V|8u62d(m zwX1QP#&OCWzufh78dBPs$WDFdpv>B}De?5hpPxSN%oxZ`f$!P8ADgY17a90IuDFmL z#o8d^Jt1#YEw>NRt|v!(BziRj(pWPf>xydl3xhxB)!5!TtMiT1ZP z0}XuXf93USmr(-mt7uEo;(DJXK4~K znt@hZ3||=fI0EoJRpq9fat5b@Mt^)G>ZA!;4Wn+qa++!q`rXN;AZx_S&_8au9~akr zblgZtRSvut$y?G@go(jSRhTxf+D3BuA2E1-<;w4g@#g&qyW}$H9d3t8{fg6VvZx8j z!-T5u0gc>gix0946`ZR!;wd9=62(WCp99PH;#-nLj-1#!)zA9#4}Uc_>Ov?X`O(`b zaAmVucUiI7pktArUKZ zy9&Kz#SW)Od}XSp;aV&A!sg9w>mYR=>*E)pXyBiC*DvHo0OJhvkO6aJ>Xytw0dVV% z$PnR-Rv9aK^}fZ5NJ&hEZm$i5o!kGBWYzL8P;ic`nw7>W*Bx^o@vm`fF z2m64+M$!5l3~-sZVOZ(Z^PHC}TF<2szuHsQ>CztWc21<bsTN*Vp) zpgS@h&Tg6!VoLH`F@BSg9`bOd48A#_qV|yrnL&ZF_n2{<4bFvsdvm+QiO0bM5O>_k zKMWXT>kG&nUS2Xwn+*Nx9GFJqOjoe8GRVl%JL&*r6SZhi|*8+ zJE;fk6*vT2jf=my?ZXXGmw%S-G-KWkvfmzMGp{}g$lZjc7v_tEof%R}4c%~AB{`za#)+RXi*+v(;$oX~1j4g)7%yh8^@7BWLh{U3_QITJ%0Fv(T_g4J2T7J&|_Y3 zCk0WX$xpiDLiQ%+u-xb`?#~6K2!i4GCcYQhVArj~Nmt_qg@ZN1o56UN);~k0KViJhpV%j>1#E4>mM% z9H_9z5Pm4L|K-0;HG}W4cDx{;VR_%EK2Y@1bUkmw;$Sq$I?IwiNVr%F-c#~gkN-T3 z4ncO|6qh7k8gq zpOHmmTXAfXNvUogx(2UyhX~m#J`BpFjb%&Q0gglG4}W*s;jlv`Rqtj>-sGkXwydu7 zm=hwhRy=Xy@|t3FFZdJ_v=utcDbx{eZjA>Q)cZYdY_Q4YCJPGhctN)SxDxFWj8+eM zv-`%dF0M^Vt@LU;XtU0^XNR^Pe+G=8kDb@~w!~a}`haPnpK!5Je=B}9a5n}&0dbwJ z^@>ddwkBCNeCx6A6+``=D)ZS4(_!W^7+OJMv(3L*hnf&J!zv`wf%9*A%=(DDb1($H z?A@u+tSw;EZY>~#FKw0exmn{Qp&*O1l+>A)ON8STPFGiiK`+OMasAiKd8TK-!J(wt z_BMOxx*nk*WEPwj7=Pz%U3c13vV0UgR7TdYb(>}51(Zx##*f4&oP0N%^p`!YU)Tbl^e(mW#t*W8sJr}t8)NqAN3w2J77wMl5f_}- ziu7n)k2w8pnZ5eaFw%1sv?ZjhSKA<&I*4LuPpb~)YCudM;ZcE?srRM>BqrRRxz+*3 z%M7TLc4Nj3ggtQw+25jl>vdI5(0KR>S|H+1=5b^l4s1)pnG^M@G3a>_bn!wEYvJq^ zShZ}NxV_W%rqfy67QaKk&IPjrdKBy557Knv%{IGY-NT&&gq|&z8bv{ zOLMKK_sPnbDN*8-e4B+sB?A(NDWzKUFgjoED86!)Bbf*3$>nmRf0>dQ`-0oIF=W$O zsxMi@{o^eQxrpscz95Ifha+qKvw&eYpcI|i?1_I&-*Dcx^s>US!Cwrbs?cxAU>c_@ zD8#Y(UUoj%SM}Q<_N+a>;m<>+#diVlWp_Yc4De*?@HO-!K|+Uq`yMB6@?p7OAP?V8 zmFWQX2j-Ei;m6r(uwlqf9dzE)Kjtq>>IQXA+t)0Jks^(0Ba+OU@bFu8cQD`NT2t<@ zk2%~l5UwT;TP(?u#K>uj`<^R1xbmR-JpsRX{al^=Cei16C3YQRki^8F>n^eX&Rp+o zBfqBjYReK2yg^Kag;(&<$$oRhF8i^Iix${j7BIZrJZ3*2OMavVMYtSUes$jBp%eudpnP%wMq4E z)g75_SM8XugFNmS31rHYdc08qxg?Imz|!)+VVe`brP3YVkCc(O#Vz*g)g5ORilZ*Wql8^|4W5^2 z`P7Mqv`B1A&hC3c{O!|$J9K+p2!Cddu-gU^9zKmx0UVHqVH+c4!7cam z8Qrnt3m+f)g~|hk{P1qp4s}lGexA=(fQb%j@|@9{@<`kOw^*L(z+b2Ug=Q>J{zG1J5v)9t?22U)W&UZo{kmd9RHxWy6T4L%aGpL_N>l$SG8feYTgKOgu9~h<6ovf zb=fn{_Fgpq8Mat}jeg2V9$HaObDQ`6HmMv&r$MBU-}$wTBW0Q&woV9(+?)YVOP|BM z-RFy+GbX*?d4kKHzdGQ5lGiUR8vi9;m+>_QkAXb*k1KuRT7oykAKNXM8Hmt54mNk{ z?L2rZKA3xq%$M+-<^siGWp)Ss`n5AB=EKhR+^fwf=$k4+_JVnGE7M2UDxe>DZ{ZZ9 z?2_>hEh`AW+lI&5*7bIp9~!4xD)NAa-WvAch$vdynkSvU{DZ1|AKNbQ?Lhg_5u8^m z)&)PQcnD@HMD)jPlPmn;@4e?g)dnu2Tvl_PKY!pQ;HlVbP7ZU?7f$>C>2^SUgimYR8Vya9IvgUMkbQ# z99NpxbA&`<82&!Dju?T{nJvUmVkB>?M2N8eK7$+ZmNiiqJJnQc3;g+Q6ybKSMeEDW zXYl1VOeX`9G4D0Yy(-Gv?lW*d8?APmI!f7OMJjW^gjj-J`iJ47@C%@%n(m4?Nk_L< zP`$5hGiU&*T@>X%&J?-BsOj3k!$-%pN8N|^K0KlU*{?o2np*2zoZPajG^cB%c=z?m zV6R%O%Mcu|A?R7P2V#r&I{-=0<{X&&9f*~XDBi=N{Xl2SA)zc!Ywl=2K7~HhWxJDV zj-hZf7NqH6O=GKAbPYaDpn~Q@SkpzS%kWfzuU$W%kiP6fjcy!U#QP4~0 zfz%m7o2@eMd0yu|mPy#r;nLaX)GSTqPhR0$!vzmqVS~WqY-&(jj8tyiub(Cx%Cc;L zzVvzQCY}2x^v&z3y2jNxP!b~SjU3fs#jU$zt`!7MDE1H<~U!U$<556vyp=o`#wUlQ$XW#noIYRB^=%+DngwnKBP|B*wmr>{qvN9e$xS@$(T#brYS4iAWZ znKDP1s951g({DOCNbkD|@(e^%4c%#r#DBl<`~y#|YMqUqUO))ISP60tfIh&*^yR6#!1?JY zR+|ND-+Hk@f^bx?%({7fW@MUlbN%aFD7a7s$elBUH+Fp{HKEHsDAn zp&jkFmyKgp;4ipO`IWn`8DHR8yLNxm}TLhbb5aH1D!M)dnpO5Qu{%2pC4XcNyU zKA4COR(n5sU2Mf+IUCbK{%NKHu1q?x`KA~^bs?FRA-5A>aoS>McaSx{FN`U$!>B#; zn1~ZQjEUJom*`vS^RmVo_JO}#cV}(NW5WGYR18MIK8iK1(5RX%;iS7T(FZC2YdWZf zFV_Q7;Hh_YhrP()0g)?CYpG9G{d2#$-|;DfIaJu= zLZf1ez6BEx1&h`>7_YRq&boXUA_zYTsekJq8DGB@+-9uqj2HNza3|)Ntn@Zv{^D#e z4BO?p3v`Hj+Cgw2;M#M=>Jg) zSPrw+x(uX9*59n3zm)5Gn$9&Fbxx?DlDyBiq6~fkO#X>(`Ir{W#K1=fq=YrCfNv|w zKDOUuPN;nv`-Xk<5MR+t|-LErlK z6_HLa7NK+nXP~3gGK`y=u~+cQ=x3++V#b=dH)nbKj3yvLDzGY8G79^+YO|1o>+GN< z4HE<)pPJp@62EyPaoA;bcwlT||a6`$71Ib1_W3SWJ^|H=c2 zxI6X!5v<70C^4PxK;L=T(A?_Nc&A=|;VokZGCd4N;6Y5@6B+v!I7e%c&Wx>{T-sKq z#1#kOcdNtorR)OO>Sy3WOpSW>(PcCz8iXHQ&CK-PK70JO_4S6NoRlD1-1_f2u8qz@ zzM)CbE=7>4ybV8-%L6XrzR2|T#&1bJ=nC16UcUl(p64kHJi-N?J3D01bNzEa350W> z6-6FT=TLCny)X1$QpSeK=o=m99s9eNn1oO}KLFd_gF*-s3h{!J!AHZ%}b6mntH zv`g;rR13y{Bb8JxA-_S7t^q5Wyg_fWd~~bK9KK+NcVyiaEZCWgDa3e==+Ha6$OrU| zqu*rc48xcCigHhk+#~(1ZiL&ldrz)PPdg@@?O71H9aab-s4_0!ohSEh|HMP0sTE8Q zW+=_^V02n?7e%z1py{H!2OVcQJ-nB&mGpas9%Ln7oAc8}qMgosORZ}L{xji0xN)cN zwP^2%-^(ZYy0327jJg;pZk19~Ot^9{{eBbrXo^ZJB}a+8a^0&9FCI4=W6&S*eT)ba zlU}jsI{h(J^7S`;@qpkg4fSw z*v%V!)+$8GvuU?WU?AS@_Nc*j%FiiD8*kz9*giLDGhICe!W8$O(Wmq3>G(mzpA0ZI z2Nmb(3+atnL(Z6K0sNgO8^W$c=S_Z$tGFF>eY@}9%N$E>qZK~ScR;ilN#oX5AFix zUSd*x6cZBoo#sPz3k)TB+SSj%)ED;sS%n?GK?@@eE9V#1>xT@Hou6H~7woW%{!p%w zV$Nt3hT3J0yC+Pk|bGH3adiRu`) zenMAX0}2f+#5ejUq4ZD4rpw(`>JfyCrIlxbzzDrJ50bb}=q`aerzLLrzJPIJI_Tj^ zk>t9v9uP0?EgbeCE#RUkuiGJ=2faTrelt-_rD|0w^4&E2P3!)fP0$_rn9ah?1(*99 zEx*n2!cL+!b6%^Qtr}1y1+R-G%VzI8)maEIGj*x!$GSAO(8{G=eLPZmqkNJYz8QY( zYvjLMbnlFFGwvOZFQ*K^OZWiuBRY-5zr0%98K$ejT*RT+(;wUNanmn20p{9+y!N&z*H4;BzB)XSreHtJM+@nT=>B3Mo17#- z^!g!BC_6+AY>ikcWNNY`V^4dtJ&VK(JjnAoBC-1G{O!>6lpxp@{##5=7iqSF4ZXL? z#d!tinJLsxM~Z-Nu1_fpq@uF?Roe=h8?FbJT5k*IaRTExU+zz3o{wv1Tol1GH&*(x zYWh6-6Rd|kqi>e(ZM4g{x2X#AS@$!v2BMB$|NH^1PbU+cT^F)U0UEzjFwh#^`~p5% zhlqCW`am;6_bV%kO;(7*H9J@Hy7jt;*S!fh=ha>r3!SpDP?mA;+et+sU0TOCWLOBP z*BIrdIwbqlc)tL{B2)YUmd=%tRnD2Amdpnp_$k-i9fIH?^r^Oes=FRB5=HHd22bNZ9 zmnsc~$UBnD+yNW6Yf9BaefZ1%|HJ|~Zn1bTWVY1V7gqEfe%NT*FHSfrUSavt(aT$IWp5{aXjQwm+*S|5*@0DOo{_}Nn4+&Ee()Q1B(+L zo#c1@U=KmkcgM&5HZ93R#7Twva)@A;mWRe;?X^M2x3 z|DwbNBh{&I^4(RQ<|fA3WB4p}ea`wrsJ1ZiMS6Pu9Tt3v|faVr}{LjQhHbbXX4LChubY<`8sxIPuEHBj5{Q zKB1@%qZss%TP1l>lea16O;d1w@^D0BRn$cRe1$ZeGIA3wcU z@MwoPBH-#XcNb!C_>%d}fZBRUNlQu=8vU2Ri|fo=I4QVx>!pG9_*Ueh z1vqH2?=a}|Zr*MlGt1>@^mU8<$Cv(Xn^+8u$J-H5@8m#df_;Mmq_y-S-p+F7``&he zDqmHmT|bV43Q?1lfQ+Bc5^7gX#vwWHRG?#Wkb7MNP&O^z6Jo>mZ$zil2TtGWj0<7v z_~15B$cOjJSLTG=63b?qoegfigsn&bmHt_!$y-QeL+kFb1A#asG89heGQgo<%zP(u zMTh_AUX?u>>X%c6^37BwCp8%qCwTi_U&qI>kq{Q}rO6u3>V8+d`mI zyVw|hrVOm=L4}P-0mM?#(bjVE=-0}7Fx&uR_2-{s%sQ-6Z87f8G%SU)O64cC1?z;^ zNpJRxBP(L3W>GL#U2i}Abk1YT^gy_~Cby@%`HHTmy`=Mj;JCdoL3dmdt6Idurj!3@ zMb%gyix8Tj^a{93OZ&0KX$|ged0GTh*7vw0*jX0FtX`B^xiW5q*2d*?k~^41hs?i* zb-4dpZTOmB4aB@p&NP}{?N+u2l<1~TL^ih-Y`3)79DL|j-b~BaB)bv3hUP|?OkEs_ zIa}+UDT_Cc4CkDb{s2(@hV_5CY>`4W>E+o$ChGK4no7ayoz!p?RRt?BHZDYA$|ZJ# zVyb_9FiL2B_IQ1YVtQ~yp95T0e6FPY2(tQVXI|{ik*}G-42|Qg@}zF7Lr?Q^sq%NL z-%|*os!%0POiVVpv3Lz`Hy8abO)^#MmVPkr?sKN>E%0^3TJf{kT~i z-S9fYeBCLF9}#MoD+5v(3ZGLvmN2t2kIma41(*e#4|qJN%ebgU+z@^N-E(z$k9I2p zh*P9q37}INcKy&ctYMVJU4_`(!lJtN9_1t}+uw{cFg3cZB)$6dH#iF1GF+R|>>j_PdV_?hXA^&|d21k+a z$tAgtbWmwnx;0P%-a-6&)svKMcM>rD_EnK>5Erc!T}tZyrt-yEidZl7QyA& zngk8CYvt&T7=?K+mxjR2t^MX|FLIC4hY??JpU2*ur{yqBNhJyo2yav$*auDeX z!Dvx`$)koZb|n4r&VknCjN3jhD7ECm1QRGKbbm-)`e$LuI~!Lg5POSV%U6SRaRnb- zN!iAdgeko-f4sY(dsd|niA~R2d5`eaS3yo11iHBU?QMU}+fS^1zt|X=J}1>*X^ke5 znweO&jotFNEc98=ztrHHxYh&N7jH!0^#>V^W(Q48%)G!m?h%=S+zP#bo(H-dgx{vyv}F>cKbi1eH8sfVzEVSemlTg<(05K3QfRI=pVU3 zJIV*`xPVp^=ex#m|Kg&u&vHoZtjgELR{uLfE2!|&lN`2oCpxQQ2!Im-51nSfe6eM(5c8eN~(=bo4Tyt{e3y{mAowZv)T1Y&8JE2s7#Xw z?PDRpUMDU}5dBLQwH_`HtK;E&$ig%U*`Q6L!Q__d-~5D zsPDZmLqY%BD+cMu0L;JaHUE9&f}eE#Z#m=8o(GWrGtJ|-9N}_U^w4!p9rbH~LKu7@y?xp$dy@oh*{aSi6S5NBi)P zM9MqFtS~K>w>LQyzzSk|1e9f%S28~l6|C%b^=Cmjm-;`XhmThua(X^`yiNqaQBE}e zSFvVWsM>2tG;RzrTO1r?xEC(zM-o6_sQA;=#VL;g^$@)n3 zjCxQX*NT*v|7qiC+ZAL!z@s7smGiXiRpiV6U;F5vbfJdVlfU8PAN}y0{{IT|{@)4v z^z)WrR-;RpFlt5Z;m+!-axVRU*nl$qJwc5Fa#tm7%v&$9tG?OBiaJDTOqnZHiPT81 zYf2b=uKg5KjxCk!V|SGM5pZi&^PS~%A0A&t+!vSKM;=&SPXJ5~_oyHyO_RB}3;5%O&Ezj3fm|;9 z_BwE;+xmn#$oI=cf^rZ4+eGHYM-!wZ28Ra(PZjG4%wuq5-8LfF<&EE_Md&tOQa|Z^ zOw1gH#d<75vv*$Vm*BG180Q$s6VbBBo!F5ipkLzXeP-P(3)Fw2mmt*}N;uw@Um0aB zvhew3U$61=>_5y z*oUqW9WB@atx&IZiW{j=mjxKHWP_*4vv6Fy%M!Iv(eo<5?Xhwy_;kL2vNOFzo zCdS?|(q$Q0U$Ui#ogqGxR8_%3lDcbiR93EA%;+pg z0uN@bosG9wEZp$=Uv=1CR45EGSBcz`jMRVHbJ1$9{dzYMt2=)X@JH;T{ASLfk}*SN9^sM1bk z){Pshtm6^$N*Ylqzh0V;J}OKlQJ)63$GSF0EOKx)Y&w!T#>9Q9&s{pslRsuuy=LwT zo7L&OdNCH}Sgy$I;LTaO=f&sNI_4x@Xz9$vb?mk7gq!fO*H{)YqIo9B(4 z#)`N7i)**)4eJ@d{T1Gyg1>^z3ooIub#`d8@)xUY%|~8S0ZQ*v%z7jbB~iyRZY=4K z0I61b01~<~$0o$LQq=|Y6?q$U9}32RU(UrmeZ10YZv>)!FSKn|^}{Mv->TK|_y@l9 z&1~0Tk@6Vzdcc}5tU+)UpL*d=eNlRWEYA`|Yu3y#jNk4dW6hpagfYDTGeL5;QG~VX zSCz5o+6TTVmbiTMw#3q(=lzmpOrSwbFMVO2n^tFAR?Ah#*<=2UGExmxC%!bQn%eyq z;L3VD^2!N!rXJ=fBc1q2@S`$5fi}Q<|_s>XI3);X>Q+I@Zg}(myHQG;;$7GH}&8!mL8_bmjU~of?6pr5~oZnp93*kL1cb8tN`)j|yHkY)` zD7}a=dBcD*yyv-Tc9vv8|2UVbewkEl);=|T=@mwzWX^*tRQcO_&joVyGyTIzth&gA zXR1Vg>^WVUhQH{|d<>jg$1?r&e6tYkefRK}6-#l5*i65L@avB{!K3t^>3Y{)Y|WkP z#kZ}5gQk{O-^|YWuvx1#Q%`z^RpxOSnPwtIvX^}x6?&O=VQ6cOyGE+a7i>dGzNZ)R zgHc0(fmT8AQ|=e_o?JmZoco%I!nZ?bM_9$dGQ(YLCaZ_Vx8;QV%nl7Nw1kI=9xOjf z7y7#6FfDcdrVGmZW-D6!@`8vh>iOZP`3H#^PJn{1c`eY!mzfY=YBcoF`NUpJ-EjNB z4$!b$=cB2fyLYHP6Y{Ciy~~@;XDicS!!{`OM$D`WEynk>m;c~*%hx$ zC2Yp5WvnZ~+3e(#c^AgvLxQ6kLprehXvgw;#(VpngqWb7b_WDAzqnT%CV1Q-Mi#3U zn((68v&q}olW#+SuHA%CpE*_VphZt}dLj<~HAcKg<{0s6$8sO*{@Y78T88=bjPa0z zp0>7}A)&0Za$b~vAk44!opSoMzFxS%Gh?yUfr`ar|BtqdhT^=xMGo4X$i6#ai_b_k zB-IxQ4$Vaz_XL;Ke2u6ytd+Wd^`64*=M{LnX##lC$4gyU6Fa5T^P_~bN*$u08A;MM zdh(r6a|PP{rD#*ZSi&hWCdaJIRPlM6rt>r)qf4RqDzLoymF?-(h(~Q@7pTZ3c{z8t zXQ_pJX{yJgQ4`XZT#fIvsK%}!%GaC|@YG8GOCo`Bo}_9nolY{2p_15`cTTIbkokVQ z{I?C;?`0yUKl0WG7G4WTcE|cJV6+8e`erxY}KWsapI#lAK zIPTt$CcBza^ctQ*dZ72F7(A-vq(lWfY5WH12t99O{@e`loIJ2?ZGYZ|PxF1u??6c( zJQudP;P!N?U9_%Hkhe0tR$IA=9@pyB* zwCYgHAU+3oPo#uw7^os^iY`^l9eiS~*mW;3L#s2X!d;+FPK=Omipb&+SaHu|D>HI1 z^rMTYw713iWy44co%CbVbH*Q|BRySTG?MG+SKD!cm}lk@od zfa=km=gO@%(1fHfOkGoI1?>DiYH^n7t5EsJ-51*6?t}*&eA40J3JKEX1~(6?5@q%Z zDSNXk*}joswB1Oep{u3{iDow!c1x<<*Tgg=k|s)nor1-sN=iaAn-msZCeR1AG|=}# zfd#eoqCOIfV0UM}p@K|p+XZ8}!G5c)KaZ5sMtZX*WMJR5*r-T7reA1xRiW7v{mR7r zDhYogr2b_7(+AD*_VVSm@DX2<(eXZyImOunHlwnRsSkt1?B8t?8n~Smc`z3!m$Q{# zFD&ClF1_|`4hJg|?foH<(Cz0r#1@>E%^QDcEpYOHU8BFqS@2lS=ffAE>;o1nQ^>8 zn5NNgLHlA>vG4nL6Zejaa!E47Yd>zN{=2hI0u`E39gxAuj}pVPICqU&dOGFM?5w73 z2^f3n{EV6z-9KUHlj%lZ6{Y$CO7-GR6}<-3I!{Xq*>e_MF>iZd>lEtTnS=m zxvWf>g@w{I>K7zVwXcJfmR8+{np@2DHI&vH^MH831cv!uCs)dd!d$Z9@LMTuBSMA&PNR zxq;RcTj-9`?+Ofo@ijr%94Y8@WBBSC%?+5NGmn&LIl4JJ7Mc;y*`O3#(^Id{$?Lj) z1`v=egHkn{J1JNzgE!=H>sVUL7Z*aO$^zcm3`BAJbjDj{lOKBJ5De?EQv&#EHVcvX zH#W9zMF&;CwYK(_E^P2-cVzLdTdeFTNtmJfDuZFZ8L9t^y|)UBqifnmlMvj31}C_? zyIXK~7~BVUOK^90x8UwPxVyvP?(X(ap7)b|wy*zq?{&~~_4IW2np#p-_g!n12X&IV z!bPY_dajt|MX)suRy*GbL+d?VP$MgCViMTWJ+&F+?D!RDLWVB4IDM^!jp4Z(L!3}7 zuY3SaVU%Vmwqvj4TcD1AVc!4Lh)cd)a~s-$m>K+;Oz}>kD>q?8#N#@f770qPZ55j% ztuzpwVWi)!3@l$&*5FKa_G>;aElX`aIktFr>7PTBb0qyU8?8%s^~ohGQ$)w*z&J!l zVValpmA0x_2awo}CjJ5~ngi`y1JN^VH$GTG)1hg9XUu01TISM8k*zP;X!al2{fB8o zIA+z1RozF!3<)3OYZ90qyU^IGp2B!Q(dIJq^{nyS&OACpWuG@l)-xE<(S^SbgQG!~ zo;BW)D#cbvyuZU8w}F6hoUYiblgmwHUAL#_4y;vO4Lm^$bswQmD&@5QWQf`s!+pXz zm9K=4!UDT0M@C@Z=BEaxssj6HKtXeo$k~MZP;n-w{3D~uWd08c=-)nkt__jTXKeM5PMleK681^tOGnxbDYZcr z)>hSu9#-?t{{1{9CFZc@EdonXs1UJ8ZoHdnNz(+A{^Y7MQ2Kd~#JdZF78kiwu`+P^Bm%cRJ@ zgLGtI0omNxZ!5_bT=P-f^ARSs$i=kNWzyZu%dC&va`xPK(E{@Jhc*qe2S!_tboCi( z)nrd48+zep!u%McaKic0r!sQ%MQ&z@l^IH>@nkFaBa-;sGvwNStG7p3QYp+fSgz;Y z?tQ^@+WyBD1I}N@ZYmB*6C1r(OYTyJ^fkr1NwKSqrW0!2lo9Xh%69`1@%&j^Vrq-8 z{RT6#po+svxMqSF0K&-t;)^SXee5wTVG=P~ZiaE`%w{=CjW+UfX+{=LDW)eXrORgS zz`#E`SY~|k!{vadTKS&^j}qDz{Kq5=Vj|ii)<=nhsWmcA#Dh|YO0*iS>xUPJ=f#&# z%-2eOT}J5zg^v=6r*6HGHj3uAWyXfubLT6Qy*aI}?$;tkqK^IoSj6tzC&szzZ$yJ?%tg)ZloPdbB;)c8fHidGW+)H>7M( zMj~LrA*P%d@PQ{khu9>4L1?FqZ5Mi$@a_J?T4QqPB+H1T`Ho@iB@w+DJBGfN9&D8H zb+$akc~9kq_mNxhobOq6!2nJ@YLdOqtQg+i1J*=Zc(zlf&Je&<=-ITDp%<3#Sy1`& zg(oq=#xA#`BVl`0#QEI1z|k63caZ4Vz~N$rCN~u@FtbIh7&ld*QC(o+ck}HWBos~` zeO(OaZ^O?{J8VL$)8>Et=JK-^8aoch5r0aI9(pbKSd>pu`iVugz6f36J_f=cecT;e z8-?p%mfZ-Q{{lri6e4m<@H}_vN~l?H8ie zPcjVWGq;H{zWjzZQP1(J8Eh!wqqJr;b!e8XhpMQC8qQo9_`0(Q4rz?Zm7%gue?MH?s2DEC`P< z-=!$AcE9hbu*@iaPmCOQb8vuWkk4+MKqmimEy}~L%Xfze^h)i%F3Ygn=A}2%WyT)Q zLAOl(pS@_TxLST?OtI$>3wa7F|$Bf`^+ zjiCxyR5-qPQ&cT-#t~)$Q@qw3Rl+zC#y8g@K4UQ4_ycU`@h|zs&9WI~MA+AI-MS}$ z@5D40x_VNaCL+TY&b*M9S}evqx98`W|^P46%`7N*3;^2l8z9Uz3rqr#5Cx<%=FA9-5Sztz3_j`jR z)&uO6r6tYD3vLT&=uvFq0z4Liaeh2b*<32O6{hSVb{{eO8Owyh=^DIn!paIyvL(c` z4#h=G9M7CqGmJOLdii$kQuX)Tx=B-ZL(G@v_mLR30Q60tSA-RB^J zaQ*YMM0V?!dGE>*olt*jgQ2{np*>$=IGnJevGVi{mTOK!J#N}=D_#}8hyn1>3`S>F zuE1(r6^GSLf;hpXI0p~fQva{4Mimf;dB6je4U|Sc^+=itxug82wKMbG8|LcMe%g`7 z{+PVMjwWU-1n&9S{bO`UjF@;?tUb$Pjszl4yd`EjFaV;+PFHWxrO2tMf0J_3@biV} zdxiY~|Lk^*@c{q0=y;N8l-o7qov$Vag~X6iH64C!XP*a>9NP{*jnQzU;USf%IV-bL z_NG;Ui&p?YY-AY__qkyQhoun#af1ANMHr-!Hp_XXq6OFjq+Gcv5dp@Ih=Z-Pb@&{q z9daXlXda}7%{JZd{p=`ub`sMPF$GvJq6X1uvM-o$c0Of|D#9$?0j*tW*ZsCz+}lUk zkbH`{jxo$!4$cIEVu=w;b&+%Jit;xWxGtH((*E&kk%=$l7P+Mlp%KK$pFTrQuAWe? zZunXFxF1SKZeH;Q>(m<-Fy@<)wpgc(?e11^A~)p8%-(e*i=M`d6Vk?`);qcW37!>b zPr0i%LylclAf8+1L`*8h+-;yo${OiS0EM08K>k4^F^h8F^< zE1IMKm=|d=-dk#;vf&goVa{=W#jzDP2!=ygj_37sQ> zklst586kP+s_1f0Z3rF0B0*y8V^Vb1+PbpR2yKcy34oPdJ$xEJ4t>N;#e~h?g?>_O zJ6bBSHN9SK=fs5b@~@GB?U3;PH!7uY{E)n!(nD*jAIXT1JRW?z0VRW0l%C~&`=s#q ztMD~4bGheLd3gpgtY6X58~%u(IQKA3Qs=6y2+8V#eat4I45Sl~aM*c$F0N?~(%}mr zm%5}()G%(2BUuV+EWUMyu%90-!q^mhxn?r(r5@JA7rp=;AeHnZC+`t`ZfBKpWR3kt zcGA=wDwAvEL~E&*)>tDu$-*fwFx^^w=TBjtRn}0qXe-or>W zqf;&@$Nt+QiWnJxu4}4}AADOcZKV3H@k_@_Y$)-&0eacj^cIW(dLxt)B!$vFIJvK* z*kJ#ZzV0m2qp`BG7!J0#{!191Sp zEwu*qA?1U|Qd%p{<#hWM%FlHLM)?M1yW+rv0Cvj-_34#N0v@qZ6(=66k_{d4aq*a0 zu;+$QTyD0Usra+moaFU0<39L;m6fE+(UA7UFS2OW0lc9I$9i9^<t)lVXoLp`$jaBkjs zgepczw9l`&wBr?aPgm5a(yy#Ov3-ys8E?&rIo4|(W7nl7H?DAC*munPO+hi1Nv^?Y zy(Mww&1R{nQF-G~C|Nat3pNd+qc>e~pD1UhRzO2fD;jTb(cl~j;lEcE7UCV(V zUQ?IgWh#?mlEB(Dy(w5(hJ=AB#^h+u(7vyNstO*+VW%)}y7^mvUH{xPY+7GK3h4W^ zqI)uL{$A0Dj{iX-^=li^1ywk+W>e(bP%WOwrM-C^DG8((gl*Yp3^7HaunYdAg1Wee zn8fyAzkKK8rY^}nM{v9}cbGCMDJ<)9Ao^ax?OQpUoVY;lhkv1;=LS+5+Gzr>Hfox% zVBxqjpPS*1u`w(+Pr{O4MD6EQkfF6>xZ-5vv`$lESY%-W6t(cIqRyvWMVzx<#9#NP zFh)g)I}=TI>^O?ieosK@%d-w@A~H!pH5jB>cV!CUgmu?R2sggnu`0{GZ;onD+(VZ` z%0k==!PN}Aw8Ih8qnGg@Gu9NobH9Q5fAI|zZ7at8 zEvb2o;^o~3y3keLSHVRLm=Fjmy6l-JElV{Og_dc*Cwqx%Yth)`CDT4!+8SmDzn_05 z7a!W8{eL|V)Zmi$a)I=@mc44UXkpdlED^OFc(Etc#g?U&H-IdCp{L9u z0Jj%?2CS0&CB~GDg97KUkbz*o1FtUEOXL^`} z+HX#5o0K4ZzP*TyLCRxknS&of;!*I0Cq1A@`jV0p7lE`;_VP53`>q{fzL_X;M*}<3 zA{-;ncPjmI#FzJ?=PT+Tk@3*TUZQof$suQNjL)L}1P8?Rw)hou7cP0Gm^DDn5=3M- zg$F6dxs00cxtYlW%hmELKlfJU(ss1$pCUMG{lhg8X^`y!LsW&F<5J6xsw$_l@N#@m zlCW2ju;dPetyN}l;gwG25nJEW@oME)tX6)fjJ#hyYbO_EiJOb;nID%AMA+1dy62-M z+xp5+VbRa<#cxVJret}FOJ+pSmOhH;3yGF*_;<=YN9;;`3ji8+(`{YH=9oDI!G59R z#MKtgMlG#p z0v{^}>yAhd=PuiKj|0lr4VQ~%(M`#f@u+8y%P5aiFQg6<3hKjoL@jfIo3Cs1?L3egr5r}0b9W$~A^%{_v1K-RPuy8nH>6hcqdVAa2j0ih zJd3=mp1^;=#uq7RX6i5+-7c7b>sJ@)-`^yr`o7;TYQB?K`lk%Xt2%zW%~$pculUSb zoj`@x83Uc60)ZY5l_FQVj^)LL2B$D^VHQHWBer?plCtZ0IGzbg%MSncw!X>oa2B-7 zs>Eurk}c_uAX>)I%LzS99svt?UX+y8nos@c#T4;Rlp^a(WC!pe-nb{JG}n1U&2p7> zEq^A@YLX0SflMb2bL+94B z!)oNwv39BT%J1p^4WRds?YC>haMgZvSk=uEZ_R{`0W)HnF;V9^hT&*r{S%Q}BNp}U zA+vxC;{o1^m>z8AaqR^~N0rZ{w`j9dU)$Xn4bSI+X%uOU*gX+W(MuHgrptst-xI^d z*$^A^1ZVKJ$Xug-PW3@$-WBG|9!1NKDkj#|9vJta{znjmWNlJkv%;q~8drR{pK~{1 z0Ytb=#Y5fP8-HxBUc5T8BJ-NndWWKaz>r8sfL$;W=KT!bQ`=<4uELbS;PRA0HJz7L z1#tEd10gim-{MNn(c6FS^gDy zDBhICHZ8tZwjaG=Z+nQ5*gdUuO*dS-R?+JZ*^=UPApk)|v7tR>0S~&76)`J_kJZ(D zNOqb;in+0+WsYG({L08?cg=DzqhPAtmgWwhL-}6CX9JRd+b=v$>cz6eP0rAzC}|-G ze-7{VcYy@#_uE(}4M)7gB=tIAU95y@s^Wufp_ej?B_Ku&&X|vC7*3lbVUx#0+paqi zt>Kgl>A6iLT#RHY-;x+7hX$|YuoI&(X1PayJNrdc zl?LHQqTZ+>={%C+q`{g-{H88bPZo&^e9XT)Epg2M0Zj-Md?s9|-or?j4e}y zm!lZ1+~tUzHHJEJp#404f+_YCrD00SI(uDnL6hrXfqmAb&E(SjSN;rzp9V=0hfrpm ztLzW2vww($1uYzmxcBYsH(Fpiedb`Z^^8$A4fYknsKletPT?C3a} zUT*A<%utQ6$(VDk9OZ;vs~3h#$5d`Cja#W#a-b099_-Zw`ETCR*~8IA%4KlVB(Xv) zXf_%67}8+i-lEG$3mtRHy%kxm#Nnfx4(Pl0SunrNy~C-4Hj)4|9*DvtFeU8zEsHAUYXk zoDizT7<59b%-l=(X~Riwp@1~6bQdLj%8`dPsrd10%^U zUI%e4`QExx+|>$h=E$^+gG=#CO=d#Lg{>w0Y8Fkfrpp)(8&&&u^S#6Xez7tPGXT^Hk??1}3a|Sbrm37snG~g6b%HhCpuP)c5?zhuw)55!e;?(O(7r=GL?!d zA{!I_{oy7i+p_R$Fi+-S%pQdRk>Q|Jw;E|MeS`j>-_DfAe^fp4Zug@7y(Mcv%u*!3 zsxFNcH>tqmSRS|9>`qG(9LtImP^zw24_*b+ctGIykWz0PczmWhN4h)>$;;WKK2!c} zRLSbirL5QE4}R~p7BxE#RZ5uP!NBbpiX;$l(=5{p2);NQLiEBhoT*o$oI#J%6CF!YlQha z=qgA(3!I2>_DaQiNo4*QrvO&%6gf$mu@~?7a5$xCBWUmJXIVDQVAHO9SY7WK73bYA zcTbvY73mFV#LUP%X9gp0Bbs?n8Y&(dqmgRGYHNafgRgp@3qsu!cwrN@@2hP((A@nZ z!JE`xv9&_sXW}=&C+bB8_9U8+R#xR$iXrl2korf0#W0*niZotDO7^yaumS&Kt4H+A5CO9gl zoaHBF=d7F^T@cJsT!_ZI^K6(#Y0vc?o632W&`e787-f-llK*8gr3_bAZm*pc>`4Lj zNRx^}t<+~$4Isl-Y@0~7;5{sD^IuaAI z@0IVJKJV9iji`;NlyCf8M(dt*bk=-IpilX(v-RK?T7(zyl$jw6mxifaQ-eC%hlUjUKKf^C@QaNS}G-i!l65| z1;=j`Mw$BJr7Gh6=hP!7V5{nM*R(--)`iGy3EnrVfU+@EqY0X4o0G*fQ`9S|;vzgF z)aM>e%F~qozj}EQbBU{%T3qjb-q=Y zH)0DH-0PwB^O5Ly7G3yegim+&TU66g7gBDSxXh_4{YJV0d;GO)obr;nMRZ>7VJ#ET z=)4jc%_<}}Uli#fOPP!&nH63dQ9Sp5bYGQRPx*GK?bD6qyFaNd*vRL<>cK}1>i6+B z1XZ*>D0IpTC7bRIh{?w;3S8oFoA&V^*^Rz4f@hAVEb-~Tt}Yo29ad4V`&<}Zp=*!P zSykW(#n_AQ>6)*Ks&n4QM{(9l&_hPIr`+>rhffqf38KRQW=03HR8s1o5klSR)QHZ~ zHN_X18BksenzMkvH*oH)V12Trf~hTECXicXGv=}TcOX2&dh^n^2}o;h2eg)XF6l)s zl9uB54FRMd!~#g(4@249nyk%c z>r@%J(&l*Tq@D|IrDdUNC$)whD3BgH9Wyy&9ND&?LxxIl9u5RP zo=*4Z1H8DvX$SBxZ~rqSvl5Ss`NU zqI7i%x8Rvv`;`4f+x6*W$lILnkFQU_t+Uv!+(+wscH76o2SyjOMoVtY>1UBL!A6u8 zW?k&X(g>A<&M#{1GsAhw3w5MwMhlDcX4&3Q{~XO0V+;6rU08vd?K>{~JASP{5WESD zCJr)2to!7oRuTU#$$pd4Z%Om$?4mJGZz`xj#zS6>o&_lX0*cPQ*+~YH*)_SFSn;w( z)y=G=)dMwCl&97yXKLc>yP``~QE=H+s@9P5Fvfq1Z&I!`<0B(XTPh}td8k=9C#0;?-fX{QJ+ZB>cZ(_*+_d>ra2(F1jxN zzDjOm{I_=h9@I$!|5Mk0&+-Mg{)GH@8KP8pr2d~@GQ**FhW+=Ykccn;H@E4a>f!j- z1dNf1&9yPOYE~lb$5xcLyAnaZ%mef()_c?4+@wCMW`BKzbmbG1X4b5&LAfYNIwg); zogawm8YO)x#&CM>9O;R~-@l@UBh(XqpI{#w)lGqSvsiBo3Zz-E(!u=uCu2v&!S(mz zDn8cy=#@!oSNfO_vSqd;$AW_TH7PrP13#=&li0}Q;qc~5IS7)+GWFpGV18@fLuOp7C8 zpsU`w!@p7)(f~J_c&gOPgqKYQwO-_1CjSDyj3lvUA@L&owADISva@T_S#0Y2j6KC?ECjTS(+O zCm^eu^rX)T)srgh$AtpPnH~)h%gnHDL)@+1hYIBdSfuY#kkiq-h62r*GrgIBXcFgc zIJI@c;I%K0?e%BNeft}8v!L^V`k)v_GZbWoQSu1_fV9&>-P`vnMd#*7xvJlM)S+V; zI!P0-#jZ*VrC>1a4yO+7?@wLoG z8mzv3S!e(0lQmeBZ(pvdF6ff*dEKQftVu~pS$>t`8*29W2!(@GNB1Xv3f0M~oT1F| zwB<}NhFo}-AmnC9-V(hR$Gv1v@AojIcD;}U@HS=%gm0ZpZc44Nx}ikW8xHzNlx<#? zn@`uKs;~gZ7lt}(eOZn!H?VLB@%02JO7~TlT+JY6=fw=h_~*3X_9%F{@28%2vaI9= zv1>!k4u#cY1z$9xfHXzl7bi8v>ei46&oGTHS|o@|b{oUHSyfSihSb+(7vFS5O{9;8 zIbJKohbQW#&Ms^YB2rLG0!FkkDjWbyBMP{^RV-}|4S=Spla|zINbPxfxm~=$Iikd1 z0Pa`3*)-F+pq^`rtdo=;9J9`~;7O|UsIIctbQGoD%eP|@*%z$W1%M!>4w`1|20L;x zJ}31qO7+*#P;wt;cP`)G1QvWSr}uoc1r-472hKGvbAjK?iolcubHXiT z_;4%V*NZI&my3^p(mLg*Bn-~^p+E8mbvyFPlKRizuocOD-Chu>bvL%7E=0dM?Q=R~ zB(lC8P%N1;?B~ABhJ>e%l=4CDzSTzBu5~07x~>Nlc0|prHDrXf`X^le`0(+4Mn2_a z53GkyX7*h$206F68|m{X$0>)r2SMJ%i&Nj@ZQH#OK1$1whhMa0=0u;AlvxL?b`Fkx zgRtFEyVft;4!7MH-4?r%$|ex?oJVpYgx|C6e4#7fk>%c?D=yE2kTqHN4{u>02`x3lS$YF+AqtemSQTi@K2H`gp#d zUaxIMeuEcqKSx{h@G`$89Gq^Q+qPXL=55`F6 zF0Tz_x#kfO+daKdsU9W|q9o(@-x5_^gB%7=-wm$%S^UZ~JevGgp%`f*< zYfa{!7NyjCx~2{r4?ym&_C>jWt`+I_d@p0|g1h8faMuB^XyVcT9Sd;6Bf<6VPFd;- z3fs|&pIE^^1%?9NXJk4t=GII_l6rmV*jVSLUCw0AwVgO->17= zP%(KEn{78l70mb~28wI;hZBu`UbJPN{`f?$baeIlKB9FVX^wRXL~2)Ls(cg$1l2Xg z-JdB$Y)$MrziERCDhhu2g3h*!JTdET-<^OB*?H&V9Gr%4^raloMzFih*=-hO_^NKGL3NVhmRNz6DPNy%W@7 zS=4zWj%W}3X`|j(P!cZZIgPUthvl?0wn#-ZG4@Xi56xckaLQFL#{&p|bvd>+|HrH2 zr}yjRE=C}z8RdU1EW?`HETeI+#42$GycU5`vn^H#NeZ@gq4kxD1OjskXCatOHlC8h z2-D$KVTYXxL2lUlFKQpP31yH{w5M6~CfRLquX{&pb&5Qt=9c~z;Tm!AvQFO$CbNVN zX{x4OUcc&VAgv|4rkfOO9_ zBD&KgyKH1b?8B`s6`vC!tYcf3t-Q&2s~2Wpfj?jCqX_Pw)?2!P?vUTw-1&ziA z>rnph2u?L1Vd zKF`jCHu^Ue5^p+Sv8X9Mf`okqS{=FZ^hJ(hT|k}YAGF$5Fw-muD-Rk>t->k%BnFq7 znZMY$lG_KF-&o`h3Q#BD;OkC zcTIM}*YzU*$Wan(mcM?5sAwl?VAb_}HP%4|kp+m+zW{f$qKF-|!C?+G?`toaYAIr0bWkdD zU?P+wS)0-Wz=Emgm|_g+q>1i1GJ`>MQ5MkQnSdqZ#-qMRS2S;l9$S_om6;^}$gXW` z;s^%L3O<6?4jd0%qM%x7 zEYqX5GSRj+E_TiH$RDf?01c}-qmiyTH--T*@4FsF$oD^fjDE#~Sog60#zd2N$kC*{ zu}kjA%*tLbbovvOyf+l$4zEr$L%a3!56-CDmg$7|G9F4q0zgx5wVd=1`jRjbI^Y5%p=7|I*ZWI9GCINRAI>PNf z`!^fuS1b8h&2rJnkltrG-0@5xu~raQvZKiJI45hheE0ybitzODhN5r54X77n*pYDs z>7c_^T?%v2?eh!KBC?PlU zBk!alCO>@6XPvC?JoM4#WB+kopW@IvNA?U-e;NEby7RNxcJ^e7J_pF&NBQ95kh;l2 zz55#aH$y(5W7#UURwdj`o_~^tk>aA!ya7-XVWM47q4iq!FL1!rXw=9z3b!p1vLg2U z6L7wfE+I|zI_!btk0#mWO9op*loH%n+e!Y<^D}79R#W;;ath&nJ-})Z-#W@Ueu|h$*A9fQ{ZUnqi>7WA3OK1;C*e6238>(0Vhw3 zxds%ZOF7d#mp(!GB4eK_FX$P|?{5f$OqXD@&yiO<=z#4-$t&NJV%~+jz63n>idh-b zL&|F|U%6nc>Q@@lKy5iXYS!_l2Mj|66x8jTkrVMqm#(Nu9${9?O&aeRwHV8FiOvcK z<05;L>s7%nC|HZg)W6N_)c(i8RtJLkj*+(yJ z!##W;$LacmDtm7D6Zu&tS+Dn%j&t;)Qf*ayv&4e(Ex_r*Kibki;{0;{ADFC9MXs02 z>Olf2eAD>i`YBRhXQBipQQ-;Y4YzhS`PL=p)6gGQeDW~p>GZ3#)tzlbZaE=LQ<#J#<);M~KUCRMqmrJ)GVWSBR8 zUsUphSqVAUCGM_XVQd98w}BfQ+@TpX$~l8<>xH5$D1hQ$_gC-c2+RkaMYv&!h&0Ul z4PI-rM1tF!%k4=)0LZavnn5wf4n3JyZ!IEcLy8UuC>qpIpxG$Y@W3C8~ zq?bGQ9NP{Eebt7D%v}2}*}nMCues$Y)_ekZkY8{_zBG59srBl2b(>P)LIw5z>_NWP z;Ox-n#6v&MzO$}D^){o2blvwmDmnu|R@s0=-{GsDeCbGeVNS17%OfU@3nvTe3X?W~ zn)1_idXEB6?}c!k1qOp6;l2pDvw>!t1Di?_|An~d2ZG_LPt4*edOF1ufhOzs9!P}2 zA&=&#LN0kl5`bo&E4e5VBBtC23_iNF!(so|$@fxI7v5}%tyP=%YGTfe0#8f_*M#oS z{4=*2v}7#AL1g=q4ta$GV9|RBuBSC#l%Sb|ODdpdh9`H*X?DRO&ofB-6H$(Z;qyO? z^RZQF9{7FTI zmogA|)cY1`eCA1e<*8ne5#0Ba+4cj~`yTe-Rmwt_Te{{yw(1YStgIPQ5c5Yhx6o+1 zCnpZ*+vL>upV&q(9W8m&bBF$@l-J!h%nwEC!h>hQ2_P*(JNR=@!EwT5r2NJL$pn+h zC5}XUl-?Nh&d&k|*?EBULgikHEsctfi5&WZx z8QkKIo*$ZpBKS?dGp}SX2~{sc-P5G9O|$OJS&hmEK4*N#U3&uD?Atv83SXInzB+hM zhWy&OV|BU5mQHWHzU+_&!x94?B6!o?}XT8dU!A zDEC*!;Fr01-o2jro2&orGoSxD13}9JQQyM>LfrN)40rux^^nDJ0;?ZW>CJ6PG444r zvI4_9OMWtOMVj^;3D*lk{)H!SLwM!`S!@X#knpJsEmNMRZDB!bgA5w${6wopY?#lqPG#~I4i#?7#i@3K zSs1(q2tac4bo3qArOYEwPXN*wd#jUA>qfrbb2QYu{_YqBhqn-T5{8?qD&9Kq*PF!w zT&Ex9s8n@f%TrIf5_z44*bC)t$v)h_hwqE_1~}(C8JcldQ|>I7pdz~n=i~%zRzgGt+4mXLcJzoS!z=q&&Zc{`Dx{?-Mr6`!g(2| zHvM|JwI<={BT}=T@P& z&yuoohnc$8ksaxQj%Ac9jag?x@KV(x2f6sx+~%kc8f723BAp7`dF2UnrvT4(p}4it z>9^Ho`?GIO_S5aNbzATCvn~>o@Y%+L*_V$gX8x%eU`!(o*HpF z;vP#tbl5+wCVYYNu5s@2U=N{Vu1hm~HO=FEOGCeQ5SPuq`)<7>D`OS>|CC# z$04GO!*vRX!}-N#HhjxbS-(AzTA#XwOX^@l=*PeKm;=iHD?S!?y)OmwRELqESqBWR z&f|TYu&TYk;V>896{w?-u08PqTko-gsa@*Yj*&B-PrhP)97>F}F~PJ(DXS~W9&pSK zr_JLFMj{&?+pvUkdZ%1B(UewJ=1rgdusMo;x_WDRwzWZqGck3*+ewpta<+#pOl)A) zHoZQKcc*=B#D@p?%t(suDUy40gx6cFDKpDADYq5lJVd4%lLZ-OC;cP4VK?iL6L+0v z+SP@vy^UAbuQTWn7Y*scJ*vYSm<}p-N z*a*xcxfohtsQYPvjF?;E4sQ`J`{xdeW79<1GNv61|Vu^Q4>NZJ`vb>26J=Gs;=tTxMc&~wrLnA!?E`O2s^ z!vB<-s`y?6-u~e&`*?DQaV7H&PlMm*` zk;lFc6^88Bj?Z~fX|3OW4r%Rq$biQg%;;y0a%Gs~@?tN2jEhF?R4$(1r5o*ubF0>P zYY$c~?V3ML#@n3MY6IFS2+7Ed|LOR~dx~WU9-trdDyBXM;6^K>+)x%;tFad~E8k6J zTYd-NLk!+JF#}yU`IJPC&XtZ=y}eEB$^XnnoWSZve#g6GLpROXdbHwM^hmR~6ulIv}eVnjWnz#WS~-wX2w2s;4I ze*z2OMQD_WcUmRo#{E-LQnI@iUAa}ngNo&P%Qr-!pge1&gKf zB_JqHHX%FY$4(TdUlsnQ)4v4T?ak9cHpFFe*K45t&OqcL5$ z`@`$r;k#sKM%IspkAu!`%a6tH`d-suAUuuJp7_(EuIm~ZZRSVg^8fIa*`y2(fsCtE zZ%3Am+Kbg&sZLO1%c8q+j2+}bcOYMu_F#^h=OgOvtYw+?)6tsS|Jc+2@V}h0e3HxN zAAh{s@ze)b<-}Y4k-HHqXnGYH%oc_W*?H-4N3+j*NkVDO^%Bhm9diQ@MHY ztZP2RreX!Ixh90^CrxqLz`9?->52Wt7IsH+!Stmur|#h68T?a1{i>8!l02}shcI^9 zSZ0*`!VJpxtQ_zXu6PY@y>e9nv`SVfL zMJ>b*gR8;cH~gnmio@yu`@(-u#eesx|NDTyhgij&|1hZkUNT0f^uqX`YuJ$gAHB_P ze2@N@*INd^_p`%yq5l%%ZWyCa`#$@~<{Zy|eFOdw|83ei0$JJh{yeJt^}hrcOXIhC z)(H}esbU)c|E2kV+reU)y8AR+liY`gNg3$#wsr%x-QJrc_Z;J-d~$vrM|b%Vx0F#e zbENKa{aM;$?ec>d*)!yJ1?Qw>9)7@7IBRuUjT*Sx8`-v4`sa1mIF4{dCj7u5SsdI} zyTbo==Yg;OLoK7jE&ZR&u+ycrIT_AbGgWNqiiYcBYn`yEl$@~ zo!z|j*JAlDYykES%)`>7n(ZP2?v?xZDZk)tz+CXZ}tT5pe$!{YHUwN#(({ zFueswkv6AqhdQsv+zMm+5CqNc{G;a)ea#X5=>K+<7A+me7Wlumia!2eIbPCuMUkB^ z+iK%t?6oltk~~De_NX0-_<{(0NYhgjTjo6a1?A2IqHKK@r~l4?+qUiGkAqy=ZHlL+ zD?CbYZaI@?pyqhh2U+k?*4%=sgu%Jih}=M($BDQD5RZD|?sALgMANf6%~e}B1r5K? zizArr4`vK!;fp5$#XQ;SlIE=FpE`(W*v2WW?O8{Sw_XHdiq@qUkO=yzBTAP8E-qmh z-}fIcymKAx5e;p81-uQB&dUZFPXLDgs$|7CJ+z5vif=B`yu&vRZk#+Qg8(sSRpra6 z*;6*OVNEP?X<2+(LIfqfPubx`GlpR_C+5%jXo~@ihCr#^s8f^OG1%Tq)|#i9J?obo z&xb;*RCPF+%*g@u8_A45_m?uCbE2&E1LFN@oA$KTDjx=VBO8lfcXe(hp7u;u(rp)A z9{}9Z0~-iw1R6c>L=z7ErBC}3&ZnTx@D4;ePWfg=a9$zY9VzW*Ka7U~qqw0_ihs#k>osK9Ot`7Fx5k<~+z^$8184U(c8^$KY-r zNM^-Ej;zqt2?~y)@iS7Lk>_#D$4ET(sZdcv8sNSF=$?5Z zmAh*4zPi^{dH00Jr;v@HitSsE6JD4xFQ10GX-@_)l%hBOQVVy_gCOgbsv#1HP_VS$v4FKS{#HdTJ^B?9AH%0qQJNarP21g>xZU5pnVEn|?l@ET~dR2bz4q0RQPc8M}vL#1lgD6`e~0-gOrhAvRC zFJTsI>f*ByH3vP*D2ogPt8;FKMeI}0vC!2hE=H6KQZ)fkh&p@n=_5;OTEWoOvi6MK zdp&nT5N&!Iqp*$D^s9udsov2xHCr%jm#_8==^va^7F|O&!JK9!%Ln}nHNkaWEOMXH zA=0;ccC2$ApXNC`v^AO-v&!4Hmm5k$kFTK!8kaT4!ts6_BIQ)^ z(Ech8+%8tH>)xQmLV`x)mBXQCpPkw)*wnushT#+GEmAFCSzkl8LBex-=oOK5di5f4 zugg78R4rdSyR~H*{yn}|V6efC^WK5sxWiowWIZgQG@iflw0E{eGrgJGvd(*!A=N~F z8jSE8Y#T)A71ucY%Fnk|Pzr_movy9An<5B>g(NPjS5AiXOid-3NLJS2Mi!Y_-y_!|Wr1E}}Q?fLP!%&&tW-bU3q1wAb( z*k^$kn8p8YjZUy~G4t9r5n3AH2B^oJwAu%ctTN+mUXB05-dje+wKQR)Bpl#`ATit$ zBse6vlY~HU9|k7@1{pMH@FWBX9^73A8Qf)XcNpB=2Zv!`_$E2$eSh4w?!WuvTkF2P zSgbvJ_wLU3R7jrc{=a!&kLn} zH)zIc+q=&`CF;z!|5tm zs);@(@$U zhjOKZ=QX#`g_sHI{Om?k2I3`$PXPk&#(O-FOj-lw_XO0nnmhLNYD&2TA15JJyPj9{ z%gsD2ylu6zz(wwz^u&YzS`4@^0sEM0k$xEd@`u^6x*Op}Lq9}JRSL9I;&%8=d(a)D z7e^TWqd`yxhjvK!_r%}Nt$46y`E$TfMoZE4&B zboZ+!HP;$VcdW>D>V%tW_C?J&KBB4dmRH*Et|xpNYCGS0n&Ad!h)4Lpoj%aXUikY< zvd|rhVA{C1N3kQ_x4zHyGx95x7y|u5HvU9vvXR`HPEhqW74KzE#A!?2QNN1`Zg9m~ zt92$c!z5mBVwk(+cralg3B!c6$#7?(Z>1iSrPeN&#S5fV$HYY&D>}Hfl=;@=E7<?K+4e~EGKb6y5)>9}?oWnL4ukScUFvHmz82;ryhSc+L8?o|;IUTIyj zTRgo?N}d-T!U+z0@8EEIn>*EMEvldLhmTC?x-go|aBv4M+EG++5O&awwh0}1R=z3J zqVYjzFd+Wxj+pEW%x$@gpuAbUXX5zHb^Xj+0|53*fw9;U3D*N%>ki4vu(;F#dY4GN zt#4pmuSc;>{v=+uzODm?g9_Y5FF8*LhOp7ilu;>;ww74!n6;S5Rj387subMa^12f@ zzEbNT+u8?PshCT#{q6KK%(^Z_J&iT&0orFP$zAbc=1L>{kdJMWpRkTy7yr6vEqi~f zkfmrFOOL+Lr#ZGLRq~~Nhx6-wWR>3&vr|MvkrTHwA(~>pn)Q<}x4~~<$t3bmtSCkB zJH*H1RUYp$)GX{c2{5Zsn8n51b)@K$GYJarHPo!#?RHfqP^%AN<+tTuQ z^W(cEgzn2nBAu|}?v2*f>ZVopI%M9me{%AGiTS^^h6IyS2%QS-2G9=%d;gk3L zo0$^V^2;Ski_h*u#CBfhLQ-koyi6ggdNA*&BB83-?yH-RZ9GIuMciacF)N0NQT52k zsjY_K%h^%`?D&N_U24X~BxzHmK;j}KduQ=g$gSPD{p@oz)D3&c7We+%UYT z9>JJ~*GsOc=eMN@fxMdsW_yzx12ZBm0$q8@M~WZKF7P+$++z(8h|KK-gN4vXa(&{$ z96l_;(;d`W^Kj`Be9pzQ)&`x(NveR8rv;9{F*B2}IPCW&#h>#Ea4PS7u2* z4}7suBMB0ZZ%elX`TRh2mX*!=O6P?*nyz+RwM@Rr^BWwpMC1FvE#Z5A;&nsRa6f6Z zmyUk5QfG{4-7>!4zPWrIIO0AQI1Y*&GpCH((k}Gr+F%Uuaf$nMB}Fsdp1?a2B@j5Q_4Mydr)CUsGpps{0mst`X_)0IVs(tHETv-d< z$=0%(gvugZRLbu@eSF%m=kn4&nHl(tXQNHF@9*GG+wm6hC%OdGt>~{+YuL=RMy7V9 zp-9$ZWwMX$o28**$)7u-___Vdr;?`i3_}M2a(JIi&*$4DzF*^bx_ff%3WzJH`90KI z_0+nte;GkU<$2>F04oiiOue0@)|b4etKw|mW-{h_y_E2j&LLAJQ8?2EyC@2i-HB?P z7P;VWy-zT1XY-oEl!>$=;}bWCKZ2a37_*CYQKhACD(dU?^?N)b_BVLN%Ea>mZ^Em{ zh3fBqj*iZj&=Hk}nhb$Y%1yZS5nsN?^t{4umu0Zqlc05}UcSl4-tvI&&l@N$Q2BX^ zy!Hpug);3W7)2fDN0FN2(G)vtV!obM<3lyLr&g=8DqePtCB7rz7& zl5qX4#9*a0U01(ghFuY}dnxu~NS5)l7JXn~1UYk}z4Ff&-r!~4Gh8zU9!@{m766j6 z6R+OR{KCy*w#sky^4p#Y>y+MUF@%nZIF3%ghR|~~6-i&Zg zGU+%^dbHkRhL!rXmP>oMk~l3O?9Sodrvbh4@5uvv>Sjz&L?1MI_0NslDGRDLo?oKB z612eI98Z>?nx}+0&Ar*>i}W(Iruo3e5?Se?Ub>GINFM8Pc z0`M-2D37yisk-7xVA^U%4qR$`uuO>Hl_WSFnt{ERbj&z3^bs9?(rZMH{q?dkj+d61 z5HIm+f>iFN=owG!X2jhWTukV~vD2_J!tQ>xoIh-l?lQqf?ECBdIL-(-cXLPm)>K5? zJ_3)*kRx}6G0SlQC00pYl$EpRZfvLU;$RW9E?JRSDfiXVIPoR)(nam84fmoN_a=`B z!v%HtmYcsL_LGPIW>^~~(S!lt8z?>Q2T!8X_|TtSzdnj;PsCfjt>|b@P@Ht7=G(Ue z&8?k6(7A+h6>E_aArGy8EKmnyGZ))EJ1S!Ld(|$jFlb1rk8LgPMN3ihtO9vUr2od$ zo%C3|--_~+X_3Ct0^LIh7xzbWtId05o?Fnxz1QYHXKKG+aVNlLZF@hRFE#hi3hJ_Y zgC#nnsD%{CpyTN4Z1MWWKiAc*a0fW|WBRIZn3U4k6*}pM=Z}#gv z#hCJ<0n4{zAjGkzG(6o~#zO2kVq~H|&YaHX#ef+DI^+HcV!uYDp!4lMXT(u+lmR!{ z$Dy!}$&Kv#%)^^E6%9-KUL`;My>JHZE;&0CU)y`F??W%+rUlYPLO-V6;^=kZ=7YUUn5)yi_dRlN(y<;d#P!`c|d2i7(^!y^0 zdXfWb0>9955$8=ah-&*;>2B}6e$RS8MKmpXfcgY|VW8DC+Oqipk+a|Ria-T#C|s#U zCW^t|d8gEMZT#8fmlpd+6gw?KUf(Cf#Xfet;^vGD6CXb5U?+?x|FJ+GNW#r5vEAYu z8a=?5i$kbt5bPU2w^|kh9Iv$G555#GRqlO`r~};#f7@iDWFZ##Sm5vS*LS_1x|3o` zGjug-S6~jkRN030siv)4WBk;4|8cx(NW>52?3xnc!{iT{2U30BS{+cycQf4)9k5^g z%h;2@p`+crKZz<1_tv_QMW{{@2Qy);3emID$59F0u^1b6T5#ZIM`m&(_c8AdfwDOs ztsa4nWSOWD__2{5^}v8)>%CX3enrAtB`Q?*x7NoT9&BmI z3i^a)hp`o5-z}H{8SWM-Rbc;=+R+<=>hN6_kF5ArFXeYzAcGMtnE}tqrbvX3{dg~t zu3k#*cMa`}39x$eK=r*zOUB=VA}pREHKbD32We&+@%eN_l%Td`&bU{n=G%>5pb*yZ z1D~T^*<_3xdpP2$$<Xh>o%d&ggFjK;!xAJbR|&-xIp41lKCL?^oMT+4eXh*> zOl+=WXS<}tw(ofAKNF0Xkv(!&R(OhXjBBIL)}B1RudK)e9mjtXguXCQ7Mo)Kf>Hk| zD!Oiw!#)xobq`+{4gF51y79zpTJYA$$n#hl;W2Er+7XB~eQ;6INQBW7c?iZkD#^)f z^F7>ztz2CnU9>1zd(dyRIg4zR^EN1kJjWJOvi9~AohS^`KRk zhI>L@*L-W;;Rvr#DnaO_S1H*DYBB51yzb<`J_ii!GLk z0SX(;|EAXOVno*m?jrRoF^T4K`b`o{i5Sh=mwvOd7e9X2HudHozcW3(!w!o_MDzbM z2@Lox`1Yav65{+8xj$23RIm6?tMv51hGvSskHY=37P0&A518KZO`o}@4deaJoFi%Z zPbL|`3g#}1M}kr)4r0-JZwHasZ-7-N))h+Cjp4*$kGq@G;WBNGWMM~tUh^USL;C;R zsQ(xf9)7x*UUk^HzD^chL4b*iOB!tuJQc9w6uDPyuw^?cZ?1m zG+p1#NhmRqUHVmpfSsq@n|s=lD((@>-F%gKxpdupeVBFE@Gr%BV!)*{g&5aZ!!p13 z&DH55-a}0kTDglBL$Eh@BhKl=w{g$68w}FBRk7Ir9Xhb!8*Mzl=9P%*@~jV?lvixo zTg>n$1%DjSHD26$-60709INjx@Qwd1a?pl)2u5IXFw%5mMl5m!ra=wChO{%86h zN3eH({IuOU;7(|I$0LB@B5eP}43RM}f@h81GhY8?CIkJT96W#Bpf|tS2NZ2;v1FlNQrA(R}nQl{u~d?ShjO=Yv<;`63eo)88(HCyv*5Gmo4J$ibvm z=~gvF)%$OjhX2d8!L9G6-snZo0aplFHtXbQI>ZAWM zSYpH`-K`|v$*F8OGY}6`v+fPHHn|8UTKakQmdAg_V#G{FN``rKX$H@OY>9wFp`MZOtr4$=q|esrJ` zt;b?F{_vFQ!9GiPFDH4R6#{g?G7|e`mcf7MDYRI6VYp1wwzit6PK%c0eqE}zhfn3b z)49Lc7}swjIdJq3p-Xa$=*gNigN~`Rcs!hGswLRB5qzxQ#ojKQ_Z_Ju4dzOE0M0bB ze<6@~hdVi<-St9w_b&-I4=AU+sEPfW( z(yg-Fo|Xz5-TPDTjeTd^BcsnoOXn}&RpR{9B#P(-J;x=Y!I-S!_gFmf-%8YhRghadFQu`yGlMz+1ux;*7jm+h3i{I}VdHr(WQ% zbnir|NQ}0$w2T`P{#!rnD2UnbDhLsR_3+P`RQ?}8F}V()80meEKPSFuJu*Dber$9+ z{deh~6U*IUNBG>2jE>(w`uImCw}g|dkQlybUJZQF@<+&jrK4(NZ+!3B`BeJre?;^T z;Fr+fBKqIQcyIq*awYM|Xyw7bkGaaAZ(K#a^YkX zu)O!1Z%z~_{4=&vJ)lSDmB7FM^y>eQa(c$r+$BJ5aH4GSkPJ)F+g^ZggY`|alI25#f=r-&`~`|t6`Cb)V{)l?funafo9 zn7n!D-Ajkfo38B@aIGA&IA23^?n<47^XhxmF3Ld>`}|WvWXQ*=i!^er;mNkNCX*f` z!#rra6eSH6tcuW1hHhngDNSdwAfrs}V9EY&&6cA?bLyzpf2p_;B~FH;ImerOoK+kY zEwS539vj?Cy`! z_@!O@F%Y$ACLJ?5VxBVVBf#EGre*CFTHt!g;%*&&L68k(elnyzLt=#$!2(aU~wzQTiwqIow&4NQW5BT_zjAMi3|a-wPSz~d83W7P+7SVWk$ zo%&sehF%1UJuv_HmJ1$JC!a<=(VWcSD6M%sNVBU)qdEsQ%sD_@&5lQvbLsMw2qn5@ zvU`d0mP^z40P~K{L!P7&vGLllovCY<*`TTltkZNah*&)q+DVQgDb$g(zX&MsOG5kZ z>X`OE*MKGgwpUVwsa5Dn|)w@813YG znLyP!V@w`Q>_^6kzYM&2o6R|0+NOJxzWNDe%?0=_OqXAa3C{Pc2{q02)q^SLFa^Tg z(C5k{RRApkXj7aY+N#~TeTa+}dYv6nEWSIVU$_gGa}M*G`hMe-0Q(7E;AY%=XNZn@ zEsfm`GWat8)I(;dvr;*&9KZWK_%RdrK4ADTf7QxpDD2bp5COZzt%;a~gCCqB6F z)F`9p7wQfaEfS@9(RFD?GZSZ1#}-?cukFvBt_tCE6JSSm{cPTI194BQ161#&Wq3yL z#faw3Cn&yXlpo{QL$ZfeW@>jzM`GR=%}$bfciof^8cRlBI3E<&H!Jg70a=%$_5&ZE zdyf=HSg9S{)=HJt<-w?kLm@7nX^YoQmA6@1(uc?E_J{VqiMZ4N&ylGbZF?wsxOC)*E{64Kra`JAvIR_a&$j>5$qh)c+2G!xLj?L1)Ov_4}z@8mb{ z4LBEm+FCxydO1j@+5D1mBh2b37+KZ_xR^+P0#JiPS*IQ{m)BQjs~^zSuqPh^R*~}X zBEr7Q;^KknbazP+=$W{`1XZi<`AxH0XBt0bM^)?Fwbbs+y2X*b*2-=zeZP{hmV99Q z!tQNbJrZqJs_uMV71Tr>ednfESN8Tm^i}@A*#c@n+Yq{KMA4T<*;r-AXgR5NacX!@ z`FO{@j6kk)qj(q95MOlXq(78M34osU+MmeZnP4)*oSxkdk^)LXdrBI|?j}kOr2_S~ zinCWYURTjUN9$uGEN9ih=^82BJPu|E-D2jf9!+~C#e0HTi&+$%E|Y9pv}4B)6PT$< z4K|pEdL4}MIk;mi6{>U1_n77= zCvMM+orz$JIg^B=b3=2Fw-%?Q+MzFWq`f;AEkn?T13z{$4qD4p2#hE$lF6-=+Z8*M?Or%ui~kjLm*Kmd4F0x|9DUg0(_65qS!C3(pJ>Xu!pH^a&%hT3*nVj&m^f&){xLv=D10xee{FYRJhytm(Fn1x zLBAzG#Ut+p+UX*tYz6Z}1!KhB-rq9wvUx*v2kkmZbQ$IR-@z6Op*5>)DbxT&t9MRv zI@lEfk42uo@Ajz9FLFP`kHbUqp%O210wzRX(f5ZGxOiku4i0jHqq`;=Yow|` z>YEj|&S?YS-dQu}gAjK6@OFz>+;yXU3m)^{Iuq1rff;&^MU=VpRBV7`+KB)>cYcRaO>2)h zUACLW!8^St6ZQPwgZhfBw*YyFUG_*~{ySPlq)wwLWWcz$Znvk2{Uy~2Y_@19B?ezH zZ^GwDiqIQS)VI{J4$H!&{8n3Cbh+TX*u0$Fuyy_`jh|#@KBq|!*emS#9z{gN<}9AS zOXC68J+^RUU#cVA+~u4_DW_xxJIH&^7q1z~6;``gAW9x~!~fPSIB#<4R4AvszLhvf zYiKDphb?mU&lxQn*?>c;djuaQV*j{PN1k2hdM{8`1L?dOuz(ijrpCzzyCX8nDGbKDmn)cW8#Fge& z$P<`8yt7`9sUr0AeAvtAf3s0l;L)jhQSts0*XWqB9Ipec$z)Uq$jbxJ*W_3b9xCa{ z>**2!T%A(h3NiJ^te-+A%zN~;AQoJZj+GztX}|(^uZnuKI(U)4cG*obwDT>Th7zzK z4%_QVL^1PH0}m)Q5~P&CR4gH1sT1PWRDk-&a9^;fi*8pRxQ;iH|FbTnPMC{#4Vi>u zP=!M$TSCSH8u+iO7)S8wX#wt585x#HF60Ea3Wre1CEG7W}` zIB(_tl2uV)>$S+;`nt-FeL`WmQT3==2Hh;3((V`G+bgHxCHfuzu1K39E{BW_4A`mR ztF#KZ2%U?3(l?E&x~t(2!im~Vi-&Rg2PtWE6&141=}cRwP66C8OQs|25xJ5IWGhQ1 zW-~1RAf>H&VvAyDjZ4}HAG{N2{o?0veP7CS-jLKzo9vVZg)km53%W4gP?l(SY`!05 zxHmFlMRVzGXZ2Qe`{h!fGu!1biz`pD!nhm7nvTs3wTAUZI?ttOZa6qXCF6vW|E606 zCq@I~MNJls+MaTN`W{$H50+$WbqXH(H>1&AFNb;&>q<-Pe8+$^=S!D{XkupFplD zg6Q+yxpx`L?<-HJP)3O9Ube`k)6m?KxGTaA3+pKAEe7CR*5PL#)OTI)iNds zLj9{~pt!r7?Dw)^t=4@APS|RIyA?euqxE`}1{uk9Iar{MJl`Rr5!Q(BA7|kKQTho@ zmz&t)|HZ(%hm>%>QF$GM7slSuQpd9})2Qq-pJ$4`2oK}|PUO2;9c{Y*WvI_|R}&kS zTxBcaZfm5-epH!2R#Or znhHToMmubNUST|GxiK(r6J+uj88rY6(9YT1dH3^XGGcB1E(;nIeAdz(zn}wDFVl3g zg0QlCSViv-0EB@##*UVsb_4usW8<8UyJR&n%*hFSfs7>|qfhHIB$7p{r3@{^XTc-R zopqyN#ghdw5`@b0k9Euu)I(IN=XhS=6hWTR>moTqym3J--66Q%io<3>F~n*tvVXGJ zk{dcxPSdMzyhv#&B$@@0)8iF_LPy7i>ps|;vzd9cqKf4LCjQHl735tlUl=Rg=NUU0ZN+x>3*|3a+=fQ8K_;Xw z1hKHLcAhui$2uxXaOM*>C^`zt8GEms&kK`_5 z@B)+=R3WhjRrsE~`PG+OgG<7q3=r+El+RtSG>a&ND^AxkUM$VZR85sc@-}{;2^e<` z4NB?*nHnUad_{8xWRdO%lM!}v4XM`SI^VFC!GA1 z>1z4BKpLe%O8hHNzaAkUBT|YJWNc4-O0?rS`rf5nEpm4_Nmtjn?{CdQ^V;jM9DUG$ zs76yEMRx>)RIX0^6x{igQgR}r`l)|VoHStS*`-;Ixq&dypw1t{G^~(FRd-<6%j&fm zM(m;Y?3a)4p>-m$DTiLpG#EC2m#BKJ;z#D#EXRHxT3CM)-dTieF?YJzW37|!ByO_1ag~m=taaFDt@8wvV`0Th{aISp zlvz)^6$<7aX?(f*=`XPhAFH9{voDbHrv^#vY0~pD_(=QFS6DiGpMG`Meli(5Nm@K^ z>D)Y3c-Cma=LjE-W=AT-Zg2jDE!}w%bCta(EPR^hM%V>!X5d-^Hi41b7cCq0)%%6e zwti2Z;Pr)o=L@gc2Wz40x|F*+Q^Fpb)rdM5Wj7%H!f61Zp8#Ls=c;J25rg>C^Tz|V zVe>j460#Qjx*N6{L?9u>IHBQ=d7L^?P_5#>d+lC=hKUW#-eiy{Y#7S*CA#EDhgSwI z4c6FxN;8xwK5WiDISpSaVnoMjN|7g)zu;~nC6FsqJ3$4a@$d%JW?;6iuef(MA0VR? zTcqylRaMX*wJYWvo_uux5QaWu(P0}Oi6Sm_kqHc+jlPoQk#E-p0`fL7Ry~WugwreM zG)p|%a>5FznSL+20JxB*SAQ^t2W8l63tRnCt<~#uCZV<6cH2M znn(q+y8NA04!u=Y;)CeE6d~vt2{4h?UGv>3#&zi^pD*hR(Nyu zE0U^yqJB_)uJy+SKU1aM;*)0C6y0k781Z?ZyT@REqZm8qe1Tu%5eq1O;{`)oeT+Ss zT?qzhqosG+8jFIl@#8pSUOw%+tt)LT<0zW4P4;X*cEay z*~QjaF`8s+9#chY*S{KUxqNK2(8xn};^4Cr_nE199hpQY`O;CR%nUm3MX=zh3wiKi z6j)=?ucJWceY}lwd>f>Q)AvsIx(+bC#B{G%w@x#RKfCBaVy4aNibRJh0--A-MMtv85!B~#N%WJ#PCjyGd0g9P%bqkXKUBjk=j7!Oh9?*x$FYkQ&GlLEYSTwOKc(5FZc@SIER(oZ7;x?>fm8^*29yr}1bnfGRRvuhLwogko-VVD+okt&*Z}j`Lx;3S22P zh&1Ya_3sz*|# z;8k6x2}|S+;9%D1$)v2iJX$++^&4yGzS3ecu~RFp11+UwaDMqf^lkSK+<*^<@og<* zktgxGMq#Y0lEo3-Gr3gIxDJ5-i+d#?iJEnkK+LbGu1 zBjm|lyr$W#=2aX#h$I|5JY=}xAY6Ao2);vorB6%Kx(5HDY(*oxB2anVwL`Xw z;-xRRU@4j>dyu5d9>00PNam=5#izj2Y6S<0q+dE{f8E7o7)%MXeiv}9TC87wh)y>3 z#(@2)&VM*iO_?i0+)k%pUbFBjiKbuy)K_c9E*PP{+T=w^S#fyx6GowV2LCxg&)Nt9 ztSGrQUd(ubr-d1+7t%V>4Qu39BuQkRTl5;-%<3rzjjn zk%N0ZaW{j#Ie+%kifKYEZTu=%1W;n9xhL~s5}6&==w?jOV+L0r zpIQx0>9E-vtpeK*Is5wZy~B<{K(W5q23G^(K}0xerO{^ovsFQ z_x}2EE^(a+)zH2M*g9?Zu3Z?8&XqY{s%AUfjG<7;cl@ZjV<|W8J6q8`vbYc$H1*+` ztIfvH%L!y_MBU@-LlXn@i}&g~{V{AqOfd{$di6<5V?P<$Dy$J<-B9apO}$UCI9;Xnq9~x`)TJ-b+VT^ z8?WKFBKZ(*QG5+|%xx_ie>{iF37YXP={D6`RaC3sh3&Xp&J@wv+{16{ZCfCWSFFXg zs}lQn4>0BEuX*8v7Dp8izkhyX?6&v+--f3gJq59xxrcXkb@RKY>)u=2fhyE`zcE=` zqnxFPL5jl~C@eLXj^h1^C)m!sV0GLD7ba_zbg*-N0Z&cwhTUg+$6h4^Ydp`~yl2W(7f z+ydLhf7d!2sO^%p(VEs@zMaEV7*Y!jCCWdC(=7_z!`LAVzpas{#zjRMOVbOVbEf%B zxdc*o@1jMcVvG8#*B`Q!XQ&x?iGvMMe`lokr7mROYdsMmEAT$ggDg<6qO?XX4km6|0R00pEdmd3m57FN+#(m8}Z#aY7P!< zO5jwld=9a|c8cAqh*P>QS|7Gsea_}#5V-=xY}ZIB2vtw-_=RyUjH)!iMUzwJY^AH-jadFG70i(ebF8`kV+UIyUXetl5u>B-})7=hB8<<@w+mK{m9* z8}t(?sLjqineQ%@?Dkk>?FB6uXw4<|esOnd+P@7g33R$k>sMa7y^tx@5{KDoT^W7g zi$7+s7U1wHW7r!=zwjCsuqDcgi9k|*YJT|j=K$ki zo?Tn;*fI`~=YD}VOr>~3efJi(DpY>7cyRVa@Dq-_62+AD2Kv`XM7yuNVe-QiVj@Uuh90`2g0uoC9|np7bY|#h}3N zyYa61d1x9CujOZmCDLqZqOx(vbB#-6)&&h_$YdrwUcCVD7aqe)Jv+mSDjuBsOq4_f zyZReryt7TaOEgg)X0ohV`em{!O=HX#g{SuN$T|ZMM{vH`9%*NPJ3dELaz6zVX4Fl2 zhcwKgWAasWyQ&+Rl^3@GG?eA@0s2yZTtmFB&LFAHBTUp#1Os1j2E=@`RU#2s-sX$wOyXVq)Di4?}FCn8b^)9ABhbkH|*T`c;0KV&%5=1DOy@GD0g!(zdB1d;Vf9Pr) zg`2q*UT+;P%}Ji`__zsj!5CT7>r>S_Rh;uP*b7fCuP5qt<(p6aXPZl%r^G$Gv<@YS z!Aq@gLDnQPBNu1+)qGiKDGI;BwIB|`4Shw+?X_D>*2&?L!P2Sl1I)Vfc$^3mpDBp} zo$Orl3!BwfK-D~J6iP9F0qU|84)(D9x&^(|nwn~);F$NiCx!u*NmWRaAb8#5S*FVg zE7UUe<4aIxb8}Je1jT?C=b(wpSz>>I*>snRuDA(=!%VNf7ZmyE@vpRH<;XmTUR=%s znqIPaMX7_^M#sq3z>?EB^<;!ITOat&q-DYw>tfa0yPdDwqS12(a|argmM~060!e&T zH0^MY4yoEX)YjRWLyYZE4^>@%F~O>32IfgoKdd)e38mScrHw+!iB0XUM~kGzt!rH6 zd>xSXE}omr>;n4gy7L!KK(cwlR7R)f;A(VHZsK_pfj`t8Bl=RwM@KM>Xh(PB*o-Gm z-`uEPRTvDqeVsF332B*?IaqM(Uc1au>zw+FQIvhJ@1ShBDN^mEk&}~%MOQ0cqE(x8 ztRS6L$vj$2lF0|7+AoE$)plr^aX=&G+(ak?8MKGRxc|$&WB&7^$ayVn(2*NoO5inLg5v5N>#?qayi|+R8|uenGm4uJ~Ts=;+uTcfB~#?DLcBF(Z{X$qPZc* zUh?%#!Hq$l$YKcOOjo8?gH?$OztBN1Zq|p!d(}}|(#gxV_JFe1eJzh>+aTM867=QXGlR`O7e*5u)tEV507`wOk+tOg2UJyLy96F&B1*|Q)bYj4zb+DP5Yz$SV zcf*9>+0pFH zrUx4v8crrT?{YI*5^LGCWD}{?x|2#E#+t;NA>lad!JJx2tN~|% z9h-GpiI_JE@0&q?zN?-en}9(6>AGM|fVHc90x!i34@t<6s)=6%AM4sAdh33vzeMy2 zOXd$5aDt~Bb(9)rC(5&=e94$hq%}v=l87ZqZDo3$40-Mcy}#ih&}fZo=h z&`F7Y&WJIqU8M#dtu7Mo z%l=o`K|gNCsw%JVTmoiYYVs{rO4P|XD00xurwZX8bkeB$hhVtqaLJvyI@nN}wZ^#> ziMx$dFz%L&k?0yq69~vDC;&Srm*>#K-o1qpm_WXB`(c!|ldS4C=lTi_UvtNDGUNvA zL#IbHYS#;q#PkWEDUGRcy@m?_0Jf`?Xyo<1TbfxPur^z!-1J#lT$=IkTa0ZMb5fQw z-pztL?{{UTNNK&ZNix&`z^w{IHSaRk{ET`AX60%20En%bhP6Tp_0FW26S5gfx0<)-qPi2BOX*(b)D-Minl)%Y zHx#0)8KU0V72DR#O311SmS5WXBj?Ef$T_-ABk5-sa)-!qd9>q-kL&4H6eWxrcs|^Y zAA4;YhXa!D^GZT@w%H{8AfDP8AJRXh<)-ttcvvM zg|*pDf)N)#@AnVteO}&uLUD;oyFpw#MmjCTiW^LO3#Mu9e$Sdt{MyFu$-_0kd1|gO zxqhquvk;;vPa&GCt)saDVik@k^>n~Q25BuiZ=fyJ5BsYM=4LaG@b4N`ngmUsQJvt? zdUBkE72hOOo&Y}k8HR29sVNk;Nmz>HtOFm$j~O@bg!nJc6s@b~fV~Z}t_nYO?zIO^ ziOSR2YRs)vQnMGY;{aD=wMUoLm13dlJ->=1Q?-UZgJv}x7?D#o`6dGSqh+6Si1=7O zn@9(Fx;7ObBWS%Pn7D>GJ^78uKZ&s$T<<0qS-nO=&0`Xhj6ZG;yD15)+efJ6ev-YM z!R8%zn{iZ$*}_2BDqS0wcqCk$fX|E^Y5JfcMmvdX8x_Wwaxlr?KS+q;6&V%OY9k+_iBNi4#^k~nV5!6E190C)pDe-Mr#Ps#eL9hC^Xo#P=_49sIorr z8R_#Be5jMA;Ml)-N@)*LQ3m&MhG40rq^aB3Ltb*PJ6Rs0`T1S%PHs1zkPL5bjC;Oypva)ZOA8-b2?VK81GtJH^Npt=0ZISvRJvkPVjRn?;0G zv_A>5?uCIeJOAs;{zCRGzAMAvp_qZ5awQxAi5u$jO~YYyT&08KIGdu<<^~J>DYqA9 z5&Kp?QtSiMcX>F+6A>d$+mUNpDQ|rex0Wp=|zg@J4ahW zbLJSNyY1ONznO6BA6nCmkqO1Zf`#6@9+a{ecn$uNIwPCI9Vj>)B zFZw+$cJ{%K1SwvH_P-@b@>y>@%s(t#Yj=~}X* zb(28eHcJj*eSB{zDgGWMRV+RbgNDp4?JlSGVYMbc$F(2-Y)=?GJr^)NMc&cRL?M>I zcmT}>Azl_SW75X+tOfPTzV5kym21(zIzC&>rW@ho_b>B#)@nd@Ur@<`FFZhQ-TZ)h z7G$Cbl1tuuk#JsGgUG0xw3A%Y#oQQHuQu7b&0QJUVq?;>E!$_Ij?6062g%=t* zfpre(;nABlGcoFB%C`kd*nd9}^-P_{e71(?wH=eNM`OTjlb$8iE;pw+fmEz~t6^J= z)ZChN_?@1tPpW3QNm&pVLteuUWTt&mCTZFQ^LG=o65t`bPMadE@Y#T0>#v*3*D+h0 zf)7!Re`)=7ixfFnUbI_{fJL79)Pa8dz zEgePf^MtTK_#-CkH-}N!m9#2rq)M4qdLLQYS4ke$;-rsp_ZEEa$drIO7DxOk6K^xIC2n+&yzP}*hYv)bvIJexf^l1~&+Pa7cNVXYH8 z-i*=GH1e^Lea~9RjP`w@`G78qI1?MGHsbY&b9MrHZe9vbM|zXoo}g;n{JR%Zw$4cQEf_Nhen2_X12oxxmsAFO&&JZox0y8WcI$E2)xt zJWryrkC#*ut6}r5wDh7f3Kq-F%6N)&;3O}6kgG1%elH)cG>)B&`l;jC9Y{CE2C9Dh zjAsj%fsy%p-bN>0gR%^$aZ|K>l)tN{H{}%G_8|u&P?0PRn}I^K!lHETuqJkMw?+V# z+SMt>>zdTBn3p2h)dwYG4WKMU!`1%a25Yy4)CR0 z!HXyGzN^)N(#QwAaR1{y^v*n^%IjI*bteSrvyscenwE6kQAT?U-#-1c-n&V*gQqHF z4w`06r@@3ygbGo-v)iR8!k{mz-*vKQbTL5?V6jcp{(72Q5X@vQ~u^v;W1 zKW(UDMu}>qkK0a>ZL(u%@kLphE}h%M(f7g2lLJ}O5-Hhz?@4E`wmzH(sONy!hWzN! zD3tO|$36vMErNWlzbnx<)EY+}8Okm^DDd_H^QXVJl->i%>gcDm5iUXqD{A}pjUIvC z)7ez$@--komL7Y>63nA$^jB%tr^V(@4WeidB67_N_{re5wbk4BIt_##0rT8$(LIg{ zl7(n>GZkiY*waVpvOJqEp62PVV5Nc{;+Ag}uKBR;r-CHg<}`(725`r$wWy$s?gZHR zJEP%fn4sq`TQRMk37X2g?HA(O?=q*4VCnH7e&TT4lh3H)Zpou;7SjUsplED$fS^u=6l}y#&dG;o8JoV zhO1ZLckCL=1`uSdB++3d*mLrYozUr<_it*6oeA;;%m(AYT%kawF1TQsXmiM+uI#+)^97=NGb#GkC?Z^4$ zaiS*AKPE8s@{8xtnTf_1iN!}q^^LdzREQq+(&W{M-0I4Oz_Ts;v7U zF)SCBesjV$gQ|f0@vET_qls)kSpTKkHx#IaHk)B=DV&QSu{8FWyo+v+w)J00*ib__D^4e@vFZ zZdwc2Ad^Cz*!t@}`TCuZO)fv7AS!c~(i-p65uF8`PQgMl_%j{W3q&ZQVnI(2nI>%w z2m=!XgQ#(sDBr7WenKQKWiM6OAR)oUu_%y!f>C}{K9;YGKVa1=s7~1MBG-bPe<#Q{ zFZK)8Rm8WsE-|~H2pcx2ab0DwlCw-ma5}chGah~nZ^8dU5|EV6;bF(MYJea27121g z6?}WKsKBgQES|)$%md+tF%cpi3^GGR6Q*G3uTa^RJhG0Ux4*)GRywJss9pbdfE zx$725wz-eS%z04K!dux-<47X58ux_MzAnQ&*YN!lMb>5&TG6XZztHt#jN{D({e_jK z?pVci>A+&#m&TnB*pNEsHjH1y?xeWaHQ}I?j?Q#@0YRN>2j!`0*3}z<+OFUkpT47$ z*2zs6aL$;ss@qhWZK33)Lsm7@3jQSjwX?**2e7UjXm#kOByxysY-Wx|Vutj|HOdTl zwBea(rB7xoX`weV6>mkI$KT2M_~w*Mb4Ddj_P#RWqtJ}=mM-|$kM%W~AE>&eX(IM( z;xm$efDyuaa*t!T`y)m9{&!>&Cb%@FAGtoTG0u_h^qlGeae8`kJeRX}M2*@w1)UX6 zabpL<1W21YL8Hfxo>qM!`<2`r=IfkWllpQqtq5(`Iko%P1nnF#ups{UU!LNsi6Lv# zTNhcHLaJU$)n7SBh*bkV?g@|<1ni5WEh{`TzxU76W(6pT#Joe*@C_{erZNR%sA>KD{5ou%bo{gL`plHc2%1LFqBF!D#*& z20XzKYf_Y)jiDlW4m_9!qldP=wC4_CYa`_u#%y$_B*drt5{KiA{Iznoe1X z@AEKXH8MT$^T}`%u-VFG?Z-Ysg!WhdA3gAwcFPqu=9i??l}bf3O3BYv2|j9@0Rob! ziJRMT|5<{|-M<=x8_=6OixKPvxxD98g_mY?*Db=gyt8*dt)4M-|-(^Qw2Ff20IL z2{$Nj6=^g*;pxXH!?Tpc73g^gYp|xm@p<{f@rw zxUv`4y>j8c;GwwrC5Nd#6J^iaQcktgB{I=jKl3oEB@Ra21p)vigdfDLtON&oc=+28 zQyI{jQ`_EFBRWeUj2-@#d43OjSlOTZThsY1KNvgsf8~^@mi}F0->)9{Q_%1JGc(*! z2k(denLGY}{8(yJnM)6F+y2i?bb(r-7E7*uVM{gt zXdLVg=_l%(qEoxcN5oWu&Bp#_HP{aZ%ds``$ax#${7Vj^(lw2)vKvpa&O1^ zI^WrkV?i$qS}gxt&%{S{LQUiRwyqK7{eA0tk4pbL(o*p-C9@Z_piq~9l!|`@n&{~B aH7ss71#h(8;h>(qBLPT#Q$#V`A^hJR8~Y^y literal 0 HcmV?d00001 diff --git a/docs/deployments/hetzner-demo-tracker/post-provision/dns-setup.md b/docs/deployments/hetzner-demo-tracker/post-provision/dns-setup.md index 537a60ef..c0aa97ce 100644 --- a/docs/deployments/hetzner-demo-tracker/post-provision/dns-setup.md +++ b/docs/deployments/hetzner-demo-tracker/post-provision/dns-setup.md @@ -1,6 +1,6 @@ # DNS Setup -> **Status**: 🔄 In progress — both floating IPs assigned and configured on VM; DNS records pending. +> **Status**: ✅ Done — floating IPs assigned and configured on VM; all 12 DNS records created and verified. Set up DNS records so that all domain names in the environment config resolve to the floating IP before running `configure`. @@ -169,10 +169,20 @@ confirms they are permanently configured. > **Note**: The `configure` command does not configure floating IPs — this must be done > manually before running `configure`. -## Step 2: Create DNS Records +## Step 2: Create DNS Records (2026-03-04) -In the [Hetzner DNS Console](https://dns.hetzner.com/), open the `torrust-tracker-demo.com` zone -and create the following records: +The DNS zone `torrust-tracker-demo.com` was created in the **Hetzner Cloud Console** +(new system, [console.hetzner.cloud](https://console.hetzner.cloud/)). Hetzner is +[migrating DNS management](https://docs.hetzner.com/networking/dns/migration-to-hetzner-console/process/) +from the old [dns.hetzner.com](https://dns.hetzner.com) to the Cloud Console. Zones created +in the Cloud Console are only accessible via the **Hetzner Cloud API** — the old DNS API at +`dns.hetzner.com/api/v1` cannot see them. + +> **Note**: If you create a DNS API token at `dns.hetzner.com`, it will return empty results +> (`"zones": []`) for zones created in the Cloud Console. Use the **Cloud API token** instead +> (from **Security → API Tokens** in the Cloud Console project). + +### Records to Create | Subdomain | Type | Value | | --------- | ---- | ----------------------- | @@ -189,51 +199,138 @@ and create the following records: | `udp2` | A | `116.202.176.169` | | `udp2` | AAAA | `2a01:4f8:1c0c:9aae::1` | -Use the default TTL (300 s is fine for initial setup; increase to 3600 s once stable). +### API Approach + +First, find the zone ID (or use the zone name directly): + +```bash +curl -s -H "Authorization: Bearer $HCLOUD_TOKEN" \ + "https://api.hetzner.cloud/v1/zones" +``` -## Step 3: Verify DNS Propagation +Output showed zone `torrust-tracker-demo.com` with ID `944360`. -From your local machine, check that all records resolve correctly: +Create each record with `POST /v1/zones/{zone_name}/rrsets`: ```bash -# IPv4 records (A) -for subdomain in http1 http2 api grafana udp1 udp2; do - echo -n "$subdomain.torrust-tracker-demo.com A: " - dig +short A "$subdomain.torrust-tracker-demo.com" +HCLOUD_TOKEN="" +ZONE="torrust-tracker-demo.com" +IPV4="116.202.176.169" +IPV6="2a01:4f8:1c0c:9aae::1" + +for sub in http1 http2 api grafana udp1 udp2; do + # A record + curl -s -X POST \ + -H "Authorization: Bearer $HCLOUD_TOKEN" \ + -H "Content-Type: application/json" \ + "https://api.hetzner.cloud/v1/zones/$ZONE/rrsets" \ + -d "{\"name\": \"$sub\", \"type\": \"A\", \"records\": [{\"value\": \"$IPV4\"}], \"ttl\": 300}" + # AAAA record + curl -s -X POST \ + -H "Authorization: Bearer $HCLOUD_TOKEN" \ + -H "Content-Type: application/json" \ + "https://api.hetzner.cloud/v1/zones/$ZONE/rrsets" \ + -d "{\"name\": \"$sub\", \"type\": \"AAAA\", \"records\": [{\"value\": \"$IPV6\"}], \"ttl\": 300}" done +``` + +Each successful response contains an `rrset` object, for example: + +```json +{ + "action": { + "id": 615271254051174, + "status": "running", + "command": "create_rrset", + ... + }, + "rrset": { + "id": "http1/A", + "name": "http1", + "type": "A", + "ttl": 300, + "records": [{"value": "116.202.176.169", "comment": ""}], + "zone": 944360 + } +} +``` + +Verify all records were created: + +```bash +curl -s -H "Authorization: Bearer $HCLOUD_TOKEN" \ + "https://api.hetzner.cloud/v1/zones/$ZONE/rrsets" +``` + +All 12 RRSets (6 × A + 6 × AAAA) plus the default NS and SOA were present. + +## Step 3: Verify DNS Propagation (2026-03-04) + +Verify against the authoritative nameservers first (no propagation delay): -# IPv6 records (AAAA) -for subdomain in http1 http2 api grafana udp1 udp2; do - echo -n "$subdomain.torrust-tracker-demo.com AAAA: " - dig +short AAAA "$subdomain.torrust-tracker-demo.com" +```bash +for sub in http1 http2 api grafana udp1 udp2; do + echo "=== $sub ===" + dig +short A "$sub.torrust-tracker-demo.com" @hydrogen.ns.hetzner.com + dig +short AAAA "$sub.torrust-tracker-demo.com" @hydrogen.ns.hetzner.com +done +``` + +Then verify global resolution (system resolver): + +```bash +for sub in http1 http2 api grafana udp1 udp2; do + A=$(dig +short A "$sub.torrust-tracker-demo.com") + AAAA=$(dig +short AAAA "$sub.torrust-tracker-demo.com") + echo "$sub: A=$A AAAA=$AAAA" done ``` -Expected output for each: +Actual output (2026-03-04): ```text -http1.torrust-tracker-demo.com A: 116.202.176.169 -http2.torrust-tracker-demo.com A: 116.202.176.169 -api.torrust-tracker-demo.com A: 116.202.176.169 -grafana.torrust-tracker-demo.com A: 116.202.176.169 -udp1.torrust-tracker-demo.com A: 116.202.176.169 -udp2.torrust-tracker-demo.com A: 116.202.176.169 - -http1.torrust-tracker-demo.com AAAA: 2a01:4f8:1c0c:9aae::1 -... +http1: A=116.202.176.169 AAAA=2a01:4f8:1c0c:9aae::1 +http2: A=116.202.176.169 AAAA=2a01:4f8:1c0c:9aae::1 +api: A=116.202.176.169 AAAA=2a01:4f8:1c0c:9aae::1 +grafana: A=116.202.176.169 AAAA=2a01:4f8:1c0c:9aae::1 +udp1: A=116.202.176.169 AAAA=2a01:4f8:1c0c:9aae::1 +udp2: A=116.202.176.169 AAAA=2a01:4f8:1c0c:9aae::1 ``` +✅ All 12 records resolve correctly globally. + > DNS propagation with Hetzner's nameservers (`helium.ns.hetzner.de`, `hydrogen.ns.hetzner.com`, > `oxygen.ns.hetzner.com`) is typically fast (under 1 minute). If you get `NXDOMAIN` or empty > results, wait a minute and retry. ## Outcome -Once all subdomains resolve to `116.202.176.169` / `2a01:4f8:1c0c:9aae::1`, DNS is ready and -you can proceed to [volume-setup.md](volume-setup.md). +✅ All subdomains resolve to `116.202.176.169` (A) and `2a01:4f8:1c0c:9aae::1` (AAAA). DNS +setup is complete. The next step is [volume-setup.md](volume-setup.md). ## Problems +### DNS API token from dns.hetzner.com does not see Cloud Console zones + +**Symptom**: Creating a token at [dns.hetzner.com](https://dns.hetzner.com) and querying +`https://dns.hetzner.com/api/v1/zones` returns `{"zones": [], "error": {"message": "zone not found", "code": 404}}`. + +**Cause**: Hetzner is migrating DNS management from the old `dns.hetzner.com` console to the +new Cloud Console ([console.hetzner.cloud](https://console.hetzner.cloud)). Zones **created in +the Cloud Console** live in the Cloud API only and are invisible to the old DNS API. See the +[migration docs](https://docs.hetzner.com/networking/dns/migration-to-hetzner-console/process/). + +Additionally, the Cloud API does **not** have a `/v1/dns/zones` path — +`GET https://api.hetzner.cloud/v1/dns/zones` returns `{"error": {"code": "not_found", ...}}`. +The correct path is `/v1/zones`. + +**Fix**: Use the Hetzner Cloud API token (from **Security → API Tokens** in the project) and +the `/v1/zones` endpoint: + +```bash +curl -H "Authorization: Bearer $HCLOUD_TOKEN" https://api.hetzner.cloud/v1/zones +``` + ### SSH host key mismatch when connecting to the new server **Symptom**: `WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED` when SSHing to `46.225.234.201`. diff --git a/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md b/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md index f5566e7b..1bf39160 100644 --- a/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md +++ b/docs/issues/405-deploy-hetzner-demo-tracker-and-document-process.md @@ -76,8 +76,8 @@ See [`docs/deployments/hetzner-demo-tracker/post-provision/`](../deployments/het - [x] Task 3.5.1: Assign IPv4 floating IP (`116.202.176.169`) to the server in Hetzner Console - [x] Task 3.5.2: Assign IPv6 floating IP (`2a01:4f8:1c0c:9aae::/64`) to the server in Hetzner Console - [x] Task 3.5.3: Configure floating IPs permanently inside the VM (netplan) -- [ ] Task 3.5.4: Create DNS records for all six subdomains in Hetzner DNS Console -- [ ] Task 3.5.5: Verify all DNS records resolve correctly +- [x] Task 3.5.4: Create DNS records for all six subdomains via Hetzner Cloud API +- [x] Task 3.5.5: Verify all DNS records resolve correctly **Volume Setup** ([volume-setup.md](../deployments/hetzner-demo-tracker/post-provision/volume-setup.md)): diff --git a/project-words.txt b/project-words.txt index 3f4e214b..344ec371 100644 --- a/project-words.txt +++ b/project-words.txt @@ -512,3 +512,5 @@ mountpoint MOUNTPOINTS nofail NXDOMAIN +rrset +rrsets From 4fba745e546d7aa0c4ce91f13dcd5eda6ab2cd65 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 4 Mar 2026 11:46:53 +0000 Subject: [PATCH 19/59] docs: document volume setup via Hetzner Cloud API - Create 50 GB ext4 volume (torrust-tracker-demo-storage, id=104927743) in nbg1 via Cloud API; attach to server 122663759 - Mount at /opt/torrust/storage with discard,nofail,defaults via fstab (UUID=6fb9df14-c744-4e50-a48d-9ca4522a02de) - Set ownership to torrust:torrust; verified fstab remount - Replace placeholder draft with actual commands and outputs - Add screenshots: volumes list + configure popup - Mark tasks 3.5.6-3.5.9 done in issue tracker - Add automount, ENDSSH to project-words.txt --- ...hetzner-console-volume-configure-popup.png | Bin 0 -> 72691 bytes .../media/hetzner-console-volumes-list.png | Bin 0 -> 96556 bytes .../post-provision/volume-setup.md | 228 ++++++++++-------- ...tzner-demo-tracker-and-document-process.md | 8 +- project-words.txt | 2 + 5 files changed, 140 insertions(+), 98 deletions(-) create mode 100644 docs/deployments/hetzner-demo-tracker/media/hetzner-console-volume-configure-popup.png create mode 100644 docs/deployments/hetzner-demo-tracker/media/hetzner-console-volumes-list.png diff --git a/docs/deployments/hetzner-demo-tracker/media/hetzner-console-volume-configure-popup.png b/docs/deployments/hetzner-demo-tracker/media/hetzner-console-volume-configure-popup.png new file mode 100644 index 0000000000000000000000000000000000000000..0bd16fbbaf847318f87ebee9bf63309dc48ba26f GIT binary patch literal 72691 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