Şirket içinde barındırılan Linux aracıları
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Bu makalede, Azure DevOps Services ve Azure DevOps Server'ın geçerli sürümleriyle 3.x aracı yazılımını kullanma yönergeleri sağlanır. 3.x aracısını destekleyen Azure DevOps Server sürümlerinin listesi için bkz . Azure DevOps Server 3.x aracısını destekliyor mu?
Dikkat
Bu makalede, Kullanım Süresi Sonu (EOL) durumuna yakın bir Linux dağıtımı olan CentOS'a başvuruda bulunur. Lütfen kullanımınızı ve buna uygun planlamayı göz önünde bulundurun. Daha fazla bilgi için bkz . CentOS Kullanım Süresi Sonu kılavuzu.
İşlerinizi çalıştırmak için en az bir aracıya ihtiyacınız vardır. Linux aracısı, Java ve Android uygulamaları dahil olmak üzere farklı türlerde uygulamalar derleyebilir ve dağıtabilir. Desteklenen Linux dağıtımlarının listesi için bkz. Önkoşulları denetleme.
Not
Bu makalede, şirket içinde barındırılan bir aracının nasıl yapılandırıldığı açıklanır. Azure DevOps Services kullanıyorsanız ve Microsoft tarafından barındırılan bir aracı gereksinimlerinizi karşılıyorsa, şirket içinde barındırılan bir Linux aracısı ayarlamayı atlayabilirsiniz.
Aracılar hakkında bilgi edinin
Bir aracının ne olduğunu ve nasıl çalıştığını zaten biliyorsanız, aşağıdaki bölümlere doğrudan atlayabilirsiniz. Ancak ne yaptıkları ve nasıl çalıştıkları hakkında daha fazla bilgi edinmek isterseniz bkz . Azure Pipelines aracıları.
Önkoşulları denetleme
Aracı .NET 6'ya dayanır. Bu aracıyı birkaç Linux dağıtımında çalıştırabilirsiniz. Desteklenen .NET 6 dağıtımlarının aşağıdaki alt kümesini destekliyoruz:
- Desteklenen dağıtımlar
- x64
- CentOS 7, 8
- Debian 10+
- Fedora 36+
- openSUSE 15+
- Red Hat Enterprise Linux 7+
- Artık ayrı paket gerekmez
- SUSE Enterprise Linux 12 SP2 veya üzeri
- Ubuntu 22.04, 20.04, 18.04, 16.04
- Azure Linux 2.0
- Oracle Linux 7 ve üzeri
- ARM64
- Debian 10+
- Ubuntu 22.04, 20.04, 18.04
- Alpine x64
- Alpine Linux 3.13 ve üzeri (aracı 3.227 veya üzeri gerektirir)
- x64
- Git - Platformunuzdan bağımsız olarak Git 2.9.0 veya üzerini yüklemeniz gerekir. Git'in en son sürümünü yüklemenizi kesinlikle öneririz.
- .NET - Aracı yazılımı .NET 6 üzerinde çalışır, ancak .NET önkoşulu olmaması için kendi .NET sürümünü yükler.
- Subversion - Subversion deposundan oluşturuyorsanız makineye Subversion istemcisini yüklemeniz gerekir.
- TFVC - TFVC deposundan derleme yapıyorsanız bkz . TFVC önkoşulları.
Not
Aracı yükleyicisi diğer bağımlılıkları denetlemeyi bilir.
Aracı dizininde çalıştırarak ./bin/installdependencies.sh
desteklenen Linux platformlarına bu bağımlılıkları yükleyebilirsiniz.
.NET tarafından gerekli olan bu bağımlılıklardan bazılarının gibi packages.efficios.com
üçüncü taraf sitelerden getirildiğini unutmayın. installdependencies.sh
Betiği gözden geçirin ve betiği çalıştırmadan önce başvuruda bulunan üçüncü taraf sitelere Linux makinenizden erişildiğinden emin olun.
Ayrıca tüm gerekli depoların içinde installdependencies.sh
kullanılan ilgili paket yöneticisine (veya zypper
gibiapt
) bağlı olduğundan da emin olun.
Bağımlılık yüklemeyle ilgili sorunlar için ('depoda bağımlılık bulunamadı' veya 'depo dizin dosyasını alma sorunu' gibi) için, daha fazla destek için dağıtım sahibine ulaşabilirsiniz.
Aracı kurulumunu ilk kez el ile çalıştırmanız gerekir. Aracıların nasıl çalıştığına ilişkin bir his edindikten sonra veya birçok aracıyı ayarlamayı otomatikleştirmek istiyorsanız katılımsız yapılandırmayı kullanmayı göz önünde bulundurun.
İzinleri hazırlama
Şirket içinde barındırılan aracılar için bilgi güvenliği
Aracıyı yapılandıran kullanıcının havuz yöneticisi izinlerine ihtiyacı vardır, ancak aracıyı çalıştıran kullanıcı bunu yapmaz.
Aracı tarafından denetlenen klasörler, şifresi çözülebilecek veya dışarı aktarılabilir gizli diziler içerdiğinden mümkün olduğunca az kullanıcıyla sınırlandırılmalıdır.
Azure Pipelines aracısı, dış kaynaklardan indirmiş olduğu kodu yürütmek için tasarlanmış bir yazılım ürünüdür. Bu, doğal olarak Uzaktan Kod Yürütme (RCE) saldırılarına yönelik bir hedef olabilir.
Bu nedenle, işlem hattı aracılarının her bir kullanımını iş yapmak için çevreleyen tehdit modelini göz önünde bulundurmak ve aracıyı çalıştıran kullanıcıya, aracının çalıştığı makineye, İşlem Hattı tanımına yazma erişimi olan kullanıcılara, yaml'nin depolandığı git depolarına verilebilen en düşük izinlerin ne olduğuna karar vermek önemlidir. veya yeni işlem hatları için havuza erişimi denetleyen kullanıcı grubunu seçin.
Aracıyı çalıştıran kimliğin, aracıyı havuza bağlama izinlerine sahip kimlikten farklı olması en iyi yöntemdir. Kimlik bilgilerini (ve aracıyla ilgili diğer dosyaları) oluşturan kullanıcı, bunları okuması gereken kullanıcıdan farklıdır. Bu nedenle, aracı makinenin kendisine ve günlükler ve yapıtlar gibi hassas dosyalar içeren aracı klasörlerine verilen erişimi dikkatli bir şekilde göz önünde bulundurmak daha güvenlidir.
Aracı klasörüne yalnızca DevOps yöneticileri ve aracı işlemini çalıştıran kullanıcı kimliği için erişim vermek mantıklıdır. Yönetici istrator'ların derleme hatalarını anlamak veya Azure DevOps hatalarını bildirebilmek için günlük dosyalarını almak için dosya sistemini incelemesi gerekebilir.
Hangi kullanıcıyı kullanacağınıza karar verme
Tek seferlik bir adım olarak aracıyı kaydetmeniz gerekir. Aracı kuyruğu yönetme iznine sahip birinin bu adımları tamamlaması gerekir. Aracı günlük işlemlerde bu kişinin kimlik bilgilerini kullanmaz, ancak kaydı tamamlaması gerekir. Aracıların iletişim kurma şekli hakkında daha fazla bilgi edinin.
Kullanıcının izni olduğunu onaylayın
Kullanacağınız kullanıcı hesabının aracıyı kaydetme izni olduğundan emin olun.
Kullanıcı bir Azure DevOps kuruluş sahibi mi, TFS mi yoksa Azure DevOps Server yöneticisi mi? Burada durun, izniniz var.
Aksi durumda:
Bir tarayıcı açın ve Azure Pipelines kuruluşunuz veya Azure DevOps Server ya da TFS sunucusu için Aracı havuzları sekmesine gidin:
Kuruluşunuzda (
https://dev.azure.com/{yourorganization}
) oturum açın.Azure DevOps, Kuruluş ayarları'nı seçin.
Aracı havuzları'nı seçin.
Proje koleksiyonunuzda (
http://your-server/DefaultCollection
) oturum açın.Azure DevOps, Koleksiyon ayarları'nı seçin.
Aracı havuzları'nı seçin.
Azure DevOps, Koleksiyon ayarları'nı seçin.
Aracı havuzları'nı seçin.
Sayfanın sağ tarafındaki havuzu seçin ve güvenlik'e tıklayın.
Kullanacağınız kullanıcı hesabı gösterilmiyorsa, yöneticinin hesabı eklemesini sağlayın. Yönetici, aracı havuzu yöneticisi, Azure DevOps kuruluş sahibi veya TFS ya da Azure DevOps Server yöneticisi olabilir.
Bu bir dağıtım grubu aracısıysa, yönetici dağıtım grubu yöneticisi, Azure DevOps kuruluş sahibi veya TFS ya da Azure DevOps Server yöneticisi olabilir.
Azure Pipelines'ın Dağıtım Grupları sayfasındaki Güvenlik sekmesinde bir kullanıcıyı dağıtım grubu yöneticisi rolüne ekleyebilirsiniz.
Not
Şuna benzer bir ileti görürseniz: Üzgünüz, kimliği ekleyemedik. Lütfen farklı bir kimlik deneyin. Büyük olasılıkla bir kuruluş sahibi, TFS veya Azure DevOps Server yöneticisi için yukarıdaki adımları izlemişsinizdir. Hiçbir şey yapmanıza gerek yok; aracı havuzunu yönetme izniniz zaten var.
Aracıyı indirme ve yapılandırma
Azure Pipelines
Önceki bölümde açıklandığı gibi izinleri hazırladığınız hesabı kullanarak makinede oturum açın.
Web tarayıcınızda Azure Pipelines'da oturum açın ve Aracı havuzları sekmesine gidin:
Kuruluşunuzda (
https://dev.azure.com/{yourorganization}
) oturum açın.Azure DevOps, Kuruluş ayarları'nı seçin.
Aracı havuzları'nı seçin.
Proje koleksiyonunuzda (
http://your-server/DefaultCollection
) oturum açın.Azure DevOps, Koleksiyon ayarları'nı seçin.
Aracı havuzları'nı seçin.
Azure DevOps, Koleksiyon ayarları'nı seçin.
Aracı havuzları'nı seçin.
Varsayılan havuzu seçin, Aracılar sekmesini seçin ve Yeni aracı'yı seçin.
Aracıyı al iletişim kutusunda Linux'a tıklayın.
Sol bölmede belirli bir aromayı seçin. Birçok Linux dağıtımı için x64 veya ARM sunuyoruz.
Sağ bölmede İndir düğmesine tıklayın.
Sayfadaki yönergeleri izleyin.
Aracıyı seçtiğiniz dizine açın.
cd
dizinine gidin ve komutunu çalıştırın./config.sh
.
Sunucu URL'si
Azure Pipelines: https://dev.azure.com/{your-organization}
Authentication type
Bir aracıyı kaydettiğinizde, aşağıdaki kimlik doğrulama türlerinden birini seçin; aracı kurulumu sizden her kimlik doğrulama türü için gereken belirli ek bilgileri ister. Daha fazla bilgi için bkz . Şirket içinde barındırılan aracı kimlik doğrulama seçenekleri.
- Kişisel erişim belirteci
- Temel kimlik doğrulamasını kullanarak Azure DevOps Server veya TFS'ye alternatif Bağlan. Alternatif'i seçtiğinizde kimlik bilgileriniz istenir.
Etkileşimli olarak çalıştırma
Aracıyı etkileşimli modda mı yoksa hizmet olarak mı çalıştıracaklarına ilişkin yönergeler için bkz . Aracılar: Etkileşimli ve hizmet.
Aracıyı etkileşimli olarak çalıştırmak için:
Aracıyı yeniden başlatmak için Ctrl+C tuşlarına basın ve ardından komutunu çalıştırarak run.sh
yeniden başlatın.
Aracınızı kullanmak için aracının havuzunu kullanarak bir iş çalıştırın. Farklı bir havuz seçmediyseniz, aracınız Varsayılan havuza yerleştirilir.
Bir kez çalıştır
Etkileşimli olarak çalışacak şekilde yapılandırılmış aracılar için aracının yalnızca bir işi kabul etmelerini seçebilirsiniz. Bu yapılandırmada çalıştırmak için:
./run.sh --once
Bu modda aracılar yalnızca bir işi kabul eder ve ardından düzgün bir şekilde açılır (Azure Container Instances gibi bir hizmette Docker'da çalıştırmak için kullanışlıdır).
Sistemli hizmet olarak çalıştırma
Aracınız bu işletim sistemlerinde çalışıyorsa aracıyı hizmet systemd
olarak çalıştırabilirsiniz:
- Ubuntu 16 LTS veya üzeri
- Red Hat 7.1 veya üzeri
Aracınızı hizmet olarak çalıştırmanız ve yönetmeniz için örnek ./svc.sh
bir systemd
betik sunuyoruz.
Aracı yapılandırıldıktan sonra bu betik oluşturulur.
Betiği çalıştırmadan önce incelemenizi ve gerekirse güncelleştirmenizi öneririz.
Bazı önemli uyarılar:
- Aracınızı hizmet olarak çalıştırırsanız, aracı hizmetini kullanıcı olarak
root
çalıştıramazsınız. - SELinux çalıştıran kullanıcılar sağlanan
svc.sh
betikte sorun olduğunu bildirdi. Bu aracı sorununa başlangıç noktası olarak başvurun. SELinux resmi olarak desteklenen bir yapılandırma değildir.
Not
Farklı bir dağıtımınız varsa veya diğer yaklaşımları tercih ediyorsanız, tercih ettiğiniz hizmet mekanizması türünü kullanabilirsiniz. Bkz. Hizmet dosyaları.
Komutlar
Aracı dizinine geçin
Örneğin, giriş dizininizin alt klasörüne yüklediyseniz myagent
:
cd ~/myagent$
Yükleme
Komut:
sudo ./svc.sh install [username]
Bu komut öğesine işaret ./runsvc.sh
eden bir hizmet dosyası oluşturur. Bu betik ortamı ayarlar (aşağıda daha fazla ayrıntı) ve aracı ana bilgisayarını başlatır. Parametre belirtilmezse username
, kullanıcı adı sudo komutuyla ayarlanan $SUDO_USER ortam değişkeninden alınır. Bu değişken her zaman komutu çağıran sudo
kullanıcının adına eşittir.
Başlangıç
sudo ./svc.sh start
Durum
sudo ./svc.sh status
Durdur
sudo ./svc.sh stop
uygulamasını kaldırma
Kaldırmadan önce durmalısınız.
sudo ./svc.sh uninstall
Ortam değişkenlerini güncelleştirme
Hizmeti yapılandırdığınızda, geçerli oturum açma kullanıcınız için PATH, LANG, JAVA_HOME, ANT_HOME ve MYSQL_PATH gibi bazı kullanışlı ortam değişkenlerinin anlık görüntüsünü alır. Değişkenleri güncelleştirmeniz gerekiyorsa (örneğin, bazı yeni yazılımları yükledikten sonra):
./env.sh
sudo ./svc.sh stop
sudo ./svc.sh start
Ortam değişkenlerinin anlık görüntüsü, aracı kök dizini altında dosyasında (PATH
içinde .path
depolanır) depolanır.env
; ortam değişkeni değişikliklerini uygulamak için bu dosyaları doğrudan da değiştirebilirsiniz.
Hizmet başlamadan önce yönergeleri çalıştırma
Hizmet başlatıldığında çalıştırmak için kendi yönergelerinizi ve komutlarınızı da çalıştırabilirsiniz. Örneğin, ortamı ayarlayabilir veya betikleri çağırabilirsiniz.
öğesini düzenleyin
runsvc.sh
.Aşağıdaki satırı yönergelerinizle değiştirin:
# insert anything to setup env when running as a service
Hizmet dosyaları
Hizmeti yüklediğinizde, bazı hizmet dosyaları yerine konur.
systemd hizmet dosyası
Bir systemd
hizmet dosyası oluşturulur:
/etc/systemd/system/vsts.agent.{tfs-name}.{agent-name}.service
Örneğin, adlı our-linux-agent
bir aracı yapılandırdınız (yukarıya bakın). Hizmet dosyası aşağıdakilerden biri olacaktır:
Azure Pipelines: Kuruluşunuzun adı. Örneğin, öğesine
https://dev.azure.com/fabrikam
bağlanırsanız hizmet adı şu şekilde olur:/etc/systemd/system/vsts.agent.fabrikam.our-linux-agent.service
TFS veya Azure DevOps Sunucusu: Şirket içi sunucunuzun adı. Örneğin, öğesine
http://our-server:8080/tfs
bağlanırsanız hizmet adı şu şekilde olur:/etc/systemd/system/vsts.agent.our-server.our-linux-agent.service
sudo ./svc.sh install
bu dosyayı şu şablondan oluşturur: ./bin/vsts.agent.service.template
.service dosyası
sudo ./svc.sh start
yukarıda açıklanan sistemli hizmet dosyasının .service
adını içeren dosyayı okuyarak hizmeti bulur.
Alternatif hizmet mekanizmaları
Betiği, aracınızı sistemli bir hizmet olarak çalıştırmanız ve yönetmeniz için kullanışlı bir yol olarak sunuyoruz ./svc.sh
. Ancak tercih ettiğiniz hizmet mekanizması türünü kullanabilirsiniz (örneğin: initd veya upstart).
Yukarıda açıklanan şablonu, diğer hizmet dosyası türlerinin oluşturulmasını kolaylaştırmak için kullanabilirsiniz.
Aracı hatasını önlemek için bir cgroup kullanın
Aracının başarısız olduğu veya kullanılamaz hale geldiği durumlardan kaçınmak önemlidir, aksi takdirde aracı işlem hattı günlüklerini akışla aktaramaz veya işlem hattı durumunu sunucuya geri bildiremez. ve daha düşük oom_score_adj
bir kullanarak cgroups
bu tür bir sorunun yüksek bellek baskısı nedeniyle oluşma riskini azaltabilirsiniz. Bunu yaptıktan sonra Linux, aracı işleminden bellek geri kazanmadan önce işlem hattı iş işlemlerinden sistem belleğini geri alır. Yapılandırmayı cgroups
ve OOM puanını öğrenin.
Aracıyı değiştirme
Aracıyı değiştirmek için Aracıyı indirme ve yapılandırma adımlarını yeniden izleyin.
Aracıyı zaten var olan bir aracıyla aynı adı kullanarak yapılandırdığınızda, mevcut aracıyı değiştirmek isteyip istemediğiniz sorulur. yanıtını Y
verirseniz değiştirdiğiniz aracıyı kaldırdığınızdan emin olun (aşağıya bakın). Aksi takdirde, birkaç dakikalık çakışmalardan sonra aracılardan biri kapanır.
Aracıyı kaldırma ve yeniden yapılandırma
Aracıyı kaldırmak için:
Önceki bölümde açıklandığı gibi hizmeti durdurun ve kaldırın.
Aracıyı kaldırın.
./config.sh remove
Kimlik bilgilerinizi girin.
Aracıyı kaldırdıktan sonra yeniden yapılandırabilirsiniz.
Katılımsız yapılandırma
Aracı, insan müdahalesi olmadan bir betikten ayarlanabilir.
Tüm soruların yanıtlarını ve geçmelisiniz --unattended
.
Aracıyı yapılandırmak için kuruluşunuzun URL'sini veya aracıları ayarlama yetkisi olan birinin koleksiyonunu ve kimlik bilgilerini bilmesi gerekir.
Diğer tüm yanıtlar isteğe bağlıdır.
Bunun yerine herhangi bir komut satırı parametresi bir ortam değişkeni kullanılarak belirtilebilir: adını büyük harfe koyun ve önüne ekleyin VSTS_AGENT_INPUT_
.
Örneğin, VSTS_AGENT_INPUT_PASSWORD
yerine belirtin --password
.
Gerekli seçenekler
--unattended
- aracı kurulumu bilgi istemez ve tüm ayarlar komut satırında sağlanmalıdır--url <url>
- Sunucunun URL'si. Örneğin: https://dev.azure.com/myorganization veya http://my-azure-devops-server:8080/tfs--auth <type>
- kimlik doğrulama türü. Geçerli değerler şunlardır:pat
(Kişisel erişim belirteci) - PAT, Azure DevOps Services ile çalışan tek düzendir.alt
(Temel kimlik doğrulaması)
Kimlik doğrulaması seçenekleri
- seçeneğini belirlediyseniz
--auth pat
:--token <token>
- kişisel erişim belirtecinizi belirtir- PAT, Azure DevOps Services ile çalışan tek şemadır.
- veya
--auth alt
seçeneğini belirlediyseniz--auth negotiate
:--userName <userName>
- bir kullanıcı adı belirtir--password <password>
- bir parola belirtir
Havuz ve aracı adları
--pool <pool>
- Aracıya katılmak için havuz adı--agent <agent>
- aracı adı--replace
- bir havuzdaki aracıyı değiştirin. Başka bir aracı aynı adla dinliyorsa, çakışmayla başarısız olur
Aracı kurulumu
--work <workDirectory>
- iş verilerinin depolandığı iş dizini. Varsayılan olarak_work
aracı dizininin kökü altındadır. İş dizini belirli bir aracıya aittir ve birden çok aracı arasında paylaşılmamalıdır.--acceptTeeEula
- Her Yerde Takım Gezgini Son Kullanıcı Lisans Sözleşmesi'ni kabul edin (yalnızca macOS ve Linux)--disableloguploads
- konsol günlüğü çıkışını sunucuya akışla aktarmayın veya göndermeyin. Bunun yerine, iş tamamlandıktan sonra aracı konağın dosya sisteminden alabilirsiniz.
Yalnızca dağıtım grubu
--deploymentGroup
- aracıyı dağıtım grubu aracısı olarak yapılandırma--deploymentGroupName <name>
- aracının katılacağını dağıtım grubunu belirtmek için ile--deploymentGroup
kullanılır--projectName <name>
- proje adını ayarlamak için ile--deploymentGroup
kullanılır--addDeploymentGroupTags
- dağıtım grubu etiketlerinin eklenmesi gerektiğini belirtmek için ile--deploymentGroup
kullanılır--deploymentGroupTags <tags>
- ile dağıtım grubu aracısı için etiketlerin virgülle--addDeploymentGroupTags
ayrılmış listesini belirtmek için kullanılır - örneğin "web, db"
Yalnızca ortamlar
--addvirtualmachineresourcetags
- ortam kaynak etiketlerinin eklenmesi gerektiğini belirtmek için kullanılır--virtualmachineresourcetags <tags>
- ortam kaynak aracısı için etiketlerin virgülle ayrılmış listesini belirtmek için ile--addvirtualmachineresourcetags
birlikte kullanılır - örneğin "web, db"
./config.sh --help
her zaman en son gerekli ve isteğe bağlı yanıtları listeler.
Tanılama
Şirket içinde barındırılan aracınızla ilgili sorun yaşıyorsanız, tanılama çalıştırmayı deneyebilirsiniz. Aracıyı yapılandırdıktan sonra:
./run.sh --diagnostics
Bu işlem, sorunu gidermenize yardımcı olabilecek bir tanılama paketi aracılığıyla çalıştırılır. Tanılama özelliği aracısı 2.165.0 sürümünden itibaren kullanılabilir.
Şirket içinde barındırılan aracılar için ağ tanılama
Şirket içinde barındırılan aracıların ağ sorunlarını giderirken kullanılabilecek ek günlükleri toplamak için Agent.Diagnostic
değerini true
olarak ayarlayın. Daha fazla bilgi için bkz. Şirket içi barındırılan aracılar için ağ tanılaması.
Diğer seçeneklerle ilgili yardım
Diğer seçenekler hakkında bilgi edinmek için:
./config.sh --help
Yardım, kimlik doğrulama alternatifleri ve katılımsız yapılandırma hakkında bilgi sağlar.
Özellikler
Aracınızın özellikleri kataloglanır ve havuza tanıtılır, böylece yalnızca işleyebilecekleri derlemeler ve yayınlar kendisine atanır. Bkz. Derleme ve sürüm aracısı özellikleri.
Çoğu durumda, aracıyı dağıttığınızda yazılım veya yardımcı programlar yüklemeniz gerekir. Genellikle geliştirme makinenizde kullandığınız yazılım ve araçları aracılarınıza yüklemeniz gerekir.
Örneğin, derlemeniz npm görevini içeriyorsa, havuzda npm yüklü bir derleme aracısı olmadığı sürece derleme çalışmaz.
Önemli
Özellikler tüm ortam değişkenlerini ve aracı çalıştırıldığında ayarlanan değerleri içerir. Aracı çalışırken bu değerlerden herhangi biri değişirse, yeni değerleri almak için aracının yeniden başlatılması gerekir. Bir aracıya yeni yazılım yükledikten sonra, derlemenin çalışabilmesi için yeni özelliğin havuzda görünmesi için aracıyı yeniden başlatmanız gerekir.
Ortam değişkenlerini özellik olarak dışlamak istiyorsanız, yoksaymak için virgülle ayrılmış bir değişken listesiyle bir ortam değişkeni VSO_AGENT_IGNORE
ayarlayarak bunları belirleyebilirsiniz.
SSS
Yeni v3 aracı yazılımı hakkında nereden daha fazla bilgi edinebilirim?
v3 aracı yazılımı hakkında bilgi ve SSS için bkz . Aracı yazılımı sürüm 3.
En son aracı sürümüne sahip olduğumdan emin Nasıl yaparım??
Aracı havuzları sekmesine gidin:
Kuruluşunuzda (
https://dev.azure.com/{yourorganization}
) oturum açın.Azure DevOps, Kuruluş ayarları'nı seçin.
Aracı havuzları'nı seçin.
Proje koleksiyonunuzda (
http://your-server/DefaultCollection
) oturum açın.Azure DevOps, Koleksiyon ayarları'nı seçin.
Aracı havuzları'nı seçin.
Azure DevOps, Koleksiyon ayarları'nı seçin.
Aracı havuzları'nı seçin.
Aracıyı içeren havuza tıklayın.
Aracının etkinleştirildiğinden emin olun.
Yetenekler sekmesine gidin:
Aracı havuzları sekmesinden istediğiniz aracı havuzunu seçin.
Aracılar'ı seçin ve istediğiniz aracıyı seçin.
Özellikler sekmesini seçin.
Not
Microsoft tarafından barındırılan aracılar sistem özelliklerini görüntülemez. Microsoft tarafından barındırılan aracılarda yüklü yazılımların listesi için bkz . Microsoft tarafından barındırılan aracı kullanma.
Aracı havuzları sekmesinden istediğiniz havuzu seçin.
Aracılar'ı seçin ve istediğiniz aracıyı seçin.
Özellikler sekmesini seçin.
Aracı havuzları sekmesinden istediğiniz havuzu seçin.
Aracılar'ı seçin ve istediğiniz aracıyı seçin.
Özellikler sekmesini seçin.
Yeteneği arayın
Agent.Version
. Bu değeri en son yayımlanan aracı sürümüyle karşılaştırabilirsiniz. Bkz . Azure Pipelines Aracısı ve listelenen en yüksek sürüm numarası için sayfayı denetleyin.Her aracı, aracının daha yeni bir sürümünü gerektiren bir görev çalıştırdığında kendisini otomatik olarak güncelleştirir. Bazı aracıları el ile güncelleştirmek istiyorsanız havuza sağ tıklayın ve Tüm aracıları güncelleştir'i seçin.
Azure DevOps Server havuzunun parçası olan aracılarımı güncelleştirebilir miyim?
Evet. Azure DevOps Server 2019'da başlayarak, sunucunuzu yerel diskte aracı paketi dosyalarını aramak üzere yapılandırabilirsiniz. Bu yapılandırma, yayınlandığı sırada sunucuyla birlikte gelen varsayılan sürümü geçersiz kılar. Bu senaryo, sunucunun İnternet'e erişimi olmadığında da geçerlidir.
İnternet erişimi olan bir bilgisayardan Azure Pipelines Aracısı GitHub Sürümleri sayfasından aracı paketi dosyalarının en son sürümünü (.zip veya .tar.gz biçimde) indirin.
İndirilen paket dosyalarını istediğiniz bir yöntemi (USB sürücüsü, Ağ aktarımı vb.) kullanarak her Azure DevOps Server Uygulama Katmanına aktarın. Aracı dosyalarını aşağıdaki klasörün altına yerleştirin:
- Windows:
%ProgramData%\Microsoft\Azure DevOps\Agents
- Linux:
usr/share/Microsoft/Azure DevOps/Agents
- Macos:
usr/share/Microsoft/Azure DevOps/Agents
Aracılar klasörü yoksa oluşturun.
- Artık hazırsınız! Azure DevOps Sunucunuz artık aracılar her güncelleştirildiğinde yerel dosyaları kullanacaktır. Her aracı, aracının daha yeni bir sürümünü gerektiren bir görev çalıştırdığında kendisini otomatik olarak güncelleştirir. Ancak bazı aracıları el ile güncelleştirmek istiyorsanız havuza sağ tıklayın ve ardından Tüm aracıları güncelleştir'i seçin.
Hizmet komutlarını çalıştırmak için sudo neden gereklidir?
./svc.sh
, systemctl
gerektirir sudo
.
Kaynak kodu: GitHub'da systemd.svc.sh.template
Güvenlik duvarı çalıştırıyorum ve kodum Azure Repos’da. Aracının hangi URL'lerle iletişim kurması gerekiyor?
Güvenlik duvarının arkasındaki güvenli bir ağda aracı çalıştırıyorsanız, aracının aşağıdaki URL'ler ve IP adresleriyle iletişim başlataadığından emin olun.
Etki alanı URL'si | Açıklama |
---|---|
https://{organization_name}.pkgs.visualstudio.com |
Etki alanını kullanan kuruluşlar için Azure DevOps Paketleme API'si {organization_name}.visualstudio.com |
https://{organization_name}.visualstudio.com |
Etki alanını kullanan {organization_name}.visualstudio.com kuruluşlar için |
https://{organization_name}.vsblob.visualstudio.com |
Etki alanını kullanan kuruluşlar için Azure DevOps Telemetrisi {organization_name}.visualstudio.com |
https://{organization_name}.vsrm.visualstudio.com |
Etki alanını kullanan {organization_name}.visualstudio.com kuruluşlar için Release Management Services |
https://{organization_name}.vssps.visualstudio.com |
Etki alanını kullanan {organization_name}.visualstudio.com kuruluşlar için Azure DevOps Platform Hizmetleri |
https://{organization_name}.vstmr.visualstudio.com |
Etki alanını kullanan {organization_name}.visualstudio.com kuruluşlar için Azure DevOps Test Yönetim Hizmetleri |
https://*.blob.core.windows.net |
Azure Artifacts |
https://*.dev.azure.com |
Etki alanını kullanan dev.azure.com kuruluşlar için |
https://*.vsassets.io |
CDN aracılığıyla Azure Artifacts |
https://*.vsblob.visualstudio.com |
Etki alanını kullanan kuruluşlar için Azure DevOps Telemetrisi dev.azure.com |
https://*.vssps.visualstudio.com |
Etki alanını kullanan dev.azure.com kuruluşlar için Azure DevOps Platform Hizmetleri |
https://*.vstmr.visualstudio.com |
Etki alanını kullanan dev.azure.com kuruluşlar için Azure DevOps Test Yönetim Hizmetleri |
https://app.vssps.visualstudio.com |
Etki alanını kullanan {organization_name}.visualstudio.com kuruluşlar için |
https://dev.azure.com |
Etki alanını kullanan dev.azure.com kuruluşlar için |
https://login.microsoftonline.com |
Microsoft Entra oturum açma |
https://management.core.windows.net |
Azure Yönetim API'leri |
https://vstsagentpackage.azureedge.net |
Aracı paketi |
Kuruluşunuzun mevcut güvenlik duvarı veya IP kısıtlamalarıyla çalıştığından dev.azure.com
*dev.azure.com
emin olmak için açık olduğundan ve açık olduğundan emin olun ve izin verilmiş IP'lerinizi IP sürümünüz temelinde aşağıdaki IP adreslerini içerecek şekilde güncelleştirin. ve 13.107.9.183
IP adreslerini şu anda izin-listelediyseniz13.107.6.183
, kaldırmanıza gerek olmadığından bunları yerinde bırakın.
IPv4 aralıkları
13.107.6.0/24
13.107.9.0/24
13.107.42.0/24
13.107.43.0/24
IPv6 aralıkları
2620:1ec:4::/48
2620:1ec:a92::/48
2620:1ec:21::/48
2620:1ec:22::/48
Not
İzin verilen adresler hakkında daha fazla bilgi için bkz . İzin verilen adres listeleri ve ağ bağlantıları.
Aracıyı otomatik olarak imzalanan sertifikayla Nasıl yaparım? çalıştırın?
Aracıyı otomatik olarak imzalanan sertifikayla çalıştırma
Aracıyı bir web ara sunucusunun arkasında Nasıl yaparım? çalıştırabilirsiniz?
Aracıyı bir web ara sunucusunun arkasında çalıştırma
Aracıyı yeniden başlatma Nasıl yaparım?
Aracıyı etkileşimli olarak çalıştırıyorsanız Etkileşimli çalıştırma başlığındaki yeniden başlatma yönergelerine bakın. Aracıyı sistemli bir hizmet olarak çalıştırıyorsanız Aracıyı durdurma ve başlatma adımlarını izleyin.
Aracıyı bir web proxy'sini atlayacak ve Azure Pipelines'a bağlanacak şekilde yapılandırıyor Nasıl yaparım??
Aracının proxy'nizi atlayıp azure pipelines'a doğrudan bağlanmasını istiyorsanız, aracının aşağıdaki URL'lere erişmesini sağlamak için web proxy'nizi yapılandırmanız gerekir.
Etki alanını kullanan kuruluşlar için *.visualstudio.com
:
https://login.microsoftonline.com
https://app.vssps.visualstudio.com
https://{organization_name}.visualstudio.com
https://{organization_name}.vsrm.visualstudio.com
https://{organization_name}.vstmr.visualstudio.com
https://{organization_name}.pkgs.visualstudio.com
https://{organization_name}.vssps.visualstudio.com
Etki alanını kullanan kuruluşlar için dev.azure.com
:
https://dev.azure.com
https://*.dev.azure.com
https://login.microsoftonline.com
https://management.core.windows.net
https://vstsagentpackage.azureedge.net
https://vssps.dev.azure.com
Kuruluşunuzun mevcut güvenlik duvarı veya IP kısıtlamalarıyla çalıştığından dev.azure.com
*dev.azure.com
emin olmak için açık olduğundan ve açık olduğundan emin olun ve izin verilmiş IP'lerinizi IP sürümünüz temelinde aşağıdaki IP adreslerini içerecek şekilde güncelleştirin. ve 13.107.9.183
IP adreslerini şu anda izin-listelediyseniz13.107.6.183
, kaldırmanıza gerek olmadığından bunları yerinde bırakın.
IPv4 aralıkları
13.107.6.0/24
13.107.9.0/24
13.107.42.0/24
13.107.43.0/24
IPv6 aralıkları
2620:1ec:4::/48
2620:1ec:a92::/48
2620:1ec:21::/48
2620:1ec:22::/48
Not
Bu yordam, aracının bir web proxy'sini atlamasına olanak tanır. Derleme işlem hattınız ve betikleriniz, derlemenizde çalıştırdığınız her görev ve araç için web proxy'nizi atlamayı işlemeye devam etmelidir.
Örneğin, bir NuGet görevi kullanıyorsanız, web proxy'nizi kullandığınız NuGet akışını barındıran sunucunun URL'sini atlamayı destekleyecek şekilde yapılandırmanız gerekir.
TFS kullanıyorum ve yukarıdaki bölümlerdeki URL'ler benim için çalışmıyor. Nereden yardım alabilirim?
Şirket içinde TFS kullanıyorum ve bu özelliklerden bazılarını görmüyorum. Neden?
Bu özelliklerden bazıları yalnızca Azure Pipelines'da kullanılabilir ve henüz şirket içinde kullanılamaz. TFS'nin en son sürümüne yükselttiyseniz bazı özellikler şirket içinde kullanılabilir.
TFVC önkoşulları
TFVC kullanıyorsanız Oracle Java JDK 1.6 veya üzeri de gerekir. (Oracle JRE ve OpenJDK bu amaç için yeterli değildir.)
TEE eklentisi , TFVC işlevselliği için kullanılır. TFVC ile çalışmayı planlıyorsanız yapılandırma sırasında kabul etmeniz gereken bir EULA'sı vardır.
TEE eklentisi artık korunmadığından ve bazı güncel olmayan Java bağımlılıkları içerdiğinden, Agent 2.198.0'dan başlayarak aracı dağıtımına eklenmez. Ancak, bir TFVC depoyu kullanıma alırsanız, kullanıma alma görevi yürütme sırasında TEE eklentisi indirilir. TEE eklentisi, iş yürütüldikten sonra kaldırılır.
Not
Not: Bu indirme mekanizması nedeniyle kullanıma alma görevinizin çalışmaya başlamasının uzun sürdüğünü fark edebilirsiniz.
Aracı bir ara sunucu veya güvenlik duvarının arkasında çalışıyorsa, şu siteye erişiminiz olduğundan emin olmanız gerekir: https://vstsagenttools.blob.core.windows.net/
. TEE eklentisi bu adresten indirilir.
Şirket içinde barındırılan bir aracı kullanıyorsanız ve TEE indirmeyle ilgili sorunlarla karşılaşıyorsanız, TEE'yi el ile yükleyebilirsiniz:
- Ortam veya işlem hattı değişkenini olarak
true
ayarlayınDISABLE_TEE_PLUGIN_REMOVAL
. Bu değişken, TFVC deposu kullanıma alındıktan sonra aracının TEE eklentisini kaldırmasını engeller. - Team Explorer Everywhere GitHub sürümlerinden TEE-CLC sürüm 14.135.0'ı el ile indirin.
- klasörünün
TEE-CLC-14.135.0
içeriğini öğesine<agent_directory>/externals/tee
ayıklayın.