Bir proje yerel ortamda çalıştığında, dört komut onu Zinn Digital® barındırma hizmetinde canlı bir siteye taşır: oturum açın, projeyi bir barındırma yuvasına bağlayın, ön kontrolü okuyun ve push edin. Bu makale, her bir komutu, ne yazdırdığını ve sonrasında kullanacağınız komutları (yeniden dağıtımlar, dağıtım geçmişi ve derleme günlükleri) adım adım açıklamaktadır.
Bir API anahtarı ile oturum açın
Kontrol panelinde Ayarlar → API anahtarları altından bir anahtar oluşturun, ardından:
zinnector login
Anahtar bir komut istemine yazılır — komut satırında asla kabul edilmez, böylece kabuk geçmişinizde veya bir işlem listesinde yer alamaz. CI ortamında, bunu bir komut zinciriyle aktarın: echo "$ZINN_API_KEY" | zinnector login --profile ci veya ZINNECTOR_TOKEN tanımlayarak login adımını tamamen atlayın. Anahtar saklanmadan önce doğrulanır ve 600 dosya moduyla saklanır. zinnector whoami --scopes, hangi kuruluşta oturum açtığınızı ve anahtarın hangi izinleri taşıdığını gösterir; bir korumalı alan anahtarı buna uygun olarak etiketlenir.
Projeyi bir yuvaya bağlayın
zinnector link # listeden bir site seçin
zinnector link example.com --repo acme/site --branch main
link, sitenin kimliğini zinnector.json dosyasına yazar ve --no-repo parametresini iletmediğiniz sürece, projenin git uzak deposunu platformdaki siteye bağlar; böylece bir push işlemi dağıtımı gerçekleştirir. zinnector.json dosyasını commit edin: depoyu klonlayan bir meslektaşınız, bilgilendirilmesine gerek kalmadan aynı konuma dağıtım yapar. Herhangi bir gizli bilgi içermez.
Ön kontrolü okuyun
zinnector check
Bu, CLI'ın var olma amacını oluşturan komuttur. Projenizi dağıtılmak üzere olduğu yuva ile karşılaştırır ve her uyumsuzluğu — ve yapamadığı her karşılaştırmayı — yazdırır:
- PHP sürümü: Ana sürüm farkı, bir siteyi kesinlikle bozacağı için yüksek olarak derecelendirilir; ikincil sürüm farkı ise daha düşük derecelendirilir, çünkü her şeyi kritik olarak derecelendirmek insanlara uyarıları göz ardı etmeyi öğretir.
- Yuvanın üzerinde derlediğiniz sürüme geçip geçemeyeceği, yuvanın PHP'sinin ömrünün sonuna gelip gelmediği ve makinenin sürümü uygulayıp uygulamadığı ya da yalnızca bilgilendirilip bilgilendirilmediği.
- Yuva üzerinde fiilen kalan disk ve inode boşluğuna karşı projenizin boyutu ve dosya sayısı — bir WordPress dizin ağacı, disk sınırının oldukça altındayken dosya sınırına takılabilir.
- Her iki taraftaki WordPress sürümleri, yuvanın hazırlanmasının tamamlanıp tamamlanmadığı ve push edilecek bir deponun bağlı olup olmadığı.
Uyarır; asla engellemez. Her bulgu zinnector push --force ile geçersiz kılınabilir, çünkü siz kendi siteniz hakkında bir denetleyicinin bilmediği şeyleri bilirsiniz. Yapılamayan bir karşılaştırma asla başarılı olarak değil, bilinmiyor olarak bildirilir ve özet her zaman bunlardan kaç tane olduğunu belirtir. Varsayılan olarak yerel PHP sürümü, zinnector.json içinde belirtilen sürümdür; --probe bunun yerine yerel çalışma ortamını başlatır ve onu ölçer. --strict, bilinmeyen durumlarda da sıfır olmayan bir çıkış kodu verir, ki bu da bir CI denetim noktasının istediği şeydir.
Push
zinnector push
push, ön kontrolü çalıştırır, commit'lerinizi push eder, dağıtımı tetikler ve tamamlanana kadar izleyerek nihai durumu ve dağıtılan commit'i yazdırır. --dry-run, dağıtım hariç her şeyi yapar; --no-wait işlemi tetikler ve çıkar; --no-git, push yapmadan platformda halihazırda ne varsa onu dağıtır. Dağıtılan commit az önce push edilen değilse, bunu bildirir.
Bir şeyler ters gittiğinde
zinnector deploys example.com # dağıtım geçmişi — durum, commit, tetikleyici, mesaj
zinnector logs example.com --build # en son dağıtımın derleme günlüğü
zinnector logs example.com --error # sitenin hata günlüğü
zinnector deploy example.com # platformda halihazırda bulunanı yeniden dağıtın
zinnector ai "why is my deploy failing?"
zinnector ai, platform üzerinde kendi hesabınız kapsamında çalışır; böylece aynı dağıtım geçmişini ve günlükleri görebilir. Bir projenin içinden, projenin yapısını — dizin adlarını, sürümleri ve site kimliğini — gönderir ve asla dosya içeriklerini göndermez.
İlgili