Ana içeriğe atla

Kazzle CLI

Kazzle CLI’yi uygulama komutlarını geliştirme ve önizlemede çalıştırmak için kullanın:
kazzle run -- <command>
-- sonrasındaki her şey gerçek komuttur. Kazzle önce runtime ortamını enjekte eder. kazzle run yalnızca geliştirme ve önizleme içindir. dev betiğine aittir, asla start içine konmaz. Üretimde, dağıtılan runtime PORT, HOST ve sırları doğrudan enjekte eder ve üretim komutu basit komuttur (örn. bun run index.ts). kazzle CLI dağıtılan görüntülerde yüklü olmadığından, kazzle run çağıran bir üretim komutu kazzle: command not found hatasıyla çöker.

kazzle run neyi enjekte eder

  • bileşenin kazzle.config.ts içindeki env girişinden gelen sırlar
  • PORT ve HOST
  • KAZZLE_APP_COMPONENT_SERVER_URL gibi kardeş bileşen URL’leri
  • uygulama kimliği ve bileşen adı gibi Kazzle runtime kimliği

Örnek

{
  "scripts": {
    "dev": "kazzle run -- bun --watch server/index.ts",
    "start": "bun server/index.ts"
  }
}
dev Kazzle’nin önizleme portunu ve runtime ortamını enjekte edebilmesi için kazzle run aracılığıyla çalışır. start basit komuttur — üretim PORT/HOST/sırları kendisi enjekte eder. Sır koleksiyon adlarını package.json içine koymayın. Bunları kazzle.config.ts içine koyun.
components: [
  {
    name: 'server',
    type: 'process',
    path: './server/index.ts',
    env: { collection: 'my-app', environment: 'local' },
  },
]

Bir checkout’u bir uygulamaya bağlama

kazzle run bu dizinin hangi uygulamaya ait olduğunu bilmesi gerekir. Çözümleme sırası:
  1. Komut satırında --app=<appId>
  2. KAZZLE_APP_ID ortam değişkeni (Kazzle denetlenen bir bileşeni başlattığında otomatik olarak ayarlanır)
  3. Geçerli dizinden yukarı doğru yürütülen .kazzle/link.json
Bunların hiçbiri çözümlenmezse, kazzle run şu hatayla çıkar:
Error: This directory is not linked to a Kazzle app. Run `kazzle link` to fix.
app { action: "create" } otomatik olarak <checkout>/.kazzle/link.json yazar — Vercel’in .vercel/project.json gibi. Dosya her clone başına özeldir ve gitignore’lanır. Mevcut bir uygulamanın yeni bir git clone işleminden sonra şunu çalıştırın:
kazzle link              # geçerli dizini space'inizin uygulama checkout'larıyla eşleştirin
kazzle link --app=<id>   # belirli bir uygulamayı zorla
kazzle unlink            # bağlantı dosyasını silin
YZ bir thread’den eksik bir bağlantıyı app { action: "link", appId } ile onarabilir.