Aracılığıyla paylaş


Azure DevOps Server 2020 Sürüm Notları

Geliştirici Topluluğu | Sistem Gereksinimleri | Lisans Koşulları | DevOps Blogu | SHA-1 Karmaları

Bu makalede, Azure DevOps Server'ın en yeni sürümüyle ilgili bilgileri bulacaksınız.

Azure DevOps Server dağıtımı yükleme veya yükseltme hakkında daha fazla bilgi edinmek için bkz. Azure DevOps Server Gereksinimleri. Azure DevOps ürünlerini indirmek için Azure DevOps Server İndirmeleri sayfasını ziyaret edin.

Azure DevOps Server 2020'ye doğrudan yükseltme, Azure DevOps Server 2019 veya Team Foundation Server 2015 veya daha yeni sürümlerde desteklenir. TFS dağıtımınız TFS 2010 veya önceki sürümlerdeyse, Azure DevOps Server 2019'a yükseltmeden önce bazı ara adımlar gerçekleştirmeniz gerekir. Daha fazla bilgi edinmek için bkz. Şirket içi Azure DevOps'u yükleme ve yapılandırma.


Azure DevOps Server 2019'dan Azure DevOps Server 2020'ye Güvenle Yükseltme

Azure DevOps Server 2020, proje düzeyinde ayarlarına göre çalışan yeni bir işlem hattı çalıştırması (derleme) bekletme modeli sunar.

Azure DevOps Server 2020, işlem hattı düzeyindeki bekletme ilkelerine göre yapı saklamayı farklı şekilde ele alır. Bazı ilke yapılandırmaları, yükseltmeden sonra işlem hattı çalıştırmalarının silinmesine neden olur. Yükseltme sonrasında, el ile korunan veya bir sürüm tarafından tutulan boru hattı çalıştırmaları silinmeyecek.

Azure DevOps Server 2019'dan Azure DevOps Server 2020'ye güvenli bir şekilde yükseltme hakkında daha fazla bilgi için blog gönderimizi okuyun.

Azure DevOps Server 2020 Güncelleştirme 0.2 Düzeltme Eki 6 Yayın Tarihi: 14 Kasım 2023

Azure DevOps Server 2020 Güncelleştirme 0.2 için aşağıdaki düzeltmeleri içeren bir düzeltme eki yayımladık.

  • PowerShell görevleri için izin verilen karakter listesi, kabuk görevleri bağımsız değişkenleri parametre doğrulaması için vegenişletildi.

Not

Bu yamadaki sorunları düzeltmek için görevleri el ile güncellemek üzere bir dizi adımı takip etmeniz gerekir.

Düzeltme eklerini yükleme

Önemli

12 Eylül 2023'te yayınlanan Patch 4 ile Azure Pipelines aracısına yönelik güncelleştirmeler yayımladık. Aracı güncelleştirmelerini Düzeltme Eki 4 içinsürüm notlarında açıklandığı gibi yüklemediyseniz, Düzeltme Eki 6'yı yüklemeden önce bu güncelleştirmeleri yüklemenizi öneririz. Patch 4 yüklendikten sonra aracının yeni sürümü 3.225.0 olacaktır.

TFX'i yapılandırma

  1. tfx-cli'yı yüklemek ve oturum açmak için proje koleksiyonu belgelerine yönelik yükleme görevlerindeki adımlarını izleyin ve olarak giriş yapın.

TFX kullanarak görevleri güncelleştirme

Dosya SHA-256 Hash
Tasks20231103.zip 389BA66EEBC32622FB83402E21373CE20AE040F70461B9F9AF9EFCED5034D2E5
  1. Tasks20231103.zipdosyalarını indirin ve ayıklayın.
  2. Çıkarılan dosyaların bulunduğu dizine geç.
  3. Görevleri karşıya yüklemek için aşağıdaki komutları yürütebilirsiniz:
tfx build tasks upload --task-zip-path AzureFileCopyV1.1.230.0.zip
tfx build tasks upload --task-zip-path AzureFileCopyV2.2.230.0.zip 
tfx build tasks upload --task-zip-path AzureFileCopyV3.3.230.0.zip 
tfx build tasks upload --task-zip-path AzureFileCopyV4.4.230.0.zip 
tfx build tasks upload --task-zip-path AzureFileCopyV5.5.230.0.zip 
tfx build tasks upload --task-zip-path BashV3.3.226.2.zip 
tfx build tasks upload --task-zip-path BatchScriptV1.1.226.0.zip 
tfx build tasks upload --task-zip-path PowerShellV2.2.230.0.zip 
tfx build tasks upload --task-zip-path SSHV0.0.226.1.zip 
tfx build tasks upload --task-zip-path WindowsMachineFileCopyV1.1.230.0.zip 
tfx build tasks upload --task-zip-path WindowsMachineFileCopyV2.2.230.0.zip 

İşlem Hattı Gereksinimleri

Yeni davranışı kullanmak için, etkilenen görevleri kullanan işlem hatlarında bir değişken AZP_75787_ENABLE_NEW_LOGIC = true ayarlanmalıdır.

  • Klasik üzerine:

    değişkenini işlem hattındaki değişken sekmesinde tanımlayın.

  • YAML örneği:

variables: 
- name: AZP_75787_ENABLE_NEW_LOGIC 
  value: true 

Azure DevOps Server 2020 Güncelleştirme 0.2 Düzeltme Eki 5 Yayın Tarihi: 10 Ekim 2023

Önemli

12 Eylül 2023'te yayınlanan Patch 4 ile Azure Pipelines aracısına yönelik güncelleştirmeler yayımladık. Aracı güncelleştirmelerini Düzeltme Eki 4 içinsürüm notlarında açıklandığı gibi yüklemediyseniz, Düzeltme Eki 5'i yüklemeden önce bu güncelleştirmeleri yüklemenizi öneririz. Patch 4 yüklendikten sonra aracının yeni sürümü 3.225.0 olacaktır.

Azure DevOps Server 2020 Güncelleştirme 0.2 için aşağıdaki düzeltmeleri içeren bir düzeltme eki yayımladık.

  • Yama yükseltme makinelerinde "Çözümleme Sahibi" kimliğinin Etkin Olmayan Kimlik olarak gösterildiği bir hata düzeltildi.

Azure DevOps Server 2020 Güncelleştirme 0.2 Düzeltme Eki 4 Yayın Tarihi: 12 Eylül 2023

Azure DevOps Server 2020 Güncelleştirme 0.2 için aşağıdaki düzeltmeleri içeren bir düzeltme eki yayımladık.

  • CVE-2023-33136: Azure DevOps Server Uzaktan Kod Yürütme Güvenlik Açığı.
  • CVE-2023-38155: Azure DevOps Server ve Team Foundation Server Yetki Yükseltilmesi Güvenlik Açığı.

Önemli

Düzeltme ekini bir test ortamına dağıtın ve düzeltmeyi üretim ortamına uygulamadan önce ortamın işlem hatlarının beklendiği gibi çalıştığından emin olun.

Not

Bu düzeltme ekini uygulamak için aracıyı ve görevleri elle güncellemek üzere belirli adımları izlemeniz gerekir.

Düzeltme eklerini yükleme

  1. Azure DevOps Server 2020 Güncelleştirme 0.2 düzeltme eki 4indirip yükleyin.

Azure Pipelines aracısını güncelleştirme

  1. Aracıyı şu kaynaktan indirin: https://github.com/microsoft/azure-pipelines-agent/releases/tag/v3.225.0 - Agent_20230825.zip
  2. Yerel olarak barındırılan Windows aracılarını uygulamak için belgelerinde açıklanan adımları kullanın.  

Not

Ajanın indirilmesini önlemek için AZP_AGENT_DOWNGRADE_DISABLED "true" olarak ayarlanmalıdır. Windows'da, aşağıdaki komut bir yönetim komut isteminde ve ardından yeniden başlatmada kullanılabilir. setx AZP_AGENT_DOWNGRADE_DISABLED true /M

TFX'i yapılandırma

  1. tfx-cli'yi yüklemek ve oturum açmak için yükleme görevlerinin adımlarını proje koleksiyon belgelerine göre izleyin.

TFX kullanarak görevleri güncelleştirme

  1. Tasks_20230825.zipindirin ve çıkartın.
  2. Dizini ayıklanan dosyalara dönüştür.
  3. Görevleri karşıya yüklemek için aşağıdaki komutları yürütebilirsiniz:
tfx build tasks upload --task-zip-path AzureFileCopyV1.1.226.3.zip 
tfx build tasks upload --task-zip-path AzureFileCopyV2.2.226.2.zip 
tfx build tasks upload --task-zip-path AzureFileCopyV3.3.226.2.zip 
tfx build tasks upload --task-zip-path AzureFileCopyV4.4.226.2.zip 
tfx build tasks upload --task-zip-path AzureFileCopyV5.5.226.2.zip 
tfx build tasks upload --task-zip-path BashV3.3.226.2.zip 
tfx build tasks upload --task-zip-path BatchScriptV1.1.226.0.zip 
tfx build tasks upload --task-zip-path PowerShellV2.2.226.1.zip 
tfx build tasks upload --task-zip-path SSHV0.0.226.1.zip 
tfx build tasks upload --task-zip-path WindowsMachineFileCopyV1.1.226.2.zip 
tfx build tasks upload --task-zip-path WindowsMachineFileCopyV2.2.226.2.zip 

Boru Hattı Gereksinimleri

Yeni davranışı kullanmak için, etkilenen görevleri kullanan işlem hatlarında bir değişken AZP_75787_ENABLE_NEW_LOGIC = true ayarlanmalıdır.

  • Klasikte:

    değişkenini işlem hattındaki değişken sekmesinde tanımlayın.

  • YAML örneği:

variables: 
- name: AZP_75787_ENABLE_NEW_LOGIC 
  value: true 

Azure DevOps Server 2020 Güncelleştirme 0.2 Yama 3 Sürüm Tarihi: 8 Ağustos 2023

Azure DevOps Server 2020 Güncelleştirme 0.2 için aşağıdaki düzeltmeleri içeren bir düzeltme eki yayımladık.

  • 2018 veya önceki bir sürümden yükseltme yaparken paketleri göndermeyi engelleyen bir hata düzeltildi.

Azure DevOps Server 2020 Güncelleştirme 0.2 Düzeltme Eki 2 Sürüm Tarihi: 13 Haziran 2023

Azure DevOps Server 2020 Güncelleştirme 0.2 için aşağıdaki düzeltmeleri içeren bir düzeltme eki yayımladık.

  • 2018 veya önceki bir sürümden yükseltme yaparken paketleri göndermeyi engelleyen bir hata düzeltildi.

Azure DevOps Server 2020 Güncelleştirme 0.2 Düzeltme Eki 1 Sürüm Tarihi: 18 Ekim 2022

Azure DevOps Server 2020 Güncelleştirme 0.2 için aşağıdaki düzeltmeleri içeren bir düzeltme eki yayımladık.

  • Yeni eklenen AD kimliklerinin güvenlik iletişim kutusu kimlik seçicilerinde görünmemesi sorununu çözün.
  • Web kancası ayarlarında "Grup Üyesi Tarafından İstendi" filtresine ilişkin bir sorun giderildi.
  • Kuruluş ayarları, yayın dışı işlem hatları için iş yetkilendirme kapsamını mevcut projeyle sınırla olarak yapılandırıldığında Geçitli iade derlemeleri hatasını düzeltin.

Azure DevOps Server 2020.0.2 Sürüm Tarihi: 17 Mayıs 2022

Azure DevOps Server 2020.0.2 , hata düzeltmelerinden oluşan bir güncellemedir. Azure DevOps Server 2020.0.2'yi doğrudan yükleyebilir veya Azure DevOps Server 2020 veya Team Foundation Server 2013 veya daha yeni bir sürümden yükseltebilirsiniz.

Not

Veri Geçiş Aracı, bu sürümden yaklaşık üç hafta sonra Azure DevOps Server 2020.0.2 için kullanılabilir olacaktır. İçeri aktarma için şu anda desteklenen sürümlerin listesini buradagörebilirsiniz.

Bu sürüm aşağıdakiler için düzeltmeler içerir:

  • "Sonrakini çalıştır" düğmesi kullanılarak derleme kuyruğu atlanamıyor. Daha önce , "Sonrakini çalıştır" düğmesi yalnızca proje koleksiyonu yöneticileri için etkinleştirildi.

  • Kullanıcının Active Directory hesabı devre dışı bırakıldıktan sonra tüm kişisel erişim belirteçlerini iptal edin.

Azure DevOps Server 2020.0.1 Düzeltme Eki 9 Yayın Tarihi: 26 Ocak 2022

Azure DevOps Server 2020.0.1 için aşağıdaki düzeltmeleri içeren bir düzeltme eki yayımladık.

  • bir iş öğesinde @mention denetimi kullanılırken e-posta bildirimleri gönderilmedi.
  • Hesaplar arasında geçiş yaparken TF400813 hatasını düzeltin. TFS 2018'den Azure DevOps Server 2020.0.1'e yükseltildiğinde bu hata oluştu.
  • Projeye Genel Bakış özet sayfasının yüklenememesiyle ilgili sorun düzeltildi.
  • Active Directory kullanıcı eşitlemesinde geliştirme.
  • jndilookup sınıfı log4j ikili dosyalarından kaldırılarak Elasticsearch güvenlik açığı giderildi.

Yükleme adımları

  1. Patch 9ile sunucuyu yükseltin.
  2. HKLM:\Software\Elasticsearch\Versionkayıt defteri değerini denetleyin. Kayıt defteri değeri yoksa, bir dize değeri ekleyin ve Sürüm değerini 5.4.1 (Ad = Sürüm, Değer = 5.4.1) olarak ayarlayın.
  3. Readme dosyasında sağlanan güncelleme komutunu PS C:\Program Files\{TFS Version Folder}\Search\zip> .\Configure-TFSSearch.ps1 -Operation update çalıştırın. Şu gibi bir uyarı döndürebilir: uzak sunucuya bağlanılamıyor. Güncelleştirme tamamlanana kadar yeniden denemeler gerçekleştirdiğinden pencereyi kapatmayın.

Not

Azure DevOps Server ve Elasticsearch farklı makinelerde yüklüyse, aşağıda açıklanan adımları izleyin.

  1. Patch 9ile sunucuyu yükseltin..
  2. HKLM:\Software\Elasticsearch\Versionkayıt defteri değerini denetleyin. Kayıt defteri değeri yoksa, bir dize değeri ekleyin ve Sürüm değerini 5.4.1 (Ad = Sürüm, Değer = 5.4.1) olarak ayarlayın.
  3. C:\Program Files\{TFS Version Folder}\Search\zip'da bulunan zip adlı klasörün içeriğini Elasticsearch uzak dosya klasörüne kopyalayın.
  4. Elasticsearch sunucu makinesinde Configure-TFSSearch.ps1 -Operation update çalıştırın.

SHA-256 Özet : B0C05A972C73F253154AEEB7605605EF2E596A96A3720AE942D7A9DDD881545E

Azure DevOps Server 2020.0.1 Düzeltme Eki 8 Yayın Tarihi: 15 Aralık 2021

Azure DevOps Server 2020.0.1 için Düzeltme Eki 8 aşağıdaki düzeltmeleri içerir.

  • Özel iş öğeleri düzen durumları için yerelleştirme sorunu.
  • E-posta bildirim şablonunda yerelleştirme sorunu.
  • Bir satırda birden çok özdeş bağlantı olduğunda konsol günlüklerinin kesilmesiyle ilgili sorun.
  • Bir alan için birden çok NOTSAMEAS kuralı tanımlandığında NOTSAMEAS kuralları değerlendirmesiyle ilgili sorun.

Azure DevOps Server 2020.0.1 Düzeltme Eki 7 Yayın Tarihi: 26 Ekim 2021

Azure DevOps Server 2020.0.1 için Patch 7 aşağıdaki düzeltmeleri içerir.

  • Daha önce Azure DevOps Server yalnızca GitHub Enterprise Server'a bağlantı oluşturabiliyormuş. Bu düzeltme eki ile proje yöneticileri Azure DevOps Server ile GitHub.com üzerindeki depolar arasında bağlantılar oluşturabilir. Bu ayarı GitHub bağlantıları sayfasında proje ayarları altında bulabilirsiniz.
  • Test Planı pencere öğesiyle ilgili sorunu çözün. Test yürütme raporu, sonuçlarda yanlış bir kullanıcı gösteriyordu.
  • Projeye Genel Bakış özet sayfasının yüklenememesiyle ilgili sorun düzeltildi.
  • Ürün yükseltmesini onaylamak için e-postaların gönderilmemesiyle ilgili sorun düzeltildi.

Azure DevOps Server 2020.0.1 Düzeltme Eki 6 Yayın Tarihi: 14 Eylül 2021

Azure DevOps Server 2020.0.1 için Patch 6 aşağıdaki düzeltmeleri içerir.

  • Artifakt indirme/yükleme hatası düzeltildi.
  • Tutarsız Test Sonuçları verileriyle ilgili sorunu çözün.

Azure DevOps Server 2020.0.1 Yama 5 Sürüm Tarihi: 10 Ağustos 2021

Azure DevOps Server 2020.0.1 için Düzeltme Eki 5 aşağıdaki düzeltmeleri içerir.

  • Derleme tanımı UI hatasını düzelt.
  • Gözatma geçmişi, kök depo yerine dosyaları görüntüleyecek şekilde değiştirildi.
  • Bazı iş öğesi türleri için e-posta teslim işleri ile ilgili sorun düzeltildi.

Azure DevOps Server 2020.0.1 Düzeltme Eki 4 Yayın Tarihi: 15 Haziran 2021

Azure DevOps Server 2020.0.1 için Patch 4 aşağıdaki düzeltmeleri içerir.

  • Veri içeri aktarma ile ilgili sorun düzeltildi. Çok sayıda eski test çalışması olan müşteriler için veri içeri aktarma işlemi uzun sürüyordu. Bunun nedeni, tbl_testCaseReferences tablosunun boyutunu artıran referanslardı. Bu yamayla, veri içe aktarma işlemini hızlandırmaya yardımcı olmak için eski test vakalarının başvurularını kaldırdık.

Azure DevOps Server 2020.0.1 Yama 3 Sürüm Tarihi: 11 Mayıs 2021

Azure DevOps Server 2020.0.1 için aşağıdakileri düzelten bir düzeltme eki yayımladık.

  • Microsoft.TeamFoundation.TestManagement.Client kullanılırken tutarsız Test Sonuçları verileri.

Azure DevOps Server 2020.0.1'iniz varsa, Azure DevOps Server 2020.0.1 Düzeltme Eki 3'ü yüklemeniz gerekir.

doğrulama yükleme

  • Seçenek 1: devops2020.0.1patch3.exe CheckInstallçalıştırın devops2020.0.1patch3.exe yukarıdaki bağlantıdan indirilen dosyadır. Komutun çıkışı, düzeltme ekinin yüklendiğini veya yüklenmediğini söyler.

  • Seçenek 2: Şu dosyanın sürümünü denetleyin: [INSTALL_DIR]\Azure DevOps Server 2020\Application Tier\bin\Microsoft.Teamfoundation.Framework.Server.dll. Azure DevOps Server 2020.0.1 varsayılan olarak c:\Program Files\Azure DevOps Server 2020 dizinine yüklenmiştir. Azure DevOps Server 2020.0.1 Düzeltme Eki 3 yüklendikten sonra sürüm 18.170.31228.1 olacaktır.

Azure DevOps Server 2020.0.1 Yama 2 Sürüm Tarihi: 13 Nisan 2021

Dikkat

Azure DevOps Server 2020'niz varsa, önce Azure DevOps Server 2020.0.1'e güncelleştirmeniz gerekir. 2020.0.1'de, Azure DevOps Server 2020.0.1 Düzeltme Eki 2'yi yükleyin

Azure DevOps Server 2020.0.1 için aşağıdakileri düzelten bir düzeltme eki yayımladık.

Bu yamanın düzeltmelerini uygulamak için, numaralı genel yama yüklemesi, AzureResourceGroupDeploymentV2 ve AzureResourceManagerTemplateDeploymentV3 görev yüklemeleri için aşağıda listelenen adımları izlemeniz gerekmektedir.

Genel düzeltme eki yüklemesi

Azure DevOps Server 2020.0.1'iniz varsa, Azure DevOps Server 2020.0.1 Düzeltme Eki 2'yi yüklemeniz gerekir.

Yükleme Doğrulama

  • Seçenek 1: devops2020.0.1patch2.exe CheckInstallçalıştırın devops2020.0.1patch2.exe yukarıdaki bağlantıdan indirilen dosyadır. Komutun çıkışı, düzeltme ekinin yüklendiğini veya yüklenmediğini söyler.

  • Seçenek 2: Şu dosyanın sürümünü denetleyin: [INSTALL_DIR]\Azure DevOps Server 2020\Application Tier\bin\Microsoft.Teamfoundation.Framework.Server.dll. Azure DevOps Server 2020.0.1 varsayılan olarak c:\Program Files\Azure DevOps Server 2020'ya kurulur. Azure DevOps Server 2020.0.1 Düzeltme Eki 2 yüklendikten sonra sürüm 18.170.31123.3 olacaktır.

AzureResourceGroupDeploymentV2 görev yüklemesi

Not

Aşağıda belirtilen tüm adımların bir Windows makinesinde gerçekleştirilmesi gerekir

Yüklemek

  1. AzureResourceGroupDeploymentV2.zip paketini bilgisayarınızdaki yeni bir klasöre ayıklayın. Örneğin: D:\tasks\AzureResourceGroupDeploymentV2.

  2. makinenize göre Node.js 14.15.1 ve npm 'yi (Node.js indirmeye dahildir) indirip yükleyin.

  3. Yönetici modunda bir komut istemi açın ve tfx-cli yüklemek için aşağıdaki komutu çalıştırın.

npm install -g tfx-cli
  1. Tam erişim ayrıcalıklarıyla kişisel erişim belirteci oluşturun ve kopyalayın. Bu Kişisel erişim belirteci, tfx login komutu çalıştırılırken kullanılır.

  2. Komut isteminden aşağıdakileri çalıştırın. İstendiğinde Hizmet URL'sini ve Kişisel erişim belirtecini girin.

~$ tfx login
Copyright Microsoft Corporation

> Service URL: {url}
> Personal access token: xxxxxxxxxxxx
Logged in successfully

  1. Görevi sunucuya yüklemek için aşağıdaki komutu çalıştırın. 1. adımdaki ayıklanan .zip dosyasının yolunu kullanın.
  ~$ tfx build tasks upload --task-path *<Path of the extracted package>*

AzureResourceManagerTemplateDeploymentV3 görev yüklemesi

Not

Aşağıda belirtilen tüm adımların bir Windows makinesinde gerçekleştirilmesi gerekir

Yüklemek

  1. AzureResourceManagerTemplateDeploymentV3.zip paketini bilgisayarınızdaki yeni bir klasöre ayıklayın. Örneğin:D:\tasks\AzureResourceManagerTemplateDeploymentV3.

  2. Makinenize uygun şekilde 14.15.1 ve npm Node.js (Node.js indirmeye dahildir) indirip yükleyin.

  3. Yönetici modunda bir komut istemi açın ve tfx-cli yüklemek için aşağıdaki komutu çalıştırın.

npm install -g tfx-cli
  1. Tam erişim ayrıcalıklarıyla kişisel erişim belirteci oluşturun ve kopyalayın. Bu Kişisel erişim belirteci, tfx login komutu çalıştırılırken kullanılır.

  2. Komut isteminden aşağıdakileri çalıştırın. İstendiğinde Hizmet URL'sini ve Kişisel erişim belirtecini girin.

~$ tfx login
Copyright Microsoft Corporation

> Service URL: {url}
> Personal access token: xxxxxxxxxxxx
Logged in successfully

  1. Görevi sunucuya yüklemek için aşağıdaki komutu çalıştırın. 1. adımdaki ayıklanan .zip dosyasının yolunu kullanın.
  ~$ tfx build tasks upload --task-path *<Path of the extracted package>*

Azure DevOps Server 2020.0.1 Düzeltme Eki 1 Yayın Tarihi: 9 Şubat 2021

Azure DevOps Server 2020.0.1 için aşağıdakileri düzelten bir düzeltme eki yayımladık. Daha fazla bilgi için lütfen blog gönderisine bakın.

Azure DevOps Server 2020 Düzeltme Eki 3 Yayın Tarihi: 9 Şubat 2021

Azure DevOps Server 2020 için aşağıdakileri düzelten bir düzeltme eki yayımladık. Daha fazla bilgi için lütfen blog gönderisine bakın.

Azure DevOps Server 2020.0.1 Sürüm Tarihi: 19 Ocak 2021

Azure DevOps Server 2020.0.1, çeşitli hata düzeltmelerinin yer aldığı bir güncellemedir. Azure DevOps Server 2020.0.1'i doğrudan yükleyebilir veya mevcut bir yüklemeden yükseltebilirsiniz. Yükseltme için desteklenen sürümler Azure DevOps Server 2020, Azure DevOps Server 2019 ve Team Foundation Server 2012 veya daha yeni sürümlerdir.

Bu sürüm aşağıdaki hatalar için düzeltmeler içerir:

  • Azure DevOps Server 2019'dan Git proxy'lerinin yükseltmeden sonra çalışmayı durdurabileceği bir yükseltme sorununu çözün.
  • Azure DevOps Server 2020'ye yükseltirken Team Foundation Server 2017 öncesinde ENU olmayan koleksiyonlar için System.OutOfMemoryException özel durumu düzeltildi. Bu Geliştirici Topluluğu geri bildirim biletinde bildirilen sorunu giderir ().
  • Eksik Microsoft.Azure.DevOps.ServiceEndpoints.Sdk.Server.Extensions.dllnedeniyle bakım arızası. Geliştirici Topluluğu geri bildirim bileti 'de bildirilennumaralı sorunu giderir.
  • Azure DevOps Server 2020'ye yükseltirken Analytics'te geçersiz sütun adı hatası düzeltildi. bu Geliştirici Topluluğu geri bildirim bileti bildirilen sorunu giderir.
  • Test çalışması sonuçlarında test çalışması adımlarını görüntülerken depolanan XSS.
  • Puansal sonuç verilerini TCM'ye taşırken yükseltme adımının başarısızlığı.

Azure DevOps Server 2020 Düzeltme Eki 2 Sürüm Tarihi: 12 Ocak 2021

Azure DevOps Server 2020 için aşağıdakileri düzelten bir düzeltme eki yayımladık. Daha fazla bilgi için lütfen blog gönderisine bakın.

  • Test çalıştırma ayrıntıları, OpsHub Geçişi kullanılarak taşınan test verileri için test adımı ayrıntılarını görüntülemez.
  • 'Microsoft.TeamFoundation.TestManagement.Server.TCMLogger' için başlatıcıda bir istisna oluştu
  • Azure DevOps Server 2020'ye geçiş sonrasında yenilenmemiş derlemeler hemen silinir
  • Veri sağlayıcısı hatasını düzelt

Azure DevOps Server 2020 Düzeltme Eki 1 Tarih: 8 Aralık 2020

Azure DevOps Server 2020 için aşağıdakileri düzelten bir düzeltme eki yayımladık. Daha fazla bilgi için lütfen blog gönderisine bakın.

  • CVE-2020-17145: Azure DevOps Server ve Team Foundation Services Kimlik Yanıltma Güvenlik Açığı

Azure DevOps Server 2020 Sürüm Tarihi: 6 Ekim 2020

Azure DevOps Server 2020, hata düzeltmelerinin bir derlemesidir. Daha önce yayımlanan Azure DevOps Server 2020 RC2'deki tüm özellikleri içerir.

Not

Azure DevOps 2020 Server, Git Sanal Dosya Sistemi (GVFS) tarafından kullanılan derlemelerden birini yüklemeyle ilgili bir sorunla karşılanıyor.

Azure DevOps 2019'dan (herhangi bir sürüm) veya bir Azure DevOps 2020 sürüm adayından yükseltme yapıyor ve önceki sürümle aynı dizine yükleniyorsanız, derleme Microsoft.TeamFoundation.Git.dll yüklenmez. <Install Dir>\Version Control Proxy\Web Services\bin, <Install Dir>\Application Tier\TFSJobAgent ve <Install Dir>\Tools klasörlerinde Microsoft.TeamFoundation.Git.dll arayarak sorunu çözdüğünüzden emin olabilirsiniz. Dosya eksikse, eksik dosyaları geri yüklemek için bir onarım çalıştırabilirsiniz.

Onarımı çalıştırmak için Azure DevOps Server makinesinde/VM'sinde Settings -> Apps & Features gidin ve Azure DevOps 2020 Server'da bir onarım çalıştırın. Onarım tamamlandıktan sonra makineyi/VM'yi yeniden başlatabilirsiniz.

Azure DevOps Server 2020 RC2 Sürüm Tarihi: 11 Ağustos 2020

Azure DevOps Server 2020 RC2, hata düzeltmelerinin bir toplamıdır. Daha önce yayımlanan Azure DevOps Server 2020 RC1'deki tüm özellikleri içerir.

Azure DevOps Server 2020 RC1 yeniden yayın tarihi: 10 Temmuz 2020

Azure DevOps Server 2020 RC1'i no'lu Geliştirici Topluluğu geri bildirim talebindekisorununun çözümü için yeniden yayınladık.

Daha önce, Azure DevOps Server 2019 Güncelleştirme 1.1'den Azure DevOps Server 2020 RC1'e yükselttikten sonra, Web kullanıcı arabiriminin Depolar, İşlem Hatları ve Wiki'sindeki dosyaları görüntüleyemiyordunuz. Sayfanın bu bölgesinde beklenmeyen bir hata oluştuğunu belirten bir hata iletisi vardı. Bu bileşeni yeniden yüklemeyi veyatüm sayfayı yenilemeyi deneyebilirsiniz. Bu sürümle bu sorunu düzeltmiş olduk. Daha fazla bilgi için lütfen blog gönderisine bakın.

Azure DevOps Server 2020 RC1 Sürüm Tarihi: 30 Haziran 2020

Azure DevOps Server 2020'deki Yeniliklerin Özeti

Azure DevOps Server 2020 birçok yeni özellik sunar. Önemli noktalardan bazıları şunlardır:

Ayrıca her hizmetin tüm yeni özelliklerini görmek için tek tek bölümlere atlayabilirsiniz:


Genel

Azure DevOps CLI genel kullanılabilirliği

Şubat ayında Azure CLI için Azure DevOps uzantısını kullanıma sunulmuştuk. Uzantı, komut satırından Azure DevOps ile etkileşim kurmanızı sağlar. Uzantıyı geliştirmemize ve daha fazla komut eklememize yardımcı olan geri bildirimlerinizi topladık. Uzantının genel kullanıma sunulduğunu duyurmaktan mutluluk duyuyoruz.

Azure DevOps CLI hakkında daha fazla bilgi edinmek için burada belgelere bakın.

Dağıtım Merkezi'nden Windows için Azure WebApps'i dağıtmak için yayımlama profilini kullanma

Artık Dağıtım Merkezi'nden Windows için Azure WebApps'inizi dağıtmak için yayımlama profili tabanlı kimlik doğrulamasını kullanabilirsiniz. Yayımlama profilini kullanarak Windows için Azure WebApp'e dağıtma izniniz varsa, Dağıtım Merkezi iş akışlarında bu profili kullanarak işlem hattını kurabilirsiniz.

Kurullar

Görev panosuna ve sprint birikim listesine "Üst İş Öğesi" filtresi ekleme

Hem Sprint panosuna hem de Sprint birikimine yeni bir filtre ekledik. Bu, gereksinim düzeyindeki kapsam öğelerini (soldaki ilk sütun) üst öğelerine göre filtrelemenizi sağlar. Örneğin, aşağıdaki ekran görüntüsünde görünümü yalnızca ebeveynin "Büyük özelliğim" olduğu kullanıcı hikayelerini gösterecek şekilde filtreledik.

Yeni Üst İş Öğesi filtresini gösteren ekran görüntüsü.

Hata işleme deneyimini geliştirme –– Hata/Görev üzerinde gerekli alanlar

Geçmişte, Kanban panosundan, bir iş öğesini, durum değişikliği alan kurallarını tetiklediğinde, bir sütundan diğerine taşıdığınızda, kart sadece sizi kök nedeni anlamak için iş öğesini açmaya zorlayan kırmızı bir hata iletisi gösterirdi. Sprint 170'te deneyimi geliştirdik, böylece artık iş öğesinin kendisini açmak zorunda kalmadan hatanın ayrıntılarını görmek için kırmızı hata iletisine tıklayabilirsiniz.

Kırmızı hata iletisine tıkladığınızda görüntülenen Eksik alanlar iletişim kutusunu gösteren ekran görüntüsü.

İş öğesini anlık yeniden yükleme

Daha önce bir iş öğesini güncelleştirirken ve ikinci bir ekip üyesi aynı iş öğesinde değişiklik yaparken, ikinci kullanıcı değişikliklerini kaybedecekti. Artık, her ikiniz de farklı alanları düzenlediğiniz sürece, iş öğesinde yapılan değişikliklerin canlı güncelleştirmelerini görürsünüz.

Çalışma öğesinin canlı yeniden yüklemesinin nasıl çalıştığını gösteren kısa video.

Komut satırından yinelemeyi ve alan yollarını yönetme

Artık az boards iteration ve az boards area komutlarını kullanarak komut satırından yineleme ve alan yollarını yönetebilirsiniz. Örneğin, yineleme ve alan yollarını CLI'dan etkileşimli olarak ayarlayıp yönetebilir veya bir betik kullanarak tüm kurulumu otomatikleştirebilirsiniz. Komutlar ve söz dizimi hakkında daha fazla ayrıntı için buradaki belgelerebakın.

İş öğesi üst sütununu seçenek olarak ekleme

Artık ürün iş listenizdeki veya sprint iş listenizdeki her iş öğesinin üst öğesini görme seçeneğiniz vardır. Bu özelliği etkinleştirmek için, istediğiniz backlog üzerindeki Sütun Seçenekleri'e gidin ve Ebeveyn sütununu ekleyin.

Sütun Seçenekleri seçeneğiyle vurgulu bir iş listesi ekran görüntüsü.

Proje tarafından kullanılan işlemi değiştirme

Ekibinizin yaptığı gibi araçlarınız da değişmelidir. Artık projelerinizi kullanıma sunulan herhangi bir işlem şablonundan kullanıma sunulan diğer işlemlere geçirebilirsiniz. Örneğin, projenizin yönetim metodunu Çevik'ten Scrum'a veya Temel'den Çevik'e değiştirebilirsiniz. adım adım belgelerin tamamınıburada bulabilirsiniz.

İşlemi değiştir seçeneğinin vurgulendiği Projeler sekmesinin ekran görüntüsü. tarafından kullanılan işlemi değiştirme

Özel alanları düzenden gizleme

Artık işleminizi özelleştirirken özel alanları form düzeninden gizleyebilirsiniz. Bu alan sorgulardan ve REST API'lerinden kullanılabilir olmaya devam eder. Bu, diğer sistemlerle tümleştirme yaparken ek alanları izlemek için kullanışlıdır.

Düzenden gizle seçeneğini gösteren ekran görüntüsü.

Üç yeni Azure Boards raporuyla ekibinizin durumu hakkında içgörüler edinin

Göremeyeceklerini düzeltemezsiniz. Bu nedenle, iş süreçlerinin durumunu ve sağlığını yakından takip etmek istiyorsunuz. Bu raporlarla, Azure Boards'ta en az çabayla önemli ölçümleri izlemenizi kolaylaştırıyoruz.

Üç yeni etkileşimli rapor şunlardır: Burndown, Kümülatif Akış Diyagramı (CFD) ve Velocity. Raporları yeni analiz sekmesinde görebilirsiniz.

Sprint burndown, iş akışı ve ekip hızı gibi ölçümler, ekibinizin ilerleme durumuyla ilgili görünürlük sağlar ve aşağıdaki gibi soruları yanıtlamanıza yardımcı olur:

  • Bu sprint'te ne kadar çalışmamız kaldı? Bunu tamamlamak için yola devam mı ediyoruz?
  • Geliştirme sürecinin hangi adımı en uzun sürüyor? Bu konuda bir şey yapabilir miyiz?
  • Önceki yinelemelere dayanarak, sprint'in bir sonraki adımında ne kadar çalışma planlamamız gerekir?

Not

Üst bilgilerde daha önce gösterilen grafikler bu gelişmiş raporlarla değiştirilmiştir.

Yeni raporlar tamamen etkileşimlidir ve bunları ihtiyaçlarınıza göre ayarlamanıza olanak sağlar. Yeni raporları her hub'daki Analytics sekmesinde bulabilirsiniz.

  • Burndown grafiği, Sprints hub'ı altında bulunabilir.

    Analytics sekmesindeki burndown grafiğinin ekran görüntüsü. Sprint hub'ında

  • CFD ve Hız raporlarına Analytics sekmesindenBoards altında erişilebilir ve ilgili karta tıklayarak kapsamlar .

    tr-TR: Analiz sekmesindeki Kümülatif Akış Diyagramı raporunun ve Hız raporunun ekran görüntüsü. Panolarda CFD ve hız raporları bulunmaktadır.

Yeni raporlarla ekibiniz hakkında daha fazla denetime ve bilgiye sahip olursunuz. Aşağıda bazı örnekler verilmiştir:

  • Sprint Burndown ve Velocity raporları, iş öğelerinin sayısını veya kalan çalışmanın toplamını kullanacak şekilde ayarlanabilir.
  • Proje tarihlerini etkilemeden sprint burndown'un zaman dilimini ayarlayabilirsiniz. Bu nedenle, ekibiniz genellikle her sprint planlamasının ilk gününü geçiriyorsa, şimdi grafiği bunu yansıtacak şekilde eşleştirebilirsiniz.
  • Burndown grafiğinde artık hafta sonlarını gösteren bir filigran vardır.
  • CFD raporu, ekiplerin denetimindeki akışa daha fazla odaklanmak için Tasarım gibi pano sütunlarını kaldırmanıza olanak tanır.

İşte, Hikayeler birikiminin son 30 günü için işleyişi gösteren CFD raporunun bir örneği.

Analiz sekmesindeki Kümülatif Akış Diyagramı'nın ekran görüntüsü.

Hız grafiği artık tüm birikim listesi seviyeleri için izlenebilir. Önceki çizelgede yalnızca gereksinimler desteklenirken, artık hem özellikler hem de öyküler ekleyebilirsiniz. Özellikler geriağının son 6 yinelemesi için bir sürat raporu örneği verilmiştir.

Analiz sekmesindeki Hız grafiğinin ekran görüntüsü.

Görev Panosu sütunlarını özelleştirme

Görev Panosundaki sütunları özelleştirmenize olanak sağlayan bir seçenek eklediğimiz için heyecanlıyız. Artık sütunları ekleyebilir, kaldırabilir, yeniden adlandırabilir ve yeniden sıralayabilirsiniz.

Görev Tahtanızdaki sütunları yapılandırmak için Sütun Seçeneklerigidin.

Sütun Seçenekleri seçeneği vurgulu bir Görev Panosunun ekran görüntüsü.

Bu özellik, Geliştirici Topluluğu'nun öneri göre önceliklendirildi.

Kapsam üzerinde tamamlanmış alt iş öğelerini göstermek veya gizlemek için geçiş yapın

Sıklıkla, backlog'u iyileştirirken yalnızca tamamlanmamış öğeleri görmek istersiniz. Artık, iş listesinde tamamlanmış alt öğeleri gösterme veya gizleme yeteneğiniz var.

Anahtar açıksa, tüm alt öğeleri tamamlanmış durumda görürsünüz. İki durumlu düğme kapalı olduğunda, tamamlanmış durumdaki tüm alt öğeler geriye dönük listeden gizlenir.

Bekleme listesinde alt öğeleri göstermeyi veya gizlemeyi gösteren kısa video.

Bir iş öğesi etiketlendiğinde görüntülenen en son etiketler

Bir iş öğesini etiketlerken, otomatik tamamlama seçeneği artık en son kullandığınız etiketlerin en fazla beşini görüntüler. Bu, iş öğelerinize doğru bilgileri eklemeyi kolaylaştırır.

bir iş öğesi etiketlendiğinde görüntülenen en son kullanılan etiketleri gösteren ekran görüntüsü.

Grup üyeliği için salt okunur ve zorunlu kurallar

İş öğesi kuralları, davranışlarını otomatikleştirmek için iş öğesi alanlarında belirli eylemleri ayarlamanıza olanak sağlar. Bir alanı grup üyeliğine göre salt okunur veya gerekli olarak ayarlamak için bir kural oluşturabilirsiniz. Ürün sahiplerine, özelliklerinizin önceliğini ayarlama yetkisi verirken, bunu diğer herkes için salt okunur hale getirmek isteyebilirsiniz.

Koşullar bölümünü ve Eylemler bölümünü gösteren Yeni iş öğesi kuralı iletişim kutusunun ekran görüntüsü.

Sistem seçim listesi değerlerini özelleştirme

Artık Önem Derecesi, Etkinlik, Öncelik gibi herhangi bir sistem seçim listesinin (neden alanı dışında) değerlerini özelleştirebilirsiniz. Her iş öğesi türü için aynı alan için farklı değerleri yönetebilmeniz için seçim listesi özelleştirmelerinin kapsamı belirlenmiştir.

Sistem seçim listesi değerlerini özelleştirmeyi gösteren kısa video.

Yeni iş öğesi URL parametresi

Yeni iş öğesi URL parametresiyle panonuzun veya iş listenizin bağlamında iş öğelerine bağlantılar paylaşın. Artık URL'ye ?workitem=[ID] parametresini ekleyerek panonuzda, bekleme listesinde veya sprint deneyiminizde bir iş öğesi iletişim kutusu açabilirsiniz.

Bağlantıyı paylaştığınız herkes, bağlantıyı paylaştığınızda sahip olduğunuz bağlamla aynı yere inecektir!

Metin alanlarında kişileri, iş öğelerini ve PR'leri belirtme

Geri bildirimlerinizi dinlediğimizde, yalnızca yorumlarda değil, iş öğesi açıklama alanında (ve diğer HTML alanlarında) kişiler, iş öğeleri ve PR'lerden bahsedebilmek istediğinizi duyduk. Bazen bir iş öğesi üzerinde biriyle birlikte çalışırsınız veya iş öğesi açıklamanızda bir çekme isteğini vurgulamak istersiniz. Ancak, bu bilgileri eklemenin bir yolu yoktu. Artık iş öğesindeki tüm uzun metin alanlarındaki kişilerden, iş öğelerinden ve PR'lerden bahsedebilirsiniz.

Burada bir örnek görebilirsiniz.

İş öğesi Açıklama alanında kişiler, iş öğeleri ve PR'lerden bahsedebileceğinizi gösteren ekran görüntüsü.

  • Kişileri etiketlemek için, @ işaretini ve bahsetmek istediğiniz kişinin adını yazın. Çalışma öğesi alanlarındaki @mentions, açıklamalarda olduğu gibi e-posta bildirimleri oluşturur.
  • İş öğesi referanslarını kullanmak için, # sembolünü ve ardından iş öğesi kimliğini veya başlığını yazın. #mentions iki iş öğesi arasında bir bağlantı oluşturur.
  • Çekme isteği ile ilgili bahsetmeleri kullanmak için bir ve ardından ekleyin, ardından çekme isteği kimliğinizi veya adınızı belirtin.

Tartışma açıklamalarına tepkiler

Temel hedeflerimizden biri, iş öğelerini ekipler için daha işbirliğine dayalı hale getirmektir. Kısa süre önce twitter üzerinde iş öğesiyle ilgili tartışmalarda hangi işbirliği özelliklerini istediğinizi öğrenmek için bir anketi gerçekleştirdik. Yorumlara tepkiler getirmek anketi kazandı, biz de bunları ekledik! Twitter anketinin sonuçları aşağıdadır.

Yanıtlayanların 35% Yorumlarda Tepkiler özelliğini istediğini gösteren Azure DevOps twitter anketinin ekran görüntüsü.

Herhangi bir açıklamaya tepki ekleyebilirsiniz ve tepkilerinizi eklemenin iki yolu vardır: herhangi bir yorumun sağ üst köşesindeki gülen yüz simgesi ve mevcut tepkilerin yanındaki bir yorumun alt kısmında. İsterseniz altı reaksiyonu da ekleyebilirsiniz, ya da yalnızca bir veya iki. Tepkinizi kaldırmak için, yorumunuzun altındaki tepkiye tıklayın ve kaldırılacaktır. Aşağıda bir tepki ekleme deneyimini ve bir yorumda tepkilerin nasıl göründüğünü görebilirsiniz.

Açıklamalara iki farklı şekilde tepki ekleyebildiğinizi gösteren ekran görüntüsü.

Azure Boards raporlarını panoya sabitleme

Sprint 155 Güncelleştirmesi'nde, CFD ve Velocity raporlarının güncelleştirilmişsürümlerini dahil ettik. Bu raporlara Panolar ve İş Listeleri'nin Analiz sekmesinden ulaşabilirsiniz. Artık raporları doğrudan Panonuza sabitleyebilirsiniz. Raporları sabitlemek için raporun üzerine gelin, "..." üç noktasını seçin menüsüne gidin ve panoya kopyala .

Panoya Kopyala seçeneğini gösteren ekran görüntüsü.

Panolardaki iş listesinde Rollup kullanarak ebeveyn öğelerin ilerleme durumunu izleyin.

Toplama sütunları, hiyerarşi içindeki sayısal alanların veya alt öğelere ait ilerleme çubuklarını ve/veya toplamlarını gösterir. Alt öğeler hiyerarşideki tüm alt öğelere karşılık gelir. Ürün veya portföy birikimine bir veya daha fazla toplama sütunu eklenebilir.

Örneğin, burada, kapatılan alt öğelerin yüzdesine göre üst öğelerin ilerleme çubuklarını görüntüleyen İş Öğelerine Göre İlerleme 'ü göstereceğiz. Epic'ler için alt öğeler tüm alt Özellikleri ve bunların alt veya genel alt iş öğelerini içerir. Özellikler başlığına ait alt öğeler, tüm alt Kullanıcı Hikayelerini ve bunların alt iş öğelerini içerir.

Bir iş listesi içindeki iş öğelerinin ekran görüntüsü.

Görev panosu canlı güncelleştirmeleri

Değişiklikler olduğunda görev panonuz otomatik olarak yenilenir! Diğer ekip üyeleri görev panosundaki kartları taşıdıkça veya yeniden sıraladıkça, panonuz bu değişikliklerle otomatik olarak güncelleştirilir. En son değişiklikleri görmek için artık F5 tuşuna basmanız gerekmez.

Toplama sütunlarında özel alanlar için destek

Rollup işlemi artık özel alanlar da dahil olmak üzere herhangi bir alanda yapılabilir. Toplama sütunu eklerken, Hızlı listesinden bir Toplama sütunu seçebilirsiniz, ancak varsayılan işlem şablonunun parçası olmayan sayısal alanlarda toplama yapmak istiyorsanız, aşağıdaki gibi kendi sütununuzu yapılandırabilirsiniz.

  1. İş listenizde "Sütun seçenekleri"ne tıklayın. Ardından panelde "Toplama sütunu ekle" seçeneğine tıklayın ve "Özel toplamayı yapılandır"a tıklayın.

    Toplama sütunu ekle açılır listesinin ekran görüntüsü.

  2. İlerleme Çubuğu ve Toplamarasında seçim yapın.
  3. Bir iş öğesi türü veya Kapsam düzeyi seçin (genellikle kapsamlar birkaç iş öğesi türünü toplar).
  4. Toplama türünü seçin. iş öğesi sayısı veya toplamı. Sum için özetlemek istediğiniz alanı seçmeniz gerekir.
  5. Tamam düğmesi, sizi yeni özel sütununuzu yeniden sıralayabileceğiniz sütun seçenekleri paneline geri getirir.

Yeni özel sütunu gösteren sütun seçenekleri panelinin ekran görüntüsü.

Tamam'a tıkladıktan sonra özel sütununuzu düzenleyemezsiniz. Değişiklik yapmanız gerekiyorsa, özel sütunu kaldırın ve istediğiniz şekilde başka bir sütun ekleyin.

Bir iş öğesi formundaki alanları koşula göre gizlemek için yeni kural

Devralınan kurallar altyapısına iş öğesi formundaki alanları gizlemenizi sağlamak için yeni bir kural ekledik. Bu kural, kullanıcılar grubu üyeliğine göre alanları gizler. Örneğin, kullanıcı "ürün sahibi" grubuna aitse, geliştiriciye özgü bir alanı gizleyebilirsiniz. Daha fazla ayrıntı için buradabelgelere bakın.

Özel iş öğesi bildirim ayarları

Sizinle veya ekibinizle ilgili iş öğeleri hakkında güncel kalmak son derece önemlidir. Ekiplerin işbirliği yapmasına ve projelere uygun şekilde devam etmelerine yardımcı olur ve tüm doğru tarafların dahil olduğundan emin olur. Ancak, farklı paydaşların farklı çabalara farklı yatırım düzeyleri vardır ve bunun bir iş öğesinin durumunu takip etme becerinize yansıtılması gerektiğine inanıyoruz.

Daha önce, bir iş öğesini takip etmek ve yapılan değişikliklerle ilgili bildirimler almak istiyorsanız, iş öğesinde yapılan tüm değişiklikler için e-posta bildirimleri alırsınız. Geri bildiriminizi değerlendirdikten sonra, bir iş öğesini takip etmeyi tüm paydaşlar için daha esnek hale getiriyoruz. Şimdi, iş öğesinin sağ üst köşesindeki takip et düğmesinin yanında yeni bir ayarlar düğmesi göreceksiniz. Bu sizi aşağıdaki seçenekleri yapılandırmanıza olanak sağlayan bir açılır pencereye götürür.

İmleci dişli simgesinin üzerine getirerek iş öğesinin sağ üst köşesinin ekran görüntüsü.

Bildirim Ayarları'ndan üç bildirim seçeneği arasından seçim yapabilirsiniz. İlk olarak aboneliğinizi tamamen kaldırabilirsiniz. İkincisi, tüm iş öğesi değişiklikleri için bildirim alabileceğiniz tam abone olabilirsiniz. Son olarak, en önemli ve önemli iş öğesi değişikliği olaylarından bazıları için bildirim almayı seçebilirsiniz. Yalnızca bir veya üç seçeneği de seçebilirsiniz. Bu, ekip üyelerinin iş öğelerini daha üst düzeyde takip etmesine ve yapılan her değişiklikten etkilenmemesine olanak sağlar. Bu özellik sayesinde gereksiz e-postaları ortadan kaldıracak ve elinizdeki önemli görevlere odaklanmanıza olanak tanıyacağız.

Durum Değişti seçeneği ve Yineleme Değiştirildi seçeneğiyle birlikte Seçilen Özel radyo düğmesini gösteren Bildirim Ayarları iletişim kutusunun ekran görüntüsü.

dağıtım denetimini iş öğesi formunda yayınlamak için heyecanlıyız. Bu denetim, iş öğelerinizi bir sürüme bağlar ve iş öğenizin dağıtıldığı yeri kolayca izlemenizi sağlar. Daha fazla bilgi edinmek için burada belgelere bakın.

İş öğesi formunda Dağıtım denetimini gösteren ekran görüntüsü.

CSV dosyasından iş öğelerini içeri aktarma

Şimdiye kadar, bir CSV dosyasından iş öğelerini içeri aktarmak Excel eklentisini kullanmaya bağımlıydı. Bu güncelleştirmede, yeni iş öğelerini içeri aktarabilmeniz veya mevcut iş öğelerini güncelleştirebilmeniz için doğrudan Azure Boards'tan birinci sınıf bir içeri aktarma deneyimi sağlıyoruz. Daha fazla bilgi edinmek için burada belgelere bakın.

CSV dosyasından iş öğelerini içeri aktarmayı gösteren kısa video.

İş öğesi kartlarına ebeveyn alanı ekleme

Kanban panonuzda iş öğesi kartları için yeni bir alan olarak ebeveyn bağlamı artık kullanılabilir. Artık etiketler ve ön ekler gibi geçici çözümleri kullanma gereksinimini atlayarak kartlarınıza Üst alanı ekleyebilirsiniz.

Ebeveyn seçeneği vurgulu bir iş öğesi kartını gösteren ekran görüntüsü.

Bekleme listesi ve sorgulara üst alan ekleme

Üst Alan artık birikmiş işler ve sorgu sonuçları görüntülenirken kullanılabilir. Üst alanı eklemek için görünümündeki Sütun seçeneklerini kullanın.

Ana seçeneğinin vurgulu olduğu Sütun seçenekleri bölümünün ekran görüntüsü.

Repos

Çekme istekleri için kod kapsamı ölçümleri ve dal politikası

Artık çekme isteği (PR) görünümündeki değişiklikler için kod kapsamı metriklerini görebilirsiniz. Bu, otomatikleştirilmiş testlerle değişikliklerinizi yeterince test ettiğinizi sağlar. Kapsam durumu, Pull Request genel bakış bölümünde yorum olarak görünür. Dosya karşılaştırma görünümünde değiştirilen her kod satırı için kapsama bilgilerinin ayrıntılarını görüntüleyebilirsiniz.

Çekme isteği (PR) görünümünde, değişiklikler için kod kapsamı ölçümlerini görebileceğinizi gösteren bir ekran görüntüsü.

Dosyaya eklenen yeni bir kod satırını gösteren çekme isteği kod farkının ekran görüntüsü.

Buna ek olarak, depo sahipleri artık kod kapsamı ilkeleri ayarlayabilir ve büyük, test edilmemiş değişikliklerin bir dalda birleştirilmesini önleyebilir. İstenen kapsam eşikleri deponun kökünde iade edilen bir azurepipelines-coverage.yml ayarları dosyasında tanımlanabilir ve kapsam ilkesi mevcut Azure Repos'taki ek hizmetler özelliği için bir dal ilkesi yapılandırma kullanılarak tanımlanabilir.

Durum ilkesi ekle seçeneğinin ve seçeneği belirlediğinizde görüntülenen Durum ilkesi ekle bölümünün ekran görüntüsü.

Çekme taleplerinden gelen yorum bildirimlerini filtreleme

Pull request'lerdeki yorumlar genellikle bildirimler nedeniyle çok fazla gürültü oluşturabilir. Açıklama yaşına, yorum oluşturucuya, silinen açıklamaya, bahsedilen kullanıcılara, çekme isteği yazarına, hedef dal ve iş parçacığı katılımcılarına göre abone olduğunuz açıklama bildirimlerini filtrelemenizi sağlayan özel bir abonelik ekledik. Sağ üst köşedeki kullanıcı simgesine tıklayıp Kullanıcı ayarlarıgiderek bu bildirim aboneliklerini oluşturabilirsiniz.

Çekme isteklerinden açıklama bildirimlerini filtrelemeyi gösteren ekran görüntüsü.

Filtre ölçütleri sayfasını ve Alan açılır listesinin içeriğini gösteren ekran görüntüsü.

Çekme isteği yorumları için hizmet kancaları

Artık depo ve hedef dala göre bir pull isteğindeki açıklamalar için hizmet kancaları oluşturabilirsiniz.

Yeni Hizmet Kancaları Aboneliği sihirbazının ekran görüntüsü.

Belirtilen desenlere sahip dosyaları engelleme ilkesi

Yöneticiler artık dosya türlerine ve yollara göre işlemelerin bir depoya gönderilmesini önlemek için bir ilke ayarlayabilir. Dosya adı doğrulama ilkesi, sağlanan desenle eşleşen gönderimleri engeller.

Dosya adı doğrulama seçeneğinin Açık olarak ayarlandığı İlkeler bölümünü gösteren ekran görüntüsü.

Anahtar kelimeleri kullanarak commitler aracılığıyla iş öğelerini çözmek

Artık varsayılan dalda yapılan commitler aracılığıyla, düzeltme, düzeltirya da düzeltildigibi anahtar kelimeler kullanarak iş öğelerini çözümleyebilirsiniz. Örneğin, işleme iletinizde "bu değişiklik düzeltildi #476" yazabilirsiniz ve işleme gönderildiğinde veya varsayılan dalda birleştirildiğinde iş öğesi #476 tamamlanır. Daha fazla ayrıntı için buradabelgelere bakın.

Otomatik gözden geçirenler için ayrıntı düzeyi

Daha önce, çekme talebine grup düzeyinde gözden geçirenler eklenirken, eklenen gruptan yalnızca bir onay yeterli oluyordu. Artık otomatik gözden geçirenler eklerken bir ekipten birden fazla gözden geçirenin çekme isteğini onaylamasını gerektiren ilkeler ayarlayabilirsiniz. Ayrıca, istek sahiplerinin kendi değişikliklerini onaylamasını önlemek için bir ilke ekleyebilirsiniz.

Otomatik olarak gözden geçirenleri ekle iletişim kutusunu gösteren ekran görüntüsü.

AKS'ye bağlanmak için hizmet hesabı tabanlı kimlik doğrulamasını kullanma

Daha önce AKS Dağıtım Merkezi'nden Azure Pipelines'ı yapılandırırken bir Azure Resource Manager Bağlantısı kullanıyorduk. Bu bağlantının yalnızca işlem hattının yapılandırıldığı ad alanına değil kümenin tamamına erişimi vardı. Bu güncelleştirmeyle, işlem hatlarımız kümeye bağlanmak için hizmet hesabı tabanlı kimlik doğrulamasını kullanır, böylece yalnızca işlem hattıyla ilişkili ad alanına erişimi olur.

Çekme isteğinde Markdown dosyalarını yan yana karşılaştırma görünümünde önizleme

Artık yeni Önizleme düğmesini kullanarak markdown dosyasının nasıl görüneceğine ilişkin bir önizleme görebilirsiniz. Ayrıca, Görünüm düğmesini seçerek yan yana karşılaştırmadan dosyanın tam içeriğini görebilirsiniz.

Görünüm ve Önizleme seçenekleri vurgulu bir projedeki markdown dosyasını gösteren ekran görüntüsü.

El ile derlemeler için derleme ilkesi süre sonu

İlkeler, ekibinizin kod kalitesi ve değişiklik yönetimi standartlarını uygular. Daha önce otomatik derlemeler için derleme süresi sonu ilkeleri ayarlayabiliyordunuz. Artık derleme süre sonu ilkelerini el ile yaptığınız derlemelere de ayarlayabilirsiniz.

Derleme süresi dolum bölümü içeren Derleme İlkesi Ekle iletişim kutusunun ekran görüntüsü.

İşleme yazarı e-postasına göre işlemeleri engellemek için ilke ekleme

Yöneticiler artık işlemelerin, işleme yazarı e-postasının sağlanan desenle eşleşmediği bir depoya gönderilmesini önlemek için bir gönderme ilkesi ayarlayabilir.

İlkeler sekmesindeki Tüm Git depoları için İlkeler'i gösteren ve Yazar e-posta doğrulama seçeneğinin Açık olarak ayarlandığı ekran görüntüsü.

Bu özellik, Benzer bir deneyim sunmak için Geliştirici Topluluğu önerisine göre önceliklendirildi. Bileti açık tutmaya devam edeceğiz ve kullanıcıları görmek istedikleri diğer gönderim ilkeleri türlerini bize bildirmeye teşvik edeceğiz.

Çekme isteğinde dosyaları gözden geçirilmiş olarak işaretleme

Bazen, çok sayıda dosyada değişiklik içeren çekme isteklerini gözden geçirmeniz gerekir ve daha önce gözden geçirdiğiniz dosyaları izlemek zor olabilir. Artık bir pull request'te dosyaları incelenmiş olarak işaretleyebilirsiniz.

Dosya adının yanındaki açılan menüyü kullanarak veya üzerine gelip dosya adına tıklayarak dosyayı gözden geçirildi olarak işaretleyebilirsiniz.

Not

Bu özellik yalnızca çekme isteğini gözden geçirirken ilerleme durumunuzu izlemek içindir. Çekme isteklerine oy verme işlemini temsil etmediğinden, bu işaretler yalnızca gözden geçiren tarafından görülebilir.

Dosya gezgininde görüntüle ve Gözden geçirildi olarak işaretle seçeneklerinin görünür olduğu bir projeyi gösteren ekran görüntüsü.

Bu özellik, Geliştirici Topluluğutarafından sunulan bir öneriye göre önceliklendirildi.

Azure Repos giriş sayfaları için yeni Web Arayüzü

Artık Azure Repos'ta yeni modern, hızlı ve mobil kullanıma uygun giriş sayfalarımızı deneyebilirsiniz. Bu sayfalar Yeni Depo giriş sayfalarıolarak kullanılabilir. Giriş sayfaları, çekme isteği ayrıntıları, taahhüt ayrıntıları ve dal karşılaştırması dışında tüm sayfaları içerir.

Azure Repos giriş sayfaları için yeni web kullanıcı arabiriminin ekran görüntüsü.

Mobil

Azure Repos giriş sayfaları için yeni mobil kullanıcı arabiriminin ekran görüntüsü.

Depolar arası dal politikası yönetimi

Dal ilkeleri, Azure Repos'un önemli dalları korumanıza yardımcı olan güçlü özelliklerinden biridir. PROJE düzeyinde ilke ayarlama özelliği REST API'de mevcut olsa da, bunun için kullanıcı arabirimi yoktu. Yöneticiler artık projelerindeki tüm depolarda belirli bir dalda veya varsayılan dalda ilkeler ayarlayabilir. Örneğin, bir yönetici, projesindeki her depoda bulunan ana dallara yapılan tüm çekme istekleri için en az iki gözden geçirenin katılımını zorunlu kılabilir. Dal koruması ekle özelliğini Depo Proje Ayarları'nda bulabilirsiniz.

Dal koruması ekle iletişim kutusunun ekran görüntüsü.

Yeni web platformu dönüşüm açılış sayfaları

Repos giriş sayfaları kullanıcı deneyimini modern, hızlı ve mobil kullanıma uygun hale getirecek şekilde güncelleştirdik. Güncelleştirilen sayfalara ilişkin iki örnek aşağıda verilmiştir. Sonraki güncelleştirmelerde diğer sayfaları güncelleştirmeye devam edeceğiz.

Web deneyimi:

Web platformu dönüşüm açılış sayfalarının ekran görüntüsü.

Mobil deneyim:

Mobil platform dönüştürme Dosyaları sayfasının ekran görüntüsü.

Mobil platform dönüştürme İşlemeleri sayfasının ekran görüntüsü.

Kotlin dili desteği

Artık dosya düzenleyicisinde Kotlin dili vurgusunu desteklediğimizi duyurmaktan heyecan duyuyoruz. Vurgulama, Kotlin metin dosyanızın okunabilirliğini artırır ve hataları bulmak için hızlı bir şekilde taramanıza yardımcı olur. Bu özelliği, Geliştirici Topluluğu'den gelen bir öneriye dayanarak önceliklendirdik.

Kullanıcı arabiriminde görüntülenen kotlin dosyasının ekran görüntüsü.

Taslak pull istekleri için kişiye özel bildirim aboneliği

Çekme isteklerinden gelen e-posta bildirimlerinin sayısını azaltmaya yardımcı olmak için, artık taslak durumunda oluşturulan veya güncelleştirilen çekme istekleri için özel bir bildirim aboneliği oluşturabilirsiniz. Özel olarak taslak çekme isteklerine yönelik e-postalar alabilir veya taslak çekme isteklerindeki e-postaları filtreleyerek çekme isteği gözden geçirilmeye hazır olmadan ekibinize bildirim gönderilmesini engelleyebilirsiniz.

Filtre ölçütü özelliğine bir seçenek olarak Taslak eklendiğini gösteren Yeni abonelik iletişim kutusunun ekran görüntüsü.

Geliştirilmiş PR eyleme geçirilebilirliği

Gözden geçirmeniz gereken çok sayıda çekme isteği olduğunda, ilk olarak nerede işlem yapmanız gerektiğini anlamak zor olabilir. Çekme isteği eylemlenebilirliğini geliştirmek için artık çekme isteği listesi sayfasında, taslak durumu gibi filtrelemek üzere birkaç yeni seçenek içeren birden çok özel sorgu oluşturabilirsiniz. Bu sorgular, çekme isteği sayfanızda "Benim oluşturduğum" ve "Bana atanan" bölümlerine ek olarak ayrı ve daraltılabilir bölümler oluşturur. Ayrıca, Oy Ver menüsü veya çekme isteği listesi sayfasındaki bağlam menüsü aracılığıyla dahil edildiğiniz bir çekme isteğini gözden geçirmeyi reddedebilirsiniz. Özel bölümlerde artık incelemede bulunduğunuz veya incelemeyi reddettiğiniz çekme talepleri için ayrı sekmeler göreceksiniz. Bu özel sorgular, koleksiyon giriş sayfasının "Çekme isteklerim" sekmesindeki depolar arasında çalışır. Bir çekme isteğine geri dönmek isterseniz, onu işaretleyebilirsiniz ve bunlar listenizin en üstünde görünür. Son olarak, otomatik tamamlama olarak ayarlanmış çekme istekleri listede 'Otomatik tamamlama' yazan bir etiketle işaretlenir.

Boru hattı

Çok aşamalı işlem hatları

İşlem hatlarınızı yönetmek için güncelleştirilmiş kullanıcı deneyimi üzerinde çalışıyoruz. Bu güncelleştirmeler işlem hatlarının Azure DevOps yönüyle modern ve tutarlı bir deneyim yaşamasını sağlar. Ayrıca bu güncelleştirmeler klasik derleme işlem hatlarını ve çok aşamalı YAML işlem hatlarını tek bir deneyimde bir araya getirir. Mobil kullanıma uygundur ve işlem hatlarınızı yönetme şeklinize yönelik çeşitli iyileştirmeler sunar. İşlem hattı ayrıntılarını detaya gidebilir ve görüntüleyebilir, ayrıntıları, işlem hattı analizini, iş ayrıntılarını, günlükleri ve daha fazlasını çalıştırabilirsiniz.

Yeni deneyime aşağıdaki özellikler eklenmiştir:

  • birden çok aşamayı görüntüleme ve yönetme
  • Boru hattı çalıştırmalarını onaylama
  • işlem hattı devam ederken günlüklerde en başa kadar geri kaydırma
  • bir işlem hattının her dal için sağlığı.

YAML'de sürekli dağıtım

Azure Pipelines YAML CD özelliklerini sağladığımız için heyecanlıyız. Artık her bir işlem hattınızı CI, CD veya her ikisini birden yapacak şekilde yapılandırabilmeniz için birleşik bir YAML deneyimi sunuyoruz. YAML CD özellikleri, çok aşamalı YAML işlem hatlarını kullanan tüm koleksiyonlar için kullanılabilen birkaç yeni gelişmiş özellik sunar. Önemli noktalardan bazıları şunlardır:

Oluşturmaya başlamaya hazırsanız çok aşamalı CI/CD işlem hatları oluşturmaya yönelik belgelerine veya blog göz atın.

YAML düzenleyicisinde işlem hattı değişkenlerini yönetme

YAML düzenleyicisinde işlem hattı değişkenlerini yönetme deneyimini güncelleştirdik. ARTıK YAML işlem hatlarınıza değişken eklemek veya güncelleştirmek için klasik düzenleyiciye gitmeniz gerekmez.

Değişkenler iletişim kutusunu gösteren ekran görüntüsü.

Yayınları doğrudan Yayınlar hub'ından onaylama

Bekleyen onaylar üzerinde hareket etmek daha kolay hale getirildi. Daha önce, yayının ayrıntılar sayfasından bir sürümü onaylamak mümkündü. Artık yayınları doğrudan Yayınlar hub'ından onaylayabilirsiniz.

Yayın hub'ından yayınları onaylama işlemini gösteren ekran görüntüsü.

İşlem hatlarını kullanmaya başlamaya yönelik iyileştirmeler

Başlarken sihirbazında sık sorulan bir soru, oluşturulan dosyayı yeniden adlandırma özelliğidir. Şu anda deponuzun kök dizininde azure-pipelines.yml olarak kayıtlıdır. Artık işlem hattını kaydetmeden önce bunu farklı bir dosya adı veya konumla değiştirebilirsiniz.

Son olarak, azure-pipelines.yml dosyasını farklı bir dalda yüklerken daha fazla kontrol sizde olacak çünkü bu daldan çekme isteği oluşturmayı tercih etmeyebilirsiniz.

İşlem hattını işlemeden veya çalıştırmadan tamamen ayrıştırılmış YAML belgesini önizleme

önizlemesi ekledik ancak YAML işlem hatları için modunu çalıştırmıyoruz. Artık bir YAML işlem hattını çalıştırmak veya bir depoya işlemek zorunda kalmadan deneyebilirsiniz. Mevcut bir işlem hattı ve isteğe bağlı yeni YAML yükü göz önünde bulundurulduğunda, bu yeni API size tam YAML işlem hattını geri verecektir. Gelecek güncelleştirmelerde bu API yeni bir düzenleyici özelliğinde kullanılacaktır.

Geliştiriciler için: dev.azure.com/<org>/<project>/_apis/pipelines/<pipelineId>/runs?api-version=5.1-preview'a aşağıdaki gibi bir JSON gövdesiyle POST et:

{
  "PreviewRun": true,
  "YamlOverride": "
# your new YAML here, optionally
"
}

Yanıt, işlenen YAML'yi içerir.

YAML'de cron zamanlamaları

Daha önce, YAML işlem hatları için zamanlanmış bir tetikleyici belirtmek üzere kullanıcı arabirimi düzenleyicisini kullanabilirsiniz. Bu sürümle, YAML dosyanızda cron söz dizimini kullanarak derlemeleri zamanlayabilir ve aşağıdaki avantajlardan yararlanabilirsiniz:

  1. Kod olarak yapılandırma: Zamanlamayı ve işlem hattınızı kodun bir parçası olarak izleyebilirsiniz.
  2. İfade: Zamanlamaları tanımlamada kullanıcı arabirimiyle yapabileceklerinize kıyasla daha fazla ifade gücü elde edebilirsiniz. Örneğin, saatte bir çalıştırma başlatan tek bir zamanlama belirtmek daha kolaydır.
  3. Endüstri standardı: Birçok geliştirici ve yönetici cron söz dizimini zaten biliyor.
schedules:
- cron: "0 0 * * *"
 displayName: Daily midnight build
 branches:
  include:
  - main
  - releases/*
  exclude:
  - releases/ancient/*
 always: true

Ayrıca cron zamanlamalarıyla ilgili sorunları tanılamanızı da kolaylaştırdık. İşlem hattını çalıştır menüsündeki Zamanlanmış çalıştırmalar, cron zamanlamalarınızla ilgili hataları tanılamanıza yardımcı olmak üzere işlem hattınız için yaklaşan birkaç zamanlanmış çalıştırmanın önizlemesini sağlar.

Zamanlanmış çalıştırmalar seçeneğinin vurgulandığı İşlem hattını çalıştır menüsünü gösteren ekran görüntüsü.

Hizmet bağlantıları arayüz güncellemeleri

Hizmet bağlantılarınızı yönetmek için güncelleştirilmiş bir kullanıcı deneyimi üzerinde çalışıyoruz. Bu güncelleştirmeler, hizmet bağlantısı deneyimini Azure DevOps'un yönüyle modern ve tutarlı hale getirir. Hizmet bağlantıları için yeni kullanıcı arabirimini bu yılın başlarında önizleme özelliği olarak kullanıma sunduk. Yeni deneyimi deneyen ve değerli geri bildirimlerini bize sağlayan herkese teşekkür ederiz.

Yeni hizmet bağlantısı iletişim kutusunun ekran görüntüsü.

Kullanıcı deneyimini yenilemenin yanı sıra YAML işlem hatlarında hizmet bağlantılarını kullanmak için kritik öneme sahip iki özellik de ekledik: işlem hattı yetkilendirmeleri, onaylar ve denetimler.

Onaylar ve denetimler seçeneğinin görünür olduğu YAML işlem hattında Düzenle menüsünü gösteren ekran görüntüsü.

Yeni kullanıcı deneyimi bu güncelleştirmeyle birlikte varsayılan olarak açılacaktır. Önizlemeyi geri çevirme seçeneğiniz devam edecektir.

Not

Yeni bir özellik olarak hizmet bağlantılarının Çapraz Proje Paylaşımını tanıtmayı planlıyoruz. Paylaşım deneyimi ve güvenlik rolleri hakkında daha fazla ayrıntıyı buradabulabilirsiniz.

YAML işlem hattında aşamaları atlama

El ile çalıştırma başlattığınızda, bazen işlem hattınızdaki birkaç aşamayı atlamak isteyebilirsiniz. Örneğin, üretim ortamına dağıtım yapmak istemiyorsanız veya üretim ortamındaki birkaç ortam için dağıtımı atlamak istiyorsanız. Artık bunu YAML işlem hatlarınızla yapabilirsiniz.

Güncelleştirilmiş çalıştırma işlem hattı paneli YAML dosyasındaki aşamaların listesini sunar ve bu aşamalardan birini veya daha fazlasını atlama seçeneğiniz vardır. Aşamaları atlarken dikkatli olmanız gerekir. Örneğin, ilk aşamanız sonraki aşamalar için gerekli olan bazı yapıtları üretirse, ilk aşamayı atlamamalısınız. Aşağı akış bağımlılıkları olan aşamaları atladığınızda çalıştırma paneli genel bir uyarı sunar. Bu bağımlılıkların gerçekten yazılım bileşeni bağımlılıkları mı yoksa sadece dağıtımların sıralaması için mi mevcut olduklarına karar vermek size bırakılmıştır.

Çalıştırılacak Aşamalar seçeneğinin vurgulandığı İşlem Hattını Çalıştır bölümünü gösteren ekran görüntüsü.

Aşama atlanması, aşamalar arasındaki bağımlılıkları yeniden döndürmeye eşdeğerdir. Atlanan aşamanın doğrudan alt aşama bağımlılıkları, atlanan aşamanın üst aşamasına bağlı olacak şekilde yapılandırılır. Çalıştırma başarısız olursa ve başarısız bir aşamayı yeniden çalıştırmayı denerseniz, bu deneme aynı atlama davranışına da sahip olur. Atlanan aşamaları değiştirmek için yeni bir çalıştırma başlatmanız gerekir.

Geliştirme seçeneğinin ve dağıtım seçeneğinin seçili olduğu Çalıştırılacak aşamalar bölümünü gösteren ekran görüntüsü.

Hizmet bağlantıları yeni kullanıcı arabirimini varsayılan deneyim olarak kullanır

Yeni bir hizmet bağlantıları arayüzü var. Bu yeni kullanıcı arabirimi modern tasarım standartlarına dayalıdır ve onaylar, yetkilendirmeler ve çapraz proje paylaşımı gibi çok aşamalı YAML CD işlem hatlarını desteklemek için çeşitli kritik özelliklerle birlikte gelir.

İşlem hattını çalıştır iletişim kutusunun ekran görüntüsü.

hizmet bağlantıları hakkında daha fazla bilgi edinin.

Çalıştırma oluşturma iletişim kutusunda işlem hattı kaynak sürümü seçicisi

Çalıştırma oluşturma iletişim kutusunda işlem hattı kaynak sürümlerini el ile alma özelliğini ekledik. Bir işlem hattını başka bir işlem hattında kaynak olarak tüketirseniz, artık çalıştırma oluştururken bu işlem hattının sürümünü seçebilirsiniz.

Çalıştırılacak aşamalar iletişim kutusunun ekran görüntüsü.

Azure Pipelines için az CLI geliştirmeleri

İşlem hattı değişken grupları ve değişkenlerin yönetimi komutları

İşlem hattı değişkenlerini ve değişken gruplarını el ile ayarlamanız gerektiğinden YAML tabanlı işlem hatlarını bir projeden diğerine taşımanız zor olabilir. Ancak, işlem hattı değişken grubu ve değişken yönetim komutlarıyla, artık işlem hattı değişkenlerinin ve değişken gruplarının kurulumu ve yönetimi için betik oluşturabilir ve bu sayede sürüm denetimi yapılabilir ve işlem hatlarını bir projeden diğerine taşıma ve ayarlama yönergelerini kolayca paylaşabilirsiniz.

PR şubesi için işlem hattı çalıştırma

Çekme isteği oluştururken, değişikliklerin hedef dalda işlem hattı çalışmasını bozup bozmayacağını doğrulamak zor olabilir. Ancak, bir çekme isteği (PR) dalı için bir işlem hattı çalışmasını tetikleme veya bir derlemeyi kuyruğa alma özelliği sayesinde, artık bu değişiklikleri hedef işlem hattında çalıştırarak doğrulayıp görselleştirebilirsiniz. Daha fazla bilgi için az pipelines run ve az pipelines build queue komut belgelerine bakın.

İlk işlem hattı çalıştırmasını atlama

İşlem hatları oluştururken bazen bir YAML dosyası oluşturup işlemek ve işlem hattı çalıştırmasını tetiklememek istersiniz, bunun nedeni çeşitli nedenlerle hatalı bir çalıştırmaya neden olabilir; altyapı hazır değildir veya değişken/değişken grupları oluşturup güncelleştirmeniz vb. gerekebilir. Azure DevOps CLI ile şimdi --skip-first-run parametresini ekleyerek işlem hattı oluşturmada ilk otomatik işlem hattı çalıştırmasını atlayabilirsiniz. Daha fazla bilgi için az pipeline create komut dökümantasyonu belgelerine bakın.

Hizmet uç noktası komut geliştirmesi

Hizmet uç noktası CLI komutları yalnızca azure rm ve github hizmet uç noktası kurulumu ve yönetimini destekler. Ancak bu sürümle birlikte hizmet uç noktası komutları, dosya aracılığıyla yapılandırmayı sağlayarak herhangi bir hizmet uç noktası oluşturmanıza olanak tanır ve iyileştirilmiş komutlar sağlar: az devops service-endpoint github ve az devops service-endpoint azurerm, bu türlerde hizmet uç noktaları oluşturmak için birinci sınıf destek sağlar. Daha fazla bilgi için komut belgelerine bakın.

Dağıtım işleri

Dağıtım işi, uygulamanızı bir ortama dağıtmak için kullanılan özel bir türüdür. Bu güncelleştirmeyle, bir dağıtım işinde adım başvuruları için destek ekledik. Örneğin, bir dosyada bir dizi adım tanımlayabilir ve bir dağıtım işinde buna başvurabilirsiniz.

Ayrıca dağıtım işine ek özellikler için destek ekledik. Örneğin, şimdi ayarlayabileceğiniz bir dağıtım işinin birkaç özelliği şunlardır:

  • timeoutInMinutes - işi otomatik olarak iptal etmeden önce çalıştırma süresi
  • cancelTimeoutInMinutes - sonlandırmadan önce 'iptal edilmiş görevler olsa bile her zaman çalıştır' için ne kadar süre tanıyabilirsiniz?
  • koşul - işi koşullu olarak çalıştırma
  • değişkenleri - Sabit kodlanmış değerler doğrudan eklenebilir veya değişken gruplarıazure anahtar kasası tarafından desteklenen değişken grubuna başvurulabilir veya bir dosyada tanımlanandeğişkenleri kümesine başvurabilirsiniz.
  • continueOnError - bu dağıtım işi başarısız olsa bile gelecekteki işler çalıştırılacaksa; varsayılan değeri 'false' olarak ayarlanır

Dağıtım işleri hakkında daha fazla ayrıntı ve bir dağıtım işi belirtmek için tam söz dizimi için bkz. Dağıtım işi.

CI işlem hatlarında ilgili CD işlem hattı bilgisi gösterilir.

CD YAML işlem hattı ayrıntılarında, CI işlem hatlarının boru hattı kaynakları olarak adlandırıldığı yerlere destek ekledik. CI işlem hattı çalıştırma görünümünüzde artık, işlem hattınızı ve ondan gelen yapıtları kullanan tüm işlem hattı çalıştırmalarını bulabileceğiniz yeni bir 'İlişkili işlem hatları' sekmesi göreceksiniz.

CI işlem hatlarında ilişkili CD işlem hatları bilgilerini gösteren ekran görüntüsü.

YAML işlem hatlarında GitHub paketleri desteği

Yakın zamanda, YaML işlem hatlarında kaynak olarak GitHub'dan NuGet ve npm paketlerini kullanma desteği ekleyen paketleri adlı yeni bir kaynak türü ekledik. Bu kaynağın bir parçası olarak artık GitHub'dan kullanmak istediğiniz paket türünü (NuGet veya npm) belirtebilirsiniz. Ayrıca, yeni bir paket sürümünün yayımlanmasından sonra otomatik işlem hattı tetikleyicilerini etkinleştirebilirsiniz. Bugün destek yalnızca GitHub'dan paketlerin tüketilmesi için kullanılabilir, ancak ileriye dönük olarak desteği, NuGet, npmAzureArtifacts ve daha fazlası gibi diğer paket depolarından gelen paketleri kullanacak şekilde genişletmeyi planlıyoruz. Ayrıntılar için aşağıdaki örniğe bakın:

resources:
  packages:
    - package: myPackageAlias # alias for the package resource
      type: Npm # type of the package NuGet/npm
      connection: GitHubConn # Github service connection of type PAT
      name: nugetTest/nodeapp # <Repository>/<Name of the package>
      version: 1.0.9 # Version of the packge to consume; Optional; Defaults to latest
      trigger: true # To enable automated triggers (true/false); Optional; Defaults to no triggers

Not

Bugün GitHub paketleri yalnızca PAT tabanlı kimlik doğrulamasını destekler, bu da paket kaynağındaki GitHub hizmet bağlantısının PAT türünde olması gerektiği anlamına gelir. Bu sınırlama kaldırıldıktan sonra diğer kimlik doğrulama türleri için destek sağlayacağız.

Varsayılan olarak, paketler işlerinize otomatik olarak indirilmez. Bu nedenle, kaynakta tanımlanan paketi kullanmanıza olanak tanıyan getPackage makrosunu tanıttık. Ayrıntılar için aşağıdaki örniğe bakın:

- job: job1
  pool: default
  steps:
    - getPackage: myPackageAlias # Alias of the package resource

Kubernetes ortamlarının kaynak görünümüne bir bağlantı ekledik, böylece ilgili kümenin Azure dikey penceresine gidebilirsiniz. Bu, Azure Kubernetes Service kümelerindeki ad alanlarına eşlenen ortamlar için geçerlidir.

Azure Kubernetes Hizmet Kümesi bağlantısının vurgulandığı Kubernetes ortamı kaynak görünümünün ekran görüntüsü.

Bildirim aboneliklerinde klasör filtrelerini serbest bırakma

Klasörler, daha kolay bulunabilirlik ve güvenlik denetimi için işlem hatlarını düzenlemeye olanak tanır. Genellikle, bir klasör altındaki tüm işlem hatları tarafından temsil edilen tüm yayın işlem hatları için özel e-posta bildirimleri yapılandırmak isteyebilirsiniz. Daha önce, odaklanmış e-postaları almak için birden çok abonelik yapılandırmanız veya aboneliklerde karmaşık bir sorguya sahip olmanız gerekiyordu. Bu güncelleştirmeyle, artık tamamlanan dağıtımındaki olayına bir yayın klasörü yan tümcesi ekleyebilir ve onay bekleyen olaylarına ve abonelikleri basitleştirebilirsiniz.

Bildirim aboneliklerindeki yayın klasörü filtrelerinin ekran görüntüsü.

Şu anda, iş öğelerini klasik derlemelerle otomatik olarak bağlayabilirsiniz. Ancak, YAML işlem hatlarında bu mümkün değildi. Bu güncelleştirmeyle bu açığı ele aldık. Belirtilen daldan alınan kodu kullanarak bir işlem hattını başarıyla çalıştırdığınızda, Azure Pipelines bu çalışmayı, komitler üzerinden çıkarılan tüm çalışma öğeleriyle otomatik olarak ilişkilendirir. İş öğesini açtığınızda, o iş öğesinin kodunun oluşturulduğu çalıştırmaları görebilirsiniz. Bunu yapılandırmak için işlem hattının ayarlar panelini kullanın.

Çok aşamalı YAML işlem hattı çalıştırmasında aşamayı iptal etme

Çok aşamalı bir YAML işlem hattını çalıştırırken, artık devam eden bir aşamanın yürütülmesini iptal edebilirsiniz. Başlangıç aşamasının başarısız olacağını biliyorsanız veya başlatmak istediğiniz başka bir işleminiz varsa bu yararlıdır.

Başarısız aşamaları yeniden deneme

Çok aşamalı işlem hatlarında en çok istenen özelliklerden biri, baştan başlamak zorunda kalmadan başarısız bir aşamayı yeniden deneme olanağıdır. Bu güncelleştirmeyle, bu işlevselliğin büyük bir bölümünü ekliyoruz.

Artık yürütme başarısız olduğunda işlem hattı aşamasını yeniden deneyebilirsiniz. İlk denemede başarısız olan ve geçişli olarak bu başarısız işlere bağımlı olan tüm işler yeniden deneniyor.

Bu, çeşitli yollarla zaman kazanmanıza yardımcı olabilir. Örneğin, bir aşamada birden çok iş çalıştırdığınızda, her aşamanın farklı bir platformda test çalıştırmasını isteyebilirsiniz. Bir platformdaki testler diğerleri geçerken başarısız olursa, geçen işleri yeniden çalıştırmayarak zaman kazanabilirsiniz. Başka bir örnek olarak, gevşek ağ bağlantısı nedeniyle dağıtım aşaması başarısız olmuş olabilir. Bu aşamayı yeniden denemek, başka bir derleme oluşturmak zorunda kalmadan zaman kazanmanıza yardımcı olur.

Bu özellikte bilinen birkaç boşluk vardır. Örneğin, açıkça iptal ettiğiniz bir aşamayı yeniden deneyemezsiniz. Gelecek güncelleştirmelerde bu boşlukları kapatmak için çalışıyoruz.

Çok aşamalı YAML işlem hatlarında onaylar

YAML CD işlem hatlarınız el ile onaylar içerebilir. Altyapı sahipleri, ortamlarını koruyabilir ve herhangi bir dağıtım hattında bir aşama başlamadan önce el ile onay alabilir. Altyapı (ortam) ve uygulama (işlem hattı) sahipleri arasındaki rollerin tam olarak ayrılmasıyla, belirli bir işlem hattında dağıtım için el ile oturum kapatmayı güvence altına alır ve aynı denetimlerin ortama tüm dağıtımlarda uygulanmasında merkezi denetim elde edersiniz.

Kaynak Ekle menüsünün

Dev ortamına yapılacak dağıtıma yönelik işlem hattı çalıştırmaları, aşamanın başlangıcında onay için durdurulacaktır.

Dağıtımın onay beklediğini gösteren ekran görüntüsü.

Geçit zaman aşımı sınırında ve sıklığında artış

Daha önce yayın işlem hatlarındaki geçit zaman aşımı sınırı üç gündü. Bu güncelleştirmeyle, daha uzun sürelere sahip geçitlere izin vermek için zaman aşımı sınırı 15 gün olarak artırıldı. Ayrıca geçidin sıklığını 30 dakikaartırdık.

Dockerfile için yeni oluşturma görüntüsü şablonu

Daha önce, yeni işlem hattı oluşturma işleminde Dockerfile için yeni bir işlem hattı oluştururken şablon görüntüyü bir Azure Container Registry'ye göndermeyi ve Azure Kubernetes Service'e dağıtmayı önerirdi. Kapsayıcı kayıt defterine göndermeye gerek kalmadan aracıyı kullanarak görüntü oluşturmanıza olanak sağlamak için yeni bir şablon ekledik.

Docker iletişim kutusunun ekran görüntüsü.

Azure App Service uygulama ayarlarını yapılandırmak için yeni görev

Azure App Service, uygulama ayarları, bağlantı dizeleri ve diğer genel yapılandırma ayarları gibi çeşitli ayarları yapılandırmaya olanak tanır. Artık, web uygulamanızda veya dağıtım yuvalarından herhangi birinde JSON söz dizimini kullanarak bu ayarları toplu olarak yapılandırmayı destekleyen yeni bir Azure Pipelines görevi olan Azure App Service Ayarları 'e sahibiz. Bu görev, dağıtmakweb uygulamalarınızı, İşlev uygulamalarınızı veya diğer kapsayıcılı App Services uygulamalarınızı yönetmek ve yapılandırmak için diğer App Service görevleriyle birlikte kullanılabilir.

Azure App Service Ayarları iletişim kutusunu gösteren ekran görüntüsü.

Azure App Service artık önizleme modunda değişim desteği sunuyor.

Azure App Service artık dağıtım yuvalarında önizleme ile Değiştirme özelliğini destekliyor. Bu, uygulama bir hazırlama yuvasından üretim yuvasına değiştirilmeden önce uygulamayı üretim yapılandırmasıyla doğrulamanın iyi bir yoludur. Bu, hedef/üretim yuvasında kesinti yaşanmamasını da sağlar.

Azure App Service görevi artık aşağıdaki yeni eylemler aracılığıyla bu çok aşamalı değişimi destekliyor:

  • Önizleme ile Değişimi Başlat - Önizlemeyle değiştirme (çok aşamalı değiştirme) başlatır ve kaynak yuvaya hedef yuva (örneğin, üretim yuvası) yapılandırması uygular.
  • Önizleme ile Değiştirme İşlemini Tamamla - Bekleyen değişimi tamamlamaya hazır olduğunuzda, Önizleme ile Değişimi Tamamla eylemini seçin.
  • Önizleme ile Değişimi İptal Et - Bekleyen değişimi iptal etmek için Önizleme ile Değişimi İptal Et'i seçin.

Azure App Service yönetim iletişim kutusunda, Eylem açılır listesinde yer alan yeni çok aşamalı değiştirme ayarını gösteren ekran görüntüsü.

Azure Container Registry ve Docker Hub yapıtları için aşama düzeyi filtresi

Daha önce Azure Container Registry ve Docker Hub yapıtları için normal ifade filtreleri yalnızca yayın işlem hattı düzeyinde kullanılabilirdi. Artık aşama seviyesinde de eklenmiş durumdalar.

Hazırlama düzeyinde normal ifadeleri kullanabileceğinizi gösteren ekran görüntüsü.

YAML işlem hatlarındaki onay süreçlerine yönelik geliştirmeler

Hizmet bağlantılarında ve aracı havuzlarında onayların yapılandırılmasını mümkün hale getirdik. Onaylar için altyapı sahipleri ve geliştiriciler arasındaki rol ayrımını takip ediyoruz. Kaynaklarınız, örneğin ortamlar, hizmet bağlantıları ve aracı havuzları üzerinde onay aşamalarını yapılandırarak, bu kaynakları kullanan tüm işlem hattı yürütümlerinin öncelikle onaylanmasını gerektireceğinden emin olabilirsiniz.

Bu deneyim, ortamlar için onayları yapılandırmaya benzer. Bir aşamada referans edilen bir kaynakta onay beklemede olduğunda, işlem hattının yürütülmesi, işlem hattı manuel olarak onaylanana kadar bekler.

El ile onayları kullan sayfasının ve Oluştur seçeneğinin görünür olduğu İlkeler sekmesini gösteren ekran görüntüsü.

Azure Pipelines'da kapsayıcı mimarisi test desteği

Uygulamalarda kapsayıcıların kullanımı artmaktadır ve bu nedenle güçlü test ve doğrulama gereksinimi artmaktadır. Azure Pipelines artık Kapsayıcı Yapısı Testleriiçin destek sunuyor. Bu çerçeve, kapsayıcılarınızın içeriğini ve yapısını doğrulamak için kullanışlı ve güçlü bir yol sağlar.

Bir görüntünün yapısını birlikte çalıştırabileceğiniz dört test kategorisine göre doğrulayabilirsiniz: komut testleri, dosya varlığı testleri, dosya içeriği testleri ve meta veri testleri. Go/no go kararları almak için işlem hattındaki sonuçları kullanabilirsiniz. Hataları daha iyi çözebilmeniz için test verileri, bir hata mesajıyla birlikte işlem hattı çalışmasında mevcuttur.

Yapılandırma dosyasını ve görüntü ayrıntılarını girin

Kapsayıcı Yapısı Test sayfasını gösteren ekran görüntüsü.

Test verileri ve özet

Özet ve test verilerinin kullanılabilir olduğunu gösteren ekran görüntüsü.

Yayın işlem hatları için işlem hattı dekoratörleri

İşlem hattı dekoratörleri, her işin başlangıcına ve bitişine adım eklemeye olanak sağlar. Bu, bir koleksiyondaki tüm işlem hatları için geçerli olduğundan tek bir tanıma adım eklemekten farklıdır.

Dekoratörleri derlemeler ve YAML işlem hatları için destekliyoruz; müşteriler, işlerindeki adımları merkezi olarak kontrol etmek için bunları kullanıyor. Desteği artık sürüm boru hatlarına da genişletiyoruz. Yeni katkı noktasını hedefleyen adımlar eklemek için uzantılar oluşturabilirsiniz ve bunlar yayın işlem hatlarındaki tüm aracı işlerine eklenir.

Azure Resource Manager'ı (ARM) abonelik ve yönetim grubu düzeyine dağıtma

Daha önce yalnızca Kaynak Grubu düzeyinde dağıtımları destekliyoruz. Bu güncelleştirmeyle ARM şablonlarını hem abonelik hem de yönetim grubu düzeylerine dağıtma desteği ekledik. Bu, bir kaynak kümesini birlikte dağıtırken ancak bunları farklı kaynak gruplarına veya aboneliklere yerleştirirken size yardımcı olur. Örneğin, Azure Site Recovery için yedekleme sanal makinesini ayrı bir kaynak grubuna ve konuma dağıtma.

Çok aşamalı YAML işlem hatlarınız için CD özellikleri

Artık CI işlem hattınız tarafından yayımlanan ürünleri kullanabilir ve komple bitirme tetikleyicilerini etkinleştirebilirsiniz. Çok aşamalı YAML işlem hatlarında kaynak olarak pipelines sunuyoruz. YAML'nizde artık başka bir işlem hattına başvurabilir ve CD tetikleyicilerini etkinleştirebilirsiniz.

İşlem hatları kaynağı için detaylı YAML şeması aşağıda yer almaktadır.

resources: 
  pipelines:
  - pipeline: MyAppCI  # identifier for the pipeline resource
    project:  DevOpsProject # project for the build pipeline; optional input for current project
    source: MyCIPipeline  # source pipeline definition name
    branch: releases/M159  # branch to pick the artifact, optional; defaults to all branches
    version: 20190718.2 # pipeline run number to pick artifact; optional; defaults to last successfully completed run
    trigger:     # Optional; Triggers are not enabled by default.
      branches:  
        include:  # branches to consider the trigger events, optional; defaults to all branches.
        - main
        - releases/*
        exclude:   # branches to discard the trigger events, optional; defaults to none.
        - users/*  

Ayrıca, - download görevini kullanarak işlem hattı kaynağınız tarafından yayımlanan yapıtları indirebilirsiniz.

steps: 
- download: MyAppCI  # pipeline resource identifier
    artifact:  A1 # name of the artifact to download; optional; defaults to all artifacts

Daha fazla ayrıntı için, buradayapıtları indirme belgelerine bakın.

Kubernetes için bir ortamda kanarya dağıtım stratejisini koordine etme

Uygulama güncelleştirmelerinin sürekli tesliminin temel avantajlarından biri, güncelleştirmeleri belirli mikro hizmetler için hızla üretime gönderebilme özelliğidir. Bu, iş gereksinimlerindeki değişikliklere hızlı bir şekilde yanıt vermenizi sağlar. Ortam, dağıtım stratejilerinin yönetimini ve sıfır kesinti süresiyle sürdürülmesini sağlayan birinci sınıf bir kavram olarak tanıtıldı. Daha önce, adımları sırayla bir kez yürüten runOnce stratejisini desteklemiştik. Çok aşamalı işlem hatlarında kanarya stratejisi desteği sayesinde, değişikliği küçük bir alt kümeye yavaşça dağıtarak riski azaltabilirsiniz. Yeni sürüme daha fazla güven kazandıkça altyapınızdaki daha fazla sunucuya dağıtabilir ve daha fazla kullanıcıyı bu sunucuya yönlendirebilirsiniz.

jobs:
- deployment:
  environment: musicCarnivalProd
  pool:
    name: musicCarnivalProdPool 
  strategy:                 
    canary:     
      increments: [10,20] 
      preDeploy:                                    
        steps:          
        - script: initialize, cleanup....  
      deploy:            
        steps:
        - script: echo deploy updates...
        - task: KubernetesManifest@0
          inputs:
            action: $(strategy.action)      
            namespace: 'default'
            strategy: $(strategy.name)
            percentage: $(strategy.increment)
            manifests: 'manifest.yml'
      postRouteTaffic:
        pool: server
        steps:          
        - script: echo monitor application health...  
      on:
        failure:
          steps:
	  - script: echo clean-up, rollback...  
        success:
          steps:
          - script: echo checks passed, notify...

Kuberenetes için kanarya stratejisi, değişiklikleri önce 10% pod ve ardından 20% ile dağıtır ve postRouteTrafficsırasında durumu izler. Eğer her şey yolunda giderse, 100%'ye yükseltilecek.

Ortamlarda VM kaynağı desteği hakkında erken geri bildirimde bulunmak ve birden çok makinede sıralı dağıtım stratejisi gerçekleştirmek istiyoruz. Kaydolmak için bize ulaşın.

YAML işlem hatları için onay ilkeleri

YAML işlem hatlarında, kaynak sahibi tarafından denetlenen bir onay yapılandırmasını takip ediyoruz. Kaynak sahipleri, kaynak üzerinde onayları yapılandırır ve kaynağı kullanan tüm işlem hatları, kaynağı tüketen aşama başlamadan önce onay için duraklar. SOX tabanlı uygulama sahiplerinin, dağıtımı isteyenin kendi dağıtımlarını onaylamasını kısıtlaması yaygındır.

Artık gelişmiş onay seçeneklerini kullanarak istek sahibinin onaylamaması, kullanıcıların bir alt kümesinden onay istemesi ve onay zaman aşımı gibi onay ilkelerini yapılandırabilirsiniz.

Onay oluştur iletişim kutusunu gösteren ekran görüntüsü.

Birinci sınıf işlem hattı kaynağı olarak ACR

İşlem hattınızın bir parçası olarak ACR'de (Azure Container Registry) yayımlanan bir kapsayıcı görüntüsünü kullanmanız ve yeni bir görüntü yayımlandığında işlem hattınızı tetiklemeniz gerekiyorsa, ACR kapsayıcı kaynağını kullanabilirsiniz.

resources:
  containers:
  - container: MyACR  #container resource alias
    type: ACR
    azureSubscription: RMPM  #ARM service connection
    resourceGroup: contosoRG
    registry: contosodemo
    repository: alphaworkz
    trigger: 
      tags:
        include: 
        - production 

Ayrıca, ACR görüntü meta verilerine önceden tanımlanmış değişkenler kullanılarak erişilebilir. Aşağıdaki liste, işlem hattınızda bir ACR kapsayıcı kaynağı tanımlamak için kullanılabilen ACR değişkenlerini içerir.

resources.container.<Alias>.type
resources.container.<Alias>.registry
resources.container.<Alias>.repository
resources.container.<Alias>.tag 
resources.container.<Alias>.digest
resources.container.<Alias>.URI
resources.container.<Alias>.location

Boru hatlarının artefakt denetim politikasını değerlendirmeye yönelik geliştirmeler

Kutudan çıkan ilke tanımlarının listesinden ilke eklemeyi kolaylaştırmak için değerlendirme yapıtı kontrolü geliştirdik. İlke tanımı otomatik olarak oluşturulacak ve gerekirse güncellenebilecek olan denetim yapılandırmasına eklenecektir.

Şablon kullan seçeneğinin altı çizili şekilde Yapıtı değerlendir iletişim kutusunu gösteren ekran görüntüsü.

Artifakt ilkesini yapılandır iletişim kutusunu ve içerdiği şablon listesini gösteren ekran görüntüsü.

Dağıtım işinde çıkış değişkenleri desteği

Artık bir dağıtım işinin yaşam döngüsü kancalarında çıkış değişkenlerini tanımlayabilir ve bunları aynı aşamadaki takip eden adımlar ve işler içinde kullanabilirsiniz.

Dağıtım stratejilerini yürütürken, aşağıdaki söz dizimini kullanarak çıkış değişkenlerine işler arasında erişebilirsiniz.

  • runOnce stratejisi için: $[dependencies.<job-name>.outputs['<lifecycle-hookname>.<step-name>.<variable-name>']]
  • kanarya stratejisi için: $[dependencies.<job-name>.outputs['<lifecycle-hookname>_<increment-value>.<step-name>.<variable-name>']]
  • döngüsel stratejisi için: $[dependencies.<job-name>.outputs['<lifecycle-hookname>_<resource-name>.<step-name>.<variable-name>']]
// Set an output variable in a lifecycle hook of a deployment job executing canary strategy
- deployment: A
  pool:
    vmImage: 'ubuntu-16.04'
  environment: staging
  strategy:                  
    canary:      
      increments: [10,20]  # creates multiple jobs, one for each increment. Output variable can be referenced with this.
      deploy:
        steps:
        - script: echo "##vso[task.setvariable variable=myOutputVar;isOutput=true]this is the deployment variable value"
          name: setvarStep
        - script: echo $(setvarStep.myOutputVar)
          name: echovar

 // Map the variable from the job
- job: B
  dependsOn: A
  pool:
    vmImage: 'ubuntu-16.04'
  variables:
    myVarFromDeploymentJob: $[ dependencies.A.outputs['deploy_10.setvarStep.myOutputVar'] ]
  steps:
  - script: "echo $(myVarFromDeploymentJob)"
    name: echovar

Çok işli çıkış değişkeni ayarlama hakkında daha fazla bilgi edinin

Kritik değişikliklerin geri alınmasından kaçının

Klasik yayın işlem hatlarında, düzenli güncelleştirmeler için zamanlanmış dağıtımlara güvenmek yaygın bir durumdur. Ancak, kritik bir düzeltmeniz olduğunda el ile bant dışı dağıtım başlatmayı seçebilirsiniz. Bunu yaparken eski sürümler zamanlanmış olarak kalmaya devam eder. Dağıtımlar zamanlamaya göre sürdürülürken el ile dağıtım geri alınacağı için bu bir zorluğa neden oldu. Birçoğunuz bu sorunu bildirdiniz ve şimdi düzeltildi. Düzeltmeyle birlikte, bir dağıtımı el ile başlattığınızda ortama yapılan tüm eski zamanlanmış dağıtımlar iptal edilir. Bu yalnızca kuyruğa alma seçeneği "En son dağıt ve diğerlerini iptal et" olarak belirlendiğinde geçerlidir.

YAML işlem hatlarında basitleştirilmiş kaynak yetkilendirmesi

Kaynak, işlem hattının dışındaki bir işlem hattı tarafından kullanılan her şeydir. Kaynakların kullanılabilmesi için önce yetkilendirilmeleri gerekir. Daha önce yaml işlem hattında yetkisiz kaynaklar kullanılırken kaynak yetkilendirme hatasıyla başarısız oldu. Başarısız çalıştırmanın özet sayfasından kaynakları yetkilendirmeniz gerekiyordu. Ayrıca, yetkisiz bir kaynağa başvuran bir değişken kullanıyorsa işlem hattı başarısız oldu.

Artık kaynak yetkilendirmelerini yönetmeyi kolaylaştırıyoruz. Çalıştırma başarısız olursa, çalıştırma, kaynağı kullanan aşamanın başında kaynaklar üzerinde izinleri bekler. Kaynak sahibi işlem hattını görüntüleyebilir ve Güvenlik sayfasından kaynağı yetkilendirebilir.

Geliştirme aşamasını gösteren ekran görüntüsü, İzin gerektiğini belirten bir göstergeyle Bekleme durumundadır.

Artefakt kontrolünü değerlendirme

Artık bir politika kümesi tanımlayabilir ve kapsayıcı görüntü yapıtları için bir ortamda politika değerlendirmesini bir kontrol olarak ekleyebilirsiniz. İşlem hattı çalıştırıldığında, ortamı kullanan bir aşama başlatılmadan önce yürütme duraklatılır. Belirtilen ilke, dağıtılmakta olan görüntünün kullanılabilir meta verilerine göre değerlendirilir. Politika başarılı olduğunda denetim geçer ve denetim başarısız olursa aşamayı başarısız olarak işaretler.

Eser politikalarını değerlendirme iletişim kutusunun ekran görüntüsü.

ARM şablonu dağıtım görevinin güncellemeleri

Daha önce ARM şablonu dağıtım görevinde hizmet bağlantılarını filtrelememiştik. Daha geniş bir kapsama ARM şablonu dağıtımları gerçekleştirmek için daha düşük kapsamlı bir hizmet bağlantısı seçerseniz bu, dağıtımın başarısız olmasına neden olabilir. Şimdi, seçtiğiniz dağıtım kapsamına göre daha düşük kapsamlı hizmet bağlantılarını filtrelemek için hizmet bağlantılarını filtreleme özelliği ekledik.

OrtamdaKi ReviewApp

ReviewApp, Git deponuzdaki her pull request’i canlı bir ortam kaynağına dağıtır. Gözden geçirenler, bu değişikliklerin nasıl göründüğünü görebilir ve ana dala birleştirilip üretime alınmadan önce diğer bağımlı hizmetlerle birlikte çalışabilir. Bu, reviewApp kaynaklarını oluşturmanızı ve yönetmenizi kolaylaştıracak, aynı zamanda ortam özelliklerinin tüm izlenebilirlik ve tanılama yeteneklerinden faydalanmanızı sağlayacaktır. reviewApp anahtar sözcüğünü kullanarak bir kaynağın kopyasını oluşturabilir (ortamdaki mevcut bir kaynağı temel alarak dinamik olarak yeni bir kaynak oluşturabilir) ve yeni kaynağı ortama ekleyebilirsiniz.

Aşağıda, ortamlar altında reviewApp kullanmanın örnek bir YAML kod parçacığı verilmiştir.

jobs:
- deployment:
  environment: 
     name: smarthotel-dev      
     resourceName: $(System.PullRequest.PullRequestId) 
  pool:
    name: 'ubuntu-latest'
  strategy:                 
    runOnce:            
      pre-deploy: 
        steps:       
        - reviewApp: MainNamespace

İşlem hattından otomatik ve kullanıcı tarafından belirtilen meta verileri toplamak

Artık işlem hattı görevlerinden otomatik ve kullanıcı tarafından belirtilen meta veri toplamayı etkinleştirebilirsiniz. yapıt denetimini değerlendirmekkullanarak bir ortamda yapıt ilkesini zorlamak için meta verileri kullanabilirsiniz.

İşlem hatlarından meta verileri yayımla seçeneğinin açık olduğu Genel iletişim kutusunun ekran görüntüsü.

Ortamlar ile VM dağıtımları

Ortamlar'da en çok istenen özelliklerden biri VM dağıtımlarıydı. Bu güncelleştirmeyle, Ortamlar'da Sanal Makine kaynağını etkinleştireceğiz. Artık birden çok makinede dağıtım düzenleyebilir ve YAML işlem hatlarını kullanarak sıralı güncelleştirmeleri gerçekleştirebilirsiniz. Aracıyı hedef sunucularınızın her birine doğrudan yükleyebilir ve bu sunuculara sıralı dağıtım sağlayabilirsiniz. Ayrıca, hedef makinelerinizde tam görev kataloğunu kullanabilirsiniz.

Sanal makineler seçeneğinin seçili ve vurgulu olduğu Yeni ortam iletişim kutusunun ekran görüntüsü.

Sıralı dağıtım, bir uygulamanın önceki sürümünün örneklerini, her yinelemedeki bir dizi makinedeki (sıralı küme) uygulamanın yeni sürümünün örnekleriyle değiştirir.

Örneğin, aşağıda sıralı dağıtım her tekrarda en fazla beş hedefi günceller. maxParallel paralel olarak dağıtılacak hedef sayısını belirler. Seçim, dağıtılmakta olan hedefler hariç olmak üzere, herhangi bir zamanda kullanılabilir durumda kalması gereken hedef sayısını hesaplar. Ayrıca dağıtım sırasında başarı ve başarısızlık koşullarını belirlemek için de kullanılır.

jobs:
- deployment:
  displayName: web
  environment:
    name: musicCarnivalProd
    resourceType: VirtualMachine
  strategy:                 
    rolling:
      maxParallel: 5 #for percentages, mention as x%
      preDeploy:
        steps:
        - script: echo initialize, cleanup, backup, install certs...
      deploy:              
        steps:                                     
        - script: echo deploy ...      
      routeTraffic:
        steps:
        - script: echo routing traffic...   
      postRouteTaffic:
        steps:          
        - script: echo health check post routing traffic...  
      on:
        failure:
          steps:
          - script: echo restore from backup ..     
        success:
          steps:
          - script: echo notify passed...

Not

Bu güncelleştirmeyle, geçerli işlem hattından ve ilişkili işlem hattı kaynaklarından tüm kullanılabilir yapıtlar yalnızca deploy yaşam döngüsü kancasına indirilir. Ancak, İşlem Hattı Yapıtlarını İndir görevinibelirterek indirmeyi seçebilirsiniz. Bu özellikte bilinen birkaç boşluk vardır. Örneğin, bir aşamayı yeniden denediğinizde, dağıtımı yalnızca başarısız hedeflerde değil tüm VM'lerde yeniden çalıştırır. Gelecek güncelleştirmelerde bu boşlukları kapatmak için çalışıyoruz.

Dağıtım süreçleriniz üzerinde ek denetim

Azure Pipelines, bir süredir el ile onaylarla denetlenen dağıtımları desteklemiştir. En son geliştirmelerle artık dağıtımlarınız üzerinde ek denetime sahipsiniz. Kaynak sahipleri artık onaylara ek olarak güvenlik ve kalite ilkelerini doğrulamak için otomatik checks ekleyebilir. Bu denetimler işlemleri tetikleyip tamamlanmasını beklemek için kullanılabilir. Ek denetimleri kullanarak artık birden çok kaynağa göre sistem durumu ölçütleri tanımlayabilir ve dağıtımı gerçekleştiren YAML işlem hattından bağımsız olarak kaynaklarınızı hedefleyen tüm dağıtımların güvende olduğundan emin olabilirsiniz. Her denetimin değerlendirilmesi, denetim için belirtilen Yeniden Deneme Aralığı göre düzenli aralıklarla tekrarlanabilir. Aşağıdaki ek denetimler artık kullanılabilir:

  • Herhangi bir REST API'yi çağırın ve yanıt gövdesine veya dış hizmetten bir geri çağırmaya göre doğrulama gerçekleştirin
  • Azure işlevini çağırma ve işlevin yanıtını veya geri çağırmasını temel alarak doğrulama gerçekleştirme
  • Etkin uyarılar için Azure İzleyici kurallarını sorgulama
  • İşlem hattının bir veya daha fazla YAML şablonunu genişletdiğinden emin olun

Ekle onay kutusunun ekran görüntüsü.

Onay bildirimi

Bir ortama veya hizmet bağlantısına onay eklediğinizde, kaynağı kullanan tüm çok aşamalı işlem hatları otomatik olarak aşamanın başında onay bekler. İşlem hattının devam edebilmesi için önce belirlenen onaylayanların onayı tamamlaması gerekir.

Bu güncelleştirmeyle, onaylayanlara bekleyen onay için bir e-posta bildirimi gönderilir. Kullanıcılar ve ekip sahipleri bildirim ayarlarını kullanarak özel abonelikleri geri çevirebilir veya yapılandırabilir.

Onay bildiriminin ekran görüntüsü.

Azure portalından Dağıtım Stratejilerini yapılandırma

Bu özellik sayesinde, tercih ettiğiniz dağıtım stratejisini kullanan işlem hatlarını yapılandırmanızı kolaylaştırdık; örneğin, Rolling, Canaryveya Mavi-Yeşil. Bu hazır stratejileri kullanarak güncelleştirmeleri güvenli bir şekilde dağıtabilir ve ilişkili dağıtım risklerini azaltabilirsiniz. Buna erişmek için Azure Sanal Makinesi'nde 'Sürekli Teslim' ayarına tıklayın. Yapılandırma bölmesinde işlem hattının oluşturulacağı Azure DevOps projesi, dağıtım grubu, dağıtılacak paketi yayımlayan derleme işlem hattı ve tercih ettiğiniz dağıtım stratejisi hakkındaki ayrıntıları seçmeniz istenir. Bundan sonra, seçilen paketi bu Sanal Makineye dağıtan tam işlevsel bir işlem hattı yapılandırılır.

Daha fazla ayrıntı için Dağıtım Stratejilerini yapılandırmahakkındaki belgelerimize göz atın.

Sürekli teslim iletişim kutusunu gösteren ekran görüntüsü.

Çalışma zamanı parametreleri

Çalışma zamanı parametreleri, işlem hattına geçirilebilen değerler üzerinde daha fazla denetim sahibi olmanıza olanak tanır. Değişkenlerden farklı olarak, çalışma zamanı parametreleri veri türlerine sahiptir ve otomatik olarak ortam değişkenleri olmaz. Çalışma zamanı parametreleriyle:

  • Çalışma zamanında betiklere ve görevlere farklı değerler sağlayın
  • Parametre türlerini, izin verilen aralıkları ve varsayılanları denetleme
  • Şablon ifadesiyle işleri ve aşamaları dinamik olarak seçme

Çalışma zamanı parametreleri hakkında daha fazla bilgi edinmek için buradabelgelere bakın.

İşlem hatlarında extends anahtar sözcüğünü kullanma

Şu anda işlem hatları modüler hale getirilip şablonlara dönüştürülerek yeniden kullanım teşvik edilebilir ve tekrarlayan kod azaltılabilir. İşlem hattının genel yapısı hala kök YAML dosyası tarafından tanımlandı. Bu güncelleştirmeyle işlem hattı şablonlarını kullanmanın daha yapılandırılmış bir yolunu ekledik. Bir kök YAML dosyası artık ana işlem hattı yapısının başka bir dosyada olduğunu belirtmek için extends anahtar sözcüğünü kullanabilir. Bu, hangi segmentlerin genişletilebileceğini veya değiştirilebileceğini ve hangi segmentlerin sabitlendiğini denetlemenizi sağlar. Ayrıca, sağlayabileceğiniz kancaları belirtmek için veri türleriyle işlem hattı parametrelerini daha belirgin hale getirdik.

Bu örnekte işlem hattı yazarının kullanması için nasıl basit kancalar sağlayabileceğiniz gösterilmektedir. Şablon her zaman bir derleme çalıştırır, isteğe bağlı olarak işlem hattı tarafından sağlanan ek adımları çalıştırır ve ardından isteğe bağlı bir test adımı çalıştırır.


# azure-pipelines.yml
extends:
  template: build-template.yml
  parameters:
    runTests: true
    postBuildSteps:
    - script: echo This step runs after the build!
    - script: echo This step does too!

# build-template.yml
parameters:
- name: runTests
  type: boolean
  default: false
- name: postBuildSteps
  type: stepList
  default: []
steps:
- task: MSBuild@1   # this task always runs
- ${{ if eq(parameters.runTests, true) }}:
  - task: VSTest@2  # this task is injected only when runTests is true
- ${{ each step in parameters.postBuildSteps }}:
  - ${{ step }}

Kuyruk zamanında geçersiz kılınabilecek değişkenleri kontrol etme

Daha önce, yeni bir çalıştırma başlatmadan önce herhangi bir değişkenin değerlerini güncelleştirmek için UI veya REST API'yi kullanabilirsiniz. İşlem hattının yazarı bazı değişkenleri _settable at queue time_olarak işaretleyebilmiş olsa da, sistem bunu zorlamadı veya diğer değişkenlerin ayarlanmasını engelledi. Başka bir deyişle, ayar yalnızca yeni bir çalıştırma başlatılırken ek girişler istenmek için kullanılmıştır.

_settable at queue time_ parametresini zorlayan yeni bir koleksiyon ayarı ekledik. Bu, yeni bir çalıştırma başlatırken hangi değişkenlerin değiştirilebileceğini denetlemenizi sağlar. Bundan sonra, yazar tarafından _settable at queue time_olarak işaretlenmemiş bir değişkeni değiştiremezsiniz.

Not

Bu ayar mevcut koleksiyonlarda varsayılan olarak kapalıdır, ancak yeni bir Azure DevOps koleksiyonu oluşturduğunuzda varsayılan olarak açıktır.

YAML işlem hattında yeni önceden tanımlanmış değişkenler

Değişkenler, önemli veri bitlerini işlem hattınızın çeşitli bölümlerine almak için kullanışlı bir yol sağlar. Bu güncelleştirmeyle bir dağıtım işine önceden tanımlanmış birkaç değişken ekledik. Bu değişkenler sistem tarafından otomatik olarak ayarlanır, kapsamı belirli bir dağıtım işi olarak belirlenmiştir ve salt okunur durumdadır.

  • Environment.Id - Ortamın kimliği.
  • Environment.Name - Dağıtım işinin hedeflediği ortamın adı.
  • Environment.ResourceId - Dağıtım işi tarafından hedeflenen ortamdaki kaynağın kimliği.
  • Environment.ResourceName - Dağıtım işinin hedeflediği ortamdaki kaynağın adı.

Birden çok depoları kullanıma alma

Boru hatları genellikle birden çok depoya dayanır. Kodunuzu oluşturmak için ihtiyacınız olan kaynak, araç, betik veya diğer öğelerle farklı depolarınız olabilir. Daha önce, bu depoları alt modül veya manuel betikler olarak ekleyip git checkoutçalıştırmanız gerekiyordu. Artık YAML işlem hattınızı depolamak için kullandığınız depoya ek olarak diğer depoları getirebilir ve kullanıma alabilirsiniz.

Örneğin, YAML işlem hattına ve Araçlarıadlı ikinci bir depoya sahip MyCode adlı bir deponuz varsa YAML işlem hattınız şu şekilde görünür:

resources:
  repositories:
  - repository: tools
    name: Tools
    type: git

steps:
- checkout: self
- checkout: tools
- script: dir $(Build.SourcesDirectory)

Üçüncü adımda, kaynak dizininde MyCode ve Araçlar adlı iki dizin gösterilir.

Azure Repos Git depoları desteklenir. Daha fazla bilgi için bkz. Çoklu depo işlemi.

Çalışma zamanında birden çok depoyla ilgili ayrıntıları alma

İşlem hattı çalışırken Azure Pipelines, çalıştırmayı tetikleyen depo, dal ve commit hakkında bilgi ekler. YAML işlem hatları artık birden çok deponun denetlenmesini desteklediğine göre, diğer depolar için kullanıma alınmış olan depoyu, dalı ve işlemeyi de bilmek isteyebilirsiniz. Bu veriler artık bir değişkene eşleyebileceğiniz bir çalışma zamanı ifadesi aracılığıyla kullanılabilir. Örneğin:

resources:
  repositories:
  - repository: other
    type: git
    name: MyProject/OtherTools

variables:
  tools.ref: $[ resources.repositories['other'].ref ]

steps:
- checkout: self
- checkout: other
- bash: echo "Tools version: $TOOLS_REF"

Diğer Azure Repos koleksiyonlarına depo referanslarına izin ver

Daha önce bir YAML işlem hattındaki depolara başvurduğunuz zaman, tüm Azure Depoları depolarının işlem hattıyla aynı koleksiyonda olması gerekiyordu. Artık hizmet bağlantısı kullanarak diğer koleksiyonlardaki depolara işaret edebilirsiniz. Mesela:

resources:
  repositories:
  - repository: otherrepo
    name: ProjectName/RepoName
    endpoint: MyServiceConnection
steps:
- checkout: self
- checkout: otherrepo

MyServiceConnection başka bir Azure DevOps koleksiyonuna işaret eder ve başka bir projedeki depoya erişebilen kimlik bilgilerine sahiptir. Her iki depo, self ve otherrepo, sonunda kullanıma alınmış olacaktır.

Önemli

MyServiceConnection bir Azure Repos / Team Foundation Server hizmet bağlantısı olmalıdır, aşağıdaki resme bakın.

Azure Repos/Team Foundation Server seçeneğinin vurgulandığı Proje Ayarları sayfasının ekran görüntüsü.

İşlem hattı kaynağının meta verileri, önceden tanımlanmış değişkenler olarak kullanılır.

İşlem hattında YAML işlem hattı kaynakları için önceden tanımlanmış değişkenler ekledik. Kullanılabilir işlem hattı kaynak değişkenlerinin listesi aşağıdadır.

resources.pipeline.<Alias>.projectName 
resources.pipeline.<Alias>.projectID 
resources.pipeline.<Alias>.pipelineName 
resources.pipeline.<Alias>.pipelineID 
resources.pipeline.<Alias>.runName 
resources.pipeline.<Alias>.runID
resources.pipeline.<Alias>.runURI
resources.pipeline.<Alias>.sourceBranch 
resources.pipeline.<Alias>.sourceCommit
resources.pipeline.<Alias>.sourceProvider 
resources.pipeline.<Alias>.requestedFor
resources.pipeline.<Alias>.requestedForID

KubernetesManifest görevinde pişirme seçenekleri olarak Kustomize ve Kompose

kustomize (Kubernetes sig-cli'nin bir parçası) ham, şablon içermeyen YAML dosyalarını birden çok amaçla özelleştirmenize olanak sağlar ve özgün YAML'ye dokunmadan bırakır. Kustomization.yaml dosyalarını içeren tüm klasörlerin KubernetesManifest görevinin dağıtım eyleminde kullanılan bildirim dosyalarını oluşturmak için kullanılabilmesi amacıyla numaralı KubernetesManifest görevinin numaralı pişirme eylemi altına kustomize seçeneği eklendi.

steps:
- task: KubernetesManifest@0
  name: bake
  displayName: Bake K8s manifests from Helm chart
  inputs:
    action: bake
    renderType: kustomize
    kustomizationPath: folderContainingKustomizationFile

- task: KubernetesManifest@0
  displayName: Deploy K8s manifests
  inputs:
    kubernetesServiceConnection: k8sSC1
    manifests: $(bake.manifestsBundle)

kompose Docker Compose dosyalarını Kubernetes kaynağına dönüştürür.

steps:
- task: KubernetesManifest@0
  name: bake
  displayName: Bake K8s manifests from Helm chart
  inputs:
    action: bake
    renderType: kompose
    dockerComposeFile: docker-compose.yaml

- task: KubernetesManifest@0
  displayName: Deploy K8s manifests
  inputs:
    kubernetesServiceConnection: k8sSC1
    manifests: $(bake.manifestsBundle)

HelmDeploy görevinde küme yöneticisi kimlik bilgileri desteği

Daha önce HelmDeploy görevi, dağıtımlar için küme kullanıcı kimlik bilgilerini kullanıyordu. Bunun sonucunda Azure Active Directory tabanlı RBAC özellikli küme için etkileşimli oturum açma istemleri ve işlem hatları başarısız oldu. Bu sorunu gidermek için, küme kullanıcı kimlik bilgileri yerine küme yöneticisi kimlik bilgilerini kullanmanıza olanak tanıyan bir onay kutusu ekledik.

Küme yöneticisi kimlik bilgilerini kullan onay kutusunu gösteren Helm çizelgelerini paketle ve dağıt ekran görüntüsü.

Docker Compose görevinde argümanların girişi

Docker Compose görevinde --no-cachegibi bağımsız değişkenler eklemenize olanak sağlamak için yeni bir alan kullanıma sunulmuştur. Derleme gibi komutlar çalıştırılırken bağımsız değişken görev tarafından geçirilir.

Yeni Bağımsız Değişkenler metin kutusunu gösteren Docker Compose görevinin ekran görüntüsü.

GitHub yayın görevi geliştirmeleri

GitHub Yayın görevi için çeşitli geliştirmeler yaptık. Artık bir etiket normal ifadesi belirterek etiket deseni alanını kullanarak yayın oluşturma üzerinde daha iyi denetime sahip olabilirsiniz ve yayın yalnızca tetiklenen işleme eşleşen bir dizeyle etiketlendiğinde oluşturulur.

Görev sürümü ve Etiket Düzeni bölümlerinin vurgulandığı GitHub yayın görevini gösteren ekran görüntüsü.

Ayrıca değişiklik günlüğü oluşturma ve biçimlendirme özelliklerini özelleştirme özellikleri ekledik. Değişiklik günlüğü yapılandırmasının yeni bölümünde artık geçerli sürümün karşılaştırılacağı sürümü belirtebilirsiniz. ile karşılaştırılacak sürüm, son tam sürüm (ön sürümler hariç), taslak olmayan son sürüm veya sağladığınız yayın etiketinizle eşleşen önceki herhangi bir sürüm olabilir. Ayrıca, görev değişiklik günlüğü türünü biçimlendirmek için değişiklik günlüğü türü alanı sağlar. Seçime bağlı olarak, değişiklik günlüğü ya bir commit listesi ya da etiketlere göre kategorilere ayrılmış bir sorun/PR listesi görüntüler.

Karşılaştır ve Değişiklik günlüğü türü bölümlerinin vurgulandığı GitHub yayın görevini gösteren ekran görüntüsü.

Açık Politika Aracısı yükleyici görevi

Açık İlke Aracısı, birleşik, bağlama duyarlı ilke zorlamayı etkinleştiren açık kaynaklı, genel amaçlı bir ilke altyapısıdır. "Open Policy Agent yükleyici görevini ekledik." Altyapı olarak kod sağlayıcıları açısından işlem içi ilke uygulaması için özellikle yararlıdır.

Örneğin, Open Policy Agent Rego ilke dosyalarını ve Terraform planlarını işlem hattında değerlendirebilir.

task: OpenPolicyAgentInstaller@0
    inputs:
          opaVersion: '0.13.5'

Azure CLI görevinde PowerShell betikleri desteği

Daha önce, Azure CLI görevinin bir parçası olarak batch ve bash scriptlerini yürütebiliyordunuz. Bu güncelleştirmeyle göreve PowerShell ve PowerShell çekirdek betikleri için destek ekledik.

PowerShell ve Powershell Core'un Betik Türü açılan listesindeki seçenekler olduğunu gösteren Azure CLI görevinin ekran görüntüsü.

KubernetesManifest görevinde Service Mesh Arabirimi tabanlı kanarya dağıtımları

Daha önce KubernetesManifest görevinde kanarya stratejisi belirtildiğinde, görev, kararlı iş yükleri için kullanılan kopyaların yüzdesine eşit sayıda başka temel ve kanarya iş yükleri oluştururdu. Bu, trafiği istek düzeyinde istenen yüzdeye bölmeyle tam olarak aynı değildi. Bu sorunu çözmek için KubernetesManifest görevi üzerine Service Mesh Arabirimi tabanlı kanarya dağıtımlarının desteğini ekledik.

Service Mesh Arabirimi soyutlaması Linkerd ve Istio gibi hizmet ağı sağlayıcılarıyla tak çalıştır yapılandırmasına olanak tanır. Şimdi KubernetesManifest görevi, dağıtım stratejisinin yaşam döngüsü boyunca SMI'nin TrafficSplit nesnelerini kararlı, temel ve kanarya hizmetlerine eşlemenin sıkı çalışmasını ortadan kaldırıyor. Trafik bölme yüzdesi hizmet ağ düzlemindeki istekler üzerinde denetlendiği için trafiğin kararlı, temel ve kanarya arasında istenen bölme yüzdesi daha doğru olur.

Aşağıda SMI tabanlı kanarya dağıtımlarını sıralı bir şekilde gerçekleştirme örneği verilmiştir.

- deployment: Deployment
    displayName: Deployment
    pool:
      vmImage: $(vmImage)
    environment: ignite.smi
    strategy:
      canary:
        increments: [25, 50]
        preDeploy:
          steps:
          - task: KubernetesManifest@0
            displayName: Create/update secret
            inputs:
              action: createSecret
              namespace: smi
              secretName: $(secretName)
              dockerRegistryEndpoint: $(dockerRegistryServiceConnection)
        deploy:
          steps:
          - checkout: self
          - task: KubernetesManifest@0
            displayName: Deploy canary
            inputs:
              action: $(strategy.action)
              namespace: smi
              strategy: $(strategy.name)
              trafficSplitMethod: smi
              percentage: $(strategy.increment)
              baselineAndCanaryReplicas: 1
              manifests: |
                manifests/deployment.yml
                manifests/service.yml
              imagePullSecrets: $(secretName)
              containers: '$(containerRegistry)/$(imageRepository):$(Build.BuildId)'
        postRouteTraffic:
          pool: server
          steps:
            - task: Delay@1
              inputs:
                delayForMinutes: '2'

Azure Dosya Kopyalama Görevi artık AzCopy V10'a destek veriyor

Azure dosya kopyalama görevi, dosyaları Microsoft depolama bloblarına veya sanal makinelere (VM) kopyalamak için derleme veya yayın işlem hattında kullanılabilir. Görev, Azure depolama hesaplarından ve Azure depolama hesaplarına verilerin hızlı kopyalanması için oluşturulan komut satırı aracı AzCopy kullanır. Bu güncelleştirmeyle AzCopy 'nin en sonsürümü olan AzCopy V10 desteği ekledik.

azcopy copy komutu, yalnızca onunla ilişkilendirilmiş bağımsız değişkenlerini destekler. AzCopy'nin söz dizimindeki değişiklik nedeniyle, mevcut özelliklerden bazıları AzCopy V10'da kullanılamaz. Bunlar şunlardır:

  • Günlük konumunu belirtme
  • Kopyalamadan sonra günlük ve plan dosyalarını temizleme
  • İş başarısız olursa kopyalamaya devam et

Görevin bu sürümünde desteklenen ek özellikler şunlardır:

  • Kaynağın dosya adında/yolunda joker karakter simgeleri
  • Argüman sağlanmadığında dosya uzantısına göre içerik türünü çıkarsama
  • Bir bağımsız değişken geçirerek kayıt dosyası için kayıt ayrıntı seviyesini tanımlama

Erişim belirteçlerinin kapsamını kısıtlayarak işlem hattı güvenliğini geliştirme

Azure Pipelines'da çalışan her iş bir erişim belirteci alır. Erişim belirteci, görevler ve betikleriniz tarafından Azure DevOps'a geri çağrılar yapmak için kullanılır. Örneğin, erişim belirtecini kaynak kodu almak, günlük yüklemek, test sonuçları ve yapıtlar gibi verileri almak veya Azure DevOps'a REST çağrıları yapmak için kullanırız. Her iş için yeni bir erişim belirteci oluşturulur ve iş tamamlandıktan sonra süresi dolar. Bu güncelleştirmeyle aşağıdaki iyileştirmeleri ekledik.

  • Belirtecin bir takım projesi dışındaki kaynaklara erişmesini engelleme

    Şimdiye kadar tüm işlem hatlarının varsayılan kapsamı takım projesi koleksiyonuydu. Kapsamı klasik derleme işlem hatlarında takım projesi olacak şekilde değiştirebilirsiniz. Ancak, klasik sürüm veya YAML işlem hatları için bu denetime sahip değildiniz. Bu güncellemeyle, işlem hattında ne yapılandırılmış olursa olsun her işin projeye özgü bir belirteç almasını zorlamak için bir koleksiyon ayarı sunuyoruz. Ayrıca bu ayarı proje düzeyinde de ekledik. Artık, oluşturduğunuz her yeni proje ve koleksiyonda bu ayar otomatik olarak açılır.

    Not

    Koleksiyon ayarı proje ayarını geçersiz kılar.

    Mevcut projelerde ve koleksiyonlarda bu ayarın açılması, işlem hatlarınızın erişim belirteçlerini kullanarak takım projesi dışındaki kaynaklara erişmesi durumunda bazı işlem hatlarının başarısız olmasına neden olabilir. İşlem hattı hatalarını azaltmak için, Project Derleme Hizmeti Hesabı'in istenen kaynağa erişim sağlayacak şekilde açıkça izin verebilirsiniz. Bu güvenlik ayarlarını açmanızı kesinlikle öneririz.

  • Derleme hizmeti refolarının kapsam erişimini sınırla

    Erişim belirtecinin kapsamını kısıtlayarak işlem hattı güvenliğini geliştiren Azure Pipelines artık depo erişiminin kapsamını yalnızca YAML tabanlı işlem hattıiçin gereken depolarla sınırlandırabilir. Bu, işlem hatlarının erişim belirtecinin sızması durumunda yalnızca işlem hattında kullanılan depoları görebileceği anlamına gelir. Daha önce, erişim belirteci projedeki herhangi bir Azure Repos deposu için veya hatta tüm koleksiyon için geçerliydi.

    Bu özellik, yeni projeler ve koleksiyonlar için varsayılan olarak açıktır. Mevcut koleksiyonlar için, Koleksiyon Ayarları>İşlem Hatları>Ayarlariçinde etkinleştirmeniz gerekir. Bu özelliği kullanırken, yapı için gereken tüm depoların (betik kullanarak kopyaladığınız depolar bile) işlem hattının depo kaynakları kısmına dahil edilmesi gerektiği unutulmamalıdır.

  • Erişim belirteci için belirli izinleri kaldırma

    Varsayılan olarak, erişim belirtecine bir dizi izin veririz; bu izinlerden biri Kuyruk derlemeleri. Bu güncelleştirmeyle, erişim belirteci için bu izni kaldırdık. İşlem hatlarınızın bu izne ihtiyacı varsa, kullandığınız belirtece bağlı olarak bu izni Proje Derleme Hizmeti Hesabı'e veya Proje Koleksiyonu Derleme Hizmeti Hesabı'e açıkça verebilirsiniz.

Hizmet bağlantıları için proje düzeyi güvenlik

Hizmet bağlantıları için hub düzeyinde güvenlik ekledik. Artık tüm hizmet bağlantıları için merkezi bir yerde kullanıcı ekleyebilir/kaldırabilir, roller atayabilir ve erişimi yönetebilirsiniz.

Güvenlik seçeneğinin vurgulu olduğu Hizmet bağlantıları sayfasının ekran görüntüsü.

Adım hedefleme ve komut yalıtımı

Azure Pipelines, işleri kapsayıcılarda veya aracı ana bilgisayarında çalıştırmayı destekler. Daha önce, işin tamamı bu iki hedef arasında ayarlanmıştı. Artık tek tek adımlar (görevler veya betikler) seçtiğiniz hedefte çalıştırılabilir. Adımlar diğer kapsayıcıları da hedefleyebileceğinden, işlem hattı her adımı özel, amaca yönelik bir kapsayıcıda çalıştırabilir.

Kapsayıcılar yalıtım sınırları gibi davranarak kodun konak makinede beklenmeyen değişiklikler yapmasını engelleyebilir. Aracın adımları kapsayıcıda yalıtılmasına rağmen, adım'in aracı ile iletişim kurma ve hizmetlere erişme şekli etkilenmez. Bu nedenle, adım hedefleriyle kullanabileceğiniz bir komut kısıtlama modu da sunuyoruz. Bunu açmak, bir adımın aracıdan talep edebileceği hizmetleri kısıtlayacaktır. Artık günlükleri ekleyemez, dosyaları karşıya yükleyemez ve bazı diğer işlemleri gerçekleştiremez.

Aşağıda, konakta, bir iş kapsayıcısında ve başka bir kapsayıcıda çalışan adımları gösteren kapsamlı bir örnek verilmiştir.

resources:
  containers:
  - container: python
    image: python:3.8
  - container: node
    image: node:13.2

jobs:
- job: example
  container: python

  steps:
  - script: echo Running in the job container

  - script: echo Running on the host
    target: host

  - script: echo Running in another container, in restricted commands mode
    target:
      container: node
      commands: restricted

Salt okunur değişkenler

Sistem değişkenleri değiştirilemez olarak belgelenmiştir, ancak uygulamada bir görev tarafından değiştirilebilir ve ardışık görevler yeni değeri alır. Bu güncelleştirmeyle, sistem ve kuyruk zamanı değişkenlerini salt okunur hale getirmek için işlem hattı değişkenlerinin güvenliğini artıracağız. Buna ek olarak, YAML değişkenlerini aşağıdaki gibi işaretleyerek salt okunur yapabilirsiniz.

variables:
- name: myVar
  value: myValue
  readonly: true

Hizmet bağlantıları için rol tabanlı erişim

Hizmet bağlantıları için rol tabanlı erişim ekledik. Daha önce hizmet bağlantısı güvenliği yalnızca Uç Nokta yöneticileri ve Endpoint Creators gibi önceden tanımlanmış Azure DevOps grupları aracılığıyla yönetilebiliyormuş.

Bu çalışmanın bir parçası olarak Okuyucu, Kullanıcı, Oluşturucu ve Yönetici rollerini tanıttık. Bu rolleri projenizdeki hizmet bağlantıları sayfasından ayarlayabilirsiniz ve bunlar tek tek bağlantılar tarafından devralınır. Her hizmet bağlantısında devralmayı açıp kapatma ve hizmet bağlantısı kapsamındaki rolleri geçersiz kılma seçeneğiniz vardır.

Hizmet bağlantıları için rol tabanlı erişimi gösteren ekran görüntüsü.

hizmet bağlantıları güvenliği hakkında daha fazla bilgi edinin.

Hizmet bağlantılarının projeler arası paylaşımı

Projeler arasında hizmet bağlantısı paylaşımı desteğini etkinleştirdik. Artık hizmet bağlantılarınızı projelerinizle güvenli ve güvenli bir şekilde paylaşabilirsiniz.

Hizmet bağlantılarının projeler arası paylaşımını gösteren ekran görüntüsü.

buradapaylaşan hizmet bağlantıları hakkında daha fazla bilgi edinin.

İşlem hatları ve ACR kaynakları için izlenebilirlik

İşlem hattında işlem hatları ve ACR kapsayıcı kaynakları kullanıldığında tam E2E izlenebilirliği sağlıyoruz. YAML işlem hattınız tarafından tüketilen her kaynak için commit'ler, iş öğeleri ve artifaktları takip edebilirsiniz.

İşlem hattı çalıştırması özet görünümünde şunları görebilirsiniz:

  • çalıştırmayı tetikleyen kaynak sürümü. Artık işlem hattınız başka bir Azure işlem hattı çalıştırması tamamlandığında veya bir kapsayıcı görüntüsü ACR'ye gönderildiğinde tetiklenebilir.

    İşlem hattının otomatik olarak tetiklendiğini gösteren ekran görüntüsü.

  • işlem hattı tarafından tüketilen işlemler. Pipeline tarafından tüketilen her kaynak için yapılan taahhütlerin dökümünü de bulabilirsiniz.

    Geçerli İşlem Hattı bölümündeki değişiklikleri gösteren ekran görüntüsü .

  • iş öğeleri, işlem hattının tükettiği her kaynakla ilişkili.

  • nesneleri, işlem tarafından kullanılabilecek şekilde mevcuttur.

    İşlem hattının Artefaktlar sayfasını gösteren ekran görüntüsü.

Ortamın dağıtımlar görünümünde, ortama dağıtılan her kaynağın taahhütlerini ve iş öğelerini görebilirsiniz.

İş öğeleri sekmesini gösteren Dağıtım bölümünün ekran görüntüsü.

Büyük test eklentileri için destek

Azure Pipelines'daki test sonuçlarını yayımlama görevi, kapsamlı bir test raporlama ve analiz deneyimi sağlamak için testler yürütülürken test sonuçlarını yayımlamanıza olanak tanır. Şimdiye kadar hem test çalıştırması hem de test sonuçları için ek dosyalarda 100 MB sınırı vardı. Bu, kilitlenme dökümleri veya videolar gibi büyük dosyaların yüklenmesini sınırlandırdı. Bu güncelleştirmeyle, başarısız testlerinizin sorunlarını gidermek için tüm kullanılabilir verilere sahip olmanıza olanak sağlayan büyük test ekleri için destek ekledik.

Günlüklerde VSTest görevi veya Test sonuçlarını yayımla görevinin 403 veya 407 hatası döndürdiğini görebilirsiniz. Kendinden barındırmalı derlemeler veya çıkış isteklerini filtreleyen bir güvenlik duvarının arkasında bulunan yayın aracıları kullanıyorsanız, bu işlevi kullanabilmek için bazı yapılandırma değişiklikleri yapmanız gerekir. ​

Kayıtlarda geri dönen 403 hatasını gösteren ekran görüntüsü.

Bu sorunu gidermek için giden isteklerin için güvenlik duvarını https://*.vstmrblob.vsassets.iogüncellemenizi öneririz. Sorun giderme bilgilerini buradabelgelerde bulabilirsiniz. ​

Notlar

Bu yalnızca şirket içinde barındırılan Azure Pipelines aracılarını kullanıyorsanız ve giden trafiği filtreleyen bir güvenlik duvarının arkasındaysanız gereklidir. Bulutta Microsoft tarafından barındırılan aracılar kullanıyorsanız veya giden ağ trafiğini filtrelemiyorsanız herhangi bir işlem yapmanız gerekmez.

Her işte doğru havuz bilgilerini göster

Daha önce işleri genişletmek için bir matris veya havuzu belirlemek için bir değişken kullandığınızda, bazen günlük sayfalarında yanlış havuz bilgilerini tespit ediyorduk. Bu sorunlar çözüldü.

Yeni dallar için CI tetikleyicileri

Yeni bir dal oluşturulduğunda ve bu dalda değişiklik olmadığında CI derlemelerini tetiklememek uzun zamandır beklemede olan bir istekti. Aşağıdaki örnekleri göz önünde bulundurun:

  • Var olan bir dalı temel alan yeni bir dal oluşturmak için web arabirimini kullanırsınız. Bu, dal filtreniz yeni dalın adıyla eşleşiyorsa yeni bir CI derlemesini hemen tetikler. Yeni dalın içeriği mevcut dalla karşılaştırıldığında aynı olduğundan bu istenmeyen bir durumdur.
  • İki klasör içeren bir deponuz var: uygulama ve belgeler. CI için "uygulama" ile eşleşecek bir yol filtresi ayarlarsınız. Başka bir deyişle, belgelere bir değişiklik gönderildiyse yeni bir derleme oluşturmak istemezsiniz. Yerel olarak yeni bir dal oluşturur, belgelerde bazı değişiklikler yapar ve ardından bu dalı sunucuya gönderirsiniz. Yeni bir CI derlemesi tetiklerdik. Docs klasöründeki değişiklikleri aramamanızı açıkça istediğiniz için bu istenmeyen bir durumdur. Ancak, yeni bir dal olayını işleme şeklimiz nedeniyle, uygulama klasöründe de bir değişiklik yapılmış gibi görünebilir.

Şimdi, bu sorunları çözmek için yeni dallar için CI'yi işlemenin daha iyi bir yolu var. Yeni bir dal yayımladığınızda, bu dalda yeni işlemeleri açıkça arar ve bunların yol filtreleri ile eşleşip eşleşmediğini denetleriz.

İşler önceki aşamalardan çıkış değişkenlerine erişebilir

Çıkış değişkenleri artık YAML tabanlı işlem hattındaki aşamalar arasında kullanılabilir. Bu, go/no-go kararı veya oluşturulan çıkışın kimliği gibi yararlı bilgileri bir aşamadan diğerine geçirmenize yardımcı olur. Önceki bir aşamanın ve işlerinin sonucu (durumu) da kullanılabilir.

Çıkış değişkenleri hala işlerin içindeki adımlarla oluşturulur. Aşamalar, dependencies.jobName.outputs['stepName.variableName']yerine stageDependencies.stageName.jobName.outputs['stepName.variableName']'e atıfta bulunur.

Not

Varsayılan olarak, bir işlem hattındaki her aşama YAML dosyasından hemen önceki aşamaya bağlıdır. Bu nedenle, her aşama önceki aşamadan çıkış değişkenlerini kullanabilir. Bağımlılık grafiğini değiştirebilirsiniz. Bu grafik, kullanılabilir çıkış değişkenlerini de değiştirir. Örneğin, 3. aşamanın 1. aşamadan bir değişkene ihtiyacı varsa, 1. aşamada açık bir bağımlılık bildirmesi gerekir.

Otomatik ajan yükseltmelerini havuz düzeyinde devre dışı bırakmak

Şu anda pipeline ajanları gerektiğinde otomatik olarak en son sürüme güncellenir. Bu durum genellikle daha yeni bir aracı sürümünün düzgün çalışmasını gerektiren yeni bir özellik veya görev olduğunda oluşur. Bu güncelleştirmeyle, otomatik yükseltmeleri havuz düzeyinde devre dışı bırakma özelliğini ekliyoruz. Bu modda, havuza doğru sürümün aracısı bağlı değilse, işlem hatları aracıların güncelleştirilmesi için istekte bulunmak yerine net bir hata iletisiyle başarısız olur. Kendi barındırdığı havuzları ve çok katı değişiklik kontrolü gereksinimleri olan müşteriler için bu özellik çoğunlukla önemlidir. Otomatik güncelleştirmeler varsayılan olarak etkindir ve çoğu müşterinin bunları devre dışı bırakmasını önermeyiz.

Varsayılan Ayarlar sayfasında, Aracı güncelleştirme ayarları seçeneğinin açık olduğu ve vurgulandığı bir ekran görüntüsü. .

Ajan Tanılama

Birçok ağ sorunu ve yükseltme hatalarının yaygın nedenleri gibi aracıyla ilgili birçok yaygın sorun için tanılama ekledik. Tanılamayı kullanmaya başlamak için Windows'da run.sh --tanılama veya run.cmd --tanılama kullanın.

YAML işlem hatları için hizmet kancaları

Hizmetleri YAML işlem hatlarıyla tümleştirmek artık daha kolay. YAML işlem hatları için hizmet kancası olaylarını kullanarak artık işlem hattı çalıştırmalarının ilerlemesine bağlı olarak özel uygulamalarda veya hizmetlerde etkinlikleri yönlendirebilirsiniz. Örneğin, onay gerektiğinde bir yardım masası bileti oluşturabilir, aşama tamamlandıktan sonra bir izleme iş akışı başlatabilir veya aşama başarısız olduğunda ekibinizin mobil cihazlarına anında iletme bildirimi gönderebilirsiniz.

İşlem hattı adına ve aşama adına göre filtreleme tüm olaylar için desteklenir. Onay olayları belirli ortamlar için de filtrelenebilir. Benzer şekilde durum değişikliği olayları, işlem hattı çalıştırmasının veya aşamasının yeni durumuna göre filtrelenebilir.

Bu olay türündeki Tetikleyici açılan listesini gösteren YENİ HİzMET KANCASI ABONELİĞİ sihirbazının ekran görüntüsü ve Aşamayı çalıştır seçenekleri vurgulu.

Optimizely entegrasyonu

Optimizely, ürün ekipleri için güçlü bir A/B test ve özellik bayraklama platformudur. Azure Pipelines'ın İyileştirilmiş deneme platformuyla tümleştirilmesi, ürün ekiplerinin azure pipelines'dan tüm DevOps avantajlarını elde ederken daha hızlı bir şekilde test etmelerini, öğrenmelerini ve dağıtmalarını sağlar.

Azure DevOps için Optimizely uzantısı, derleme ve yayın işlem hatlarına deneme ve özellik bayrağı dağıtımı adımları ekler, böylece Azure Pipelines kullanarak özellikleri sürekli olarak yineleyebilir, dağıtabilir ve geri alabilirsiniz.

Azure DevOps Optimizely uzantısı hakkında daha fazla bilgi için burayatıklayın.

Optimizely

GitHub sürümünü yapıt kaynağı olarak ekleme

Artık GitHub yayınlarınızı Azure DevOps yayın işlem hatlarında yapıt kaynağı olarak bağlayabilirsiniz. Bu, dağıtımlarınızın bir parçası olarak GitHub sürümünü kullanmanıza olanak sağlar.

Sürüm işlem hattı tanımında Yapıt Ekle'ye tıkladığınızda, yeni GitHub Yayını kaynak türünü bulacaksınız. GitHub sürümünü kullanmak için hizmet bağlantısını ve GitHub deposunu sağlayabilirsiniz. Ayrıca GitHub sürümünün en son, belirli bir etiket sürümü olarak kullanmak üzere varsayılan bir sürüm seçebilir veya yayın oluşturma zamanında bunu seçebilirsiniz. GitHub sürümü bağlandıktan sonra otomatik olarak indirilir ve yayın işlerinizde kullanılabilir hale getirilir.

GitHub Sürümü seçeneğinin seçili ve vurgulandığı Yapıt ekle iletişim kutusunun ekran görüntüsü.

Azure Pipelines ile Terraform tümleştirmesi

Terraform, altyapıyı güvenli ve verimli bir şekilde geliştirmeye, değiştirmeye ve sürümlendirmeye yönelik açık kaynak bir araçtır. Terraform, API'leri bildirim temelli yapılandırma dosyaları halinde birleştirir ve üst düzey bir yapılandırma dili kullanarak altyapı tanımlamanızı ve sağlamanızı sağlar. Terraform uzantısını kullanarak tüm büyük altyapı sağlayıcıları arasında kaynak oluşturabilirsiniz: Azure, Amazon Web Services (AWS) ve Google Cloud Platform (GCP).

Terraform uzantısı hakkında daha fazla bilgi edinmek için buradabelgelere bakın.

Terraform ve Azure Pipelines tümleştirmesinin ekran görüntüsü.

Google Analytics ile tümleştirme

Google Analytics denemeleri çerçevesi, belirli bir hedef üzerindeki etkisini ölçmek için bir web sitesinde veya uygulamada yapılan neredeyse tüm değişiklikleri veya varyasyonları test etmenize olanak tanır. Örneğin, kullanıcılarınızın tamamlanmasını istediğiniz etkinlikleriniz (örneğin, satın alma, bültene kaydolma) ve/veya geliştirmek istediğiniz ölçümler (ör. gelir, oturum süresi, geri dönüş oranı) olabilir. Bu etkinlikler, özelliğinizin performansı üzerindeki doğrudan etkisine bağlı olarak uygulamaya değer değişiklikleri belirlemenize olanak verir.

Azure DevOps için Google Analytics denemeleri uzantısı derleme ve yayın işlem hatlarına deneme adımları ekler; böylece denemeleri sürekli olarak yönetirken Azure Pipelines'ın tüm DevOps avantajlarını elde ederek sürekli yineleyebilir, daha hızlı bir şekilde öğrenebilir ve dağıtabilirsiniz.

Google Analytics deneyler eklentisini Pazaryeri'nden indirebilirsiniz.

Google Analytics Denemeleri görevini gösteren ekran görüntüsü.

Azure Pipelines ile ServiceNow tümleştirmesi güncelleştirildi

ServiceNow için Azure Pipelines uygulaması, Azure Pipelines ve ServiceNow Değişiklik Yönetimi'nin tümleştirilmesine yardımcı olur. Bu güncelleştirmeyle, ServiceNow'un New York sürümüyle tümleştirebilirsiniz. İki hizmet arasındaki kimlik doğrulaması artık OAuth ve temel kimlik doğrulaması kullanılarak yapılabilir. Buna ek olarak, artık geçit sonucuna karar vermek için herhangi bir değişiklik özelliğini kullanabilmek için gelişmiş başarı ölçütlerini yapılandırabilirsiniz.

VSCode'dan Azure Pipelines oluşturma

VSCode için Azure Pipelines uzantısına yeni bir işlevsellik ekledik. Artık IDE'den çıkmadan doğrudan VSCode'dan Azure Pipelines oluşturabileceksiniz.

Sağ alt köşede şu uyarının yer aldığı VS Code'un ekran görüntüsü: İşlem hattınız başarıyla ayarlandı.

Gevşek hata yönetimi ve çözümü

Kararsız test yönetimini algılama, raporlama ve çözüm ile uçtan uca yaşam döngüsünü desteklemek için kullanıma sunduk. Bunu daha da geliştirmek için, kararsız test hata yönetimi ve çözümünü ekliyoruz.

Flaky testi incelerken, kök nedenini daha fazla araştırmak için bir geliştiriciye atanabilecek bir bug oluşturmak üzere Bug eylemini kullanabilirsiniz. Hata raporu, işlem hattı hakkında hata iletisi, yığın izleme ve testle ilişkili diğer bilgiler gibi bilgiler içerir.

Bir hata raporu çözümlendiğinde veya kapatıldığında, testi "flaky" olmayan olarak otomatik olarak işaretini kaldıracağız.

En az sayıda test çalıştırılmazsa VSTest görevlerini başarısız olacak şekilde ayarlama

VSTest görevi, hem kullanıcı girişlerini (test dosyaları, filtre ölçütleri vb.) hem de kullanılan test çerçevesine özgü bir test bağdaştırıcısını kullanarak testleri bulur ve çalıştırır. Kullanıcı girişlerinde veya test bağdaştırıcısında yapılan değişiklikler, testlerin keşfedilmediği ve beklenen testlerin yalnızca bir alt kümesinin çalıştırıldığı durumlara yol açabilir. Bu durum, kodun yeterince yüksek kalitede olması yerine testler atlandığından işlem hatlarının başarılı olduğu durumlara yol açabilir. Bu durumu önlemeye yardımcı olmak için VSTest görevine görevin geçmesi için çalıştırılması gereken en az test sayısını belirtmenize olanak tanıyan yeni bir seçenek ekledik.

En az sayıda test çalıştırılmıyorsa görevi başarısız yap seçeneğini gösteren ekran görüntüsü.

VSTest TestResultsDirectory seçeneği görev kullanıcı arabiriminde kullanılabilir

VSTest görevi, test sonuçlarını ve ilişkili dosyaları $(Agent.TempDirectory)\TestResults klasöründe depolar. Test sonuçlarını depolamak için farklı bir klasör yapılandırmanıza olanak sağlamak için görev kullanıcı arabirimine bir seçenek ekledik. Artık belirli bir konumdaki dosyalara ihtiyaç duyan sonraki görevler bunları kullanabilir.

Test sonuçları klasörü metin kutusunu gösteren ekran görüntüsü.

Otomatik test hata iletilerinde Markdown desteği

Otomatikleştirilmiş testler için hata iletilerine markdown desteği ekledik. Artık azure pipelines'da okunabilirliği artırmak ve test hatası sorunlarını giderme deneyimini kolaylaştırmak için hem test çalıştırması hem de test sonucu için hata iletilerini kolayca biçimlendirebilirsiniz. Desteklenen markdown söz dizimi burada bulunabilir.

otomatik test hata iletilerinde markdown desteğini gösteren ekran görüntüsü .

Dağıtım işine otomatik olarak adım eklemek için işlem hattı dekoratörlerini kullanma

Artık dağıtım işlerine işlem hattı dekoratörlerini ekleyebilirsiniz. Her dağıtım işinin yürütülmesi her yaşam döngüsü kancasına otomatik olarak eklenen herhangi bir özel adımınız (örneğin güvenlik açığı tarayıcısı) olabilir. İşlem hattı dekoratörleri bir koleksiyondaki tüm işlem hatlarına uygulanabildiğinden, güvenli dağıtım uygulamalarını zorunlu tutmanın bir parçası olarak bu işlemden yararlanabilirsiniz.

Ayrıca dağıtım görevleri, kapsayıcı görevi ile hizmetleri side-car tanımlandığı takdirde birlikte çalıştırılabilir.

Test Planları

Yeni Test Planı sayfası

Tüm Azure DevOps koleksiyonları için yeni bir Test Planları Sayfası (Test Planları *) kullanılabilir. Yeni sayfa, test planlaması, yazma veya yürütme gibi elinizdeki göreve odaklanmanıza yardımcı olacak kolaylaştırılmış görünümler sağlar. Ayrıca dağınıklık içermez ve Azure DevOps teklifinin geri kalanıyla tutarlıdır.

Aynı adı taşıyan ve arka uç depolarını paylaşan iki test planının ekran görüntüsü.

Yeni sayfayı anlamama yardımcı

test planına genel bakış sayfası

Yeni Test Planları sayfasında, ilk 4'ün yeni olduğu toplam 6 bölüm bulunurken, Grafikler & Genişletilebilirlik bölümleri mevcut işlevlerdir.

  1. Test planı üst bilgisi: Test planını bulmak, sık kullanılanlara eklemek, düzenlemek, kopyalamak veya çoğaltmak için bunu kullanın.
  2. test paketleri ağacı: Test paketlerini eklemek, yönetmek, dışarı aktarmak veya sipariş etmek için bunu kullanın. Yapılandırmaları atamak ve kullanıcı kabul testi gerçekleştirmek için de bundan yararlanın.
  3. Sekme tanımla: Bu sekme aracılığıyla istediğiniz bir test paketinde test çalışmalarını harmanlama, ekleme ve yönetme.
  4. Yürütme sekmesi: Bu sekme aracılığıyla testleri atayın ve yürüt ya da detaya gitmek için bir test sonucu bulun.
  5. Grafik sekmesi: Ayrıca panolara sabitlenebilen grafikler aracılığıyla test yürütmesini ve durumunu izleyin.
  6. Genişletilebilirlik: Ürün içinde geçerli genişletilebilirlik noktalarını destekler.

Aşağıdaki yeni bölümlere genel bir bakış atalım.

1. Test planı üst bilgisi

test planı üst bilgi sayfası

Görevler

Test Planı üst bilgisi aşağıdaki görevleri gerçekleştirmenizi sağlar:

  • Bir test planını favori olarak işaretleme
  • Sık kullanılan test planının işaretini kaldırma
  • Sık kullandığınız test planları arasında kolayca gezinme
  • Test planının yineleme yolunu görüntüleyin; bu, test planının Geçerli mi yoksa Geçmiş mi olduğunu açıkça gösterir
  • Rapora gitmek için bir bağlantıyla Test İlerlemesi raporunun hızlı özetini görüntüleyin
  • Tümü/Maden Testi Planları sayfasına geri gidin

bağlam menüsü seçeneklerini

Test Planı üst bilgisindeki bağlam menüsü aşağıdaki seçenekleri sağlar:

  • Test planını kopyalama: Bu, geçerli test planını hızla kopyalamanızı sağlayan yeni bir seçenektir. Aşağıda daha fazla ayrıntı bulabilirsiniz.
  • Test planını düzenle: Bu seçenek, iş öğesi alanlarını yönetmek için Test Planı iş öğesi formunu düzenlemenizi sağlar.
  • Test planı ayarları: Bu seçenek Test Çalıştırması ayarlarını (derleme veya yayın işlem hatlarını ilişkilendirmek için) ve Test Sonucu ayarlarını yapılandırmanıza olanak tanır

Test planını kopyalama (yeni özellik)

kopyala test planı sayfası

Sprint/yayın başına yeni bir Test Planı oluşturmanızı öneririz. Bunu yaparken, genellikle önceki döngü için Test Planı kopyalanabilir ve birkaç değişiklikle kopyalanan test planı yeni döngü için hazır olur. Bu işlemi kolaylaştırmak için yeni sayfada 'Test planını kopyala' özelliğini etkinleştirdik. Bundan yararlanarak test planlarını kopyalayabilir veya klonlayabilirsiniz. Destek REST API'si burada ele alınmıştır ve API, bir test planını projeler arasında kopyalamanıza veya klonlamanıza da olanak tanır.
Test Planları kullanımı hakkında daha fazla yönerge için buradakibakın.

2. Test paketleri ağacı

test paketleri ağaç sayfası

Görevler

Test paketi üst bilgisi aşağıdaki görevleri gerçekleştirmenizi sağlar:

  • Genişlet/daralt: Bu araç çubuğu seçenekleri, paket hiyerarşi ağacını genişletmenize veya daraltmanıza olanak tanır.
  • Alt paketlerden test noktalarını göster: Bu araç çubuğu seçeneği yalnızca "Yürüt" sekmesindeyken görünür. Bu, tek tek paketlere tek tek gitmek zorunda kalmadan test noktalarının daha kolay yönetilmesi için verilen paketin ve alt öğelerinin tüm test noktalarını tek bir görünümde görüntülemenizi sağlar.
  • Paketlerisırala: Paket hiyerarşisini yeniden sıralamak veya test planında bir paket hiyerarşisinden diğerine taşımak için paketleri sürükleyebilir/bırakabilirsiniz.

bağlam menüsü seçenekleri

Test paketleri ağacındaki bağlam menüsü aşağıdaki seçenekleri sağlar:

  • Yeni paket oluşturma: Aşağıdaki gibi 3 farklı türde paket oluşturabilirsiniz:
    • Testlerinizi düzenlemek için statik paketi veya klasör paketini kullanın.
    • Sorunsuz izlenebilirlik için gereksinimlere/kullanıcı hikayelerine doğrudan bağlantı vermek için gereksinim tabanlı paketi kullanın.
    • Sorgu ölçütlerini karşılayan test çalışmalarını dinamik olarak düzenlemek için sorgu tabanlı kullanın.
  • Yapılandırmaları atama: Paketin yapılandırmalarını atayabilirsiniz (örneğin: Chrome, Firefox, EdgeChromium) ve bunlar daha sonra bu pakete eklediğiniz tüm mevcut test çalışmaları veya yeni test çalışmaları için geçerli olacaktır.
  • Pdf/e-posta olarak dışarı aktar: Test planı özelliklerini, test paketi özelliklerini ve test çalışmalarının ayrıntılarını ve test noktalarını "e-posta" veya "pdf'ye yazdır" olarak dışarı aktarın.
  • Open test suite iş öğesi: Bu seçenek, iş öğesi alanlarını yönetmek için Test paketi iş öğesi formunu düzenlemenizi sağlar.
  • tüm testleri çalıştırmak için test edicileri atayın: Bu seçenek, aynı testin genellikle farklı departmanlara ait birden çok test edici tarafından çalıştırılması/yürütülmesi gereken Kullanıcı Kabulü testi (UAT) senaryoları için çok kullanışlıdır.
  • Yeniden Adlandır/Sil: Bu seçenekler paketin adını yönetmenize veya paketi ve içeriğini test planından kaldırmanıza olanak sağlar.

3. sekmesini tanımla

sekme sayfası tanımlama

Tanımla sekmesi, bir test paketi için test çalışmalarını harmanlamanıza, eklemenize ve yönetmenize olanak tanır. Yürütme sekmesi ise test noktaları atamak ve bunları yürütmek içindir.

Tanımla sekmesi ve belirli işlemler yalnızca Temel + Test Planları erişim düzeyine veya eşdeğerine sahip kullanıcılar tarafından kullanılabilir. Diğer her şey, 'Temel' erişim düzeyine sahip bir kullanıcı tarafından gerçekleştirilebilir olmalıdır.

Görevler

Tanımla sekmesi aşağıdaki görevleri gerçekleştirmenizi sağlar:

  • İş öğesi formunu kullanarak Yeni test çalışması ekle: Bu seçenek, iş öğesi formunu kullanarak yeni bir test çalışması oluşturmanıza olanak tanır. Oluşturulan test çalışması otomatik olarak pakete eklenir.
  • Kılavuzkullanarak Yeni test çalışması ekle: Bu seçenek, test çalışmaları kılavuz görünümünü kullanarak bir veya daha fazla test çalışması oluşturmanıza olanak tanır. Oluşturulan test çalışmaları otomatik olarak pakete eklenir.
  • Sorgukullanarak Var olan test çalışmalarını ekleme: Bu seçenek, bir sorgu belirterek pakete mevcut test çalışmalarını eklemenize olanak tanır.
  • Test durumlarını sürükleyip bırakarak sırala: Belirli bir paketteki bir veya daha fazla test durumunu sürükleyip bırakarak yeniden sıralayabilirsiniz. Test çalışmalarının sırası yalnızca el ile test çalışmaları için geçerlidir, otomatikleştirilmiş testler için geçerli değildir.
  • Test çalışmalarını bir paketten diğerine taşıma: Sürükle/bırak seçeneğini kullanarak test çalışmalarını bir test paketinden diğerine taşıyabilirsiniz.
  • Izgaragöster: Test adımlarının yanı sıra test senaryolarını görüntülemek/düzenlemek için ızgara modunu kullanabilirsiniz.
  • Tam ekran görünümü: Bu seçeneği kullanarak Tüm Tanımla sekmesinin içeriğini tam ekran modunda görüntüleyebilirsiniz.
  • Filtreleme: Filtre çubuğunu kullanarak, "test çalışması başlığı", "atanan" ve "durum" alanlarını kullanarak test çalışmaları listesini filtreleyebilirsiniz. Ayrıca, sütun üst bilgilerine tıklayarak listeyi sıralayabilirsiniz.
  • Sütun seçenekleri: Tanımla sekmesinde görünen sütun listesini "Sütun seçenekleri" kullanarak yönetebilirsiniz. Seçim için kullanılabilir sütunların listesi öncelikli olarak test çalışması iş öğesi formundaki alanlardır.

bağlam menüsü seçeneklerini

sekme bağlamı menü sayfasını tanımlama

Tanımla sekmesindeki Test çalışması düğümündeki bağlam menüsü aşağıdaki seçenekleri sağlar:

  • Test çalışması iş öğesi formunu açma/düzenleme: Bu seçenek, test adımları dahil olmak üzere iş öğesi alanlarını düzenlediğiniz iş öğesi formunu kullanarak test çalışmasını düzenlemenize olanak tanır.
  • Test çalışmalarını düzenle: Bu seçenek Test çalışması iş öğesi alanlarını toplu olarak düzenlemenizi sağlar. Ancak, test adımlarını toplu olarak düzenlemek için bu seçeneği kullanamazsınız.
  • Kılavuztest çalışmalarını düzenle: Bu seçenek, kılavuz görünümünü kullanarak test adımları dahil olmak üzere seçili test çalışmalarını toplu olarak düzenlemenizi sağlar.
  • Yapılandırmaları atama: Bu seçenek, test vaka düzeyi yapılandırmalarıyla paket düzeyi yapılandırmalarını geçersiz kılmanıza olanak tanır.
  • Test çalışmalarını kaldırma: Bu seçenek, test çalışmalarını verilen paketten kaldırmanızı sağlar. Ancak temel test vakası iş öğesini değiştirmez.
  • Test çalışmalarının kopyasını/kopyasını oluşturma: Bu seçenek, seçili test çalışmalarının kopyasını/kopyasını oluşturmanıza olanak tanır. Diğer ayrıntılar için aşağıya bakın.
  • Bağlı öğeleri görüntüle: Bu seçenek, belirli bir test çalışması için bağlantılı öğelere bakmanızı sağlar. Diğer ayrıntılar için aşağıya bakın.

Kopyala/çoğalt test senaryoları (yeni özellik)

test senaryolarını kopyalama sekmesi tanımlama sayfası

Bir test vakasını kopyalamak veya klonlamak istediğiniz senaryolar için "Test vakasını kopyala" seçeneğini kullanabilirsiniz. Kopyalanan/klonlanmış test vakasının oluşturulacağı hedef projeyi, hedef test planını ve hedef test paketini belirtebilirsiniz. Buna ek olarak, kopyalanan kopyaya akmak için mevcut bağlantıları/ekleri dahil etmek isteyip istemediğinizi de belirtebilirsiniz.

Bağlı öğeleri görüntüle (yeni özellik)

Test yapıtları, gereksinimler ve hatalar arasında izlenebilirlik, Test Planları ürününün kritik bir değer teklifidir. "Bağlantılı öğeleri görüntüle" seçeneğini kullanarak, bu test çalışması ile bağlantılı olan tüm bağlantılı Gereksinimlere, bu test çalışmalarının kullanıldığı tüm Test paketlerine/Test planlara ve test yürütmesinin bir parçası olarak dosyalanmış olan tüm hatalara kolayca bakabilirsiniz.

4. Yürütme sekmesi

yürütme sekme sayfası

Tanımla sekmesi, bir test paketi için test çalışmalarını harmanlamanıza, eklemenize ve yönetmenize olanak tanır. Yürütme sekmesi ise test noktaları atamak ve bunları yürütmek içindir.

Test noktası nedir? Kendi başına test çalışmaları yürütülebilir değildir. Test paketine test çalışması eklediğinizde test noktaları oluşturulur. Test noktası, test çalışması, test paketi, yapılandırma ve test oluşturucunun benzersiz bir birleşimidir. Örnek: "Oturum açma işlevselliğini test et" olarak bir test çalışmasınız varsa ve buna Edge ve Chrome olarak 2 yapılandırma eklerseniz bu işlem 2 test noktasıyla sonuçlanıyor demektir. Artık bu test noktaları yürütülebilir. Yürütme sırasında test sonuçları oluşturulur. Test sonuçları görünümü (yürütme geçmişi) aracılığıyla bir test noktasının tüm yürütmelerini görebilirsiniz. Test noktası için en son yürütme, yürütme sekmesinde gördüklerinizdir.
Bu nedenle test çalışmaları yeniden kullanılabilir varlıklardır. Bunları bir test planına veya paketine dahil ederek test noktaları oluşturulur. Test noktalarını yürüterek, geliştirilmekte olan ürünün veya hizmetin kalitesini belirlersiniz.

Yeni sayfanın birincil avantajlarından biri, temel olarak test yürütme/izleme yapan kullanıcılardır (yalnızca 'Temel' erişim düzeyine sahip olması gerekir), paket yönetiminin karmaşıklığından etkilenmezler (tanımlama sekmesi bu tür kullanıcılar için gizlenir).

Tanımla sekmesi ve belirli işlemler yalnızca Temel + Test Planları erişim düzeyine veya eşdeğerine sahip kullanıcılar tarafından kullanılabilir. "Yürüt" sekmesi de dahil olmak üzere diğer her şey, 'Temel' erişim düzeyine sahip bir kullanıcı tarafından kullanılabilir olmalıdır.

Görevler

Yürüt sekmesi aşağıdaki görevleri gerçekleştirmenizi sağlar:

  • Test noktalarınıtoplu olarak işaretleme: Bu seçenek test çalışmasını Test çalıştırıcısı aracılığıyla çalıştırmak zorunda kalmadan test noktalarının sonucunu (başarılı, başarısız, engellendi veya uygulanamaz) hızla işaretlemenizi sağlar. Sonuç, tek seferde bir veya birden çok test noktası için işaretlenebilir.
  • Test noktalarını çalıştırma: Bu seçenek, her test adımında ayrı ayrı ilerleyerek ve test çalıştırıcısı kullanarak başarılı/başarısız olarak işaretleyerek test çalışmalarını çalıştırmanıza olanak tanır. Test ettiğiniz uygulamaya bağlı olarak, bir "web uygulamasını" test için "Web Çalıştırıcısı"nı veya masaüstü ve/veya web uygulamalarını test için "masaüstü çalıştırıcısını" kullanabilirsiniz. Ek olarak, gerçekleştirmek istediğiniz test için hangi Build üzerinde çalışacağınızı belirtmek amacıyla "Seçeneklerle çalıştır" komutunu da çağırabilirsiniz.
  • Sütun seçenekleri: Yürüt sekmesinde görünen sütun listesini "Sütun seçenekleri" kullanarak yönetebilirsiniz. Seçim için kullanılabilir sütunların listesi, Çalıştıran, Atanan Testçi, Yapılandırma gibi test noktalarıyla ilişkilendirilir.
  • Tam ekran görünümü: Bu seçeneği kullanarak Yürüt sekmesinin tamamını tam ekran modunda görüntüleyebilirsiniz.
  • Filtreleme: Filtre çubuğunu kullanarak, "test çalışması başlığı", "atanan", "durum", "test sonucu", "Tester" ve "Yapılandırma" alanlarını kullanarak test noktaları listesini filtreleyebilirsiniz. Ayrıca, sütun üst bilgilerine tıklayarak listeyi sıralayabilirsiniz.

bağlam menüsü seçenekleri

yürütme sekmesi bağlam menüsü sayfası

Yürüt sekmesindeki Test noktası düğümündeki bağlam menüsü aşağıdaki seçenekleri sağlar:

  • Test sonucunu işaretle: Yukarıdakiyle aynı şekilde, test noktalarının sonucunu (başarılı, başarısız, engellenmiş veya geçerli değil) hızla işaretlemenize olanak tanır.
  • Test noktalarını çalıştırma: Yukarıdakiyle aynı şekilde, test çalıştırıcısı aracılığıyla test çalışmalarını çalıştırmanıza olanak tanır.
  • Testi etkinyeniden başlat: Bu seçenek, test sonucunu etkin olarak yeniden başlatmanıza olanak tanır ve böylece testin son sonucunu yoksayabilirsiniz.
  • Test çalışması iş öğesi formunu açma/düzenleme: Bu seçenek, test adımları dahil olmak üzere iş öğesi alanlarını düzenlediğiniz iş öğesi formunu kullanarak test çalışmasını düzenlemenize olanak tanır.
  • Test edici atama: Bu seçenek test yürütmesi için test noktalarını test edenlere atamanızı sağlar.
  • Test sonucunu görüntüle: Bu seçenek, her test adımının sonucu, eklenen açıklamalar veya dosyalanan hatalar dahil olmak üzere en son test sonucu ayrıntılarını görüntülemenizi sağlar.
  • Yürütme geçmişini görüntüle: Bu seçenek, seçilen test noktası için yürütme geçmişinin tamamını görüntülemenizi sağlar. Yalnızca seçili test noktasının değil tüm test çalışmalarının yürütme geçmişini görüntülemek için filtreleri ayarlayabileceğiniz yeni bir sayfa açılır.

Test Planları İlerleme Durumu raporu

Bu hazır rapor, bir projedeki bir veya daha fazla Test Planının yürütülmesini ve durumunu izlemenize yardımcı olur. Raporu kullanmaya başlamak için Test Planları > İlerleme raporu* sayfasını ziyaret edin.

İlerleme raporu seçeneğinin vurgulandığı Test Planları bölümünün ekran görüntüsü.

Raporun üç bölümü şunlardır:

  1. Özet: seçili test planları için birleştirilmiş bir görünüm gösterir.
  2. Sonuç eğilimi: size yürütme ve durum eğilim çizgisini göstermek için günlük bir görünüm sunar. 14 gün (varsayılan), 30 gün veya özel bir aralık için verileri gösterebilir.
  3. Ayrıntılar: Bu bölüm her test planında detaya gitmenizi sağlar ve her test paketi için size önemli analizler sunar.

İlerleme raporunun ekran görüntüsü.

Eserler

Not

Azure DevOps Server 2020, veri içe aktarımı sırasında geri dönüşüm kutusunda bulunan akışları aktarmıyor. Geri dönüşüm kutusunda bulunan akışları içeri aktarmak istiyorsanız, lütfen veri aktarımına başlamadan önce bunları geri dönüşüm kutusundan geri yükleyin.

Lisans ifadeleri ve ekli lisanslar

Artık Visual Studio'da paketlere göz atarken Azure Artifacts'te depolanan NuGet paketlerinin lisans bilgilerinin ayrıntılarını görebilirsiniz. Bu, lisans ifadeleri veya eklenmiş lisanslar kullanılarak temsil edilen lisanslar için geçerlidir. Artık Visual Studio paket ayrıntıları sayfasında lisans bilgilerinin bağlantısını görebilirsiniz (aşağıdaki resimde kırmızı ok).

Paketin lisansına işaret eden kırmızı bir okla Newtonsoft.Json NuGet paketinin ekran görüntüsü.

Bağlantıya tıkladığınızda lisansın ayrıntılarını görüntüleyebileceğiniz bir web sayfasına gidebilirsiniz. Bu deneyim hem lisans ifadeleri hem de eklenmiş lisanslar için aynıdır; bu nedenle Azure Artifacts'te depolanan paketlerin lisans ayrıntılarını tek bir yerde görebilirsiniz (lisans bilgilerini belirten ve Visual Studio tarafından desteklenen paketler için).

MIT lisans metnini gösteren tarayıcı penceresinin ekran görüntüsü

Basit kimlik doğrulama görevleri

Artık basit kimlik doğrulama görevlerini kullanarak Azure Pipelines'dan popüler paket yöneticileriyle kimlik doğrulaması yapabilirsiniz. Buna NuGet, npm, PIP, Twine ve Maven dahildir. Daha önce, paketleri yayımlama ve indirme de dahil olmak üzere büyük miktarda işlevsellik sağlayan görevleri kullanarak bu paket yöneticileriyle kimlik doğrulaması yapabilirdin. Ancak bu, paket yöneticileriyle etkileşim kuran tüm etkinlikler için bu görevlerin kullanılması gerekiyordu. Paketleri yayımlama veya indirme gibi görevleri gerçekleştirmek için çalıştırabileceğiniz kendi betikleriniz varsa bunları İşlem Hattınızda kullanamazsınız. Artık işlem hattı YAML'nizde kendi tasarımınıza ait betikleri kullanabilir ve bu yeni basit görevlerle kimlik doğrulaması gerçekleştirebilirsiniz. npm kullanan bir örnek:

Basit bir kimlik doğrulama görevi örneğinin ekran görüntüsü.

Bu çizimde "ci" ve "publish" komutunun kullanımı rastgeledir; Azure Pipelines YAML tarafından desteklenen tüm komutları kullanabilirsiniz. Bu, komut çağırmanın tam denetimine sahip olmanıza olanak tanır ve işlem hattı yapılandırmanızda paylaşılan betikleri kullanmanızı kolaylaştırır. Daha fazla bilgi için lütfen NuGet, npm, PIP, Twineve Maven kimlik doğrulama görevi belgelerine bakın.

Akış sayfasının yüklenme süresi iyileştirmeleri

Akış sayfası yükleme süresini iyileştirdiğimizi duyurmaktan heyecan duyuyoruz. Akış sayfası yükleme süreleri ortalama olarak 10%azaldı. En büyük akışlarda en fazla gelişme 99. yüzdebirlik akış sayfası yükleme süresi (tüm akışların en yüksek 99% yükleme süreleri) 75%azaldı.

Paketlerinizi herkese açık beslemelerle paylaşın

Artık paketlerinizi genel akışlar içinde oluşturabilir ve depolayabilirsiniz. Genel akışlarda depolanan paketler, koleksiyonunuz içinde olsun veya olmasın, hatta bir Azure DevOps koleksiyonunda oturum açmış olsun veya olmasın, kimlik doğrulaması olmadan İnternet'teki herkes tarafından kullanılabilir. genel beslemeler hakkında daha fazla bilgi edinmek için besleme belgeleri'ye bakabilir veya paketleri herkese açık olarak paylaşmaya yönelik öğreticimize doğrudan geçiş yapabilirsiniz.

Paketlerinizin PublicFeed sayfasını gösteren ekran görüntüsü.

AAD kiracısındaki farklı koleksiyonlarda yukarı akışları yapılandırma

Artık Azure Active Directory (AAD) kiracınızla ilişkilendirilmiş başka bir koleksiyondaki akışı Yapıtlar akışınıza yukarı akış kaynağı olarak ekleyebilirsiniz. Akışınız, yukarı akış kaynakları olarak yapılandırılan akışlardaki paketleri bulabilir ve kullanabilir ve bu sayede paketlerin AAD kiracınızla ilişkili koleksiyonlar arasında kolayca paylaşılabilmesini sağlayabilir. belgelerinde bunu ayarlamayıgörün.

Python Kimlik Bilgisi Sağlayıcısı'nı kullanarak Azure Artifacts akışlarında pip ve twine kimlik doğrulaması yapın

Artık Python Kimlik Sağlayıcısı (artifacts-keyring) yükleyip kullanarak bir Azure Artifacts akışına veya akışından Python paketleri yayımlamak ya da kullanmak için kimlik doğrulamasını otomatik olarak ayarlayabilirsiniz. Kimlik bilgisi sağlayıcısıyla, herhangi bir yapılandırma dosyası ayarlamanız gerekmez (pip.ini/pip.conf/.pypirc), pip veya twine'yi ilk kez çağırırken web tarayıcınızda bir kimlik doğrulama akışından geçersiniz. Belgelendirme içinde daha fazla bilgi içinbakın.

Visual Studio Paket Yöneticisi'nde Azure Artifacts akışları

Artık Azure Artifacts akışlarından sunulan paketler için Visual Studio NuGet Paket Yöneticisi'nde paket simgelerini, açıklamalarını ve yazarlarını gösteriyoruz. Daha önce, bu meta verilerin çoğu VS'ye sağlanmadı.

Akışa bağlanma deneyimi güncelleştirildi

Akışa bağlan iletişim kutusu, Azure Artifacts'i kullanmanın giriş yoludur; Azure DevOps'taki akışlardan paketleri göndermek ve çekmek için istemcileri ve depoları yapılandırma hakkında bilgi içerir. Ayrıntılı kurulum bilgileri eklemek için iletişim kutusunu güncelleştirdik ve yönergeler sunduğumuz araçları genişlettik.

Herkese açık beslemeler artık üst akış desteğiyle genel kullanıma sunuldu.

Genel akışların önizlemesi, geniş bir benimsenme ve geri bildirim aldı. Bu sürümde, ek özellikleri genel kullanıma genişlettik. Artık genel akışı özel bir akıştan yukarı akış kaynağı olarak ayarlayabilirsiniz. Özel ve proje kapsamına sahip akışlara hem yukarı akış yaparak hem de bu akışlardan yukarı akış yaparak yapılandırma dosyalarınızı basit tutabilirsiniz.

Portal üzerinden proje kapsamlı beslemeler oluşturma

Genel akışları kullanıma sunduğumuzda, proje kapsamındaki akışlar da yayımladık. Şimdiye kadar, REST API'leri aracılığıyla veya önce genel bir akış oluşturup ardından projeyi özele dönüştürerek proje kapsamlı akışlar oluşturulabilirdi. Artık gerekli izinlere sahipseniz, portalda herhangi bir projeden proje çerçevesinde akışlar oluşturabilirsiniz. Akış seçicide hangi akışların proje kapsamına ve hangilerinin koleksiyon kapsamına sahip olduğunu da görebilirsiniz.

npm performans geliştirmeleri

Azure Artifacts akışlarında npm paketlerini depolama ve teslim etme şeklimizi geliştirmek için temel tasarımımızda değişiklikler yaptık. Bu, npm için kullanılan en yüksek API'lerden bazıları için gecikme süresinde 10 kat azalmaya kadar ulaşmamıza yardımcı oldu.

Erişilebilirlik geliştirmeleri

Akışlar sayfamızda erişilebilirlik sorunlarını gidermek için düzeltmeler dağıttık. Düzeltmeler şunlardır:

  • Akış deneyimi oluşturma
  • Genel akış ayarları deneyimi
  • Akış deneyimine bağlan

Wiki

Kod wiki sayfaları için zengin düzenleme

Daha önce bir kod wiki sayfası düzenlenirken düzenleme için Azure Repos hub'ına yönlendiriliyordunuz. Şu anda Repo hub markdown düzenleme için optimize edilmemiştir.

Artık wiki'nin içindeki yan yana düzenleyicide bir kod wiki sayfasını düzenleyebilirsiniz. Bu, içeriğinizi oluşturmak için zengin markdown araç çubuğunu kullanarak düzenleme deneyimini proje wiki'sindekiyle aynı hale getirmenizi sağlar. Bağlam menüsündeki Depolarda Düzenle seçeneğini belirleyerek depolarda düzenlemeyi seçebilirsiniz.

Repos'ta Düzenle seçeneğinin vurgulandığı Düzenle menüsünü gösteren ekran görüntüsü.

Wiki sayfasından iş öğeleri oluşturma ve ekleme

Geri bildirimlerinizi dinlediğimizde wiki'yi kullanarak beyin fırtınası belgelerini, planlama belgelerini, özelliklerle ilgili fikirleri, belirtim belgelerini, toplantı dakikalarını yakaladığınızı duyduk. Artık wiki sayfasından çıkmadan doğrudan bir planlama belgesinden kolayca özellik ve kullanıcı hikayeleri oluşturabilirsiniz.

İş öğesi oluşturmak için wiki sayfasında iş öğesini eklemek istediğiniz metni seçin ve Yeni iş öğesiöğesini seçin. Bu size zaman kazandırır çünkü önce iş öğesini oluşturmanız, düzenlemeye gitmeniz ve eklemek için iş öğesini bulmanız gerekmez. Wiki kapsamının dışına çıkmadığınızdan bağlam değişikliğini de azaltır.

Wiki sayfasından iş öğeleri oluşturma ve ekleme adımlarını gösteren kısa video.

Wiki'den iş öğesi oluşturma ve ekleme hakkında daha fazla bilgi edinmek için buradabelgelerimize bakın.

Wiki sayfalarındaki açıklamalar

Daha önce, wiki'nin içindeki diğer wiki kullanıcılarıyla etkileşim kurmanın bir yolu yoktu. Bu, konuşmaların posta veya sohbet kanalları üzerinden gerçekleşmesi gerektiğinden içerik üzerinde işbirliği yapmak ve soruların yanıtlanması zor oldu. Açıklamalar sayesinde artık doğrudan wiki'de başkalarıyla işbirliği yapabilirsiniz. Diğer ekip üyelerinin dikkatini çekmek için açıklamaların içindeki @mention kullanıcı işlevselliğinden yararlanabilirsiniz. Bu özellik, bu öneri talebi'e göre önceliklendirilmiştir. Yorumlar hakkında daha fazla bilgi için lütfen buradakibelgelerimize bakın.

Wiki sayfalarına açıklama eklemeyi gösteren ekran görüntüsü.

"" ile başlayan klasörleri ve dosyaları gizleyin. wiki ağacında

Şimdiye kadar wiki ağacı, wiki ağacında nokta (.) ile başlayan tüm klasörleri ve dosyaları göstermiş. Kod wiki senaryolarında bu, gizli olması amaçlanan .vscode gibi klasörlerin wiki ağacında görünmesine neden oldu. Artık noktayla başlayan tüm dosya ve klasörler wiki ağacında gizli kalacak ve bu nedenle gereksiz dağınıklık azaltılacaktır.

Bu özellik, bu öneri talebinegöre önceliklendirilmiştir.

Kısa ve okunabilir Wiki sayfası URL'leri

Wiki sayfası bağlantılarını paylaşmak için artık çok satırlı bir URL kullanmanız gerekmez. Parametreleri kaldırmak için URL'deki sayfa kimliklerinden yararlanıyoruz, bu nedenle URL'yi daha kısa ve okunmasını kolaylaştırıyoruz.

URL'lerin yeni yapısı şöyle görünür:

https://dev.azure.com/{accountName}/{projectName}/_wiki/wikis/{wikiName}/{pageId}/{readableWiki PageName}

Bu, Azure DevOps Wiki Hoş Geldiniz sayfasının yeni URL'sine bir örnektir:

https://dev.azure.com/microsoft/ AzureDevOps/_wiki/wikis/AzureDevOps.wiki/1/Welcome-to-Azure-DevOps-Wiki

Bu işlem, Geliştirici Topluluğu'ndaki bu özellik öneri talebi'e dayanarak önceliklendirildi.

Wiki sayfalarını düzenlemek için zaman uyumlu kaydırma

Düzenleme ve önizleme bölmesi arasındaki zaman uyumlu kaydırma sayesinde wiki sayfalarını düzenlemek artık daha kolay. Bir tarafta kaydırma, ilgili bölümleri eşlemek için otomatik olarak diğer tarafı kaydıracaktır. Eşzamanlı kaydırmayı açma-kapama düğmesiyle devre dışı bırakabilirsiniz.

Senkron kaydırma simgesinin vurgulandığı wiki araç çubuğunun ekran görüntüsü ve üstünde Eşitlenmiş kaydırmayı devre dışı bırak anahtarı.

Not

Eşzamanlı kaydırma anahtarının durumu, kullanıcı ve hesaba göre kaydedilir.

Wiki sayfaları için sayfa ziyaretleri

Artık wiki sayfaları için sayfa ziyaretleri hakkında içgörüler edinebilirsiniz. REST API, son 30 gün içindeki sayfa ziyaretleri bilgilerine erişmenizi sağlar. Wiki sayfalarınız için raporlar oluşturmak için bu verileri kullanabilirsiniz. Ayrıca, bu verileri veri kaynağınızda depolayabilir ve en çok görüntülenen sayfalargibi belirli içgörüler elde etmek için panolar oluşturabilirsiniz.

Ayrıca, her sayfada son 30 gün için toplu sayfa ziyaretlerinin sayısını görürsünüz.

Wiki sayfasının önceki ziyaretlerini gösteren ekran görüntüsü.

Not

Sayfa ziyareti, belirli bir kullanıcı tarafından 15 dakikalık bir aralıkta sayfa görünümü olarak tanımlanır.

Raporlama

Boru hattı hatası ve süre raporları

Ölçümler ve içgörüler, işlem hatlarınızın aktarım hızını ve kararlılığını sürekli geliştirmenize yardımcı olur. İşlem hatlarınız hakkında içgörüler sağlamak için iki yeni rapor ekledik.

  1. Pipeline başarısızlık raporu, derleme başarı oranını ve başarısızlık eğilimini gösterir. Buna ek olarak, işlem hattındaki hangi görevin en fazla hata sayısına katkıda bulunduğuna ilişkin içgörüler sağlamak için görev hatası eğilimini de gösterir.

İşlem hattı geçiş hızı rozetini, Test geçiş hızı rozetini ve İşlem hattı süresi rozetini gösteren Analiz sekmesini gösteren ekran görüntüsü.

İşlem hattı hata raporunu gösteren ekran görüntüsü.

  1. İşlem hattı süresi raporu, işlem hattının çalışması için geçen sürenin eğilimini gösterir. Ayrıca işlem hattındaki hangi görevlerin en çok zaman aldığını gösterir.

Sorgu Sonuçları pencere öğesinde geliştirme

sorgu sonuçları pencere öğesi en popüler pencere öğelerimizden biridir ve bunun iyi bir nedeni vardır. Pencere öğesi bir sorgunun sonuçlarını doğrudan panonuzda görüntüler ve birçok durumda kullanışlıdır.

Bu güncelleştirmeyle uzun zamandır beklenen birçok iyileştirmeyi dahil ettik:

  • Artık pencere öğesinde görüntülemek istediğiniz kadar sütun seçebilirsiniz. Artık 5 sütunlu sınır yok!
  • Pencere öğesi , 1x1 ile 10x10 arasındaki tüm boyutlarıdestekler.
  • Bir sütunu yeniden boyutlandırdığınızda, sütun genişliğikaydedilir.
  • pencere öğesini tam ekran görünümünegenişletebilirsiniz. Genişletildiğinde, sorgu tarafından döndürülen tüm sütunları görüntüler.

Öncül ve Çevrim Süresi araçları gelişmiş filtreleme

Öncül ve döngü süresi, ekiplerin geliştirme işlem hatlarındaki iş akışının ne kadar sürdüğünü görmek ve nihayetinde müşterilerine değer sunmak için kullanılır.

Şimdiye kadar, süreç ve döngü süresi araçları, ekibimin yüksek öncelikli öğeleri kapatması için ne kadar sürdüğünü sormak gibi sorular için gelişmiş filtre kriterlerini desteklemiyordu.

Bu güncelleştirme ile bu gibi sorulara Pano kulvarını filtreleyerek yanıtlayabilirsiniz.

Kulvar bölümünün vurgulu olduğu Yapılandırma iletişim kutusunu gösteren ekran görüntüsü.

Grafikte görünen iş öğelerini sınırlamak için iş öğesi filtrelerini de dahil ettik.

Alan ölçütleri bölümünün vurgulu olduğu Yapılandırma iletişim kutusunu gösteren ekran görüntüsü.

Hikaye puanlarını kullanarak satır içi sprint ilerleme grafiği

Sprint Burndown'ınız artık Hikayeler tarafından yakılabilir. Bu, Geliştirici Topluluğu'ndan gelen geri bildirimlerinizi giderir.

Sprint hub'ından Analiz sekmesini seçin. Ardından raporu aşağıdaki gibi yapılandırın:

  1. Hikayeler birikimini seçin
  2. Seç: Burndown üzerinde Hikaye Puanlarının Toplamı

Hikaye puanlarını kullanarak çizgi içi sprint burndown'ı gösteren ekran görüntüsü.

İstediğiniz her şeyi içeren Sprint Burndown bileşeni

Yeni bir Sprint Burndown pencere öğesi, Hikaye Puanı, Görev sayısı veya özel alanları toplayarak azaltma işlemini destekler. Özellikler veya Epic'ler için bir sprint burndown bile oluşturabilirsiniz. Pencere öğesi ortalama burndown hızı, % tamamlandı ve kapsam artışını görselleştirir. Aynı panoda birden çok ekibin sprint gerileme grafiğini görüntülemenize olanak tanıyacak şekilde ekibi yapılandırabilirsiniz. Tüm bu harika bilgileri görüntülerken, boyutlarını 10x10'a kadar ayarlamanıza olanak tanırız.

Yeni Sprint Burndown pencere öğesini gösteren ekran görüntüsü.

Denemek için, pencere öğesi kataloğundan ekleyebilir veya mevcut Sprint Burndown pencere öğesinin yapılandırmasını düzenleyip Yeni sürümü şimdi deneyin kutusunu işaretleyebilirsiniz.

Not

Yeni pencere öğesi Analiz'i kullanır. Analytics'e erişiminiz yoksa eski Sprint Burndown'ını sakladık.

Satır içi sprint burndown küçük resmi

Sprint Burndown geri döndü! Birkaç sprint önce, Sprint Burndown ve Görev Tablosu başlıklarından bağlam içi sprint burndown'u kaldırdık. Geri bildiriminize dayanarak sprint burndown küçük resmini geliştirdik ve yeniden tanıttık.

Satır içi sprint yazma küçük resmini gösteren ekran görüntüsü.

Küçük resme tıklanırken, analiz sekmesinin altında raporun tamamını görüntüleme seçeneğiyle grafiğin hemen daha büyük bir sürümü görüntülenir. Tam raporda yapılan değişiklikler üst bilgide görüntülenen grafiğe yansıtılır. Böylece artık bunu yalnızca kalan çalışma miktarı yerine hikayeler, hikaye puanları veya görev sayısına göre azaltım yapacak şekilde yapılandırabilirsiniz.

Ekip olmadan pano oluşturma

Artık panoyu bir ekiple ilişkilendirmeden oluşturabilirsiniz. Pano oluştururken Proje Panosu türünü seçin.

Proje Panosu seçeneğinin seçili ve vurgulu olduğu Pano oluştur iletişim kutusunu gösteren ekran görüntüsü.

Proje Panosu, Ekip Panosu gibidir, ancak bu pano bir Ekiple ilişkilendirilmemiştir ve panoyu kimlerin düzenleyebileceğine/yönetebileceğine siz karar vekleyebilirsiniz. Ekip Panosu gibi, projedeki herkes tarafından görülebilir.

Ekip bağlamı gerektiren tüm Azure DevOps pencere öğeleri, yapılandırmasında bir ekip seçmenize olanak verecek şekilde güncelleştirildi. Bu pencere öğelerini Proje Panolarına ekleyebilir ve istediğiniz ekibi seçebilirsiniz.

Takım açılır listesinin ekran görüntüsü.

Not

Özel veya üçüncü taraf pencere öğeleri için Proje Panosu, varsayılan ekibin bağlamını bu pencere öğelerine geçirir. Ekip bağlamını kullanan özel bir pencere öğeniz varsa, bir ekip seçmenize izin vermek için yapılandırmayı güncelleştirmeniz gerekir.


Geri Bildirim

Sizden haber almak isteriz! Bir sorunu bildirebilir veya bir fikir sağlayabilir, Geliştirici Topluluğu aracılığıyla izleyebilir ve Stack Overflowhakkında öneriler alabilirsiniz.

Sayfanın üstü