CluPilotCloud/tests/Feature/Provisioning
nexxo 587d1351d1 bridge.sh: die Strophe, gegen vier Anbieterfaelle geprueft
write_bridge_stanza ist von build_bridge getrennt: das Schreiben ist das,
was eine Maschine umbringt, und so ist es pruefbar, ohne dafuer ein Netz
neu laden zu muessen. Beide Pfade sind ueberschreibbar
(CLUPILOT_INTERFACES_FILE, CLUPILOT_IFRELOAD), dieselbe Technik wie
CLUPILOT_STORAGE_CFG beim Vorlagenbau.

Drei Dinge kann die Fassung mehr als die alte in network.sh:

- hwaddress festgenagelt. Eine Bruecke waehlt sonst die kleinste MAC
  ihrer Ports; bei einem Port ist das dieselbe, aber 'ist dieselbe' und
  'bleibt dieselbe' sind zweierlei.
- Zusatzrouten des Anbieters wandern mit. Ausgelassen bleiben die
  Kernel-Route zum eigenen Subnetz und die Link-Route zum Gateway —
  beide entstehen von selbst, und ein gescheitertes 'up' nimmt bei
  ifreload die ganze Strophe mit.
- IPv6, aber nur statisch und global. SLAAC/DHCPv6 werden bewusst nicht
  nachgebaut (forwarding=1 laesst den Kernel RAs ohne accept_ra=2
  verwerfen) — dafuer gibt es eine Zeile ins Protokoll statt eines
  stillen Verlusts.

Geprueft gegen echte sh: Hetzner /32 routed mit pointopoint, netcup
Subnetz ohne, DHCP ohne Adresse, statisches IPv6 mit fe80::1, SLAAC
faellt weg, Zusatzrouten kommen mit.

network.sh hat sein eigenes build_bridge abgegeben; ein Test haelt jetzt
jede der sieben Brueckenfunktionen auf genau einer Stelle im Repo fest.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-01 12:37:17 +02:00
..
BridgeScriptTest.php bridge.sh: die Strophe, gegen vier Anbieterfaelle geprueft 2026-08-01 12:37:17 +02:00
CollectHostLoadTest.php Release v1.3.93 — die Seite konnte den Host gar nicht fragen 2026-08-01 11:23:00 +02:00
CustomerDataModelTest.php Release v1.3.85 — Handshake-Prüfung hing an einem Programm, das es nicht gibt 2026-08-01 03:00:19 +02:00
CustomerProvisioningEndToEndTest.php Release v1.3.85 — Handshake-Prüfung hing an einem Programm, das es nicht gibt 2026-08-01 03:00:19 +02:00
CustomerStepBaseTest.php Apply a bought plan change instead of only pricing it 2026-07-29 17:18:55 +02:00
CustomerStepsTest.php Release v1.3.85 — Handshake-Prüfung hing an einem Programm, das es nicht gibt 2026-08-01 03:00:19 +02:00
DataModelTest.php Make host onboarding survive the machine it runs on 2026-07-30 00:54:16 +02:00
EndInstanceServiceTest.php Take the address by field, fix the customer type, ask why they leave 2026-07-30 16:41:32 +02:00
HetznerCloudDnsTest.php Hetzner-Cloud-DNS, Bereitschaftsseite aus sich heraus behebbar 2026-07-31 19:50:01 +02:00
HostOnboardingEndToEndTest.php Release v1.3.88 — die Vorlage baut sich selbst 2026-08-01 05:01:44 +02:00
HostStepsTest.php Release v1.3.88 — die Vorlage baut sich selbst 2026-08-01 05:01:44 +02:00
HostTokenKeyMigrationTest.php Make host onboarding survive the machine it runs on 2026-07-30 00:54:16 +02:00
InstanceRestartTest.php Fix nine defects in the provisioning pipelines 2026-07-30 01:34:55 +02:00
LiveProgressTest.php Send a guest bounced off the console to the console's own sign-in 2026-07-28 13:32:05 +02:00
PipelineRegistryTest.php Fix nine defects in the provisioning pipelines 2026-07-30 01:34:55 +02:00
PruneHostDnsTest.php Hetzner-Cloud-DNS, Bereitschaftsseite aus sich heraus behebbar 2026-07-31 19:50:01 +02:00
RunRunnerTest.php Fix nine defects in the provisioning pipelines 2026-07-30 01:34:55 +02:00
ServicesTest.php Release v1.3.93 — die Seite konnte den Host gar nicht fragen 2026-08-01 11:23:00 +02:00
StripeWebhookTest.php Stop charging for a service that has ended 2026-07-30 00:52:19 +02:00
SubscriptionSnapshotTest.php Release v1.3.85 — Handshake-Prüfung hing an einem Programm, das es nicht gibt 2026-08-01 03:00:19 +02:00
TickProvisioningTest.php feat(billing): the plan catalogue becomes three tables, and config stops selling 2026-07-26 12:05:56 +02:00