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.
Azure DevOps Hizmetleri
Microsoft tarafından barındırılan aracılar yalnızca bulutta barındırılan Azure DevOps Services ile kullanılabilir. Microsoft tarafından barındırılan aracıları veya Azure Pipelines aracı havuzunu şirket içi Azure DevOps Server ile kullanamazsınız. Bu şirket içi sürümlerle şirket içinde barındırılan aracıları kullanmanız gerekir.
Önemli
Bu makalenin platformunuza ve sürümünüze karşılık gelen sürümünü seçin. Sürüm seçici, içindekiler tablosunun üzerindedir. Azure DevOps platformunuzu ve sürümünüzü arayın.
İşlem hatlarınız Azure Pipelines'daysa, Microsoft tarafından barındırılan bir aracı kullanarak işlerinizi rahatça çalıştırabilirsiniz. Microsoft tarafından barındırılan aracılarda bakım ve yükseltmeler otomatik olarak gerçekleşir.
İşlem hattınızda her zaman belirttiğiniz VM görüntüsünün en son sürümüne sahip olursunuz. İşlem hattını her çalıştırdığınızda, işlem hattındaki her iş için yeni bir sanal makine alırsınız. Sanal makine, bir görev tamamlandıktan sonra atılır. Bir işin sanal makine dosya sisteminde yaptığı, kodu kopyalama gibi değişiklikler bir sonraki işte mevcut değildir.
Microsoft tarafından barındırılan aracılar işleri doğrudan VM'de veya kapsayıcıda çalıştırabilir.
Azure Pipelines, Microsoft tarafından barındırılan aracılarla Azure Pipelines adlı önceden tanımlanmış bir aracı havuzu sağlar.
Birçok ekip için bu işlem, işlerinizi çalıştırmanın en basit yoludur. Derlemeniz veya dağıtımınız için çalışıp çalışmadığını görmek için önce bunu deneyebilirsiniz. Aksi takdirde Sanal Makine Ölçek Kümeleri aracılarını veya kendi barındırılan bir aracıyı kullanabilirsiniz.
İpucu
Microsoft tarafından barındırılan bir aracıyı ücretsiz olarak deneyebilirsiniz.
Yazılım
Azure Pipelines aracı havuzu, aralarından seçim yapabileceğiniz, her biri çok çeşitli araçlar ve yazılımlar dahil olmak üzere çeşitli sanal makine görüntüleri sunar. Aşağıdaki tabloda Yer alan yazılım bağlantısını seçerek her görüntü için yüklü yazılımları görebilirsiniz. Görüntü ve yazılımın yazılım yaşam döngüsü ve kullanımdan kaldırma zamanlaması hakkında daha fazla bilgi için bkz. GitHub Actions Runner Images - Yazılım ve Görüntü Desteği veMicrosoft tarafından barındırılan görüntü kullanımdan kaldırma zamanlaması.
Tabloda Bulunan yazılım bağlantısını seçerek Windows'da barındırılan her aracı görüntüsü için yüklü yazılımları görebilirsiniz.
| Görsel | Klasik Düzenleyici Aracısı Belirtimi | YAML VM Görüntü Etiketi | Dahil edilen yazılım |
|---|---|---|---|
| Visual Studio 2026 ile Windows Server 2025 (genel önizleme) | windows-2025-vs2026 | windows-2025-vs2026 |
Bağlantı |
| Visual Studio 2022 ile Windows Server 2025 | windows-2025 |
windows-latest VEYA windows-2025 |
Bağlantı |
| Visual Studio 2022 ile Windows Server 2022 | windows-2022 | windows-2022 |
Bağlantı |
Windows Server 2025 ve Visual Studio 2026 genel önizlemede
Önemli
Visual Studio 2026 ile yeni bir Windows koşucu görüntüsü herkese açık önizlemede kullanıma sunuldu. Bu ayrılmış görüntü, geçerli Windows-2025 görüntüsüyle birlikte çalışır ve varsayılan Windows görüntüsü geçişinin önünde güvenli bir doğrulama yolu sağlar. Visual Studio 2026, genel kullanıma sunulduğunda windows-2025 görüntüsüyle tümleştirilecektir. Önizleme sırasında işlem hattı yapılandırmanızda belirterek windows-2025-vs2026 yeni görüntüyü kullanmayı kabul edebilirsiniz.
Windows görüntü güncelleştirmeleri
- Visual Studio 2026 ile Windows Server 2025, 9 Mart 2026'dan itibaren genel önizleme sürümünde kullanıma sunulmuştur.
- Windows Server 2019 barındırılan aracı görüntüsü 31 Aralık 2025'te kullanımdan kaldırıldı.
- [Windows & Ubuntu] .NET 6, 1 Ağustos 2025'te görüntülerden kaldırıldı.
Önemli
Microsoft tarafından barındırılan aracılara yazılım eklenmesini istemek için bu belgede geri bildirim isteği oluşturmayın veya destek bileti açmayın. Bunun yerine, çeşitli görüntüler oluşturmaya yönelik betiklerimizi yönettiğimiz depomuzda bir sorun açın.
Microsoft tarafından barındırılan aracı kullanma
YAML işlem hatlarında bir havuz belirtmezseniz işlem hatları varsayılan olarak Azure Pipelines aracı havuzuna atanır. Hangi sanal makine görüntüsünü kullanmak istediğinizi belirtmeniz yeterlidir.
jobs:
- job: Linux
pool:
vmImage: 'ubuntu-latest'
steps:
- script: echo hello from Linux
- job: macOS
pool:
vmImage: 'macOS-latest'
steps:
- script: echo hello from macOS
- job: Windows
pool:
vmImage: 'windows-latest'
steps:
- script: echo hello from Windows
Not Alın
Bir havuzun belirtimi YAML dosyasında birden çok düzeyde yapılabilir. İşlem hattınızın beklenen görüntüde çalışmadığını fark ederseniz, işlem hattı, aşama ve iş düzeylerinde havuz belirtimini doğruladığınızdan emin olun.
Sabit kodlanmış bağlantılardan kaçının
Microsoft tarafından barındırılan bir aracı kullandığınızda, derleme ortamına ve aracı kaynaklarına başvurmak için her zaman değişkenleri kullanın. Örneğin, depoyu içeren sürücü harfini veya klasörü sabit kodlamayın. Barındırılan aracıların tam düzeni uyarı olmadan değiştirilebilir.
Donanım
Windows ve Linux görüntüleri çalıştıran Microsoft tarafından barındırılan aracılar, 2 çekirdekli CPU, 7 GB RAM ve 14 GB SSD disk alanı içeren Azure genel amaçlı sanal makinelerde sağlanır. Bu sanal makineler, Azure DevOps kuruluşunuzla aynı coğrafyada birlikte bulunur.
macOS görüntüleri çalıştıran aracılar, 3 çekirdekli CPU, 14 GB RAM ve 14 GB SSD disk alanına sahip Mac Pro üzerinde sağlanır, ancak macOS 15 Sequoia ARM64 görüntüsü, 3 çekirdekli Apple Silicon donanımı, 7 GB RAM ve 14 GB SSD disk alanı ile çalıştırılır. Bu aracılar, Azure DevOps kuruluşunuzun konumundan bağımsız olarak her zaman ABD'de çalışır. Veri hakimiyeti sizin için önemliyse ve kuruluşunuz ABD'de değilse macOS görüntülerini kullanmamalısınız. Daha fazla bilgi edinin.
Bu makinelerin tümü, işlem hatlarınızın çalışması için en az 10 GB boş disk alanına sahiptir. Bu boş alan; işlem hattınız kaynak kodunu kullanıma aldığında, paketleri indirdiğinde, docker görüntülerini çektiğinde veya ara dosyalar oluşturduğunda kullanılır.
Önemli
Microsoft tarafından barındırılan aracılarda disk alanını artırmaya veya daha güçlü makineler sağlamaya yönelik istekleri karşılayamıyoruz. Microsoft tarafından barındırılan aracıların belirtimleri gereksinimlerinizi karşılamıyorsa, şirket içinde barındırılan aracılar veya ölçek kümesi aracıları veya Yönetilen DevOps Havuzları seçeneklerini göz önünde bulundurmalısınız.
Ağ
Bazı kurulumlarda, aracıların dağıtıldığı IP adresi aralığını bilmeniz gerekebilir. Örneğin, barındırılan aracılara bir güvenlik duvarı üzerinden erişim vermeniz gerekiyorsa bu erişimi IP adresine göre kısıtlamak isteyebilirsiniz. Azure DevOps, Azure genel ağını kullandığından IP aralıkları zaman içinde farklılık gösterir. Microsoft, Azure veri merkezleri için IP aralıklarını bölgeye göre ayrılmış olarak listeleyen haftalık bir JSON dosyası yayımlar. Bu dosya, planlanan yeni IP aralıklarıyla haftalık olarak güncelleştirilir. Dosyanın yalnızca en son sürümü indirilebilir. Önceki sürümlere ihtiyacınız varsa bunları her hafta kullanılabilir hale geldikçe indirmeniz ve arşivlemeniz gerekir. Yeni IP aralıkları, bir sonraki hafta geçerli olur. Güncel bir liste tuttuğunuzdan emin olmak için sık sık (haftada en az bir kez) kontrol etmenizi öneririz. Eğer aracı işleri başarısız olmaya başlarsa, önemli bir ilk sorun giderme adımı, sizin yapılandırmanızın en güncel IP adresleri listesiyle eşleştiğinden emin olmanızı sağlamaktır. Barındırılan aracıların IP adresi aralıkları, batı ABD bölgesi gibi AzureCloud.<region> altındaki AzureCloud.westushaftalık dosyada listelenir.
Barındırılan aracılarınız, kuruluşunuzla aynı Azure coğrafyasında çalışır. Her coğrafya bir veya daha fazla bölge içerir. Aracınız kuruluşunuzla aynı bölgede çalışabilir ancak bunun yapılması garanti değildir. Aracınızın olası IP aralıklarının tam listesini almak için, coğrafyanızda bulunan tüm bölgelerdeki IP aralıklarını kullanmanız gerekir. Örneğin, kuruluşunuz Birleşik Devletler coğrafyada bulunuyorsa, bu coğrafyadaki tüm bölgeler için IP aralıklarını kullanmanız gerekir.
Coğrafyanızı belirlemek için https://dev.azure.com/<your_organization>/_settings/organizationOverview adresine gidin, bölgenizi alın ve Azure coğrafya tablosundan ilişkili coğrafyayı bulun. Coğrafyanızı belirledikten sonra, bu coğrafyadaki tüm bölgeler için haftalık dosyadaki IP aralıklarını kullanın.
Önemli
Microsoft tarafından barındırılan aracıları şirket ağınıza bağlamak için ExpressRoute veya VPN gibi özel bağlantıları kullanamazsınız. Microsoft tarafından barındırılan aracılar ile sunucularınız arasındaki trafik genel ağ üzerinden olacaktır.
Microsoft tarafından barındırılan aracıların olası IP aralıklarını belirlemek için
- Kuruluşunuzun bölgesini Kuruluş ayarlarından belirleyin.
- Coğrafyaya göre gruplandırılmış Azure bölgeleri listesini gözden geçirerek kuruluşunuzun bölgesi için Azure Coğrafyası'nı belirleyin.
- Coğrafyanızdaki bölgelerin adlarını,
AzureCloud.<region>gibiAzureCloud.westusformatını izleyerek haftalık dosyada kullanılan biçime eşleyin. .NET için Azure Yönetim Kitaplıkları'ndan Bölge sınıfının kaynak kodunda tanımlanan bölgelerin oluşturucusunda geçirilen bölge adlarını gözden geçirerek Azure Coğrafya listesindeki bölgelerin adlarını haftalık dosyada kullanılan biçimle eşleyebilirsiniz.Not Alın
.NET için Azure Yönetim Kitaplıklarında bir coğrafyanın bölgelerini listeleyen bir API olmadığından, bunları aşağıdaki örnekte gösterildiği gibi el ile listelemeniz gerekir.
- Haftalık dosyadan coğrafyanızdaki tüm bölgelerin IP adreslerini alın. Bölgeniz Güney Brezilya veya Batı Avrupa ise, aşağıdaki notta açıklandığı gibi geri dönüş coğrafyanıza göre ek IP aralıkları eklemeniz gerekir.
Not Alın
Kapasite kısıtlamaları nedeniyle, Güney Brezilya veya Batı Avrupa bölgelerindeki bazı kuruluşlar, bazen sunucu aracılarını beklenen coğrafyanın dışında görebilir. Bu gibi durumlarda, önceki bölümde açıklandığı gibi coğrafyanızdaki tüm bölgeler için IP aralıklarını eklemeye ek olarak, kapasite geri dönüş coğrafyasında bölgeler için ek IP aralıkları eklenmelidir.
Kuruluşunuz Brezilya Güney bölgesindeyse, kapasite geri dönüş coğrafyanız Abd'dir ve Güney Brezilya coğrafyasında yer alan tüm bölgelerin IP aralıklarına ek olarak ABD coğrafyasında tüm bölgeler için IP aralıklarını da eklemeniz gerekir.
Kuruluşunuz Batı Avrupa bölgesindeyse, kapasite geri dönüş coğrafyası Fransa'dır ve Batı Avrupa coğrafyasında yer alan tüm bölgeler için IP aralıklarına ek olarak Fransa coğrafyasının tüm bölgelerinin IP aralıklarını da eklemeniz gerekir.
Mac IP aralıklarımız, GitHub'ın macOS bulutunda barındırıldığından yukarıdaki Azure IP'lerine dahil değildir. IP aralıkları, burada sağlanan yönergeler kullanılarak GitHub meta veri API'si kullanılarak alınabilir.
Örnek
Aşağıdaki örnekte, Batı ABD bölgesindeki bir kuruluş için barındırılan aracı IP adresi aralıkları haftalık dosyadan alınmaktadır. Batı ABD bölgesi Birleşik Devletler coğrafyada olduğundan, Birleşik Devletler coğrafyadaki tüm bölgelerin IP adresleri dahil edilir. Bu örnekte, IP adresleri konsola yazılır.
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
namespace WeeklyFileIPRanges
{
class Program
{
// Path to the locally saved weekly file
const string weeklyFilePath = @"C:\MyPath\ServiceTags_Public_20230904.json";
static void Main(string[] args)
{
// United States geography has the following regions:
// Central US, East US, East US 2, East US 3, North Central US,
// South Central US, West Central US, West US, West US 2, West US 3
// This list is accurate as of 9/8/2023
List<string> USGeographyRegions = new List<string>
{
"centralus",
"eastus",
"eastus2",
"eastus3",
"northcentralus",
"southcentralus",
"westcentralus",
"westus",
"westus2",
"westus3"
};
// Load the weekly file
JObject weeklyFile = JObject.Parse(File.ReadAllText(weeklyFilePath));
JArray values = (JArray)weeklyFile["values"];
foreach (string region in USGeographyRegions)
{
string tag = $"AzureCloud.{region}";
Console.WriteLine(tag);
var ipList =
from v in values
where tag.Equals((string)v["name"], StringComparison.OrdinalIgnoreCase)
select v["properties"]["addressPrefixes"];
foreach (var ip in ipList.Children())
{
Console.WriteLine(ip);
}
}
}
}
}
Hizmet etiketleri
Microsoft tarafından barındırılan aracılar hizmet etiketlerine göre listelenemez. Kaynaklarınıza erişim sağlamak için barındırılan aracılara izin vermeye çalışıyorsanız, IP aralığını izin verilenler listesine ekleme yöntemini uygulamanız gerekir.
Güvenlik
Microsoft tarafından barındırılan aracılar güvenli Azure platformunda çalışır. Ancak, aşağıdaki güvenlik konularını bilmeniz gerekir.
- Microsoft tarafından barındırılan aracılar Azure genel ağında çalıştırılır, ancak bunlara genel IP adresleri atanmaz. Bu nedenle, dış varlıklar Microsoft tarafından barındırılan aracıları hedefleyemez.
- Microsoft tarafından barındırılan aracılar, her çalıştırmadan sonra yeniden tasarlanan tek tek VM'lerde çalıştırılır. Her aracı tek bir kuruluşa ayrılmıştır ve her VM yalnızca tek bir aracı barındırıyor.
- İşlem hattınızı Microsoft tarafından barındırılan aracılarda çalıştırmanın güvenlik açısından çeşitli avantajları vardır. İşlem hattınızda çatallardan gelen katkılar gibi güvenilmeyen kodlar çalıştırıyorsanız, bu işlem hattını Microsoft tarafından barındırılan aracılarda çalıştırmak, kendi barındırdığınız aracılara göre daha güvenlidir.
- bir işlem hattının güvenlik duvarının arkasındaki şirket kaynaklarınıza erişmesi gerektiğinde, Azure coğrafyası için IP adresi aralığına izin vermek zorunda kalırsınız. IP adresi aralığı oldukça büyük olduğundan ve bu aralıktaki makineler de diğer müşterilere ait olabileceğinden bu durum açığa çıkarmanızı artırabilir. Bunu önlemenin en iyi yolu, iç kaynaklara erişme gereksinimini önlemektir. Yapıtları bir sunucu kümesine dağıtma hakkında bilgi için bkz Hedef sunuculara dağıtma iletişimi.
- Barındırılan görüntüler CIS sağlamlaştırma karşılaştırmalarına uymaz. CIS sağlamlaştırılmış görüntüleri kullanmak için kendinden barındırılan aracılar, ölçeklenebilir küme aracıları veya Yönetilen DevOps havuzları oluşturmanız gerekir.
Özellikler ve sınırlamalar
Microsoft tarafından barındırılan aracılar:
- Yukarıdaki yazılıma sahip olun. Ayrıca, araç yükleyicisi görevlerini kullanarak derleme veya yayın sırasında yazılım ekleyebilirsiniz.
- İşlem hattınızdaki her iş için yeni imajlanmış bir ajan alırsınız.
- Kaynağınız ve derleme çıkışlarınız için 10 GB depolama alanı sağlayın.
- Ücretsiz bir katman sağlayın:
- Genel proje: Microsoft tarafından barındırılan ve her seferinde 360 dakika (6 saat) boyunca çalışabilen ve aylık genel süre sınırı olmayan 10 ücretsiz paralel iş. Ücretsiz katman sınırlarınızı artırmak için bizimle iletişime geçin.
- Özel proje: Aylık 1.800 dakikayı (30 saat) kullanana kadar her seferde 60 dakikaya kadar çalışabilen bir ücretsiz paralel iş. Paralel iş başına ek kapasite için ödeme yapabilirsiniz. Ücretli paralel işler aylık süre sınırını kaldırır ve her işi 360 dakikaya (6 saat) kadar çalıştırmanıza olanak tanır. Microsoft tarafından barındırılan paralel iş yükleri satın alın.
- Yeni bir Azure DevOps kuruluşu oluşturduğunuzda, varsayılan olarak bu ücretsiz izinler verilmez. Genel veya özel projeler için ücretsiz hibe isteğinde bulunmak için bir istek gönderin.
- Microsoft Azure genel amaçlı sanal makinelerinde Standard_DS2_v2 çalıştırın.
- Windows'da yönetici olarak ve Linux'ta parolasız sudo kullanıcısı olarak çalıştırın.
- (Yalnızca Linux) 6 GB fiziksel bellek ve toplam 13 GB bellek sunan bir
cgroupiçinde adımları çalıştırın. - Düzenli olarak güncelleştirilen VM görüntülerini kullanın (her üç haftada bir).
Microsoft tarafından barındırılan aracılar aşağıdakileri sunmaz:
- Uzaktan bağlanabilme özelliği.
- UNC dosya paylaşımına objeleri bırakma özelliği.
- Makineleri doğrudan kurumsal ağınıza ekleme olanağı.
- Daha büyük veya daha güçlü makineler sağlama yeteneği.
- Özel yazılımları önceden yükleme özelliği. İşlem hattı çalıştırması sırasında, yazılımı araç yükleyici görevleri aracılığıyla veya bir betik üzerinden yükleyebilirsiniz.
- Kendi yerelinizde barındırılan aracılar kullanarak derlemeleri daha hızlı başlatıp çalıştırabilmenizin sağlayabileceği olası performans avantajları. Daha fazla bilgi edinin
- XAML derlemelerini çalıştırma özelliği.
- Önceki bir VM görüntüsü sürümüne geri dönebilme özelliği. Her zaman en son sürümü kullanırsınız.
Microsoft tarafından barındırılan aracılar gereksinimlerinizi karşılamıyorsa, kendi kendi kendine barındırılan aracılarınızı dağıtabilir, ölçek kümesi aracılarını kullanabilir veya yönetilen DevOps Havuzlarınıkullanabilirsiniz.
Sıkça Sorulan Sorular (SSS)
Bir görüntüye hangi yazılımların dahil olduğunu nasıl görebilirim?
Yazılım tablosundaki Dahil Edilen Yazılım bağlantısını seçerek barındırılan her aracı için yüklü yazılımları görebilirsiniz.
Not Alın
Varsayılan olarak, Windows aracısı aracı yazılımıyla birlikte gelen Git sürümünü kullanır. Microsoft, Aracı ile birlikte gelen Git sürümünü kullanmanızı önerir, ancak bu varsayılan davranışı geçersiz kılmak ve aracı makinenin yolda yüklü olduğu Git sürümünü kullanmak için çeşitli seçenekleriniz vardır.
- İşlem hatlarınızda
System.PreferGitFromPathadlı bir işlem hattı değişkeninitrueolarak ayarlayın. - Şirket içinde barındırılan aracılarda, aracı kök dizininde .env adlı bir dosya oluşturabilir ve dosyaya bir
System.PreferGitFromPath=truesatır ekleyebilirsiniz. Daha fazla bilgi için bkz. Her bir acente için farklı ortam değişkenlerini nasıl ayarlayabilirim?
İşlem hattı tarafından kullanılan Git sürümünü görmek için, aşağıdaki örnekte gösterildiği gibi işlem hattınızdaki bir checkout adımın günlüklerine bakabilirsiniz.
Syncing repository: PathFilter (Git)
Prepending Path environment variable with directory containing 'git.exe'.
git version
git version 2.26.2.windows.1
Microsoft, görüntüye yerleştirileceği yazılımı ve sürümleri nasıl seçer?
Görüntülere dahil edilen yazılımların sürümleri hakkında daha fazla bilgi için bkz. Nelerin yüklendiğine ilişkin yönergeler.
Görüntüler ne zaman güncelleştiriliyor?
Görüntüler genellikle haftalık olarak güncelleştirilir. Durum rozetlerini biçimde kontrol edebilirsiniz ve ilk kısım görüntünün güncellendiği tarihi belirtir.
İhtiyacım olan yazılım kaldırılırsa veya daha yeni bir sürümle değiştirilirse ne yapabilirim?
Microsoft tarafından barındırılan aracı kullanma tablosundaki Dahil Edilen Yazılım bağlantılarını seçip bir GitHub sorunu bildirerek bize bildirebilirsiniz.
Ayrıca, ihtiyacınız olan yazılımın tam sürümlerini içeren şirket içinde barındırılan bir aracı da kullanabilirsiniz. Daha fazla bilgi için Kendi Sunucularınızda Barındırılan Etmenler bölümüne bakın.
Daha fazla işlem gücüne, belleğe veya disk alanına sahip daha büyük bir makineye ihtiyacım olursa ne olur?
Microsoft tarafından barındırılan aracılar için bellek, işlem gücü veya disk alanını artıramıyoruz, ancak istediğiniz özelliklere sahip makinelerde barındırılan kendi kendine barındırılan aracılar veya ölçek kümesi aracıları ya da Yönetilen DevOps Havuzları kullanabilirsiniz.
Microsoft tarafından barındırılan bir aracı seçemiyorum ve derlememi veya dağıtımımı sıraya alamıyorum. Ne yapmalıyım?
Microsoft tarafından barındırılan aracılar yalnızca Azure Pipelines'da kullanılabilir, Azure DevOps Server'da kullanılamaz.
Varsayılan olarak, bir kuruluştaki tüm proje katılımcıları Microsoft tarafından barındırılan aracılara erişebilir. Ancak, kuruluş yöneticiniz Microsoft tarafından barındırılan aracıların erişimini kullanıcıları veya projeleri seçmek için sınırlayabilir. Azure DevOps kuruluşunuzun sahibinden size Microsoft tarafından barındırılan bir aracı kullanma izni vermesini isteyin. Bkz. ajan havuzu güvenliği.
Microsoft tarafından barındırılan ajanlarda çalıştırdığım işlem hatlarımın tamamlanması daha uzun sürüyor. Nasıl hızlandırabilirim?
İşlem hattınız kısa süre önce yavaşladıysa, kesintiler için durum sayfamızı gözden geçirin. Hizmetimizle ilgili sorun yaşıyor olabiliriz. Veya uygulama kodunuzda ya da işlem hattınızda yaptığınız değişiklikleri gözden geçirin. Check-out işlemi sırasında deponuzun boyutu artmış olabilir, daha büyük artifaktları karşıya yüklüyor olabilirsiniz veya daha fazla test yürütüyor olabilirsiniz.
Yalnızca bir işlem hattı ayarlayıp Microsoft tarafından barındırılan aracıların performansını yerel makinenizle veya şirket içinde barındırılan bir aracıyla karşılaştırıyorsanız, işlerinizi çalıştırmak için kullandığımız donanımın belirtimlerine dikkat edin. Size daha büyük veya güçlü makineler sağlayamıyoruz. Bu performans kabul edilebilir değilse şirket içinde barındırılan aracıları veya ölçek kümesi aracılarını ya da Yönetilen DevOps Havuzlarını kullanmayı düşünebilirsiniz.
Daha fazla ajana ihtiyacım var. Ne yapabilirim?
Tüm Azure DevOps kuruluşlarına açık kaynak projeler için çeşitli ücretsiz paralel işler ve özel projeler için her ay bir ücretsiz paralel iş ve sınırlı dakika sağlanır. Açık kaynak projeniz için ek dakikalara veya paralel işlere ihtiyacınız varsa desteğe başvurun. Özel projeniz için ek dakikalara veya paralel işlere ihtiyacınız varsa daha fazla satın alabilirsiniz.
İşlem hattım kendi barındırdığımız aracılar üzerinde başarılı, ancak Microsoft tarafından barındırılan aracılarda başarısız oluyor. Ne yapmalıyım?
Kendi barındırdığınız aracınızda büyük olasılıkla tüm doğru bağımlılıklar yüklüyken, Microsoft tarafından barındırılan aracılarda aynı bağımlılıklar, araçlar ve yazılımlar yüklenmemiştir. İlk olarak, yukarıdaki tablodaki Dahil edilen yazılımlar bağlantısını izleyerek Microsoft tarafından barındırılan aracılara yüklenen yazılımların listesini dikkatlice gözden geçirin. Ardından, bunu kendi barındırdığınız ajanınızda yüklü olan yazılımla karşılaştırın. Bazı durumlarda, Microsoft tarafından barındırılan aracılar ihtiyacınız olan araçlara (örneğin, Visual Studio) sahip olabilir, ancak gerekli isteğe bağlı bileşenlerin tümü yüklenmemiş olabilir. Farklar bulursanız iki seçeneğiniz vardır:
Ek yazılım isteklerini takip ettiğimiz depoda yeni bir sorun oluşturabilirsiniz. Desteğe başvurmak, Microsoft tarafından barındırılan aracılarda yeni yazılım ayarlamanıza yardımcı olamaz.
Kendi kendine barındırılan aracıları
veya ölçek kümesi aracılarını veya Yönetilen DevOps Havuzlarını kullanabilirsiniz. Bu aracılarla, işlem hatlarınızı çalıştırmak için kullanılan görüntülerin denetimi tamamen size ait olur.
Derlemem yerel makinemde başarılı ama Microsoft tarafından barındırılan aracılarda başarısız oluyor. Ne yapmalıyım?
Yerel makinenizde büyük olasılıkla tüm doğru bağımlılıklar yüklüyken, microsoft tarafından barındırılan aracılarda aynı bağımlılıklar, araçlar ve yazılımlar yüklü değildir. İlk olarak, yukarıdaki tablodaki Dahil edilen yazılımlar bağlantısını izleyerek Microsoft tarafından barındırılan aracılara yüklenen yazılımların listesini dikkatlice gözden geçirin. Ardından, bunu yerel makinenizde yüklü yazılımla karşılaştırın. Bazı durumlarda, Microsoft tarafından barındırılan aracılar ihtiyacınız olan araçlara (örneğin, Visual Studio) sahip olabilir, ancak gerekli isteğe bağlı bileşenlerin tümü yüklenmemiş olabilir. Farklar bulursanız iki seçeneğiniz vardır:
Ek yazılım isteklerini takip ettiğimiz depoda yeni bir sorun oluşturabilirsiniz. Bu, yeni yazılım yüklemek için en iyi seçeneğinizdir. Desteğe başvurmak, Microsoft tarafından barındırılan aracılarda yeni yazılım ayarlamanıza yardımcı olmaz.
Kendi kendine barındırılan aracıları
veya ölçek kümesi aracılarını veya Yönetilen DevOps Havuzlarını kullanabilirsiniz. Bu aracılarla, işlem hatlarınızı çalıştırmak için kullanılan görüntülerin denetimi tamamen size ait olur.
İşlem hattım şu hatayla başarısız oluyor: "Cihazda yer kalmadı".
Microsoft tarafından barındırılan aracılarda işinizi çalıştırmak için yalnızca 10 GB kullanılabilir disk alanı vardır. Bu alan, kaynak kodu kullanıma aldığınızda, paketleri indirdiğinizde, docker görüntülerini indirdiğinizde veya ara dosyalar oluştururken kullanılır. Ne yazık ki Microsoft tarafından barındırılan görüntülerde kullanılabilir boş alanı artıramıyoruz. İşlem hattınızı bu alana sığacak şekilde yeniden yapılandırabilirsiniz. Ya da, şirket içinde barındırılan aracıları, ölçek kümesi aracılarını veya yönetilen DevOps Havuzlarını kullanmayı düşünebilirsiniz.
Microsoft tarafından barındırılan aracılarda çalışan işlem hattım, şirket ağımızdaki sunuculara erişim gerektiriyor. Güvenlik duvarımızda izin vermek için IP adreslerinin listesini nasıl alacağız?
Aracı IP aralıkları bölümüne bakın
Microsoft tarafından barındırılan aracılarda çalışan işlem hattımız, şirket ağımızdaki bir sunucunun adını çözümleyemiyor. Bunu nasıl düzeltebiliriz?
Sunucuya DNS adıyla başvurursanız, sunucunuzun DNS adı üzerinden İnternet'te genel olarak erişilebilir olduğundan emin olun. Sunucunuza IP adresiyle başvuruda bulunursanız, IP adresinin İnternet'te genel olarak erişilebilir olduğundan emin olun. Her iki durumda da aracılar ve şirket ağınız arasındaki tüm güvenlik duvarlarının aracı IP aralıklarına izin verdiğinden emin olun.
Azure Depolama hesabından SAS IP yetkilendirme hatası alıyorum
SAS hata kodu alırsanız, bunun nedeni büyük olasılıkla Azure Depolama kurallarınızdan dolayı Microsoft tarafından barındırılan aracıların IP adresi aralıklarına izin verilmemesidir. Birkaç geçici çözüm vardır:
- Azure Depolama hesabınızın IP ağ kurallarını yönetin ve barındırılan aracılarınız için IP adresi aralıklarını ekleyin.
- İşlem hattınızda, depolamaya erişmeden hemen önce Azure Depolama hesabınızın ağ kural kümesini güncelleştirmek ve ardından önceki kural kümesini geri yüklemek için Azure CLI'yi kullanın.
- Şirket içinde barındırılan aracılar
veya Ölçek kümesi aracıları veya Yönetilen DevOps Havuzları kullanın.
Barındırılan macOS aracısında araçların sürümlerini el ile nasıl seçebilirim?
Xcode
Azure Pipelines ve Azure DevOps Server ile birlikte gelen Xcode görevini kullanıyorsanız, bu görevin özelliklerinde bir Xcode sürümü seçebilirsiniz. Aksi takdirde, xcode sürümünü macOS görüntülerinde kullanılacak şekilde el ile ayarlamak için, derleme görevinizden xcodebuild önce bu komut satırını derlemenizin bir parçası olarak yürüterek Xcode sürüm numarası 13.2'yi gerektiği gibi değiştirin:
/bin/bash -c "sudo xcode-select -s /Applications/Xcode_13.2.app/Contents/Developer"
macOS görüntülerindeki Xcode sürümlerine buradan ulaşabilirsiniz.
Mono
macOS görüntülerinde kullanılacak bir Mono sürümünü el ile seçmek için (mono'yi desteklemeyen ARM64 görüntüsü dışında), bu betiği Mono derleme görevinizden önce derlemenizin her işinde yürütün ve gerekli Mono sürümüyle symlink'i belirtin:
SYMLINK=<symlink>
MONOPREFIX=/Library/Frameworks/Mono.framework/Versions/$SYMLINK
echo "##vso[task.setvariable variable=DYLD_FALLBACK_LIBRARY_PATH;]$MONOPREFIX/lib:/lib:/usr/lib:$DYLD_LIBRARY_FALLBACK_PATH"
echo "##vso[task.setvariable variable=PKG_CONFIG_PATH;]$MONOPREFIX/lib/pkgconfig:$MONOPREFIX/share/pkgconfig:$PKG_CONFIG_PATH"
echo "##vso[task.setvariable variable=PATH;]$MONOPREFIX/bin:$PATH"