# Coolify-Update auf Vendoo 1.42.0

# Empfohlener automatischer Weg

Für den normalen Updatefall nur das Release-ZIP entpacken und `UPDATE_VENDOO.bat` doppelklicken. GitHub-Anmeldung und Coolify-Webhook werden nur beim ersten Start abgefragt. Alle nachfolgenden Schritte dieser Datei sind der manuelle Notfall- und Kontrollweg.

## Voraussetzungen

- Repository: `Masterluke77/vendoo`
- Produktionsbranch: `main`
- Dockerfile-Build
- interner Port: `8124`
- Domain: `https://vendoo.flatlined.de`
- persistentes Volume unverändert nach `/app/data`
- genau eine Instanz
- Rolling Updates aus
- Auto Deploy aus
- FLUX Studio aus

## Vor dem Merge

1. Releasebranch `release/1.42.0-production-operations` aus aktuellem `main` erstellen.
2. Vollständigen Source-Stand übertragen; keine `.env`, Datenbank, Uploads, Backups, Logs, Master-Keys oder installierten Laufzeitmodule committen.
3. `npm ci` und `npm run verify:all` ausführen.
4. Draft-PR erstellen und GitHub Actions abwarten.
5. Erst nach grünem CI und Review nach `main` mergen.

## Zusätzliche Coolify-Variablen

```env
COOLIFY_DEPLOYMENT_STATUS_ENDPOINT=/api/v1/deployments/{deployment_id}
VENDOO_DEPLOY_TIMEOUT_SECONDS=900
VENDOO_DEPLOY_HEALTH_POLL_SECONDS=15
VENDOO_BUILD_REVISION=<Git-Commit-SHA>
VENDOO_COOLIFY_AUTO_DEPLOY=false
```

Die vorhandenen Produktionswerte müssen erhalten bleiben:

```env
NODE_ENV=production
PORT=8124
VENDOO_BIND_HOST=0.0.0.0
PUBLIC_BASE_URL=https://vendoo.flatlined.de
VENDOO_ALLOWED_HOSTS=vendoo.flatlined.de
VENDOO_ALLOWED_ORIGINS=https://vendoo.flatlined.de
VENDOO_TRUST_PROXY=true
VENDOO_COOKIE_SECURE=true
VENDOO_COOKIE_SAMESITE=lax
VENDOO_INITIAL_DISABLED_MODULES=vendoo.flux-studio
LOCAL_IMAGE_ENABLED=false
LOCAL_IMAGE_ALLOW_REMOTE=false
VENDOO_GITHUB_REPOSITORY=Masterluke77/vendoo
VENDOO_GITHUB_BRANCH=main
VENDOO_UPDATE_CHANNEL=stable
VENDOO_BACKUP_BEFORE_DEPLOY=true
VENDOO_DEPLOY_BACKUP_UPLOADS=false
```

## Coolify-Konfiguration prüfen

1. Coolify öffnen und Projekt **Vendoo → Production → Application** wählen.
2. Source muss die private GitHub-App, Repository `Masterluke77/vendoo` und Branch `main` verwenden.
3. Build Pack **Dockerfile**, Base Directory `/`, Dockerfile `/Dockerfile`.
4. Port `8124`; kein öffentliches Host-Port-Mapping.
5. Domain `https://vendoo.flatlined.de`; HTTPS erzwingen.
6. Volume `vendoo-data` unverändert nach `/app/data`.
7. Replikate `1`, Rolling Updates aus, Auto Deploy aus.
8. Healthcheck `/readyz` mit erwartetem HTTP 200.
9. Speichern, aber das Volume niemals neu anlegen oder löschen.

## Erstes kontrolliertes Deployment

1. Nach dem Merge Coolify noch nicht blind mehrfach starten.
2. Bestehendes Vendoo öffnen: **Administration → System → Updates**.
3. Produktionscheck ausführen und Fehler vor dem Deployment beheben.
4. Coolify-Provider, Trigger-Modus, Resource UUID, Repository und `main` prüfen.
5. Webhook oder API-Token nur über die Vendoo-Oberfläche in den verschlüsselten Secret Store eintragen.
6. **Version prüfen**. Eine neuere Zielversion wird nur akzeptiert, wenn das freigegebene Manifest SemVer, Kanal, HTTPS-Paket-URL und SHA-256 erfüllt.
7. Zielversion `1.42.0` eintragen.
8. Vorab-Backup aktiviert lassen. Uploads nur bei ausreichendem Backup-Speicher einschließen.
9. **Coolify-Deployment starten** wählen und exakt `DEPLOY` eingeben.
10. Der Auftrag muss nacheinander Backup, Backup-Verifikation und Coolify-Trigger protokollieren.
11. Im API-Modus wird der Coolify-Status gepollt. Im Webhook-Modus nach dem tatsächlichen Coolify-Abschluss im Verlauf **Externen Abschluss bestätigen** wählen und exakt `CONFIRM` eingeben.
12. Erfolg darf erst erscheinen, wenn `/readyz` grün ist und die laufende Version `1.42.0` meldet.

## Abnahme nach Deployment

- `/readyz` liefert HTTP 200 und Version `1.42.0`.
- Login funktioniert.
- Bestehende Benutzer, Artikel und Uploads sind vorhanden.
- SQLite-Integrität ist `ok`.
- Letztes Vorab-Backup ist als verifiziert sichtbar.
- Deployment-Verlauf zeigt `succeeded` und nachvollziehbare Events.
- FLUX Studio bleibt deaktiviert.
- Produktionscheck hat keine Fehler.

## Fehler und Rollback

Bei `rollback_required` nicht erneut deployen, bevor die Ursache geprüft wurde.

1. Coolify-Build- und Startlogs sichern.
2. `/readyz`, Zielversion und Volume-Mount prüfen.
3. In Coolify den letzten funktionierenden Commit beziehungsweise das vorige Image redeployen.
4. Dasselbe Volume `/app/data` weiterverwenden.
5. Volume niemals löschen oder neu initialisieren.
6. Nach erfolgreichem Rollback Login, Artikel, Uploads, SQLite und `/readyz` prüfen.
7. Den blockierten Vendoo-Auftrag erst danach mit **Prüfung abschließen** und exakt `CONFIRM` dokumentiert schließen.
