Ç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 temeli ile 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 bulmanın zor olabileceği sorunları ortaya çıkarabilir. Çekme isteği tetikleyicileri, kodunuzu dağıtmadan önce karşılanması gereken bir dizi ölçüt 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

Çekme isteği dağıtımı

Çekme isteği tetikleyicileriyle, belirlenen dal için her yeni çekme isteği gönderdiğinizde, 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.

  1. Azure DevOps projenize gidin, İşlem Hatları Yayınları'na> ve ardından yayın işlem hattınızı seçin.

  2. Yapıtlar bölümünde Sürekli dağıtım tetikleyicisi simgesini seçin.

    Sürekli dağıtım tetikleyici ayarlarına erişmeyi gösteren ekran görüntüsü.

  3. Çekme isteği tetikleyicisini etkinleştirmek için iki durumlu düğmeyi seçin.

    Çekme isteği tetikleyicilerinin nasıl etkinleştirileceğine ilişkin ekran görüntüsü.

  4. Açılan menüden Hedef Dalınızı seçin.

    Hedef dalı seçmeyi gösteren ekran görüntüsü.

  5. 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ımları için etkinleştirilen aşamaların listesini gösteren ekran görüntüsü.

    Ç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ındanYayından sonratetikleyiciler'i> seçin. Son olarak , etkinleştirmek için Çekme isteği dağıtımı iki durumlu düğmesini seçin.

    Belirli bir aşama için çekme isteği dağıtımlarının nasıl etkinleştirileceğine ilişkin ekran görüntüsü.

Ö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.

  1. Projenize gidin ve deponuzun dal listesine erişmek için Depo>Dalları'nı seçin.

    Azure Repos dallara gitmeyi gösteren ekran görüntüsü.

  2. Uygun dalınız ...için bağlam menüsünü seçin ve ardından Dal ilkeleri'ni seçin.

    Belirli bir dal için dal ilkelerine erişmeyi gösteren ekran görüntüsü.

  3. 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.

    Durum ilkesinin nasıl ekleneceğini gösteren ekran görüntüsü.

    Not

    Durum listesini almak için yayın tanımının çekme isteği tetikleyicisi etkinken en az bir kez çalışması gerekir. Daha fazla ayrıntı için bkz. Dış hizmet için dal ilkesi yapılandırma .

  4. Yeni durum ilkesi eklendiyse, kullanıcılar çekme isteğine "başarılı" durumu gönderilmeden hedef dalda yapılan değişiklikleri birleştiremez.

    Durum ilkelerinin listesini ve çekme isteği dağıtım ilkesinin etkinleştirildiğini gösteren ekran görüntüsü.

  5. İlkelerinizin durumunu çekme isteğine Genel Bakış sayfasından görüntüleyebilirsiniz. İlke ayarlarınıza bağlı olarak, Gerekli, İsteğe Bağlı veya Durum bölümleri altında gönderilen yayın durumunu görüntüleyebilirsiniz. yayın durumu, işlem hattı her tetiklendiğinde güncelleştirilir.

    Çekme isteği ilkeleri durumunu gösteren ekran görüntüsü.

GitHub depoları için durum denetimlerini ayarlama

GitHub deposu için durum denetimlerinin etkinleştirilmesi, bir çekme isteğinin hedef dala birleştirilmesi için yöneticinin hangi ölçütlere uyması gerektiğini seçmesine olanak tanır.

Not

Durum denetimleri, çekme isteği dağıtım koşulu Etkin olarak yayın işlem hattınız en az bir kez çalıştırıldıktan sonra çekme isteğinize gönderilir. Diğer ayrıntılar için bkz . Dal koruma kuralları .

Durum denetimlerini etkinleştirmeyi gösteren ekran görüntüsü.

Çekme isteğinizdeki durum denetimlerinizi Konuşma sekmesinde görüntüleyebilirsiniz.

Çekme isteği durum denetimlerini gösteren ekran görüntüsü.