Önizleme dağıtımları, her çekme isteğine kendi canlı URL'sini verir; bu URL o dalın kodundan derlenir, böylece inceleyenler bir fark listesini okuyup tahmin yürütmek yerine gerçek değişikliğe tıklayarak bakabilir. Her önizleme, yeni bir commit gönderdiğinizde güncellenir ve çekme isteği kapandığında otomatik olarak temizlenir.
Önizleme Dağıtımları Nerede Bulunur
Web Siteleri kısmını açın, siteye tıklayın, sitenin sol menüsünde Environment grubunu açın ve Önizleme seçeneğini seçin. Sayfanın başlığı Ön izleme dağıtımları'tur.
Önizlemeler, staging ortamından ayrıdır. Staging, kasıtlı olarak gönderdiğiniz, sitenin uzun ömürlü tek bir kopyasıdır; önizleme ise her çekme isteği için oluşturulan ve sonrasında atılan, kısa ömürlü bir ortamdır. Birçok ekip ikisini birden kullanır. Diğer yarısı için Staging Ortamları başlığına bakın.

Önce Git Dağıtımını Ayarlayın
Önizlemeler tek başına bir özellik değildir. Üretim sitesinin dağıtım anahtarını ve derleme komutunu yeniden kullanırlar, bu yüzden önizlemelerin etkinleştirilebilmesi için sitede çalışan bir Git Deploy yapılandırması bulunması gerekir.
Git Deploy yapılandırılmamışsa sayfa Önce Git dağıtımı ayarlayın yazısını gösterir ve etkinleştirme formu yerine bir Git dağıtımına git düğmesi sunar. Bir Siteyi Git Üzerinden Dağıtma bölümünü tamamlayıp ardından buraya geri dönün.
Git Deploy bağlıysa ama bir derleme komutu yoksa, Preview sayfası bir uyarı gösterir. Önizlemeler, deponun zaten derlenmiş olduğunu ve statik dosyaların kök dizinde bulunduğunu varsayar. Bu, sade bir HTML sitesi için doğrudur ama derleme gerektiren her şey için yanlıştır, bu yüzden projeniz gerektiriyorsa Git Deploy sayfasında bir derleme komutu belirleyin.
Önizlemeleri Etkinleştirme
- Ön izleme dağıtımlarını etkinleştir kartında, depoyu
owner/repobiçiminde yazın. Bir URL değil, bir SSH adresi değil: yalnızca iki bölüm, örneğinacme/marketing-site. - Enable düğmesine tıklayın.
owner/name ile eşleşmeyen her şey Depo owner/name biçiminde olmalıdır uyarısıyla reddedilir.
Etkinleştirmenin hemen ardından, KPanel Webhook sırrınızı şimdi kopyalayın başlıklı bir kartta webhook imzalama sırrını gösterir ve bunu bir daha görmeyeceğinize dair bir uyarı sunar.
Sayfadan ayrılmadan önce sırrı kopyalayın. Yalnızca bir kez üretilir ve sonrasında yeniden alınamaz. Kaybederseniz çözüm, onu yeniden oluşturmaktır; bu da eskisini geçersiz kılar ve deponuzun webhook'unu yine de güncellemeniz gerektiği anlamına gelir.
Depolamaya Webhook Ekleme
Yapılandırılmış kart, depo ayarlarınızdaki Webhooks bölümüne yapıştırılacak bir Web kancası URL'si gösterir. Şunlarla yapılandırın:
- Taşıyıcı URL: sayfada gösterilen webhook URL'si.
- Secret: az önce kopyaladığınız değer.
- İçerik türü: JSON.
- Events: çekme isteği olayları, ayrıca gönderimler (push), böylece açık bir çekme isteğindeki yeni commit'ler önizlemeyi yeniden derler.
Bu ayarlandıktan sonra, bir çekme isteği açmak birkaç dakika içinde bir önizleme oluşturur. Arka planda bir iş, her dakika yeni önizleme işi olup olmadığını kontrol eder, bu yüzden KPanel'de herhangi bir şeye basmanıza gerek yoktur.
Önizleme URL'leri
Her önizleme, pr-<pull-request-number>-<site-id>.kapsulecloud.app biçiminde kendi ana makine adını alır; bu, bir joker (wildcard) sertifika ile kapsanır, böylece kendi sertifika adımınız olmadan HTTPS üzerinden sunulur.
Bir önizlemeyi açmanın güvenilir yolu, Son Önizlemeler bölümündeki önizleme satırının Open düğmesidir; bu düğme o derleme için sağlanan tam URL'yi taşır. Bu bağlantıyı çekme isteğine yapıştırın, böylece inceleyenlerin KPanel'i bulmasına hiç gerek kalmaz.
Son Önizlemeler Listesini Okuma
Son Önizlemeler bölümü, en yeniden en eskiye doğru son önizlemeleri listeler. Her satır, çekme isteği numarasını ve başlığını, dalı, commit'i ve bir durumu gösterir:
| Durum | Anlamı |
|---|---|
| BUILDING | Şu anda klonlanıyor ve derleniyor |
| LIVE | Önizleme URL'sinde sunuluyor |
| FAILED | Derleme hata verdi; nedenini görmek için günlüğü genişletin |
| DESTROYED | Temizlendi, genellikle çekme isteği kapandığı için |
Bir satırda derleme çıktısını satır içinde genişletmek için Derleme günlüğünü aç/kapat düğmesine tıklayın. Bir önizleme başarısız olduğunda bakılacak ilk yer bu günlüktür ve bu çıktı, derlemenizin yerel olarak üreteceği çıktıyla aynıdır.
Liste boşsa sayfa bunu belirtir: depoda bir çekme isteği açın, birkaç dakika içinde bir önizleme oluşturulacaktır.
Webhook Sırrını Döndürme
Yapılandırılmış kartta Sırrı yeniden oluştur düğmesine tıklayın. KPanel sizden onay ister ve mevcut sırrın hemen çalışmayı durduracağını, sonrasında deponuzun webhook ayarlarında bunu güncellemeniz gerekeceğini açıkça belirtir.
Yeni sır, öncekiyle aynı tek seferlik kartta bir kez gösterilir. Onu kopyalayın, ardından deponuzdaki webhook'u güncelleyin. Bu iki an arasında gelen webhook teslimatları reddedilir, bu yüzden iki adımı art arda yapın.
Depo yönetici erişimi olan biri ayrıldığında ya da sır paylaşımlı bir sohbet kanalı veya bir destek talebi gibi olmaması gereken bir yere yapıştırılmışsa sırrı yeniden oluşturun.
Önizlemeleri Kapatma
Disable düğmesine tıklayın. Yapılandırma kapatılır ve saklanan sır temizlenir. Var olan önizlemeler artık yeniden derlenmez.
Deponuzdaki webhook'u da silerek düzeni tamamlayın. Aksi halde zararlı bir şey yapmak yerine başarısız olmaya başlar, ama sürekli hata döndüren bir webhook, deponuzun teslimat günlüğünde gürültüden ibarettir.
Maliyetler ve Düzenli Bakım
Önizlemeler gerçek kodu derleyip sunar, bu yüzden sitedeki diğer her dağıtımla aynı kaynakları kullanır. İki alışkanlık bunu kontrol altında tutar:
- Artık üzerinde çalışmadığınız çekme isteklerini kapatın. Kapatılan bir çekme isteğinin önizlemesi otomatik olarak temizlenir.
- Önizlemeleri üretim kimlik bilgilerine yönlendirmeyin. Onlara Secrets sekmesindeki preview ortamı üzerinden test anahtarları verin; bu ortam tam olarak önizleme ve üretim yapılandırmasının birbirine karışmaması için vardır.
Bir önizleme URL'si özel değildir. Geçerli bir sertifikaya sahip, gerçek ve herkese açık olarak erişilebilen bir ana makine adıdır ve bağlantıya sahip olan herkes onu açabilir. Gerçek müşteri verisi içeren herhangi bir şeyi incelemek için önizleme kullanmayın ve önizleme ortamlarını bir üretim veritabanı dökümünden tohumlamayın.
Sorun Giderme
Bir çekme isteği açıldığında hiçbir şey derlenmiyor. Deponuzdaki webhook'un son teslimatlarını kontrol edin. 401 veya 403, sırrın eşleşmediği anlamına gelir; bu yüzden onu yeniden oluşturun ve her iki tarafı da güncelleyin. Hiç teslimat olmaması, webhook'un çekme isteği olaylarına abone olmadığı anlamına gelir.
Önizleme derleniyor ama bir dizin listesi veya 404 gösteriyor. Git Deploy sayfasındaki çıktı dizini, derlemenizin gerçekte yazdığı yerle eşleşmiyor. Önizlemeler bu ayarı üretimden devralır.
Derleme yalnızca önizlemede başarısız oluyor. En yaygın neden, üretimde bulunan ama önizleme ortamına hiç eklenmemiş bir bağımlılık veya ortam değişkenidir. Secrets sayfasındaki preview sekmesini kontrol edin.
Bir önizleme URL'si çalışmayı durduruyor. Satırındaki duruma bakın. DESTROYED, çekme isteğinin kapandığı ve ortamın geri alındığı anlamına gelir; bu beklenen davranıştır.
Sırada Ne Var
- Bir Siteyi Git Üzerinden Dağıtma, ön koşul yapılandırması.
- Bir Site İçin Uygulama Sırlarını Saklama, ortam başına kimlik bilgileri için.
- Staging Ortamları, kalıcı bir ön üretim kopyası için.