Aracılığıyla paylaş


Azure DevOps Server 2022 Güncelleştirme 1 Sürüm Notları


| Geliştirici Topluluğu Sistem Gereksinimleri ve Uyumluluk | Lisans Koşulları | DevOps Blogu | SHA-256 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 Server ürünlerini indirmek için Azure DevOps Server İndirmeleri sayfasını ziyaret edin.

Azure DevOps Server 2022 Güncelleştirme 1'e 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 2013 veya daha önceki bir sürümdeyse, Azure DevOps Server 2022'ye yükseltmeden önce bazı ara adımlar gerçekleştirmeniz gerekir. Daha fazla bilgi için lütfen Yükleme sayfasına bakın.


Azure DevOps Server 2022 Güncelleştirme 1 Düzeltme Eki 4 Yayın Tarihi: 11 Haziran 2024

Dosya SHA-256 Karması
devops2022.1patch4.exe 3A17B4F973A6FA4DE5D0B30C6C87B3C18C885620C683FA1032EC4F6BDB2DA4FB

Azure DevOps Server 2022 Güncelleştirme 1 için aşağıdakilere yönelik bir düzeltme içeren 4. Düzeltme Eki'ni yayımladık.

  • Wiki ve iş öğelerinde, Türkçe yerel ayarında Türkçe "I" bulunan Projeler için arama sonuçlarının kullanılamaması sorunu düzeltildi.

Azure DevOps Server 2022 Güncelleştirme 1 Düzeltme Eki 3 Yayın Tarihi: 12 Mart 2024

Dosya SHA-256 Karması
devops2022.1patch3.exe E7DE45650D74A1B1C47F947CDEF4BF3307C4323D749408EE7F0524C2A04D2911

Azure DevOps Server 2022 Güncelleştirme 1 için aşağıdaki düzeltmeleri içeren 3. Düzeltme Eki'ni yayımladık.

  • Yama 2 yüklendikten sonra Ara Sunucunun çalışmayı durdurması sorunu çözüldü.
  • Uzantı ayrıntıları sayfasında İngilizce olmayan dilleri etkileyen bir işleme sorunu düzeltildi.

Azure DevOps Server 2022 Güncelleştirme 1 Düzeltme Eki 2 Sürüm Tarihi: 13 Şubat 2024

Dosya SHA-256 Karması
devops2022.1patch2.exe 59B3191E86DB787F91FDD1966554DE580CA97F06BA9CCB1D747D41A2317A5441

Azure DevOps Server 2022 Güncelleştirme 1 için aşağıdaki düzeltmeleri içeren Düzeltme Eki 2'yi yayımladık.

  • Arama uzantısında ayrıntılar sayfası işleme sorunu düzeltildi.
  • Ara sunucu önbellek klasörü tarafından kullanılan disk alanının yanlış hesaplandığı ve klasörün düzgün temizlenmediği bir hata düzeltildi.
  • CVE-2024-20667: Azure DevOps Server Uzaktan Kod Yürütme Güvenlik Açığı.

Azure DevOps Server 2022 Güncelleştirme 1 Düzeltme Eki 1 Sürüm Tarihi: 12 Aralık 2023

Dosya SHA-256 Karması
devops2022.1patch1.exe 9D0FDCCD1F20461E586689B756E600CC16424018A3377042F7DC3A6EEF096FB6

Azure DevOps Server 2022 Güncelleştirme 1 için aşağıdaki düzeltmeleri içeren Düzeltme Eki 1'i yayımladık.

  • İşlem hattı çalıştırmasını kuyruğa alırken ayarı requested for engelleyin.

Azure DevOps Server 2022 Güncelleştirme 1 Sürüm Tarihi: 28 Kasım 2023

Not

Bu sürümde bilinen iki sorun vardır:

  1. Aracı sürümü, Azure DevOps Server 2022.1'e yükselttikten ve Aracı Havuzu yapılandırmasında Güncelleştirme Aracısı'nı kullandıktan sonra güncelleştirilmez. Şu anda bu sorunu çözmek için bir düzeltme eki üzerinde çalışıyoruz ve ilerleme kaydettikçe güncelleştirmeleri Geliştirici Topluluğu paylaşacağız. Bu arada, bu sorun için bu Geliştirici Topluluğu biletinde geçici bir çözüm bulabilirsiniz.
  2. Maven 3.9.x uyumluluğu. Maven 3.9.x, Varsayılan Maven Resolver taşımasını Wagon'dan yerel HTTP'ye güncelleştirerek Azure Artifacts ile hataya neden olan değişiklikler kullanıma sunulmuştur. Bu, https yerine http kullanan müşteriler için 401 kimlik doğrulaması sorunlarına neden olur. Bu sorunla ilgili daha fazla ayrıntıyı burada bulabilirsiniz. Geçici bir çözüm olarak Maven 3.9.x'i özelliğiyle -Dmaven.resolver.transport=wagonkullanmaya devam edebilirsiniz. Bu değişiklik Maven'i Wagon Resolver Transport kullanmaya zorlar. Diğer ayrıntılar için buradaki belgelere göz atın.

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

Not

Maven 3.9.x uyumluluğuyla ilgili bilinen bir sorun vardır. Maven 3.9.x, Varsayılan Maven Resolver taşımasını Wagon'dan yerel HTTP'ye güncelleştirerek Azure Artifacts ile hataya neden olan değişiklikler kullanıma sunulmuştur. Bu, https yerine http kullanan müşteriler için 401 kimlik doğrulaması sorunlarına neden olur. Bu sorunla ilgili daha fazla ayrıntıyı burada bulabilirsiniz.

Geçici bir çözüm olarak Maven 3.9.x'i özelliğiyle -Dmaven.resolver.transport=wagonkullanmaya devam edebilirsiniz. Bu değişiklik Maven'i Wagon Resolver Transport kullanmaya zorlar. Diğer ayrıntılar için buradaki belgelere göz atın.

Azure DevOps Server 2022 Güncelleştirme 1 RC2 Sürüm Tarihi: 31 Ekim 2023

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

Not

Maven 3.9.x uyumluluğuyla ilgili bilinen bir sorun vardır. Maven 3.9.x, Varsayılan Maven Resolver taşımasını Wagon'dan yerel HTTP'ye güncelleştirerek Azure Artifacts ile hataya neden olan değişiklikler kullanıma sunulmuştur. Bu, https yerine http kullanan müşteriler için 401 kimlik doğrulaması sorunlarına neden olur. Bu sorunla ilgili daha fazla ayrıntıyı burada bulabilirsiniz.

Geçici bir çözüm olarak Maven 3.9.x'i özelliğiyle -Dmaven.resolver.transport=wagonkullanmaya devam edebilirsiniz. Bu değişiklik Maven'i Wagon Resolver Transport kullanmaya zorlar. Diğer ayrıntılar için buradaki belgelere göz atın.

Bu sürümde aşağıdakiler düzeltilmiştir:

  • Yerel akışlarda yukarı akış girişlerinin görünen ad değişikliklerini çözmemesi sorunu düzeltildi.
  • Sekmeler Koddan Arama sayfasındaki başka bir sekmeye geçirildiğinde beklenmeyen bir hata oluştu.
  • Çince, Japonca ve Korece (CJK) Birleşik ideograflarla yeni bir iş öğesi türü oluşturulurken hata oluştu. Takım projesi adı veya CJK içeren dosyalar olduğunda, geçitli iadede RAW günlüğünde bir soru işareti görüntülendi.
  • Arama yüklemesi sırasında Java Sanal Makinesi'nin (JVM) Elastik Arama işlemine yeterli bellek ayıramadığı bir sorun düzeltildi. Arama yapılandırma pencere öğesi artık Elastik Arama ile birlikte gelen Java Geliştirme Seti'ni (JDK) kullanır ve bu nedenle hedeflenen sunucuya önceden yüklenmiş java çalışma zamanı ortamına (JRE) bağımlılığı kaldırır.

Azure DevOps Server 2022 Güncelleştirme 1 RC1 Sürüm Tarihi: 19 Eylül 2023

Azure DevOps Server 2022.1 RC1 birçok yeni özellik içerir. Önemli noktalardan bazıları:

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


Genel

Tüm Genel REST API'leri ayrıntılı PAT kapsamlarını destekler

Daha önce, genel olarak belgelenen bir dizi Azure DevOps REST API'si, müşterilerin kişisel erişim belirteçleri (PAT) gibi etkileşimli olmayan kimlik doğrulama mekanizmaları aracılığıyla bu API'leri kullanmak için tam kapsamları kullanmasına neden olan kapsamlarla (örneğin, iş öğesi okuma) ilişkilendirilmedi. Tam kapsamlı bir kişisel erişim belirteci kullanmak, kötü amaçlı bir kullanıcının eline geçtiğinde riski artırır. Bu, müşterilerimizin çoğunun PAT'nin kullanımını ve davranışını kısıtlamak için kontrol düzlemi ilkelerinden tam olarak yararlanmamalarının ana nedenlerinden biridir.

Artık tüm genel Azure DevOps REST API'leri ayrıntılı bir PAT kapsamıyla ilişkilendirilir ve desteklenir. Şu anda genel Azure DevOps REST API'lerinden birinde kimlik doğrulaması yapmak için tam kapsamlı bir PAT kullanıyorsanız, gereksiz erişimi önlemek için API tarafından kabul edilen belirli bir kapsama sahip bir PAT'ye geçmeyi göz önünde bulundurun. Belirli bir REST API için desteklenen ayrıntılı PAT kapsamları, belge sayfalarının Güvenlik bölümünde bulunabilir. Ayrıca, burada bir kapsamlar tablosu vardır.

Uzantılar Kapsamlarını görüntülemelidir

Azure DevOps koleksiyonunuz için uzantıları yüklerken, yüklemenin bir parçası olarak uzantının ihtiyaç duyduğu izinleri gözden geçirebilirsiniz. Ancak, yüklendikten sonra uzantı izinleri uzantı ayarlarında görünmez. Bu, yüklü uzantıları düzenli aralıklarla gözden geçirmesi gereken yöneticiler için bir zorluk teşkil etti. Şimdi, uzantı ayarlarını gözden geçirmenize ve tutmama konusunda bilinçli bir karar almanıza yardımcı olmak için uzantı ayarlarına uzantı izinlerini ekledik.

Market'e dağıtmak için kişisel erişim belirteçleri oluşturma

Boards

Teslim Planları sayfasındaki Son Erişilen sütun

Teslim Planları dizin sayfası, projeniz için tanımlanan planların listesini sağlar. Sıralama ölçütü: Ad, Oluşturan, Açıklama, Son yapılandırılan veya Sık Kullanılanlar. Bu güncelleştirmeyle, dizin sayfasına Son erişilen sütunu ekledik. Bu, bir Teslim Planının en son ne zaman açıldığını ve ne zaman bakıldığını gösterir. Sonuç olarak, artık kullanılmayan ve silinebilen planları tanımlamak kolaydır.

Teslim Planları sayfasındaki Son Erişilen alanı tanıtıma gif olarak ekleyin.

Teslim Planlarında tüm bağımlılıkları görselleştirme

Teslim Planları her zaman iş öğeleri arasındaki bağımlılıkları görme olanağı sağlamıştır. Bağımlılık çizgilerini tek tek görselleştirebilirsiniz. Bu sürümle, ekrandaki tüm iş öğelerindeki tüm bağımlılık satırlarını görmenizi sağlayarak deneyimi geliştirdik. Teslimat planınızın sağ üst kısmındaki bağımlılıklar iki durumlu düğmesine tıklamanız yeterlidir. Satırları kapatmak için yeniden tıklayın.

Teslim Planları sayfasındaki tüm bağımlılıkları tanıtım olarak görselleştirmek için Gif.

Yeni iş öğesi düzeltme sınırları

Son birkaç yıl içinde, otomatik araçlarla proje koleksiyonlarının on binlerce iş öğesi düzeltmesi ürettiğini gördük. Bu, iş öğesi formunda ve raporlama REST API'lerinde performans ve kullanılabilirlikle ilgili sorunlar oluşturur. Sorunu azaltmak için Azure DevOps Hizmeti'ne 10.000 iş öğesi düzeltme sınırı uyguladık. Sınır yalnızca REST API kullanılarak yapılan güncelleştirmeleri etkiler, iş öğesi formunu etkilemez.

Düzeltme sınırı ve otomatik araçlarınızda bu sınırın nasıl işleneceğini öğrenmek için buraya tıklayın.

Teslimat Planları ekip sınırını 15'ten 20'ye yükseltin

Teslim Planları, proje koleksiyonunuz genelinde birden çok kapsamı ve birden çok ekibi görüntülemenizi sağlar. Daha önce, farklı projelerden kapsamların ve ekiplerin bir karışımı da dahil olmak üzere 15 ekip kapsamı görüntüleyebilirsiniz. Bu sürümle birlikte maksimum sınırı 15'ten 20'ye çıkardık.

Raporlama İş Öğesi Bağlantıları Alma API'sinde bağlantı türleri için System.LinkTypes.Remote.Related doğru remoteUrl değerini döndüren bir hatayı düzeltildi. Bu düzeltmeden önce yanlış proje koleksiyonu adını ve eksik proje kimliğini döndürıyorduk.

Geçici sorgu REST uç noktası oluşturma

İş Öğesi Sorgu Dili (WIQL) deyimini sorgu dizesi aracılığıyla geçirerek kaydedilmemiş sorgular çalıştırmaya çalışan uzantı yazarlarının birkaç örneğini gördük. Sorgu dizesi uzunluğu için tarayıcı sınırlarına ulaşan büyük bir WIQL deyiminiz olmadığı sürece bu işlem düzgün çalışır. Bunu çözmek için araç yazarlarının geçici bir sorgu oluşturmasına izin veren yeni bir REST uç noktası oluşturduk. Sorgu dizesi aracılığıyla geçirmek için yanıttan kimliğin kullanılması bu sorunu ortadan kaldırır.

Geçici sorgular REST API belgeleri sayfasından daha fazla bilgi edinin.

Toplu silme API'si

Şu anda, iş öğelerini geri dönüşüm kutusundan kaldırmanın tek yolu bu REST API'yi kullanarak teker teker silmektir. Bu yavaş bir işlem olabilir ve herhangi bir kitle temizleme işlemi yapmaya çalışırken hız sınırlamasına tabidir. Yanıt olarak, iş öğelerini toplu olarak silmek ve/veya yok etmek için yeni bir REST API uç noktası ekledik.

@CurrentIteration Teslim Planlarındaki makro

Bu güncelleştirmeyle, Teslim Planları'ndaki @CurrentIteration stiller için makro desteği ekledik. Bu makro, planınızdaki her satırın ekip bağlamından geçerli yinelemeyi almanıza olanak verir.

Teslim Planlarında CurrentIteration makrosunda tanıtım yapmak için Gif.

Teslim Planlarında kart yeniden boyutlandırma mantığı

Özellikler ve Epic'leri takip ederken herkes hedef tarihi ve/veya başlangıç tarihini kullanmaz. Bazıları tarihlerin ve yineleme yolunun birleşimini kullanmayı tercih eder. Bu sürümde, nasıl kullanıldıklarına bağlı olarak yineleme yolunu ve tarih alanı birleşimlerini uygun şekilde ayarlamak için mantığı geliştirdik.

Örneğin, hedef tarih kullanılmıyorsa ve kartı yeniden boyutlandırırsanız, hedef tarihi güncelleştirmek yerine yeni yineleme yolu ayarlanır.

Tanıtım amaçlı açıklama kopyalama bağlantısına gif ekleyin.

Toplu güncelleştirme geliştirmeleri

İş öğesi toplu güncelleştirme API'sinin 7.1 sürümünde birkaç değişiklik yaptık. Bunlar küçük performans iyileştirmeleri ve kısmi hataların işlenmesini içerir. Başka bir deyişle, bir yama başarısız olursa ancak diğerleri başarısız olursa, diğerleri başarıyla tamamlanır.

Toplu güncelleştirme REST API'si hakkında daha fazla bilgi edinmek için buraya tıklayın.

Toplu silme API'si

İş öğelerini toplu olarak silmek ve/veya yok etmek için bu yeni REST API uç noktası artık genel kullanıma sunulmuştur. Daha fazla bilgi için buraya tıklayın.

Paylaşılabilir seçim listesi alanlarının düzenlenmesini engelleme

Özel alanlar işlemler arasında paylaşılır. Bu, işlem yöneticilerinin alana değer eklemesine veya alandan değer kaldırmasına izin vermemiz nedeniyle seçim listesi alanları için sorun oluşturabilir. Bunu yaparken, değişiklikler bu alanı kullanan her işlemde etkiler.

Bu sorunu çözmek için koleksiyon yöneticisinin bir alanın düzenlenmesini "kilitleme" özelliğini ekledik. Seçim listesi alanı kilitliyken, yerel işlem yöneticisi bu seçim listesinin değerlerini değiştiremez. Alanı yalnızca işlemden ekleyebilir veya kaldırabilirler.

Paylaşılabilir seçim listesi alanlarının tanıtım düzenlemesi için Gif.

Yeni açıklamaları kaydetme izni

Geliştirici topluluğunda yalnızca iş öğesi açıklamalarını kaydetme özelliği en önemli istektir. Bu özelliği uyguladığımızı size bildirmek için heyecanlıyız. Başlamak için en yaygın senaryoyu gözden geçirelim:

"Bazı kullanıcıların iş öğesi alanlarını düzenlemesini engellemek ama tartışmalara katkıda bulunmalarına izin vermek istiyorum."

Bunu başarmak için Proje Ayarları > Proje Yapılandırma > Alanı Yolu'na gitmeniz gerekir. Ardından istediğiniz alan yolunu seçin ve Güvenlik'e tıklayın.

Alan Yolu

Yeni "Bu düğümdeki iş öğesi açıklamalarını düzenle" iznine dikkat edin. Varsayılan olarak, izin Ayarlanmadı olarak ayarlanır. Yani, iş öğesi daha önce olduğu gibi davranacaktır. Bir grubun veya kullanıcıların açıklamaları kaydetmesine izin vermek için bu grubu/kullanıcıları seçin ve izni İzin Ver olarak değiştirin.

Yeni İzin

Kullanıcı bu alan yolunda iş öğesi formunu açtığında, açıklama ekleyebilir, ancak diğer alanlardan hiçbirini güncelleştiremez.

Paylaşılabilir seçim listesi alanlarının tanıtım düzenlemesi.

Bu özelliği bizim kadar sevdiğinizi umuyoruz. Her zaman olduğu gibi, geri bildiriminiz veya önerileriniz varsa lütfen bize bildirin.

Etkileşimli pano raporları

Boards hub'ında bulunan etkileşimli raporlara ürünün barındırılan sürümünde birkaç yıldır erişilebilir durumdadır. Bunlar eski Kümülatif Akış Diyagramı, Hız ve Sprint Burndown grafiklerinin yerini alır. Bu sürümle birlikte bunları kullanıma sunacağız.

Bu grafikleri görüntülemek için Kanban Panosu, Kapsam ve Sprintler sayfalarında Analiz sekmesi konumuna tıklayın.

Etkileşimli Raporlar

Repos

Dal oluşturucu için "İlkeleri düzenleme" izni kaldırılıyor

Daha önce yeni bir dal oluşturduğunuzda, bu daldaki ilkeleri düzenleme iznine sahipsiniz. Bu güncelleştirmeyle, depo için "İzin yönetimi" ayarı açık olsa bile varsayılan davranışı bu izni vermemek üzere değiştiriyoruz.

İzin yönetimi görüntüsü.

Güvenlik izni devralma veya grup üyeliği aracılığıyla açıkça (el ile veya REST API aracılığıyla) "İlkeleri düzenle" iznine sahip olmanız gerekir.

Pipelines

Klasik işlem hatlarında derleme erişim belirteci için varsayılan kapsam olarak ayarlanan geçerli proje

Azure Pipelines, çalışma zamanında Azure DevOps'taki diğer kaynaklara erişmek için iş erişim belirteçlerini kullanır. İş erişim belirteci, çalışma zamanındaki her iş için Azure Pipelines tarafından dinamik olarak oluşturulan bir güvenlik belirtecidir. Daha önce yeni bir klasik işlem hattı oluştururken erişim belirtecinin varsayılan değeri Project Collection olarak ayarlanmıştı. Bu güncelleştirmeyle, yeni bir klasik işlem hattı oluştururken iş yetkilendirme kapsamını varsayılan olarak geçerli projeye ayarlıyoruz.

İş erişim belirteçleri hakkında daha fazla ayrıntıyı Erişim depoları, yapıtlar ve diğer kaynaklar belgelerinde bulabilirsiniz.

Klasik derleme işlem hatlarında varsayılan erişim belirteçleri kapsamında değişiklik yapma

Klasik derleme işlem hatlarının güvenliğini artırmak için, yeni bir tane oluştururken derleme işi yetkilendirme kapsamı varsayılan olarak Project olur. Şimdiye kadar Proje Koleksiyonu'ymuş. İş erişim belirteçleri hakkında daha fazla bilgi edinin. Bu değişiklik mevcut işlem hatlarından hiçbirini etkilemez. Yalnızca bu noktadan sonra oluşturduğunuz yeni klasik derleme işlem hatlarını etkiler.

ServiceNow'un San Diego, Tokyo ve Utah sürümleri için Azure Pipelines desteği

Azure Pipelines,ServiceNow ile mevcut bir tümleştirmeye sahiptir. Tümleştirme, ServiceNow'daki bir uygulamaya ve Azure DevOps'taki bir uzantıya dayanır. Uygulamayı şimdi ServiceNow'un San Diego, Tokyo ve Utah sürümleriyle çalışacak şekilde güncelleştirdik. Bu tümleştirmenin çalıştığından emin olmak için ServiceNow mağazasından uygulamanın yeni sürümüne (4.215.2) yükseltin.

Daha fazla bilgi için ServiceNow Değişiklik Yönetimi ile Tümleştirme belgelerine bakın.

GitHub Enterprise tümleştirmesi için ara sunucu URL'lerini kullanma

Azure Pipelines, sürekli tümleştirme ve PR derlemeleri çalıştırmak için şirket içi GitHub Enterprise Servers ile tümleşir. Bazı durumlarda GitHub Enterprise Server bir güvenlik duvarının arkasındadır ve trafiğin bir ara sunucu üzerinden yönlendirilmesi gerekir. Bu senaryoyu desteklemek için Azure DevOps'taki GitHub Enterprise Server hizmet bağlantıları bir ara sunucu URL'si yapılandırmanıza olanak tanır. Daha önce Azure DevOps'tan gelen tüm trafik bu ara sunucu URL'si üzerinden yönlendirilmiyormuş. Bu güncelleştirmeyle, aşağıdaki trafiği Azure Pipelines'dan ara sunucu URL'sinden geçecek şekilde yönlendirdiğimizden emin olacağız:

  • Dalları alma
  • Çekme isteği bilgilerini alma
  • Rapor derleme durumu

Kapsayıcı Kayıt Defteri hizmeti bağlantıları artık Azure Yönetilen Kimlikleri kullanabilir

Azure Container Registry için Docker Registry hizmet bağlantıları oluştururken Sistem Tarafından Atanan Yönetilen Kimlik kullanabilirsiniz. Bu, şirket içinde barındırılan bir Azure Pipelines aracısı ile ilişkilendirilmiş yönetilen kimliği kullanarak Azure Container Registry'ye erişmenizi sağlayarak kimlik bilgilerini yönetme gereksinimini ortadan kaldırır.

Onaylarda Yapılan Değişiklikler için Yeni Docker Kayıt Defteri Hizmeti Bağlantısı

Not

Azure Container Registry'ye erişmek için kullanılan Yönetilen Kimlik için uygun Azure Rol Tabanlı Erişim Denetimi (RBAC) ataması gerekir; örneğin AcrPull veya AcrPush rolü.

Kubernetes Service Connection için oluşturulan otomatik belirteçler

Kubernetes 1.24 sürümünden bu yana, yeni bir Kubernetes Hizmet Bağlantısı oluşturulurken belirteçler artık otomatik olarak oluşturulmadı. Bu işlevi geri ekledik. Ancak AKS'ye erişirken Azure Hizmeti bağlantısını kullanmanız önerilir. Daha fazla bilgi edinmek için Kubernetes görevlerini kullanan AKS müşterileri için Hizmet Bağlantısı kılavuzu blog gönderisine bakın.

Kubernetes görevleri artık kubelogin'i destekliyor

kubelogin'i desteklemek için KuberentesManifest@1, HelmDeploy@0, Kubernetes@1 ve AzureFunctionOnKubernetes@1 görevlerini güncelleştirdik. Bu, Azure Active Directory tümleştirmesi ile yapılandırılmış Azure Kubernetes Service’i (AKS) hedeflemenizi sağlar.

Kubelogin, Barındırılan görüntülerde önceden yüklü değildir. Yukarıda belirtilen görevlerin kubelogin kullandığından emin olmak için, KubeloginInstaller@0 görevi ona bağlı olan görevin önüne ekleyerek yükleyin:

 - task: KubeloginInstaller@0

 - task: HelmDeploy@0
   # arguments do not need to be modified to use kubelogin

İşlem hattı izinlerinde deneyim geliştirmeleri

İzin sisteminin daha önce bir işlem hattının hizmet bağlantısı gibi korumalı bir kaynak kullanıp kullanmadığını anımsaması için işlem hattı izinlerini yönetme deneyimini geliştirdik.

Geçmişte, korumalı bir kaynak oluştururken "Tüm işlem hatlarına erişim izni ver" seçeneğini işaretlediyseniz, ancak sonra kaynağa erişimi kısıtladıysanız, işlem hattınızın kaynağı kullanmak için yeni bir yetkilendirmeye ihtiyacı vardı. Bu davranış, yeni yetkilendirmenin gerekmediği kaynağın daha sonraki açma ve kapatma erişimiyle tutarsızdı. Bu artık düzeltildi.

İşlem hattı yetkilendirmesini ve onaylarını ve denetimlerini yönetmek için yeni PAT Kapsamı

PAT belirtecini sızdırarak oluşan hasarı sınırlamak için adlı Pipeline Resourcesyeni bir PAT kapsamı ekledik. Hizmet bağlantısı gibi korumalı bir kaynak kullanarak işlem hattı yetkilendirmesini yönetirken veya bu kaynağın onaylarını ve denetimlerini yönetmek için bu PAT kapsamını kullanabilirsiniz.

İşlem Hatları REST API Güncelleştirmeleri

Aşağıdaki REST API çağrıları yeni PAT kapsamını aşağıdaki gibi destekler:

  • Onay güncelleştirme kapsamı destekler Pipeline Resources Use
  • Denetimleri Yönet kapsamı destekler Pipeline Resources Use and Manage
  • Kaynaklar için İşlem Hattı İzinlerini Güncelleştirme kapsamı destekler Pipeline Resources Use and Manage
  • Tanım Kaynaklarını Yetkilendirme kapsamı destekler Pipeline Resources Use and Manage
  • Proje Kaynaklarını yetkilendirme kapsamı destekler Pipeline Resources Use and Manage

Korumalı kaynakları kaynak yöneticilerine açmayı kısıtlama

Uygulamalarınızı güvenli bir şekilde oluşturup dağıtma beceriniz için kritik öneme sahip kaynakların güvenliğini artırmak için Azure Pipelines artık tüm işlem hatlarına bir kaynağa erişim açarken kaynak türü yönetici rolüne ihtiyaç duyuyor.

Örneğin, herhangi bir işlem hattının hizmet bağlantısı kullanmasına izin vermek için genel bir Hizmet Bağlantıları Yönetici rolü gereklidir.. Bu kısıtlama, korumalı kaynak oluştururken veya Güvenlik yapılandırmasını düzenlerken geçerlidir.

Ayrıca, bir hizmet bağlantısı oluştururken ve yeterli haklara sahip değilseniz, Tüm işlem hatlarına erişim izni ver seçeneği devre dışı bırakılır.

Hizmet BağlantılarıAyrıca, mevcut bir kaynağa erişimi açmaya çalışırken ve yeterli haklara sahip değilseniz, bu kaynak için erişimi açma yetkiniz yok iletisini alırsınız.

İşlem Hattı İzinleri

İşlem Hatları REST API'sinde Güvenlik geliştirmeleri

Azure DevOps'taki REST API'lerin çoğu kapsamlı PAT belirteçleri kullanır. Ancak, bazıları tam kapsamlı PAT belirteçleri gerektirir. Başka bir deyişle, bu API'lerden bazılarını kullanmak için 'Tam erişim' öğesini seçerek bir PAT belirteci oluşturmanız gerekir. Bu belirteçler herhangi bir REST API'yi çağırmak için kullanılabildiğinden güvenlik riski oluşturur. Her REST API'yi belirli bir kapsama ekleyerek tam kapsamlı belirteç gereksinimini ortadan kaldırmak için Azure DevOps genelinde iyileştirmeler yapıyoruz. Bu çabanın bir parçası olarak, bir kaynağın işlem hattı izinlerini güncelleştirmek için REST API artık belirli bir kapsam gerektirir. Kapsam, kullanım için yetkilendirilen kaynağın türüne bağlıdır:

  • Code (read, write, and manage) tür kaynakları için repository
  • Agent Pools (read, manage) veya Environment (read, manage) ve türüne queue sahip kaynaklar için agentpool
  • Secure Files (read, create, and manage) tür kaynakları için securefile
  • Variable Groups (read, create and manage) tür kaynakları için variablegroup
  • Service Endpoints (read, query and manage) tür kaynakları için endpoint
  • Environment (read, manage) tür kaynakları için environment

İşlem hattı izinlerini toplu olarak düzenlemek için tam kapsamlı bir PAT belirtecine ihtiyacınız olacaktır. Kaynaklar için İşlem Hattı izinlerini güncelleştirme hakkında daha fazla bilgi edinmek için İşlem Hattı İzinleri - Kaynaklar için İşlem Hattı İzinlerini Güncelleştirme belgelerine bakın.

Aracı havuzları için ayrıntılı erişim yönetimi

Aracı havuzları, işlem hatlarınızın çalıştığı makineleri belirtmenize ve yönetmenize olanak sağlar.

Daha önce özel bir aracı havuzu kullandıysanız, hangi işlem hatlarının erişebileceğini yönetmek kaba ayrıntılıydı. Tüm işlem hatlarının bunu kullanmasına izin verebilir veya her işlem hattının izin istemesini isteyebilirsiniz. Ne yazık ki, aracı havuzuna işlem hattı erişimi izni verdikten sonra işlem hatları kullanıcı arabirimini kullanarak iptal edebilirsiniz.

Azure Pipelines artık aracı havuzları için ayrıntılı bir erişim yönetimi sağlar. Bu deneyim, Hizmet Bağlantıları için işlem hattı izinlerini yönetmeye yönelik deneyime benzer.

Onaylarda Yapılan Değişiklikler için FabrikamFiber Aracı Havuzu

Tüm işlem hatlarına korumalı kaynaklara erişim verilmesini engelleme

Hizmet bağlantısı veya ortam gibi korumalı bir kaynak oluşturduğunuzda, Tüm işlem hatlarına erişim izni ver onay kutusunu seçebilirsiniz. Şimdiye kadar bu seçenek varsayılan olarak işaretlendi.

Bu işlem hatlarının yeni korumalı kaynakları kullanmasını kolaylaştırırken, bunun tersi de yanlışlıkla çok fazla işlem hattına kaynağa erişim hakkı verilmesini tercih ediyor olmasıdır.

Azure DevOps, varsayılan olarak güvenli bir seçeneği yükseltmek için artık onay kutusunu işaretsiz bırakıyor.

Tüm işlem hatlarına erişim izni verme varsayılan olarak kapalıdır

Kısa gizli diziler için maskelemeye devre dışı bırakma özelliği

Azure Pipelines günlüklerdeki gizli dizileri maskeler. Gizli diziler gizli dizi olarak işaretlenen değişkenler, Azure Key Vault'a bağlı değişken gruplarından değişkenler veya Hizmet Bağlantısı sağlayıcısı tarafından gizli dizi olarak işaretlenmiş bir Hizmet Bağlantısı öğeleri olabilir.

Gizli dizi değerinin tüm oluşumları maskelenir. '', '1', '2Dev' gibi kısa gizli dizilerin maskelenmesi, değerlerinin tahminini kolaylaştırır; örneğin bir tarihte: 'Jan 3, 202***'
Artık '' bir sır olduğu açık3. Böyle durumlarda gizli diziyi tamamen maskelememenizi tercih edebilirsiniz. Değeri gizli dizi olarak işaretlememek mümkün değilse (örneğin, değer Key Vault'tan alınır), düğmeyi AZP_IGNORE_SECRETS_SHORTER_THAN en fazla 4 değerine ayarlayabilirsiniz.

Düğüm çalıştırıcı indirme görevi

Node 6 görev çalıştırıcısını dışlayan aracı sürümlerini benimserken, zaman zaman daha yeni bir Node çalıştırıcısı kullanmak üzere güncelleştirilmemiş görevleri çalıştırmanız gerekebilir. Bu senaryo için Node End-of-Life runners'a bağımlı görevleri kullanmaya devam etmek için bir yöntem sunuyoruz. Bkz. Düğüm çalıştırıcı kılavuzu blog gönderisi.

Aşağıdaki görev Node 6 çalıştırıcısını tam zamanında yüklemek için bir yöntemdir, böylece eski bir görev yürütülebilir:

  steps:
  - task: NodeTaskRunnerInstaller@0
    inputs:
      runnerVersion: 6

TFX Düğümü çalıştırıcı doğrulaması güncelleştirildi

Görev yazarları uzantıları yayımlamak için uzantı paketleme aracını (TFX) kullanır. TFX, Node runner sürümlerinde doğrulama gerçekleştirecek şekilde güncelleştirildi. Bkz. Düğüm çalıştırıcı kılavuzu blog gönderisi.

Node 6 çalıştırıcısını kullanan görevleri içeren uzantılar şu uyarıyı görür:

Task <TaskName> is dependent on a task runner that is end-of-life and will be removed in the future. Authors should review Node upgrade guidance: https://aka.ms/node-runner-guidance.

İşlem Hattı aracılarında Node 6'nın el ile ön yükleme yönergeleri

Aracı akışını kullanıyorsanızpipeline-, aracıya Node 6 eklenmez. Bir Market görevinin hala Node 6'ya bağımlı olduğu ve aracının NodeTaskRunnerInstaller görevini kullanamadığı bazı durumlarda (ör. bağlantı kısıtlamaları nedeniyle), Node 6'yı bağımsız olarak önceden yüklemeniz gerekir. Bunu yapmak için Node 6 çalıştırıcısını el ile yükleme yönergelerine göz atın.

İşlem hattı görev değişiklik günlüğü

İşlem Hattı görevlerinde yapılan değişiklikleri artık bu değişiklik günlüğünde yayımlıyoruz. Bu, yerleşik İşlem Hattı görevlerinde yapılan değişikliklerin tam listesini içerir. Önceki değişiklikleri geriye dönük olarak yayımladık, dolayısıyla değişiklik günlüğü geçmişteki görev güncelleştirmelerinin kaydını da sunar.

Yayın görevleri Microsoft Graph API'sini kullanır

Yayın görevlerimizi Microsoft Graph API'sini kullanacak şekilde güncelleştirdik. Bu, AAD Graph API'sinin kullanımını görevlerimizden kaldırır.

Windows PowerShell görev performansı iyileştirmesi

İşlem hattında otomasyon tanımlamak için görevleri kullanabilirsiniz. Bu görevlerden biri, işlem hattınızda PowerShell betiklerini yürütmenize olanak tanıyan yardımcı program görevidir PowerShell@2 . Azure ortamını hedeflemek için PowerShell betiğini kullanmak için görevi kullanabilirsiniz AzurePowerShell@5 . İlerleme güncelleştirmelerini yazdırabilen bazı PowerShell komutları, örneğin Invoke-WebRequest, artık daha hızlı yürütülür. Bu komutların birçoğu betiğinizde varsa veya uzun süre çalışıyorsa geliştirme daha önemlidir. Bu güncelleştirmeyle, progressPreference ve görevlerinin PowerShell@2 özelliği artık varsayılan olarak olarak ayarlanır SilentlyContinue AzurePowerShell@5.

.NET 6 üzerinde İşlem Hatları Aracısı v3

İşlem Hattı aracısı çalışma zamanı olarak .NET 3.1 Core'un .NET 6'ya kullanılması için yükseltildi. Bu, Hem Apple Silicon hem de Windows Arm64 için yerel destek sağlar.

.NET 6'nın kullanılması aracı için sistem gereksinimlerini etkiler. Özellikle, şu İşletim Sistemleri için desteği bırakıyoruz: CentOS 6, Fedora 29-33, Linux Mint 17-18, Red Hat Enterprise Linux 6. Bkz. Aracı yazılımı sürüm 3'ün belgeleri.

Bu betik , desteklenmeyen işletim sistemlerine sahip aracıları kullanan işlem hatlarını tanımlamak için kullanılabilir.

Önemli

Yukarıdaki işletim sistemlerinden herhangi birinde çalışan aracıların .NET 6 tabanlı aracıyı kullanıma sunduğumuzda artık güncelleştirilmeyecek veya başarısız olacağını unutmayın.

Aracı VM uzantısında aracı sürümünü belirtme

Azure VM'leri, BIR VM Uzantısı kullanılarak Dağıtım Gruplarına eklenebilir. VM uzantısı isteğe bağlı olarak yüklenecek istenen aracı sürümünü belirtecek şekilde güncelleştirildi:

    "properties": {
      ...
      "settings": {
        ...
        "AgentMajorVersion": "auto|2|3",
        ...
      },
      ...
     }

Klasik işlem hatlarının oluşturulmasını denetlemek için yeni geçişler

Azure DevOps artık klasik derleme işlem hatlarının, klasik yayın işlem hatlarının, görev gruplarının ve dağıtım gruplarının oluşturulmasını devre dışı bırakarak proje koleksiyonunuzun yalnızca YAML işlem hatlarını kullandığından emin olmanıza olanak tanır. Mevcut klasik işlem hatlarınız çalışmaya devam eder ve bunları düzenleyebilirsiniz, ancak yenilerini oluşturamazsınız.

Azure DevOps artık klasik derleme işlem hatlarının, klasik yayın işlem hatlarının, görev gruplarının ve dağıtım gruplarının oluşturulmasını devre dışı bırakarak kuruluşunuzun yalnızca YAML işlem hatlarını kullandığından emin olmanıza olanak tanır. Mevcut klasik işlem hatlarınız çalışmaya devam eder ve bunları düzenleyebilirsiniz, ancak yenilerini oluşturamazsınız.

İlgili geçişleri açarak klasik işlem hatlarının proje koleksiyonu düzeyinde veya proje düzeyinde oluşturulmasını devre dışı bırakabilirsiniz. Geçişler Proje / Proje Ayarları - İşlem Hatları ->> Ayarlar'da bulunabilir. biri klasik derleme işlem hatları, diğeri klasik yayın işlem hatları, dağıtım grupları ve görev grupları için iki geçiş vardır.

Klasik işlem hatlarının oluşturulmasını devre dışı bırakma

Geçiş durumu varsayılan olarak kapalıdır ve durumu değiştirmek için yönetici haklarına ihtiyacınız olacaktır. İki durumlu düğme kuruluş düzeyinde açıksa, devre dışı bırakma tüm projeler için zorlanır. Aksi takdirde, her proje devre dışı bırakmanın zorunlu kılınıp uygulanmayacağını seçebilir.

Klasik işlem hatlarının oluşturulması devre dışı bırakıldığında klasik işlem hatları, görev grupları ve dağıtım grupları oluşturmayla ilgili REST API'leri başarısız olur. YAML işlem hatları oluşturan REST API'leri çalışır.

"Çalışma aşaması durumu değiştirildi" hizmet kancası olayı güncelleştirmeleri

Hizmet kancaları, Azure DevOps'taki projenizde olaylar gerçekleştiğinde diğer hizmetlerde görevleri çalıştırmanıza olanak tanır. Çalıştırma aşaması durumu bu olaylardan biridir. Çalıştırma aşaması durumu değiştirildi olayı, işlem hattının adı da dahil olmak üzere çalıştırma hakkında bilgi içermelidir. Daha önce, yalnızca çalıştırmanın kimliği ve adı hakkındaki bilgileri içeriyor. Bu güncelleştirmeyle, eksik bilgileri içerecek şekilde olayda değişiklikler yaptık.

İşlem hattı çalıştırması için son işleme iletisini göstermeyi devre dışı bırakma

Daha önce işlem hattının çalıştırmasını görüntülerken son işleme iletisini göstermek için kullanılan İşlem Hatları kullanıcı arabirimi.

Son işleme iletisi örneği

Bu ileti, örneğin YAML işlem hattınızın kodu, oluşturmakta olduğu kodun bulunduğu depodan farklı bir depoda bulunduğunda kafa karıştırıcı olabilir. her işlem hattı çalıştırmasının başlığına en son işleme iletisini eklemeyi etkinleştirmek/devre dışı bırakmak için bir yol istediğimizi Geliştirici Topluluğu geri bildiriminizi aldık.

Bu güncelleştirmeyle, tam olarak bunu yapmanızı sağlayan adlı appendCommitMessageToRunNameyeni bir YAML özelliği ekledik. Varsayılan olarak özelliği olarak trueayarlanır. olarak falseayarladığınızda işlem hattı çalıştırması yalnızca öğesini BuildNumbergörüntüler.

Derleme numarasıyla işlem hattı çalıştırma örneği

Son işleme iletisiyle işlem hattı çalıştırma örneği

En fazla 4 MB Azure Resource Manager (ARM) şablonu boyutuyla uyumlu hale getirmek için azure işlem hattı sınırları artırıldı.

Azure altyapısı oluşturmak için Azure Resource Manager Şablon Dağıtımı görevini kullanabilirsiniz. Geri bildiriminize yanıt olarak Azure Pipelines tümleştirme sınırını 2 MB'a 4 MB'a çıkardık. Bu, büyük şablonların tümleştirilmesi sırasında boyut kısıtlamalarını çözümlemek için ARM Şablonları en büyük boyutu olan 4 MB ile uyumlu olacaktır.

İşlem hattı çalıştırma durumuna genel bakış simgesi

Bu sürümle, işlem hattı çalıştırmasının genel durumunu öğrenmeyi kolaylaştırıyoruz.

Birçok aşaması olan YAML işlem hatları için, işlem hattı çalıştırmasının durumunu, yani hala çalışıyor mu yoksa bitti mi bilmek zor olurdu. Tamamlanırsa, genel durum nedir: başarılı, başarısız veya iptal edildi. Bu sorunu, çalıştırma durumuna genel bakış simgesi ekleyerek düzeltildi.

İşlem hattı çalıştırma durumuna genel bakış simgesi

İşlem hattı aşamaları yan paneli

YAML işlem hatlarının onlarca aşaması olabilir ve bunların tümü ekranınıza sığmaz. İşlem hattı çalıştırmasına genel bakış simgesi çalıştırmanızın genel durumunu bildirirken, örneğin hangi aşamanın başarısız olduğunu veya hangi aşamanın hala çalıştığını bilmek yine de zordur.

Bu sürümde, tüm aşamalarınızın durumunu hızla görmenize olanak tanıyan bir işlem hattı aşamaları yan paneli ekledik. Ardından bir aşamaya tıklayıp doğrudan günlüklerine ulaşabilirsiniz.

İşlem Hatlarını Güncelleştirme

İşlem hatları kullanıcı arabirimi güncelleştirmeleri

Yan panelde aşamaları arama

Aradığınız aşamaları aşamalar yan panelinde bulmayı kolaylaştırdık. Artık, çalışma aşamaları veya el ile müdahale gerektiren aşamalar gibi durumlarına göre aşamaları hızla filtreleyebilirsiniz. Aşamaları adına göre de arayabilirsiniz.

AZ İşlem Hatlarını Güncelleştirme

Hızlı işlemleri hazırlama

İşlem hattının Çalıştırmalar ekranı, tüm çalıştırma aşamalarına hızlı erişim sağlar. Bu sürümde, her aşama için eylem gerçekleştirebileceğiniz aşamalar paneli ekledik. Örneğin, başarısız işleri kolayca yeniden çalıştırabilir veya tüm aşamayı yeniden çalıştırabilirsiniz. Panel, aşağıdaki ekran görüntüsünde görebileceğiniz gibi tüm aşamalar kullanıcı arabirimine sığmadığında kullanılabilir.

Çok fazla aşama içeren işlem hattının ekran görüntüsü. Aşamalar sütununda '+' işaretine tıkladığınızda aşamalar paneli gösterilir ve ardından aşama eylemleri gerçekleştirebilirsiniz.

Aşamalar panelinin ekran görüntüsü.

Kullanıcı deneyimi geliştirmelerini denetler

Denetim günlüklerini okumayı kolaylaştırıyoruz. Denetim günlükleri, dağıtımınızın başarısı için kritik bilgiler sağlar. Bir iş öğesi biletini kapatmayı unuttuğunu veya ServiceNow'da bir bileti güncelleştirmeniz gerektiğini söyleyebilirler. Daha önce, bu tür kritik bilgiler sağlayan bir denetimin zor olduğunu bilmek.

İşlem hattı çalıştırma ayrıntıları sayfasında en son denetim günlüğü gösterilir. Bu yalnızca önerilen kullanımımızı izleyen denetimler içindir.

En son denetim günlüğünü gösteren resim.Yanlışlıkla onaylanan Onayları önlemek için Azure DevOps, onaylayanlara yönergeler'i onaylayanlara gösterir ve işlem hattı çalıştırmasının ayrıntı sayfasındaki yan panelde denetler.

İşlem hattı gözden geçirme görüntüsü bekleniyor.

Denetimi devre dışı bırakma

Hata ayıklama denetimlerini daha az sıkıcı hale getirdik. Bazen Azure İşlevi Çağırma veya REST API'yi Çağırma denetimi düzgün çalışmaz ve bunu düzeltmeniz gerekir. Daha önce, bir dağıtımı yanlışlıkla engellemelerini önlemek için bu tür denetimleri silmeniz gerekiyordu. Denetimi düzelttikten sonra, gerekli tüm üst bilgilerin ayarlandığından veya sorgu parametrelerinin doğru olduğundan emin olarak denetimi yeniden eklemeniz ve doğru şekilde yapılandırmanız gerekiyordu. Bu yorucu.

Şimdi, bir denetimi devre dışı bırakabilirsiniz. Devre dışı bırakılan denetim, sonraki denetim paketi değerlendirmelerinde çalışmaz.

Denetim görüntüsünü devre dışı bırakın. Hatalı denetimi düzeltdikten sonra yalnızca etkinleştirebilirsiniz.

Denetim görüntüsünü etkinleştirin.

İşlem Hatlarında Kullanılan Kaynaklar ve Şablon Parametreleri Rest API Çalıştırıyor

Genişletilmiş İşlem Hatları Çalıştırmaları REST API'si artık bir işlem hattı çalıştırması tarafından kullanılan daha fazla yapıt türünü ve bu çalıştırmayı tetiklemede kullanılan parametreleri döndürür. İŞLEM hattı çalıştırmasında kullanılan ve pipeline kaynaklarını ve şablon parametrelerini döndürmek container için API'yi geliştirdik. Artık, örneğin, bir işlem hattı tarafından kullanılan depoları, kapsayıcıları ve diğer işlem hattı çalıştırmalarını değerlendiren uyumluluk denetimleri yazabilirsiniz.

Yeni yanıt gövdesinin bir örneği aşağıda verilmiştir.

"resources":
{
    "repositories":
    {
        "self":
        {
            "repository":
            {
                "id": "e5c55144-277b-49e3-9905-2dc162e3f663",
                "type": "azureReposGit"
            },
            "refName": "refs/heads/main",
            "version": "44153346ecdbbf66c68c20fadf27f53ea1394db7"
        },
        "MyFirstProject":
        {
            "repository":
            {
                "id": "e5c55144-277b-49e3-9905-2dc162e3f663",
                "type": "azureReposGit"
            },
            "refName": "refs/heads/main",
            "version": "44153346ecdbbf66c68c20fadf27f53ea1394db7"
        }
    },
    "pipelines":
    {
        "SourcePipelineResource":
        {
            "pipeline":
            {
                "url": "https://dev.azure.com/fabrikam/20317ad0-ae49-4588-ae92-6263028b4d83/_apis/pipelines/51?revision=3",
                "id": 51,
                "revision": 3,
                "name": "SourcePipeline",
                "folder": "\\source"
            },
            "version": "20220801.1"
        }
    },
    "containers":
    {
        "windowscontainer":
        {
            "container":
            {
                "environment":
                {
                    "Test": "test"
                },
                "mapDockerSocket": false,
                "image": "mcr.microsoft.com/windows/servercore:ltsc2019",
                "options": "-e 'another_test=tst'",
                "volumes":
                [
                    "C:\\Users\\fabrikamuser\\mount-fabrikam:c:\\mount-fabrikam"
                ],
                "ports":
                [
                    "8080:80",
                    "6379"
                ]
            }
        }
    }
},
"templateParameters":
{
    "includeTemplateSteps": "True"
}

YAML düzenleyicisinde Genel Kullanılabilirlik şablonu desteği

Şablonlar YAML işlem hatlarında yaygın olarak kullanılan bir özelliktir. İşlem hattı parçacıklarını paylaşmanın kolay bir yoludur. Ayrıca, işlem hattınız aracılığıyla güvenlik ve idareyi doğrulama veya zorunlu kılma konusunda da güçlü bir mekanizmadır.

Azure Pipelines, işlem hattınızı düzenlerken yararlı olabilecek bir YAML düzenleyicisini destekler. Ancak düzenleyici şimdiye kadar şablonları desteklemedi. YAML işlem hatlarının yazarları şablon kullanırken intellisense aracılığıyla yardım alamadı. Şablon yazarları YAML düzenleyicisini kullanamadı. Bu sürümde, YAML düzenleyicisinde şablonlar için destek ekliyoruz.

Ana Azure Pipelines YAML dosyanızı düzenlerken bir şablon ekleyebilir veya genişletebilirsiniz. Şablonunuzun adını yazdığınızda, şablonunuzu doğrulamanız istenir. Doğrulandıktan sonra YAML düzenleyicisi, giriş parametreleri de dahil olmak üzere şablonun şemasını anlar.

İşlem Hatları REST API Güncelleştirmeleri

Doğrulama sonrasında şablona gitmeyi seçebilirsiniz. YAML düzenleyicisinin tüm özelliklerini kullanarak şablonda değişiklik yapabilirsiniz.

Bilinen sınırlamalar vardır:

  • Şablonda ana YAML dosyasında giriş olarak sağlanmayan gerekli parametreler varsa doğrulama başarısız olur ve bu girişleri sağlamanız istenir. İdeal bir deneyimde doğrulama engellenmemeli ve intellisense kullanarak giriş parametrelerini doldurabilmeniz gerekir.
  • Düzenleyiciden yeni şablon oluşturamazsınız. Yalnızca mevcut şablonları kullanabilir veya düzenleyebilirsiniz.

Yeni önceden tanımlanmış sistem değişkeni

Değeri derleme işlem hattı tanımının klasör yolu olan adlı Build.DefinitionFolderPath, önceden tanımlanmış yeni bir sistem değişkeni kullanıma sunulmuştur. değişkeni hem YAML hem de klasik derleme işlem hatlarında kullanılabilir.

Örneğin, işlem hattınız Azure Pipelines klasöründe barındırılıyorsa FabrikamFiber\Chat değeri Build.DefinitionFolderPath olur FabrikamFiber\Chat.

YAML şablon ifadelerinde dize bölme işlevi için destek ekleme

YAML işlem hatları, bir listenin değeri veya nesnenin özelliği arasında each döngü yapma gibi kod yinelemesini azaltmak için kullanışlı yollar sağlar.

Bazen, yinelenmek üzere öğeler kümesi bir dize olarak temsil edilir. Örneğin, dağıtılacak ortamların listesi dizesi integration1, integration2tarafından tanımlandığında.

Geliştirici Topluluğu geri bildirimlerinizi dinlediğimizde YAML şablon ifadelerinde bir dize split işlevi istediğinizi duyduk.

Artık bir dizeyi ve alt dizelerini yineleyebilirsiniz split each .

variables:
  environments: integration1, integration2

jobs:
  - job: Deploy
    steps:
    - ${{ each env in split(variables.environments, ', ') }}:
      - script: ./deploy.sh -e ${{ env }}
      - script: ./runTest.sh -e ${{ env }}

Depo Kaynak Tanımında Şablon İfadeleri

YAML işlem hattındaki bir repository kaynağın ref özelliğini tanımlarken şablon ifadeleri için destek ekledik. Bu, Geliştirici Topluluğu tarafından çok istenen bir özellikti.

İşlem hattınızın aynı depo kaynağının farklı dallarını kullanıma almasını istediğiniz kullanım örnekleri vardır.

Örneğin, kendi deposunu oluşturan bir işlem hattınız olduğunu ve bunun için bir kaynak deposundan kitaplığı kullanıma alması gerektiğini varsayalım. Ayrıca işlem hattınızın kendi kullandığı kitaplık dalını kullanıma almalarını istediğinizi varsayalım. Örneğin, işlem hattınız dalda main çalışıyorsa kitaplık deposunun main dalını kullanıma almalıdır. İşlem hatları dalda dev çalışıyorsa kitaplık dalını dev kullanıma almalıdır.

Bugüne kadar kullanıma alınacak dalı açıkça belirtmeniz ve dal her değiştiğinde işlem hattı kodunu değiştirmeniz gerekiyordu.

Artık bir depo kaynağının dalını seçmek için şablon ifadelerini kullanabilirsiniz. İşlem hattınızın ana olmayan dalları için kullanılacak aşağıdaki YAML kodu örneğine bakın:

resources:
  repositories:
    - repository: library
      type: git
      name: FabrikamLibrary
      ref: ${{ variables['Build.SourceBranch'] }}

steps:
- checkout: library
- script: echo ./build.sh
- script: echo ./test.sh

İşlem hattını çalıştırdığınızda deponun kullanıma alınacağını dalını library belirtebilirsiniz.

Derleme kuyruğu zamanında genişletecek şablonun sürümünü belirtme

Şablonlar , kod çoğaltmayı azaltmanın ve işlem hatlarınızın güvenliğini geliştirmenin harika bir yolunu temsil eder.

Popüler kullanım örneklerinden biri, şablonları kendi depolarında depolamaktır. Bu, bir şablon ile onu genişleten işlem hatları arasındaki bağlamayı azaltır ve şablonu ve işlem hatlarını bağımsız olarak geliştirmeyi kolaylaştırır.

Bir adım listesinin yürütülmesini izlemek için bir şablonun kullanıldığı aşağıdaki örneği göz önünde bulundurun. Şablon kodu depoda Templates bulunur.

# template.yml in repository Templates
parameters:
- name: steps
  type: stepList
  default: []

jobs:
- job:
  steps:
  - script: ./startMonitoring.sh
  - ${{ parameters.steps }}
  - script: ./stopMonitoring.sh

Depoda FabrikamFiberbulunan bu şablonu genişleten bir YAML işlem hattınız olduğunu varsayalım. Bugüne kadar, depoyu şablon kaynağı olarak kullanırken depo kaynağının templates özelliğini dinamik olarak belirtmek ref mümkün değildi. Bu, işlem hattınızın kodunu değiştirmek zorunda kaldığınız anlamına geliyordu: Farklı bir daldan şablon genişletme İşlem hattınızla aynı dal adından bir şablonu genişletme( işlem hattınızı çalıştırdığınız daldan bağımsız olarak)

Depo kaynak tanımında şablon ifadelerinin kullanıma sunulmasıyla işlem hattınızı aşağıdaki gibi yazabilirsiniz:

resources:
  repositories:
    - repository: templates
      type: git
      name: Templates
      ref: ${{ variables['Build.SourceBranch'] }}

extends:
  template: template.yml@templates
  parameters:
    steps:
      - script: echo ./build.sh
      - script: echo ./test.sh

Bunu yaptığınızda işlem hattınız şablonu işlem hattının çalıştığı dalla aynı dalda genişletir, böylece işlem hattınızın ve şablonunuzun dallarının her zaman eşleştiğinden emin olabilirsiniz. Yani işlem hattınızı bir dalda devçalıştırırsanız, deponun dalında dev templates dosya tarafından template.yml belirtilen şablonu genişletir.

Ya da aşağıdaki YAML kodunu yazarak derleme kuyruğu zamanında hangi şablon depo dalını kullanacağınızı seçebilirsiniz.

parameters:
  - name: branch
    default: main

resources:
  repositories:
    - repository: templates
      type: git
      name: Templates
      ref: ${{ parameters.branch }}

extends:
  template: template.yml@templates
  parameters:
    steps:
      - script: ./build.sh
      - script: ./test.sh

Artık daldaki main işlem hattınızın bir çalışmada bir şablonu daldan dev genişletmesini ve başka bir çalıştırmada işlem hattınızın kodunu değiştirmeden bir şablonu daldan main genişletmesini sağlayabilirsiniz.

Depo kaynağının ref özelliği için bir şablon ifadesi belirtirken önceden tanımlanmış değişkenleri kullanabilir parameters ve sistem oluşturabilirsiniz, ancak YAML veya pipelines UI tanımlı değişkenleri kullanamazsınız.

Kapsayıcı Kaynak Tanımında Şablon İfadeleri

YAML işlem hattındaki bir container kaynağın endpoint, volumes, portsve options özelliklerini tanımlarken şablon ifadeleri için destek ekledik. Bu, Geliştirici Topluluğu tarafından çok istenen bir özellikti.

Artık YAML işlem hatlarını aşağıdaki gibi yazabilirsiniz.

parameters:
  - name: endpointName    
    default: AzDOACR
    type: string

resources:
  containers:
    - container: linux
      endpoint: ${{ parameters.endpointName }}
      image: fabrikamfiber.azurecr.io/ubuntu:latest

jobs:
- job:
  container: linux
  steps:
  - task: CmdLine@2
    inputs:
      script: 'echo Hello world'

şablon ifadelerinizde ve variables. kullanabilirsinizparameters.. Değişkenler için yalnızca YAML dosyasında tanımlananları kullanabilirsiniz, ancak İşlem Hatları kullanıcı arabiriminde tanımlananları kullanamazsınız. Örneğin aracı günlük komutlarını kullanarak değişkeni yeniden tanımlarsanız herhangi bir etkisi olmaz.

Zamanlanmış derleme geliştirmeleri

İşlem hattının zamanlama bilgilerinin bozulmasına ve işlem hattının yüklenmemesi sorunu düzeltildi. Örneğin, dalın adı belirli sayıda karakteri aştığında buna neden oldu.

İşlem hatlarını yükleyemediğinde geliştirilmiş hata iletisi

Azure Pipelines, işlem hattınızın nasıl başlayacağını yapılandırmak için çeşitli tetikleyici türleri sağlar. İşlem hattını çalıştırmanın bir yolu zamanlanmış tetikleyicileri kullanmaktır. Bazen, bir işlem hattının Zamanlanmış Çalıştırma bilgileri bozulur ve yükün başarısız olmasına neden olabilir. Daha önce, işlem hattının bulunamadığını iddia eden yanıltıcı bir hata iletisi görüntülüyorduk. Bu güncelleştirmeyle bu sorunu çözdük ve bilgilendirici bir hata iletisi döndüreceğiz. Bundan sonra şuna benzer bir ileti alırsınız: İşlem hattı yüklenemediğinde derleme zamanlaması verileri bozulur .

Git deposunu getirirken etiketleri eşitlemeyin

Kullanıma alma görevi , Git deposunun içeriğini getirirken seçeneğini kullanır --tags . Bu, sunucunun hem tüm etiketleri hem de bu etiketler tarafından işaret edilen tüm nesneleri getirmesine neden olur. Bu, özellikle de çok sayıda etiket içeren büyük bir deponuz varsa, işlem hattında görevi çalıştırma süresini artırır. Ayrıca, kullanıma alma görevi, sığ getirme seçeneğini etkinleştirdiğinizde bile etiketleri eşitler ve böylece amacını yenebilir. Git deposundan getirilen veya çekilen veri miktarını azaltmak için, şimdi etiketleri eşitleme davranışını denetlemek için göreve yeni bir seçenek ekledik. Bu seçenek hem klasik hem de YAML işlem hatlarında kullanılabilir.

Bu davranış YAML dosyasından veya kullanıcı arabiriminden denetlenebilir.

Etiketleri YAML dosyası aracılığıyla eşitlemeyi geri çevirmek için, öğesini kullanıma alma adımına ekleyin fetchTags: false . fetchTags Seçenek belirtilmediğinde, kullanılanla fetchTags: true aynıdır.

steps:
- checkout: self  # self represents the repo where the initial Pipelines YAML file was found
  clean: boolean  # whether to fetch clean each time
  fetchTags: boolean # whether to sync the tags
  fetchDepth: number  # the depth of commits to ask Git to fetch
  lfs: boolean  # whether to download Git-LFS files
  submodules: boolean | recursive  # set to 'true' for a single level of submodules or 'recursive' to get submodules of submodules
  path: string  # path to check out source code, relative to the agent's build directory (e.g. \_work\1)
  persistCredentials: boolean  # set to 'true' to leave the OAuth token in the Git config after the initial fetch

Mevcut YAML işlem hatlarının davranışını değiştirmek istiyorsanız, YAML dosyasını güncelleştirmek yerine kullanıcı arabiriminde bu seçeneği ayarlamak daha kullanışlı olabilir. Kullanıcı arabirimine gitmek için işlem hattının YAML düzenleyicisini açın, Tetikleyiciler'i, ardından İşlem'i ve ardından Kullanıma Alma adımını seçin.

Bu ayarı hem YAML dosyasında hem de kullanıcı arabiriminde belirtirseniz, YAML dosyasında belirtilen değer öncelikli olur.

Oluşturduğunuz tüm yeni işlem hatları (YAML veya Klasik) için etiketler varsayılan olarak eşitlenir. Bu seçenek mevcut işlem hatlarının davranışını değiştirmez. Yukarıda açıklandığı gibi seçeneği açıkça değiştirmediğiniz sürece etiketler bu işlem hatlarında eşitlenir.

Artifacts

Güncelleştirilmiş varsayılan akış izinleri

Proje Koleksiyonu Derleme Hizmeti hesapları artık geçerli Katkıda Bulunan rolü yerine yeni bir proje koleksiyonu kapsamlı Azure Artifacts akışı oluşturulduğunda varsayılan olarak Ortak Çalışan rolüne sahip olacaktır.

Daha önce, akışın bir kopyasına sahipseniz yukarı akış paketlerini görebiliyordu. Sorun şu ki, yukarı akışta bulunan ve henüz akışa kaydedilmemiş paketleri arayamadınız. Artık yeni akış kullanıcı arabirimiyle kullanılabilir yukarı akış paketlerini arayabilirsiniz.

Azure Artifacts artık yukarı akış kaynaklarınızdaki paketleri aramanızı ve paket sürümlerini akışınıza kaydetmenizi sağlayan bir kullanıcı arabirimi sağlar. Bu, Microsoft'un ürünlerimizi ve hizmetlerimizi geliştirme hedefiyle aynı hizaya geliyor.

Raporlama

Sorgu Sonuçları Pencere Öğesinde Üst Öğeyi Göster

Sorgu Sonuçları Pencere Öğesi artık üst öğe adını ve bu üst öğeye doğrudan bir bağlantıyı destekliyor.

Market'e dağıtmak için kişisel erişim belirteçleri oluşturma

Panoyu Kopyala

Bu sürümle Birlikte Panoyu Kopyala'yı da dahil ediyoruz.

Panoyu kopyala resmi

Panolara Son Erişim Tarihi ve Değiştirme Tarihi

Ekiplerin çeşitli panolar oluşturmasına izin vermenin zorluklarından biri, eski ve kullanılmayan panoların yönetilmesi ve temizlenmesidir. Bir panonun en son ne zaman ziyaret edildiği veya değiştirildiğini bilmek, hangilerinin kaldırılabileceğini anlamanın önemli bir parçasıdır. Bu sürümde Panolar dizin sayfasına iki yeni sütun eklemiş olduk. Son Erişim Tarihi , panonun en son ziyaret edildiği tarihi izler. Değiştiren, panonun en son ne zaman ve kim tarafından düzenlendiğini izler.

Değiştiren bilgileri pano sayfasının kendisinde de görüntülenir.

Pano Önizlemesi

Bu yeni alanların, proje yöneticilerinin panoların kaldırılması veya kaldırılmaması durumunda eğitilmiş bir karar vermeleri için etkinlik düzeyini anlamasına yardımcı olacağını umuyoruz.

Analiz Görünümleri kullanıma sunuldu

Analiz Görünümleri özelliği, ürünün barındırılan sürümünde uzun bir süre önizleme durumundadır. Bu sürümle birlikte, bu özelliğin artık tüm proje koleksiyonları tarafından kullanılabildiğini duyurmaktan mutluluk duyuyoruz.

Gezintide Analiz görünümleri Genel Bakış sekmesinden Panolar sekmesine taşındı.

Panolar gezintisinde analiz görünümü.

Analiz görünümü, Analytics verilerini temel alan bir Power BI raporu için filtre ölçütlerini belirtmek için basitleştirilmiş bir yol sağlar. Analiz Görünümlerini bilmiyorsanız, sizi yakalamaya yönelik bazı belgeler aşağıdadır:

Birden çok depo için Çekme İsteği pencere öğesi artık kullanılabilir

Birden çok depo için Çekme İsteği pencere öğesinin Azure DevOps Server 2022.1'de kullanılabilir olduğunu duyurmaktan heyecan duyuyoruz. Bu yeni pencere öğesiyle, 10'a kadar farklı depodan gelen çekme isteklerini tek ve kolay bir listede zahmetsizce görüntüleyebilir ve çekme isteklerinizin her zamankinden daha kolay bir şekilde takip edilebilir.

Ga'ya birden çok depo pencere öğesi

Topluluk öneri bileti

Burndown ve burnup grafiklerinde tamamlandı olarak çözümlenen giriş

Grafiklerde tamamlanan çözümlenmiş öğeler de dahil olmak üzere ekip ilerleme durumunu doğru yansıtmanın önemini anlıyoruz. Basit bir geçiş seçeneğiyle, artık çözümlenen öğeleri tamamlandı olarak görüntülemeyi seçerek ekibin yanık durumunun gerçek bir yansımasını sağlayabilirsiniz. Bu geliştirme, ekiplerin gerçek ilerlemeye göre bilinçli kararlar almalarını sağlayarak daha doğru izleme ve planlama olanağı sağlar. Raporlama'daki güncelleştirilmiş burndown ve burnup grafikleriyle gelişmiş saydamlık ve daha iyi içgörüler elde edin.

Açılan ve yakılan grafiklerde tamamlandı olarak çözümlenen tanıtım amaçlı gif.

Wiki

Wiki sayfalarında ek diyagram türleri desteği

Wiki sayfalarında kullanılan denizkızı grafiklerinin sürümünü 8.13.9 sürümüne yükselttik. Bu yükseltmeyle artık Azure DevOps wiki sayfalarınıza aşağıdaki diyagramları ve görselleştirmeleri ekleyebilirsiniz:

  • Akış Çizelgesi
  • Sıralı diyagramlar
  • Gantt grafikleri
  • Pasta grafikler
  • Gereksinim diyagramları
  • Durum diyagramları
  • Kullanıcı Yolculuğu

Varlık İlişkisi ve Git Graph gibi deneysel modda olan diyagramlar dahil değildir. Yeni özellikler hakkında daha fazla bilgi için lütfen deniz kızı sürüm notları bölümüne bakın.


Geri bildirim

Fikrinizi öğrenmek isteriz! Bir sorunu bildirebilir veya bir fikir sağlayabilir, Geliştirici Topluluğu aracılığıyla izleyebilir ve Stack Overflow hakkında öneriler alabilirsiniz.


Sayfanın Başı