Skip to content

mw stack up startet Container bei Image-Update nicht neu, anschließendes mw container restart schlägt mit 412 fehl #1827

@DrWh0286

Description

@DrWh0286

Beschreibung:
Beim Deployment eines neuen Image-Tags via mw stack up meldet der Stack Erfolg, aber die Container werden nicht neu gestartet — der alte Code bleibt aktiv. Ein anschließendes mw container restart schlägt mit einem 412-Fehler fehl.

Umgebung:

  • @mittwald/cli Version: 1.15.x
  • Deployment via GitLab CI

Schritte zur Reproduktion:

  1. Neues Docker-Image mit neuem Tag bauen (z.B. phpfpm-staging-abc1234)
  2. Deployment via mw stack up -c docker-compose.yml -s <stack-id> --env-file .env
  3. Direkt danach mw container restart <container-id> --project-id <project-id> aufrufen

Beobachtetes Verhalten:
Schritt 2 gibt zurück:
Deployment successful. No services were restarted. No services were deleted.
Schritt 3 schlägt fehl mit:

Response     412 Precondition Failed
Message      cannot start service <id>, it is already starting

Auch mit einem sleep 5 zwischen Schritt 2 und 3 bleibt der 412-Fehler bestehen.

Erwartetes Verhalten:
Entweder:

  • mw stack up sollte betroffene Container neu starten, wenn sich der Image-Tag ändert,

oder

  • mw container restart sollte nach Abschluss von mw stack up erfolgreich ausführbar sein

Auswirkung:
Nach einem Deployment mit neuem Image-Tag laufen die Container weiterhin mit dem alten Image. Der neue Code wird nicht übernommen, weil der OPcache von PHP-FPM den alten Bytecode im Speicher hält. Ein Container-Neustart ist der einfachste und zuverlässigste Weg, den OPcache zu leeren und das neue Image zu aktivieren. Dies lässt sich aktuell über die CLI nicht zuverlässig automatisieren.

Workaround:
Ein manueller Neustart über das mStudio funktioniert, macht aber automatisierte CI/CD-Deployments zunichte.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions