Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu sprint'te, sıralı dağıtımları desteklemek için Azure Pipelines'da özel kilit denetimleri özelliğini genişlettik. Artık bir ortamda birden çok çalıştırmayı kuyruğa alıp aynı anda yalnızca birinin yürütülmesini sağlayabilirsiniz.
Ayrıntılar için aşağıdaki özellik açıklamalarına göz atın.
Azure Boards
Azure Boru Hatları
- Yalnızca özel kullanımlı kilit denetimleri kullanılırken en son dağıtımlar yerine sıralı dağıtım desteği
- ServiceNow'un Quebec sürümü desteği
- Microsoft tarafından barındırılan Windows ve macOS aracılarında .NET SDK önyükleme ilkesinde değişiklik
- PublishBuildArtifacts ve DownloadBuildArtifacts görevlerinde yapılan değişiklikler
Azure Boards
İşleme bağlantılarında doğru kişiyi görüntüleme
bir iş öğesindeki geliştirme bölümünde ilgili taahhütlerin ve pull request'lerin listesi gösterilir. İşleme veya çekme isteğinin yazarını ilişkili süreyle birlikte görüntüleyebilirsiniz. Bu güncelleştirmeyle, yazarın avatarın görünümde yanlış görüntülenmesiyle ilgili bir sorunu düzeltildi.
Azure Boru Hatları
Özel kilit denetimleri kullanıldığında en son dağıtımlar yerine sıralı dağıtımları destekleme
YAML işlem hatlarında, korumalı kaynaklarda aşamaların yürütülmesini denetlemek için denetimler kullanılır. Kullanabileceğiniz yaygın denetimlerden biri özel kilit denetimidir. Bu kontrol, işlem hattından yalnızca tek bir çalıştırmanın gerçekleşmesine izin verir. Birden çok çalıştırma aynı anda bir ortama dağıtım yapmaya çalıştığında, denetim tüm eski çalıştırmaları iptal eder ve en son çalıştırmanın dağıtılmasına izin verir.
Yayınlarınız birikmeli olduğunda ve önceki çalıştırmalardan gelen tüm kod değişikliklerini içerdiğinde eski çalıştırmaları iptal etmek iyi bir yaklaşımdır. Ancak, kod değişikliklerinin birikmeli olmadığı bazı pipelineler vardır. Bu yeni özellik ile tüm çalıştırmaların devam edip bir ortama sırayla dağıtılmasına izin vermeyi veya eski çalıştırmaları iptal etme ve yalnızca en son çalıştırmalara izin verme önceki davranışını korumayı seçebilirsiniz. Bu davranışı, işlem hattı YAML dosyasında adlı lockBehavior yeni bir özellik kullanarak belirtebilirsiniz. Bir sequential değeri, tüm işlemlerin korumalı kaynağa sıralı olarak kilidi aldığını gösterir. Bu değerin runLatest olması, yalnızca en son çalıştırmanın kaynağa kilit koyduğu anlamına gelir.
Dağıtımlarla veya sequential ile runLatest özel kilit denetimini kullanmak için şu adımları izleyin:
- Ortamda (veya başka bir korumalı kaynakta) özel kilit denetimini etkinleştirin.
- İşlem hattının YAML dosyasında
lockBehavioradlı yeni bir özellik belirtin. Bu işlem hattının tamamı veya belirli bir aşama için belirtilebilir:
Bir aşamada ayarlayın:
stages:
- stage: A
lockBehavior: sequential
jobs:
- job: Job
steps:
- script: Hey!
İşlem hattında ayarlayın:
lockBehavior: runLatest
stages:
- stage: A
jobs:
- job: Job
steps:
- script: Hey!
lockBehavior belirtmezseniz, runLatest olduğu varsayılır.
ServiceNow'un Quebec sürümü 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. Şimdi uygulamayı ServiceNow'un Quebec sürümüyle çalışacak şekilde güncelleştirdik. Hem klasik hem de YAML işlem hatları artık Quebec ile çalışıyor. Bu tümleştirmenin çalıştığından emin olmak için Şimdi Hizmet Deposundan uygulamanın yeni sürümüne (4.188.0) yükseltin. Daha fazla bilgi için bkz. ServiceNow Değişiklik Yönetimi ile tümleştirme.
Microsoft tarafından barındırılan Windows ve macOS aracılarında .NET SDK önyükleme ilkesinde değişiklik
Kısa süre önce Microsoft tarafından barındırılan Ubuntu aracılarında .NET SDK önyükleme ilkesinde bir değişiklik olduğunu duyurmuştuk . Microsoft tarafından barındırılan Windows ve macOS aracıları için de aynı değişikliği yapıyoruz.
Şu anda Microsoft tarafından barındırılan Windows ve macOS aracılarına .NET SDK'sının (2.1.x, 3.1.x, 5.0.x) tüm kullanılabilir ve desteklenen sürümlerini yüklüyoruz. Bu yaklaşım, her özellik sürümü için en son düzeltme eki sürümünün yüklenmesine uygun olarak değiştirilecektir. Bu değişiklik, size daha fazla boş alan sağlamak ve yeni araç istekleri için yapılmaktadır.
Bu ne anlama geliyor?
SDK sürümü aşağıdaki bölümlerden oluşur: x.y.znn.
z özellik sürümüdür ve nn düzeltme eki sürümüdür. Örneğin, 2.1.302 için özellik sürümü 3, 02 ise düzeltme eki sürümüdür. Yeni yaklaşıma göre, her özellik sürümü için yalnızca en son düzeltme eki sürümünü yükleyeceğiz; örneğin, 2.1.3x için yalnızca 2.1.302, 2.1.4x için yalnızca 2.1.403 vb. yüklenir. .NET SDK'sının en son düzeltme eki sürümleri olmayan tüm sürümleri 6 Eylül'de Windows ve macOS görüntülerinden kaldırılacaktır. Bu değişiklik, Microsoft tarafından barındırılan aracılarda Windows ve macOS'un tüm sürümlerini etkiler.
Hedef tarihi
Güncelleştirilmiş görüntülerin dağıtımı 6 Eylül'de başlayacak ve 3-4 gün sürecektir.
Olası etki
global.json dosyası kullanırsanız, derlemeniz aşağıdaki durumlarda etkilenir:
global.json dosyası rollForward: disable özelliğini ve en son yama sürümü olmayan bir SDK sürümünü içeriyorsa derlemeniz başarısız olur. Örneğin:
{
"sdk": {
"version": "3.1.100",
"rollForward": "disable"
}
}
.NET SDK sürümü, global.json dosyası rollForward: patch özelliğini içeriyorsa otomatik olarak en yeni yama sürümüne değiştirilir. Örneğin:
{
"sdk": {
"version": "3.1.100",
"rollForward": "patch"
}
}
rollForward Alan global.json dosyanızda belirtilmezse sizin için hiçbir değişiklik olmaz. En son yüklenen düzeltme eki düzeyi kullanılır.
.NET'in en son düzeltme eki olmayan belirli bir SDK sürümünü kullanmanız gerekiyorsa, lütfen görevi kullanarakUseDotNet bunu derlemenin bir parçası olarak yükleyin.
steps:
- task: UseDotNet@2
displayName: 'Use .NET Core sdk'
inputs:
version: <dotnet version>
PublishBuildArtifacts ve DownloadBuildArtifacts görevlerinde yapılan değişiklikler
Azure Pipelines, yapıtları yayımlamak/indirmek için iki görev kümesini destekler. PublishPipelineArtifact ve DownloadPipelineArtifact , bu adımları gerçekleştirmek için daha yeni ve önerilen görevlerdir.
PublishBuildArtifacts ve DownloadBuildArtifacts eski görevlerdir ve bunlara karşılık gelen PipelineArtifact görevlerinde bulunan performans ve depolama iyileştirmeleri aynı değildir. Bu eski görevlerin uygulanma şekli açısından da ölçek sınırlamaları vardı. Büyük müşterilerimizden bazıları bu sınırlarla karşılaşmaktadır.
Tüm müşterilerin PipelineArtifact görevlerine geçmelerini istesek de, eski BuildArtifact görevlerinin ölçeklenebilirliğini ele almak için bazı adımlar attık. Ölçeklenebilirliklerini geliştirmeye yönelik son güncelleştirmenin bir parçası olarak Azure Pipelines aracıları artık blobstore etki alanları (tfs etki alanları üzerinden yönlendirmek yerine) aracılığıyla derleme yapıtlarıyla doğrudan etkileşim kuracak. Bu işlem hatları, uzun süredir Azure DevOps izin ver listesinde yer alan ancak belirli işlem hatları tarafından daha önce kullanılmamış olabilecek IP adreslerine ve etki alanlarına erişmeye başlar.
BuildArtifact görevlerinin güncellenmiş uygulanışı, bir aracı güncellemesini gerektirir; bu da, otomatik yükseltmeler özel olarak devre dışı bırakılmadığı sürece veya güvenlik duvarları yanlış yapılandırılmadıysa, otomatik olarak gerçekleşmelidir.
Aracılarınız bağlı yönergeleri izlemeyen güvenlik duvarı ortamlarında çalışıyorsa, güvenlik duvarı yapılandırması düzeltilene kadar aracıyı güncelleştirirken veya PublishBuildArtifacts veya DownloadBuildArtifacts görevlerinde hatalar görebilir.
Bu sorunun yaygın bir belirtisi, genellikle Yayın Yönetimi tanımları tarafından hedeflenen dağıtım havuzlarında ssl el sıkışmalarıyla veya yapıt indirme hatalarıyla ilgili ani hatalardır. Alternatif olarak, ajan yükseltmeleri engellendiyse, sürümlerin aracı havuzuna hiç gelmeyen bir ajanı beklediğini veya ajanların güncellemeleri sırasında yarı yolda çevrimdışı olduğunu görebilirsiniz (bu son durum, ajanın CDN'sini yanlışlıkla engelleyen ortamlarla ilgilidir).
Sonraki Adımlar
Uyarı
Bu özellikler önümüzdeki iki-üç hafta içinde kullanıma sunulacaktır.
Azure DevOps'a gidin ve bir göz atın.
Geri bildirim sağlama
Bu özellikler hakkında düşüncelerinizi duymak isteriz. Bir sorunu bildirmek veya öneri sağlamak için yardım menüsünü kullanın.
Stack Overflow'da topluluk tarafından öneriler ve sorularınıza yanıt alabilirsiniz.
Teşekkürler
Aaron Hallberg