Commit cfbe8a1
committed
docs: refresh infra docs for post-Hetzner architecture
Closes #55.
Brings docs/ in line with the post-July-2024 architecture (single
Hetzner VM running Caddy + Sinatra/Puma API server + Prometheus,
provisioned by Ansible), replacing references to the previous
GKE Autopilot + Nginx Ingress + Cloud Run apiserver setup.
Files changed:
- docs/infrastructure-overview.md — rewritten section by section.
Every claim is grounded in current IaC. The two GCP-service-account
sections are folded into a single "CI/CD authentication" section
that splits per-caller: server-edition uses GCP WIF (APT/YUM repo
buckets + GCS CI artifacts bucket) and Azure Federated Identity
Credentials (Azure Blob CI artifacts + CI cache + Key Vault GPG
key); infra repo's apiserver workflow only mints a GitHub OIDC JWT
(audience backend.fullstaqruby.org) and POSTs to
/admin/upgrade_apiserver — it does not authenticate to GCP or
Azure APIs. The Caddy section is corrected: there is no
backend.fullstaqruby.org vhost; both apt. and yum. vhosts handle
/admin/* via reverse_proxy to the apiserver Unix socket. The
"Google Cloud projects" claim of two projects is corrected — there
is one project, fsruby-server-edition2, provisioned by
terraform-hisec/gcloud_project.tf and populated by terraform/; the
hisec/non-hisec separation lives at the Terraform-state and
access-group layer. Container registry section dropped (no
registry resources are managed in this repo). Key Vault name
uses the templated form ${var.key_vault_prefix}infraowners
(currently fsruby2infraowners). CI artifacts/cache split is now
explicit (artifacts dual-cloud, cache Azure-only). VM section
distinguishes Terraform-managed forward DNS from the
manually-set Hetzner PTR record.
- docs/infrastructure-overview.drawio.svg — deleted. Replaced by an
inline Mermaid diagram in infrastructure-overview.md so future
diagram changes are reviewable as text diffs.
- docs/editing-diagrams.md — deleted (no longer needed without the
drawio round-trip).
- docs/deploy.md — replaces the gcloud-clusters/kubectl steps with
a single ansible-playbook step matching bootstrapping Step 11.
Adds a callout that apiserver code changes deploy via the
GitHub Actions workflow.
- docs/infrastructure-as-code.md — drops Kustomize and the
kubernetes/ directory bullet; adds Ansible to the tool list and
an ansible/ directory bullet.
- docs/infrastructure-bootstrapping.md — intro updated to mention
Terraform + Ansible (not Kubernetes/Kustomize); the rest of the
file already reflected the post-migration setup.
- docs/pull_request_template.md — diagram-update checkbox now
points to the Mermaid block instead of the deleted drawio file.
- README.md — drops the link to the deleted editing-diagrams.md.
- .editorconfig — removes the duplicate [config.ru] block (the
tab/4 one); only the correct space/2 rule remains.
Note: the "Github CI bot account" section is kept as-is. Retiring
that PAT-based bot is already tracked in #18 and is therefore out
of scope here.1 parent e0d881a commit cfbe8a1
9 files changed
Lines changed: 117 additions & 1943 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
19 | | - | |
20 | | - | |
21 | | - | |
22 | | - | |
23 | 19 | | |
24 | 20 | | |
25 | 21 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
19 | | - | |
20 | 19 | | |
21 | 20 | | |
22 | 21 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
56 | 56 | | |
57 | 57 | | |
58 | 58 | | |
59 | | - | |
| 59 | + | |
60 | 60 | | |
61 | 61 | | |
62 | | - | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
63 | 65 | | |
64 | 66 | | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
70 | | - | |
71 | | - | |
72 | | - | |
73 | | - | |
74 | | - | |
75 | | - | |
| 67 | + | |
This file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | | - | |
| 6 | + | |
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
11 | | - | |
| 11 | + | |
12 | 12 | | |
13 | | - | |
| 13 | + | |
14 | 14 | | |
15 | | - | |
| 15 | + | |
16 | 16 | | |
17 | | - | |
| 17 | + | |
18 | 18 | | |
19 | | - | |
| 19 | + | |
20 | 20 | | |
21 | 21 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
0 commit comments