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:
- 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.
- 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=wagon
kullanmaya 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=wagon
kullanmaya 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=wagon
kullanmaya 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ı:
- Tüm Genel REST API'leri ayrıntılı PAT kapsamlarını destekler
- Teslim Planları sayfasındaki Son Erişilen sütun
- Teslim Planlarında tüm bağımlılıkları görselleştirme
- Teslim Planlarında makro @CurrentIteration
- Klasik işlem hatlarında derleme erişim belirteci için varsayılan kapsam olarak ayarlanan geçerli proje
- Sorgu Sonuçları Pencere Öğesinde Üst Öğeyi Göster
- Panoyu Kopyala
- Wiki sayfalarında ek diyagram türleri desteği
- Kapsayıcı Kayıt Defteri hizmeti bağlantıları artık Azure Yönetilen Kimlikleri kullanabilir
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.
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ı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.
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.
İş Öğesi Bağlantılarını Alma API'sini Raporlama hatası düzeltildi
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 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.
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.
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.
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.
Kullanıcı bu alan yolunda iş öğesi formunu açtığında, açıklama ekleyebilir, ancak diğer alanlardan hiçbirini güncelleştiremez.
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.
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.
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.
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 Resources
yeni 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.
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.
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 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çinrepository
Agent Pools (read, manage)
veyaEnvironment (read, manage)
ve türünequeue
sahip kaynaklar içinagentpool
Secure Files (read, create, and manage)
tür kaynakları içinsecurefile
Variable Groups (read, create and manage)
tür kaynakları içinvariablegroup
Service Endpoints (read, query and manage)
tür kaynakları içinendpoint
Environment (read, manage)
tür kaynakları içinenvironment
İş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.
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.
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
', '2
Dev
' 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.
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.
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ı appendCommitMessageToRunName
yeni bir YAML özelliği ekledik. Varsayılan olarak özelliği olarak true
ayarlanır. olarak false
ayarladığınızda işlem hattı çalıştırması yalnızca öğesini BuildNumber
görüntüler.
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ı 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.
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.
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.
Aşamalar sütununda '+' işaretine tıkladığınızda aşamalar paneli gösterilir ve ardından aşama eylemleri gerçekleştirebilirsiniz.
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.
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.
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.
Hatalı denetimi düzeltdikten sonra yalnızca etkinleştirebilirsiniz.
İş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.
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, integration2
tarafı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 FabrikamFiber
bulunan 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
, ports
ve 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.
Yukarı akış paketi araması için yeni kullanıcı arabirimi
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.
Panoyu Kopyala
Bu sürümle Birlikte Panoyu Kopyala'yı da dahil ediyoruz.
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.
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ı.
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:
- Analiz görünümleri hakkında
- Azure DevOps'ta Analiz görünümü oluşturma
- Analiz görünümlerini yönetme
- Varsayılan Analiz görünümüyle Power BI raporu oluşturma
- Power BI Veri Bağlayıcısı ile Analytics'e bağlanma
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.
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.
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.