Çekme isteği Yapıtlarını klasik yayın işlem hatları ile dağıtma
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Çekme istekleri, kod tabanıyla birleştirilmeden önce kod değişikliklerini gözden geçirmek için etkili bir yol sağlar. Ancak, bu değişiklikler uygulamanızı derlemeden ve belirli bir ortama dağıtmadan bulmak zor olabilecek sorunlara neden olabilir. Çekme isteği tetikleyicileri, kodunuzu dağıtmadan önce karşılanması gereken bir ölçüt kümesi ayarlamanıza olanak tanır. Bu makalede, derleme yapıtınızı dağıtmak için Azure Repos ve GitHub ile çekme isteği tetikleyicilerini ayarlamayı öğreneceksiniz.
Önkoşullar
- Azure Repos veya GitHub'da barındırılan kaynak kodu. Pipelines-dotnet-core örnek uygulamasını kullanın ve deponuzu henüz yapmadıysanız oluşturun.
- Deponuz için çalışan bir derleme işlem hattı .
- Klasik yayın işlem hattı. Henüz bir yayın işlem hattınız yoksa Klasik yayın işlem hattı ayarlayın.
Çekme isteği dağıtımı
Çekme isteği tetikleyicileriyle, belirlenen dal için yeni bir çekme isteği oluşturduğunuz her durumda, belirlenen ortamlara dağıtımı başlatmak için otomatik olarak bir yayın tetikler. Ardından dağıtım durumu çekme isteği sayfasında görüntülenir. Çekme isteği tetikleyicileri daha iyi kod kalitesini korumanıza, daha yüksek güvenle yayınlamanıza ve geliştirme döngüsünün başlarındaki sorunları keşfetmenize yardımcı olabilir.
Çekme isteği dağıtımlarını ayarlamak iki adımlı bir işlemdir. İlk olarak bir çekme isteği tetikleyicisi ayarlamalı ve ardından yayın işlem hatlarımız için dal ilkeleri (Azure Repos) veya durum denetimleri (GitHub) ayarlamalıyız.
Çekme isteği tetikleyicisi oluşturma
Çekme isteği tetikleyicisi, her yeni derleme Yapıtı kullanılabilir olduğunda bir yayın oluşturur.
Azure DevOps projenize gidin, İşlem Hatları Yayınları'na> ve ardından yayın işlem hattınızı seçin.
Yapıtlar bölümünde Sürekli dağıtım tetikleyicisi simgesini seçin.
Çekme isteği tetikleyicisini etkinleştirmek için iki durumlu düğmeyi seçin.
Açılan menüden Hedef Dalınızı seçin.
Uygulamanızı belirli bir aşamaya dağıtmak için bu aşamayı açıkça kabul etmeniz gerekir. Aşamalar bölümünde, çekme isteği dağıtımları için etkinleştirilen aşamalar gösterilir.
Çekme isteği dağıtımı için bir aşamayı kabul etmek için, belirli bir aşamanızın Dağıtım öncesi koşulları simgesini seçin ve ardından Yayından sonra tetikleyiciler'i>seçin. Son olarak, etkinleştirmek için Çekme isteği dağıtımı iki durumlu düğmesini seçin.
Önemli
Üretim aşamaları için otomatik çekme isteği dağıtımlarının etkinleştirilmesi önerilmez.
Azure Repos için dal ilkelerini ayarlama
Bir çekme isteğinin birleştirilmesi için karşılanması gereken ölçütlerin listesini uygulamak için dal ilkelerini kullanabilirsiniz.
Projenize gidin ve deponuzun dal listesine erişmek için Depo>Dalları'nı seçin.
Uygun dalınız
...
için bağlam menüsünü ve ardından Dal ilkeleri'ni seçin.Durum ilkesi ekle'yi ve ardından açılan menüden denetlenecek Durum'u seçin. Yayın tanımınıza karşılık gelen durumu seçin ve ardından Kaydet'i seçin.
Not
Durum listesini almak için yayın tanımı, çekme isteği tetikleyicisi etkinken en az bir kez çalıştırılmalıdır. Daha fazla ayrıntı için bkz . Dış hizmet için dal ilkesi yapılandırma.
Yeni durum ilkesi eklendikten sonra, kullanıcılar çekme isteğine "başarılı" durumu gönderilmeden hedef dalda yapılan hiçbir değişikliği birleştiremez.
İlkelerinizin durumunu çekme isteğine Genel Bakış sayfasından görüntüleyebilirsiniz. İlke ayarlarınıza bağlı olarak, gönderilen yayın durumunu Gerekli, İsteğe Bağlı veya Durum bölümlerinin altında görüntüleyebilirsiniz. yayın durumu, işlem hattı her tetiklendiğinde güncelleştirilir.
GitHub depoları için durum denetimleri ayarlama
GitHub deposu için durum denetimlerinin etkinleştirilmesi, bir çekme isteğinin hedef dalda birleştirilmesi için yöneticinin hangi ölçütlere uyması gerektiğini seçmesine olanak tanır.
Not
Durum denetimleri çekme isteğinizde yalnızca yayın işlem hattınız çekme isteği dağıtım koşulu Etkin olarak en az bir kez çalıştırıldıktan sonra gönderilir. Daha fazla ayrıntı için bkz . Dal koruma kuralları .
Çekme isteğinizdeki durum denetimlerinizi Konuşma sekmesinin altında görüntüleyebilirsiniz.