Değişken gruplarını yönetme

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Bu makalede, Azure Pipelines'da değişken gruplarının nasıl oluşturulacağı ve kullanılacağı açıklanmaktadır. Değişken gruplar, bir YAML işlem hattına geçirebileceğiniz veya bir projedeki birden çok işlem hattında kullanılabilir hale getirebileceğiniz değerleri ve gizli dizileri depolar.

Değişken gruplarındaki gizli dizi değişkenleri korumalı kaynaklardır. Bir değişken grubundaki gizli dizi değişkenlerine erişimi sınırlamak için onay, denetim ve işlem hattı izinlerinin birleşimlerini ekleyebilirsiniz. Güvenli olmayan değişkenlere erişim onaylar, denetimler veya işlem hattı izinleriyle sınırlı değildir.

Değişken grupları, roller ve izinler için kitaplık güvenlik modelini izler.

Değişken grubu oluşturma

Projenizdeki işlem hattı çalıştırmaları için değişken grupları oluşturabilirsiniz.

Not

Azure anahtar kasasından gizli dizileri değişken olarak bağlamak üzere gizli dizi değişken grubu oluşturmak için Azure anahtar kasasından gizli dizileri bağlama başlığındaki yönergeleri izleyin.

Azure Pipelines kullanıcı arabiriminde bir değişken grubu oluşturabilirsiniz.

Önkoşullar

İşlem hatları ve değişkenler oluşturma izinlerinizin olduğu bir Azure DevOps kuruluşu ve projesi.

Değişken grubunu oluşturma

  1. Azure DevOps projenizde soldaki menüden İşlem Hatları>Kitaplığı'nı seçin.

  2. Kitaplık sayfasında + Değişken grubu'nu seçin.

    Kitaplık ekranının ve Değişken grubu ekle düğmesinin ekran görüntüsü.

  3. Yeni değişken grubu sayfasındaki Özellikler'in altında, değişken grubu için bir ad ve isteğe bağlı bir açıklama girin.

  4. Değişkenler'in altında + Ekle'yi seçin ve ardından gruba eklenecek değişken adını ve değerini girin. Değeri şifrelemek ve güvenli bir şekilde depolamak istiyorsanız değişkenin yanındaki kilit simgesini seçin.

  5. Her yeni değişkeni eklemek için + Ekle'yi seçin. Değişken eklemeyi bitirdiğinizde Kaydet'i seçin.

    Değişken grubunu yapılandırma ve kaydetme işleminin ekran görüntüsü.

Artık bu değişken grubunu proje işlem hatlarında kullanabilirsiniz.

Mevcut bir Azure anahtar kasasına bağlanan ve seçili Key Vault gizli dizilerini değişken grubuyla eşleyen bir değişken grubu oluşturabilirsiniz. Yalnızca gizli dizi adları değişken grubuna eşlenir, gizli dizi değerlerine eşlenmez. İşlem hattı, değişken grubuna bağlantıyı çalıştırarak kasadan en son gizli dizi değerlerini getirir.

Anahtar kasasında mevcut gizli dizilerde yapılan tüm değişiklikler, değişken grubunu kullanan tüm işlem hatlarında otomatik olarak kullanılabilir. Ancak, gizli diziler kasaya eklenir veya kasadan silinirse ilişkili değişken grupları otomatik olarak güncelleştirilir. Gizli dizileri değişken grubuna dahil etmek için açıkça güncelleştirmeniz gerekir.

Key Vault, Azure'da şifreleme anahtarlarının ve sertifikaların depolanmasını ve yönetilmesini desteklese de, Azure Pipelines değişken grubu tümleştirmesi yalnızca anahtar kasası gizli dizilerini eşlemeyi destekler. Şifreleme anahtarları ve sertifikaları desteklenmez.

Not

Azure rol tabanlı erişim denetimi (Azure RBAC) kullanan anahtar kasaları desteklenmez.

Önkoşullar

  • Gizli dizilerinizi içeren bir Azure anahtar kasası. Azure portalını kullanarak anahtar kasası oluşturabilirsiniz.
  • Projeniz için bir Azure hizmet bağlantısı .

Değişken grubunu oluşturma

  1. Azure DevOps projenizde İşlem Hatları>Kitaplığı>+ Değişken grubu'nu seçin.
  2. Değişken grupları sayfasında, değişken grubu için bir ad ve isteğe bağlı bir açıklama girin.
  3. Azure anahtar kasasından gizli dizileri bağlama değişken olarak iki durumlu düğmesini etkinleştirin.
  4. Azure abonelik uç noktanızı ve anahtar kasası adınızı seçin.
  5. Kasa adının yanındaki Yetkile'yi seçerek Azure DevOps'un anahtar kasasına erişmesini sağlayın.
  6. Gizli dizileri seçin ekranında, bu değişken grubuna eşlemek için kasanızdan belirli gizli dizileri seçin ve ardından Tamam'ı seçin.
  7. Gizli dizi değişken grubunu kaydetmek için Kaydet'i seçin.

Azure anahtar kasası tümleştirmesi ile değişken grubunun ekran görüntüsü.

Not

Azure hizmet bağlantınızın anahtar kasasında en azından Alma ve Listeleme izinlerine sahip olması gerekir. Bu izinleri önceki adımlarda yetkileyebilirsiniz. Ayrıca aşağıdaki adımları izleyerek Azure portalından bu izinleri sağlayabilirsiniz:

  1. Anahtar kasası için Ayarlar'ı açın ve erişim yapılandırması>Erişim ilkelerine git'i seçin.
  2. Erişim ilkeleri sayfasında, Azure Pipelines projeniz en azından Alma ve Listeleme izinlerine sahip uygulamalar altında listelenmiyorsa Oluştur'u seçin.
  3. Gizli dizi izinleri'nin altında Al ve Listele'yi ve ardından İleri'yi seçin.
  4. Hizmet sorumlunuzu ve ardından İleri'yi seçin.
  5. yeniden İleri'yi seçin, ayarları gözden geçirin ve ardından Oluştur'u seçin.

Daha fazla bilgi için bkz . Azure Key Vault gizli dizilerini kullanma.

Değişken gruplarını güncelleştirme

Azure Pipelines kullanıcı arabirimini kullanarak değişken gruplarını güncelleştirebilirsiniz.

  1. Azure DevOps projenizde soldaki menüden İşlem Hatları>Kitaplığı'nı seçin.
  2. Kitaplık sayfasında, güncelleştirmek istediğiniz değişken grubunu seçin. Ayrıca değişken grubu listesinin üzerine gelebilir, Diğer seçenekler simgesini ve menüden Düzenle'yi seçebilirsiniz.
  3. Değişken grubu sayfasında, özelliklerden herhangi birini değiştirin ve kaydet'i seçin.

Değişken grubunu silme

Azure Pipelines kullanıcı arabiriminde değişken gruplarını silebilirsiniz.

  1. Azure DevOps projenizde soldaki menüden İşlem Hatları>Kitaplığı'nı seçin.
  2. Kitaplık sayfasında, silmek istediğiniz değişken grubunun üzerine gelin ve Diğer seçenekler simgesini seçin.
  3. Menüden Sil'i ve ardından onay ekranında Sil'i seçin.

Değişken gruplarındaki değişkenleri yönetme

Azure Pipelines kullanıcı arabirimini kullanarak değişken gruplarındaki değişkenleri değiştirebilir, ekleyebilir veya silebilirsiniz.

  1. Azure DevOps projenizde soldaki menüden İşlem Hatları>Kitaplığı'nı seçin.
  2. Kitaplık sayfasında, güncelleştirmek istediğiniz değişken grubunu seçin. Ayrıca değişken grubu listesinin üzerine gelebilir, Diğer seçenekler simgesini ve menüden Düzenle'yi seçebilirsiniz.
  3. Değişken grubu sayfasında şunları yapabilirsiniz:
    • Değişken adlarından veya değerlerinden herhangi birini değiştirin.
    • Değişken adının yanındaki çöp kutusu simgesini seçerek değişkenlerden herhangi birini silin.
    • Değişken değerinin yanındaki kilit simgesini seçerek değişkenleri gizli veya güvenli olmayan olarak değiştirin.
    • + Ekle'yi seçerek yeni değişkenler ekleyin.
  4. Değişiklik yaptıktan sonra Kaydet'i seçin.

İşlem hatlarında değişken grupları kullanma

YAML veya Klasik işlem hatlarında değişken grupları kullanabilirsiniz. Değişken grubunda yaptığınız değişiklikler, değişken grubunun bağlı olduğu tüm tanımlar veya aşamalar için otomatik olarak kullanılabilir.

YAML işlem hatlarında değişken grupları kullanma

Bir YAML işlem hattını değişken grubu kullanma yetkisi verdikten sonra, işlem hattında değişken grubunu veya içindeki değişkenleri kullanabilirsiniz.

YAML işlem hattını değişken grubunu kullanacak şekilde yetkilendirme

Değişken grubunu yalnızca YAML işlem hatlarında adlandırıyorsanız, deponuza kod gönderebilen herkes değişken grubundaki gizli dizilerin içeriğini ayıklayabilir. Bu nedenle, yaml işlem hatları ile bir değişken grubu kullanmak için grubu kullanmak için işlem hattını yetkilendirmeniz gerekir. Klasik işlem hatları, ayrı yetkilendirme olmadan değişken grupları kullanabilir.

Azure Pipelines kullanıcı arabirimini kullanarak işlem hatlarını değişken gruplarınızı kullanacak şekilde yetkilendirilebilirsiniz.

  1. Azure DevOps projenizde soldaki menüden İşlem Hatları>Kitaplığı'nı seçin.
  2. Kitaplık sayfasında, yetkilendirmek istediğiniz değişken grubunu seçin.
  3. Değişken grubu sayfasında İşlem hattı izinleri sekmesini seçin.
  4. İşlem hattı izinleri ekranında yetkilendirmek + için bir işlem hattı seçin. Alternatif olarak, Diğer eylemler simgesini seçin, Erişimi aç'ı seçin ve onaylamak için Erişimi yeniden aç'ı seçin.

İşlem hattı seçildiğinde bu işlem hattı değişken grubunu kullanma yetkisine sahip olur. Başka bir işlem hattını yetkilendirmek için simgeyi + yeniden seçin. Açık erişim seçildiğinde tüm proje işlem hatları değişken grubunu kullanma yetkisine sahip olur. Grupta gizli diziniz yoksa açık erişim iyi bir seçenek olabilir.

Değişken grubunu yetkilendirmenin bir diğer yolu da işlem hattını seçmek, Düzenle'yi seçmek ve ardından derlemeyi el ile kuyruğa almaktır. Kaynak yetkilendirme hatası görürsünüz ve ardından işlem hattını değişken grubunun yetkili kullanıcısı olarak açıkça ekleyebilirsiniz.

YAML işlem hattında değişken grubunu kullanma

Değişken grubundan bir değişken kullanmak için YAML işlem hattı dosyanızda grup adına bir başvuru ekleyin. Ardından, dosyanızdaki değişken grubundaki değişkenleri kullanabilirsiniz.

variables:
- group: my-variable-group

Aynı işlem hattında birden çok değişken grubuna başvurabilirsiniz. Birden çok değişken grubu aynı değişkeni içerirse, dosyadaki değişkeni kullanan son değişken grubu değişkenin değerini ayarlar. Değişkenlerin önceliği hakkında daha fazla bilgi için bkz . Değişkenleri genişletme.

Şablondaki bir değişken grubuna da başvurabilirsiniz. Aşağıdaki variables.yml şablon dosyası değişken grubuna my-variable-groupbaşvurur. Değişken grubu adlı myhellobir değişken içerir.

variables:
- group: my-variable-group

YAML işlem hattı variables.yml şablonuna başvurur ve değişken grubundan my-variable-groupdeğişkenini $(myhello) kullanır.

stages:
- stage: MyStage
  variables:
  - template: variables.yml
  jobs:
  - job: Test
    steps:
    - script: echo $(myhello)

YAML işlem hatlarında değişken grubu değişkenlerini kullanma

Bağlı değişken grubundaki değişken değerlerine, işlem hattı içinde tanımladığınız değişkenlere eriştikçe aynı şekilde erişebilirsiniz. Örneğin, işlem hattına bağlı bir değişken grubundaki adlı customer değişkenin değerine erişmek için bir görev parametresinde veya betikte kullanabilirsiniz $(customer) .

İşlem hattı dosyanızda hem tek başına değişkenleri hem de değişken gruplarını kullanıyorsanız, tek başına değişkenler için söz dizimini kullanın name-value .

variables:
- group: my-variable-group
- name: my-standalone-variable
  value: 'my-standalone-variable-value'

Değişken grubundaki bir değişkene başvurmak için makro söz dizimi veya çalışma zamanı ifadesi kullanabilirsiniz. Aşağıdaki örneklerde, grubun my-variable-group adlı myhellobir değişkeni vardır.

Çalışma zamanı ifadesi kullanmak için:

variables:
- group: my-variable-group
- name: my-passed-variable
  value: $[variables.myhello]
- script: echo $(my-passed-variable)

Makro söz dizimlerini kullanmak için:

variables:
- group: my-variable-group

steps:
- script: echo $(myhello)

Şifrelenmiş değişkenler ve anahtar kasası değişkenleri dahil olmak üzere gizli dizi değişkenlerine doğrudan betiklerde erişemezsiniz. Bu değişkenleri bir göreve bağımsız değişken olarak geçirmelisiniz. Daha fazla bilgi için bkz . Gizli dizi değişkenleri.

Klasik işlem hatlarında değişken grupları kullanma

Klasik işlem hatları, ayrı yetkilendirme olmadan değişken grupları kullanabilir. Değişken grubu kullanmak için:

  1. Klasik işlem hattınızı açın.

  2. Değişkenler>Değişken grupları'nın ardından Değişken grubunu bağla'yı seçin.

  3. Derleme işlem hattında kullanılabilir grupların listesini görürsünüz. Değişken grubunu işlem hattına bağlayın. Gruptaki tüm değişkenler işlem hattı içinde kullanılabilir.

    Yayın işlem hattında işlem hattındaki aşamaların açılan listesini de görürsünüz. Değişken grubunu işlem hattının kendisine veya yayın işlem hattının belirli bir veya daha fazla aşamasına bağlayın. Bir veya daha fazla aşamaya bağlantı verirseniz, değişken grubundaki değişkenlerin kapsamı bu aşamalara göre belirlenmiştir ve yayının diğer aşamalarında erişilebilir değildir.

    Değişken grubunu bağlamayı gösteren ekran görüntüsü.

Birden çok kapsamda aynı ada sahip bir değişken ayarladığınızda, en yüksek öncelik olan aşağıdaki öncelik kullanılır:

  1. Kuyruk zamanında ayarlanan değişken
  2. İşlem hattında değişken kümesi
  3. Değişken grubunda değişken kümesi

Değişkenlerin önceliği hakkında daha fazla bilgi için bkz . Değişkenleri genişletme.

Not

Aynı kapsamdaki bir işlem hattına (örneğin, iş veya aşama) bağlı olan farklı gruplardaki değişkenler çakılır ve sonuç öngörülemez olabilir. Tüm değişken gruplarınızda değişkenler için farklı adlar kullandığınızdan emin olun.