Ç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

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

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

    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'ta dallara gitmeyi gösteren ekran görüntüsü.

  2. Uygun dalınız ...için bağlam menüsünü 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ı, ç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.

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

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

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

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

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

Çekme isteğinizdeki durum denetimlerinizi Konuşma sekmesinin altında görüntüleyebilirsiniz.

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