|
tests / pest (push) Failing after 9m49s
Details
tests / assets (push) Successful in 26s
Details
tests / release (push) Has been skipped
Details
Zwei Ursachen, eine davon habe ich mit v1.4.2 selbst gelegt. 1. DER NETZ-ALIAS. Damit in docker/nginx/default.conf `terminal:8082` stehen konnte statt des Namens des Nachbarcontainers, bekam queue-provisioning einen Eintrag unter `networks: aliases:`. Das ist Teil seiner NETZKONFIGURATION — und Compose baut einen Container neu, sobald die sich aendert. Neu gebaut heisst neue Adresse im Compose-Netz, heisst neu geschriebene Weiterleitungsregeln fuer den veroeffentlichten UDP-Port 51820. Auf dem liegt jede bestehende WireGuard-Sitzung. Der Preis fuer einen sprechenderen Namen in einer Konfigurationszeile war also ein Abriss saemtlicher Tunnel beim Ausrollen — der des Betreibers am Telefon wie der jedes Hosts. Alias entfernt, nginx spricht die Bruecke unter `queue-provisioning:8082` an. Nachgemessen: danach laesst `docker compose up -d` den Tunnel-Container unangetastet, und nginx erreicht die Bruecke weiterhin (426 statt 502). 2. DER ARBEITER ALS PROZESS 1. wg0 stand im Namensraum von queue-provisioning, und dessen Prozess 1 war `exec php artisan queue:work provisioning`. Endete der Arbeiter, endete der Container — und mit ihm der Namensraum und jede Sitzung darin. Ein Arbeiter endet oefter, als man denkt: `--timeout=2100` beendet ihn bei einem langen Provisionierungs-Schritt, ein fataler Fehler beendet ihn, ein Speicherlimit beendet ihn, `queue:restart` beendet ihn absichtlich. Aus jedem dieser vier Faelle wurde bisher "das VPN ist unzuverlaessig". Der Rumpf liegt jetzt in docker/provisioning-worker.sh: wg0 einmal hochziehen, danach den Arbeiter in einer Schleife halten, SIGTERM sauber weiterreichen. Nachgemessen: Arbeiter getoetet -> Container hat NULL Neustarts, wg0 steht weiter, Arbeiter ist von allein wieder da. Beide Male bleibt der Netz-Namensraum stehen. Damit verschwindet nebenbei auch der Grund, aus dem update.sh die Bruecke hinterher neu starten musste — die Zeile bleibt trotzdem, sie kostet nichts und traegt den Fall, dass der Container doch einmal neu gebaut wird. NICHT GETAGGT, mit Absicht: diese Aenderung fasst genau das an, was den Zugang des Betreibers traegt. Sie gehoert ausgerollt, wenn jemand davorsitzt und die Konsole des Anbieters als Rueckfahrkarte hat — nicht unbeaufsichtigt vom Update-Agenten, waehrend der Betreiber unterwegs ist. 2508 Tests gruen. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| Admin | ||
| Auth | ||
| Billing | ||
| Console | ||
| Host | ||
| Portal | ||
| Provisioning | ||
| Readiness | ||
| BillingTest.php | ||
| BladeCommentsTest.php | ||
| CartTest.php | ||
| ChartLiveUpdateTest.php | ||
| CheckoutPageTest.php | ||
| CheckoutWithoutStripeKeyTest.php | ||
| ComponentTest.php | ||
| ConfirmInModalTest.php | ||
| ConnectionStateTest.php | ||
| ContactRequestTest.php | ||
| CustomDomainServingTest.php | ||
| CustomDomainTest.php | ||
| CustomerTwoFactorTest.php | ||
| DashboardTest.php | ||
| DeliveryPromiseTest.php | ||
| DeploymentRunsAsTheAppUserTest.php | ||
| DisplayTimezoneTest.php | ||
| DoubleOptInTest.php | ||
| DowngradeTest.php | ||
| EditInModalTest.php | ||
| EnsureCustomerActiveTest.php | ||
| ErrorPagesTest.php | ||
| ExampleTest.php | ||
| GrossPricingTest.php | ||
| HostStepTest.php | ||
| IconLayoutTest.php | ||
| IdentitySeparationTest.php | ||
| ImpersonationTest.php | ||
| InstanceMetricsTest.php | ||
| LandingPriceSheetTest.php | ||
| MailSenderOwnershipTest.php | ||
| MailTemplatesTest.php | ||
| ModalHeightTest.php | ||
| MonitoringStatusSyncTest.php | ||
| NewDeviceWarningTest.php | ||
| OfficialDomainsTest.php | ||
| OperatingModeTest.php | ||
| PasswordPolicyTest.php | ||
| PortalHostTest.php | ||
| PortalTabsTest.php | ||
| ProcessingAgreementTest.php | ||
| ProgressStepperTest.php | ||
| PublicSiteGateTest.php | ||
| ReadinessPageTest.php | ||
| ReleaseComparisonTest.php | ||
| ReleaseVersionTest.php | ||
| SeatsTest.php | ||
| SecretSlotMigrationTest.php | ||
| SecretVaultModeTest.php | ||
| SelfServiceOrderTest.php | ||
| ServerMarketTest.php | ||
| SessionListTest.php | ||
| SettingsTest.php | ||
| SignInMailOnceTest.php | ||
| SiteDesignSystemTest.php | ||
| SparkGapTest.php | ||
| StatusHistoryTest.php | ||
| StripeStrictModeTest.php | ||
| StripeWebhookSecretByModeTest.php | ||
| SupportRequestTest.php | ||
| SwitchOperatingModeTest.php | ||
| TrafficTest.php | ||
| TranslationParityTest.php | ||
| WelcomeTest.php | ||