fix(infra): cdk destroy of the Fargate stack fails when the last blue/green deploy left green live
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 55/100
- Issue-Typ
- Bug
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- aws, python
- Bereich
- cloud, infrastructure
Rechercherichtung
Start in infrastructure/cdk/stacks/fargate_service_stack.py, where the listener rules (https_listener.add_target_groups(...)) and the TestListener are defined, and check which target groups each one depends on. Make every rule and the TestListener depend on both blue and green target groups using node.add_dependency, then add a synth test that asserts the DependsOn entries. Done when cdk synth shows the dependencies and the docs/self-hosting/cdk.md 'Tearing an environment down' section covers the interim workaround.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
cdk destroy experimentation-fargate-<env> fails with DELETE_FAILED on the green target group ("target group ... is currently in use by a listener") whenever the last blue/green deployment left the live listener rules pointing at green.
Why: CodeDeploy's blue/green deployment moves the HTTPS listener's rules between the blue and green target groups outside CloudFormation. After an odd number of deployments the rules point at green, while the template still describes the rules the stack created. In infrastructure/cdk/stacks/fargate_service_stack.py neither the listener rules (https_listener.add_target_groups(...)) nor the TestListener declare a dependency on both target groups (there is no add_dependency / DependsOn between them), so CloudFormation may delete the green target group before the rules and the listener that still use it. The rest of the stack is deleted; a second cdk destroy then succeeds. This is deterministic, not a race.
Expected: cdk destroy succeeds in one run whatever target group is live.
Fix: make every listener rule and the TestListener depend on BOTH target groups (node.add_dependency on each), so CloudFormation deletes the rules and listeners before either target group; pin it with a synth test that asserts the DependsOn entries. Until it ships, docs/self-hosting/cdk.md's "Tearing an environment down" section should say: if the Fargate stack's delete fails with "in use by a listener", run cdk destroy for that stack again.
Found while tearing down a test environment. Priority is set in the pre-launch bug triage.
- Vorherrschende Sprache
- Python
- Sterne
- 0
- Forks
- 4
- Ø Merge
- 7 Std. 30 Min.
- Gemergte PRs (30 T.)
- 468
Entwicklungsumgebung
- Enthält ein Dockerfile oder eine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus Controlvar/controlvar
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 85/100
Controlvar/controlvar#1888 ·
Maintainer antworten meist innerhalb von 1 Tag
-
documentation post-launch
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 73/100
Controlvar/controlvar#1837 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug post-launch
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Controlvar/controlvar#1836 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 90/100
Controlvar/controlvar#1447 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement post-launch
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Controlvar/controlvar#1042 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in Controlvar/controlvar
Ähnliche Issues
-
question
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 68/100
vllm-project/vime#524 ·
Maintainer antworten meist innerhalb von 7 Tagen
-
WOPI editor page is scrollable by a few pixels, which breaks scrolling in the document (Firefox)Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
suitenumerique/drive#969 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 67/100
theupdateframework/python-tuf#3044 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
FAIRmat-NFDI/pynxtools#861 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
NVIDIA/nsight-python#88 ·
Maintainer antworten meist innerhalb von 1 Tag