FAQ zum Befehlskontext beim Emdash-CMS-Deployment
Wo Emdash-CMS-Deployment-Befehle in Monorepo-, Template- und Standalone-Layouts ausgeführt werden.
Wo genau sollten Deployment-Befehle ausgeführt werden?
Standardregel: Befehle im Root des Ziel-Site-Projekts.
Im falschen Verzeichnis lösen Skripte, Configs und Bindings oft den falschen Kontext aus.
Was zählt als „Ziel-Projektroot“?
Typischerweise sind alle folgenden Punkte erfüllt:
- projektspezifisches
package.json - site-spezifisches
astro.config.* wrangler.jsonc(für den Cloudflare-Flow)
Wenn diese drei vorhanden sind, sind Sie wahrscheinlich im richtigen Deployment-Kontext.
Wie unterscheidet sich das bei Monorepo, Template-Kopie und Standalone?
Standalone-Projekt
Direktester Pfad: alle Befehle in einem Verzeichnis.
Aus Template abgeleitetes Projekt
Zuerst Projekt-name, Skripte und Bindings nach dem Kopieren aus dem Template anpassen; dann Deployment-Befehle ausführen.
Monorepo
Vor dem Deploy in das konkrete App-Paket wechseln. App-Deployment-Befehle nicht vom Monorepo-Root ausführen, es sei denn, Skripte leiten explizit an dieses Paket weiter.
Was sind die häufigsten Symptome für das falsche Verzeichnis?
- Deployment-Skript nicht gefunden (liegt im Unterverzeichnis)
wrangler.jsoncfehlt oder falsche Datei wird geladen- Binding-Namen stimmen nicht (Config eines anderen Projekts)
- Build ok, Deploy zielt aber auf falschen Worker-Namen
Meist sind es Kontextfehler, keine Syntaxfehler der Befehle.
Schneller 20-Sekunden-Preflight
Vor Deploy-Befehlen:
pwdzeigt auf das erwartete Projekt.package.json-Name passt zur Ziel-Site.wrangler.jsonc-Namen (name, D1, R2) passen zur Zielumgebung.
Das spart mehr Zeit als wiederholte Retries.
Kann ich Paketmanager mischen?
Nicht empfohlen.
Pro Deployment-Flow einen Paketmanager nutzen, um Lockfile-Drift und unterschiedliche Dependency-Auflösung zu vermeiden.
Team-Praktiken gegen Kontextfehler
Empfohlene Kontrollen:
- exakte Befehlsverzeichnisse im README dokumentieren
- Preflight-Checks in kritischen Skripten
- Pfad-Konsistenz-Checks in CI
Die meisten Deploy-Fehler sind keine Plattform-Tiefenprobleme, sondern unklare Befehlskontext-Annahmen.
Nützlicher Befehlsausschnitt
pwd
ls
npm run build
npm run deploy