Azure Pipelines aracıları

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019 | TFS 2018

Not

Microsoft Team Foundation Server (TFS) 2018 ve önceki sürümlerde derleme ve yayın işlem hatları tanım olarak adlandırılır, çalıştırmalar derleme olarak adlandırılır, hizmet bağlantılarıhizmet uç noktaları olarak adlandırılır, aşamalarortam olarak adlandırılır ve işleraşama olarak adlandırılır.

Kodunuzu derlemek veya Azure Pipelines kullanarak yazılımınızı dağıtmak için en az bir aracıya ihtiyacınız vardır. Daha fazla kod ve kişi ekledikten sonra daha fazlasına ihtiyacınız olacak.

İşlem hattınız çalıştırıldığında sistem bir veya daha fazla iş başlatır. Aracı, bir kerede bir iş çalıştıran yüklü aracı yazılımıyla altyapıyı bilgi işlemdir.

İşler doğrudan aracının konak makinesinde veya bir kapsayıcıda çalıştırılabilir.

Microsoft barındırılan aracılar

İşlem hatlarınız Azure Pipelines'daysa, Microsoft barındırılan aracı kullanarak işlerinizi çalıştırmak için uygun bir seçeneğiniz vardır. Microsoft barındırılan aracılarda bakım ve yükseltme işlemleri sizin için yapılır. Bir iş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 işten sonra atılır (başka bir deyişle, bir işin sanal makine dosya sisteminde yaptığı kod kullanıma alma gibi değişiklikler bir sonraki iş için kullanılamaz. Microsoft barındırılan aracılar işleri doğrudan VM'de veya kapsayıcıda çalıştırabilir.

Azure Pipelines, Microsoft barındırılan aracılarla Azure Pipelines adlı önceden tanımlanmış bir aracı havuzu sağlar.

Birçok ekip için bu, işlerinizi çalıştırmanın en basit yoludur. Önce deneyebilir ve derlemeniz veya dağıtımınız için çalışıp çalışmadığını görebilirsiniz. Aksi takdirde, şirket içinde barındırılan bir aracı kullanabilirsiniz.

İpucu

Microsoft barındırılan bir aracıyı ücretsiz olarak deneyebilirsiniz.

Microsoft barındırılan aracılar hakkında daha fazla bilgi edinin.

Şirket içinde barındırılan aracılar

İşleri çalıştırmak için kendi başınıza ayarlayıp yönettiğiniz bir aracı, şirket içinde barındırılan bir aracıdır. Şirket içinde barındırılan aracıları Azure Pipelines’da veya eski adı Team Foundation Server (TFS) olan Azure DevOps Server’da kullanabilirsiniz. Şirket içi barındırılan aracılar, derlemeleriniz ve dağıtımlarınız için gereken bağımlı yazılımları yükleme konusunda daha fazla denetim sahibi olmanızı sağlar. Ayrıca makine düzeyindeki önbellekler ve yapılandırma çalıştırmadan çalıştırmaya devam eder ve bu da hızı artırabilir.

Not

Makine başına birden çok aracı yüklense de, makine başına yalnızca bir aracı yüklemenizi kesinlikle öneririz. İki veya daha fazla aracı yüklemek performansı ve işlem hatlarınızın sonucunu olumsuz etkileyebilir.

İpucu

Şirket içinde barındırılan bir aracı yüklemeden önce, Microsoft barındırılan aracı havuzunun sizin için çalışıp çalışmayacağını görmek isteyebilirsiniz. Çoğu durumda bu, başlamanın en basit yoludur. Bir deneyin.

Aracıyı Linux, macOS veya Windows makinelerine yükleyebilirsiniz. Aracıyı Docker kapsayıcısına da yükleyebilirsiniz. Şirket içinde barındırılan aracıyı yükleme hakkında daha fazla bilgi için aşağıdakilere göz atın:

Not

macOS'ta, çalıştırıldığında ./config.sh Gatekeeper korumasının tar dosyasındaki her derleme için görüntülenmesini önlemek için indirme arşivindeki özel özniteliği temizlemeniz gerekir. Aşağıdaki komut dosyadaki genişletilmiş özniteliği temizler:

xattr -c vsts-agent-osx-x64-V.v.v.tar.gz  ## replace V.v.v with the version in the filename downloaded.

# then unpack the gzip tar file normally:

tar xvfz vsts-agent-osx-x64-V.v.v.tar.gz

Aracıyı bir makineye yükledikten sonra ilgili makineye işleriniz için gerekli olan diğer yazılımları yükleyebilirsiniz.

Not

Aracılar geriye dönük olarak çok uyumlu. Azure DevOps aracının daha yüksek bir sürümünü talep etmediği sürece aracının herhangi bir sürümü herhangi bir Azure DevOps sürümüyle uyumlu olmalıdır.

Tüm güncel düzeltme eklerine ve hata düzeltmelerine sahip olması garanti edilen tek sürüm olduğundan aracının yalnızca en son sürümünü destekliyoruz.

Azure Sanal Makine Ölçek Kümesi aracıları

Azure Sanal Makine Ölçek Kümesi aracıları, taleplerinizi karşılamak için otomatik olarak ölçeklendirilebilen, şirket içinde barındırılan bir aracı biçimidir. Bu esneklik, ayrılmış aracıları sürekli çalıştırma gereksiniminizi azaltır. Microsoft tarafından barındırılan aracılardan farklı olarak aracıların üzerinde çalıştığı makinelerin boyutu ve görüntüsü üzerinde de esnekliğe sahip olursunuz.

Bir Sanal Makine Ölçek Kümesi, beklemede tutulacak bir dizi aracı, ölçek kümesinde en fazla sayıda sanal makine belirtirsiniz ve Azure Pipelines aracılarınızın ölçeklendirilmesini sizin yerinize yönetir.

Daha fazla bilgi için bkz. Azure Sanal Makine Ölçek Kümesi aracıları.

Paralel işler

Paralel işler , kuruluşunuzda aynı anda çalıştırabileceğiniz iş sayısını temsil eder. Kuruluşunuzun tek bir paralel işi varsa, kuruluşunuzda aynı anda tek bir iş çalıştırabilir ve ilk iş tamamlanana kadar ek eş zamanlı işler kuyruğa alınır. İki işi aynı anda çalıştırmak için iki paralel iş gerekir. Azure Pipelines'da, Microsoft barındırılan altyapıda veya kendi (şirket içinde barındırılan) altyapınızda paralel işler çalıştırabilirsiniz.

Microsoft, en az bir paralel iş içeren her kuruluşta varsayılan olarak ücretsiz bir hizmet katmanı sağlar. Çalıştırmanız gereken eşzamanlı işlem hatlarının sayısına bağlı olarak, birden çok Microsoft barındırılan veya şirket içinde barındırılan aracıları aynı anda kullanmak için daha fazla paralel iş gerekebilir. Paralel işler ve farklı ücretsiz hizmet katmanları hakkında daha fazla bilgi için bkz. Azure Pipelines'da paralel işler.

Aynı anda birden çok aracı kullanmak için daha fazla paralel iş gerekebilir:

Önemli

Azure DevOps Server 2019'dan başlayarak, sürümlerde şirket içinde barındırılan eşzamanlı işler için ödeme yapmanız gerekmez. Yalnızca sahip olduğunuz aracı sayısıyla sınırlıdır.

Özellikler

Şirket içinde barındırılan her aracı, neler yapabileceğini gösteren bir dizi özelliğe sahiptir. Özellikler, aracı yazılımı tarafından otomatik olarak bulunan ad-değer çiftleridir; bu durumda bunlar sistem özellikleri olarak adlandırılır veya sizin tanımladığınız değerlerdir ve bu durumda bunlar kullanıcı özellikleri olarak adlandırılır.

Aracı yazılımı makinenin adı, işletim sistemi türü ve makinede yüklü olan belirli yazılımların sürümleri gibi çeşitli sistem özelliklerini otomatik olarak belirler. Ayrıca, makinede tanımlanan ortam değişkenleri otomatik olarak sistem özellikleri listesinde görünür.

Not

Ortam değişkenlerini özellik olarak depolamak, bir aracı çalıştırıldığında ortam değişkenlerini ayarlamak için depolanan özellik değerlerinin kullanıldığı anlamına gelir. Ayrıca, aracı çalışırken ortam değişkenlerinde yapılan değişiklikler herhangi bir görev tarafından alınmaz ve kullanılmaz. Değişen hassas ortam değişkenleriniz varsa ve bunların özellik olarak depolanmasını istemiyorsanız, yoksayılacak değişkenlerin virgülle ayrılmış bir listesiyle ortam değişkenini ayarlayarak VSO_AGENT_IGNORE bunların yoksayılmasını sağlayabilirsiniz. Örneğin, PATH yazılım yüklüyorsanız yoksaymak isteyebileceğiniz kritik bir değişkendir.

İşlem hattı yazarken aracının belirli taleplerini belirtirsiniz. Sistem işi yalnızca işlem hattında belirtilen taleplerle eşleşen özelliklere sahip aracılara gönderir. Sonuç olarak, aracı özellikleri işleri belirli aracılara yönlendirmenizi sağlar.

Not

Talepler ve yetenekler, işlerin işin gereksinimlerini karşılayan bir aracıyla eşleştirilebilmesi için şirket içi barındırılan aracılarla kullanılmak üzere tasarlanmıştır. Microsoft barındırılan aracıları kullanırken, aracı için işin gereksinimlerine uyan bir görüntü seçersiniz, bu nedenle Microsoft barındırılan aracıya özellik eklemek mümkün olsa da, özellikleri Microsoft barındırılan aracılarla kullanmanız gerekmez.

Aracı özelliklerini yapılandırma

Aracı havuzlarına gidip istenen aracı için Özellikler sekmesini seçerek aracının sürümü ve sistem özellikleri dahil olmak üzere ayrıntılarını görüntüleyebilir ve kullanıcı özelliklerini yönetebilirsiniz.

  1. Web tarayıcınızda Aracı havuzları'na gidin:

    1. Azure DevOps, Kuruluş ayarları'nı seçin.

      Kuruluş ayarları'nı seçin.

    2. Aracı havuzları'nı seçin.

      Aracı havuzları sekmesini seçin.

    1. Azure DevOps, Koleksiyon ayarları'nı seçin.

      Koleksiyon ayarları'nı seçin.

    2. Aracı havuzları'nı seçin.

      Aracı havuzları'nı seçin.

    1. Azure DevOps, Koleksiyon ayarları'nı seçin.

      Koleksiyon ayarları, 2019.

    2. Aracı havuzları'nı seçin.

      Aracı havuzları, 2019'u seçin.

    1. Projenize gidin ve Ayarlar (dişli simgesi) Aracı Kuyrukları'nı> seçin.

      Ayarlar, Aracı Kuyrukları, 2018'i seçin.

    2. Havuzları yönet'i seçin.

      2018'de Havuzları yönet'i seçin.

  2. Özellikler sekmesine gidin:

    1. Aracı havuzları sekmesinden istediğiniz aracı havuzunu seçin.

      Aracı havuzları'ndan istediğiniz aracı havuzunu seçin.

    2. Aracılar'ı seçin ve istediğiniz aracıyı seçin.

      Aracılar'ı seçin ve aracıyı seçin.

    3. Özellikler sekmesini seçin.

      Özellikler sekmesini seçin.

      Not

      Microsoft barındırılan aracılar sistem özelliklerini görüntülemez. Microsoft barındırılan aracılara yüklenen yazılımların listesi için bkz. Microsoft barındırılan aracı kullanma.

    1. Aracı havuzları sekmesinden istediğiniz havuzu seçin.

      İstediğiniz havuzu seçin.

    2. Aracılar'ı seçin ve istediğiniz aracıyı seçin.

      Aracılar'ı seçin ve istediğiniz aracıyı seçin.

    3. Özellikler sekmesini seçin.

      Aracı özellikleri sekmesi.

    1. Aracı havuzları sekmesinden istediğiniz havuzu seçin.

      İstediğiniz sekme olan 2019'ı seçin.

    2. Aracılar'ı seçin ve istediğiniz aracıyı seçin.

      İstenen aracıyı seçin, 2019.

    3. Özellikler sekmesini seçin.

      Özellikler sekmesini seçin, 2019.

    İstediğiniz aracıyı seçin ve Özellikler sekmesini seçin.

    Aracı özellikleri sekmesi, 2018.

  3. Aracıya yeni bir özellik kaydetmek için Yeni özellik ekle'yi seçin.

İpucu

Şirket içinde barındırılan bir aracıya yeni yazılım yükledikten sonra, yeni özelliğin görünmesi için aracıyı yeniden başlatmanız gerekir. Daha fazla bilgi için bkz . Windows aracısını yeniden başlatma, Linux aracısını yeniden başlatma ve Mac aracısını yeniden başlatma.

İletişim

Azure Pipelines ile İletişim

TFS ile iletişim

Aracı, çalıştırılması gereken işi belirlemek, günlükleri ve iş durumunu raporlamak için Azure Pipelines veya Azure DevOps Server ile iletişim kurar. Bu iletişim her zaman aracı tarafından başlatılır. Aracıyı nasıl yapılandırdığınıza bağlı olarak aracıdan Azure Pipelines’a veya Azure DevOps Server’a gönderilen tüm iletiler HTTP veya HTTPS üzerinden gider. Bu çekme modeli, aracının aşağıda gösterilen farklı topolojilerde yapılandırılmasını sağlar.

Şirket içi yüklemelerde aracı topolojileri.

Azure DevOps Services aracı topolojileri.

Aracı ile Azure Pipelines veya Azure DevOps Server arasında kurulan yaygın bir iletişim düzeni aşağıda gösterilmiştir.

  1. Kullanıcı bir aracıyı Azure Pipelines'a kaydeder veya aracı havuzuna ekleyerek Azure DevOps Server. Bir aracıyı bu aracı havuzuna kaydetmek için aracı havuzu yöneticisi olmanız gerekir. Aracı havuzu yöneticisinin kimliği yalnızca kayıt sırasında gereklidir ve aracıda kalıcı olmaz veya aracı ile Azure Pipelines veya Azure DevOps Server arasındaki başka bir iletişimde kullanılmaz. Kayıt tamamlandıktan sonra aracı bir dinleyici OAuth belirtecini indirir ve bunu iş kuyruğuna dinlemek için kullanır.

  2. Aracı, HTTP uzun yoklaması kullanarak Azure Pipelines/Azure DevOps Server iş kuyruğuna yeni bir iş isteği gönderilip gönderilmediğini dinler. Bir iş kullanılabilir olduğunda, aracı işi ve işe özgü OAuth belirtecini indirir. Bu belirteç, işlem hattında belirtilen kapsamlı kimlik için Azure Pipelines/Azure DevOps Server tarafından oluşturulur. Bu belirteç kısa ömürlüdür ve aracı tarafından Azure Pipelines veya Azure DevOps Server’daki iş kaynaklarına (örneğin, kaynak kodu) erişmek veya kaynakları değiştirmek (örneğin, test sonuçlarını karşıya yüklemek) için kullanılır.

  3. İş tamamlandıktan sonra aracı, işe özgü OAuth belirtecini atar ve dinleyici OAuth belirtecini kullanarak yeni bir iş isteği olup olmadığını denetleme sürecine geri döner.

Aracı ile Azure Pipelines/Azure DevOps Server arasında gönderilip alınan iletilerin yükü, asimetrik şifreleme kullanılarak güvenli hale getirilir. Her aracının ortak-özel anahtar çifti vardır ve ortak anahtar kayıt sırasında sunucuya gönderilir. Sunucu, işin yükünü aracıya göndermeden önce şifrelemek için ortak anahtarı kullanır. Aracı, özel anahtarını kullanarak iş içeriğinin şifresini çözer. İşlem hatlarında veya değişken gruplarında depolanan gizli diziler de aracıya gönderilirken bu şekilde güvenli hale getirilir.

Hedef sunuculara dağıtılacak iletişim

Aracıyı kullanarak yapıtları bir sunucu kümesine dağıttığınızda bu sunucularla “görüş hattı” bağlantısı kurulması gerekir. Microsoft tarafından barındırılan aracı havuzlarının varsayılan olarak Azure web sitelerine ve Azure’da çalışan sunuculara bağlantısı vardır.

Not

Azure kaynaklarınız bir Azure Sanal Ağ çalışıyorsa, azure sanal ağınızın güvenlik duvarı kurallarını aracı tarafından erişime izin verecek şekilde yapılandırabilmeniz için barındırılan Microsoft aracıların dağıtıldığı Aracı IP aralıklarını alabilirsiniz.

Şirket içi ortamlarınızın Microsoft tarafından barındırılan bir aracı havuzuna bağlantısı yoksa (bu durum genellikle ara güvenlik duvarlarından kaynaklanır), şirket içi bilgisayarlarda şirket içinde barındırılan bir aracıyı el ile yapılandırmanız gerekir. Aracıların aşağıdaki şemada gösterildiği gibi Azure Pipelines veya Team Foundation Server’a bağlanmak için hedef şirket içi ortamlara ve internete bağlanabiliyor olması gerekir.

Şirket içi ortamlar için aracı bağlantısı

Kimlik Doğrulaması

Bir aracıyı kaydetmek için aracı havuzundaki yönetici rolünün üyesi olmanız gerekir. Aracı havuzu yöneticisinin kimliği yalnızca kayıt sırasında gereklidir ve aracıda kalıcı olmaz veya aracı ile Azure Pipelines veya Azure DevOps Server arasındaki sonraki iletişimlerde kullanılmaz. Ayrıca aracıyı yapılandırmak için sunucuda yerel yönetici olmanız gerekir.

Aracınız, aşağıdaki yöntemi kullanarak Azure Pipelines’da kimlik doğrulaması yapabilir:

Aracınız aşağıdaki yöntemlerden birini kullanarak Azure DevOps Server veya TFS'de kimlik doğrulaması yapabilir:

Kişisel Erişim Belirteci (PAT):

Azure Pipelines veya TFS 2017 ve daha yeni bir sürüme aracı bağlamak için PAT oluşturun ve kullanın. PAT, Azure Pipelines ile çalışan tek şemadır. PAT,Aracı Havuzları (okuma, yönetme) kapsamına (dağıtım grubu aracısı için, PAT'nin Dağıtım grubu (okuma, yönetme) kapsamına sahip olması gerekir ve birden çok aracıyı kaydetmek için tek bir PAT kullanılabilirken, PAT yalnızca aracıyı kaydederken kullanılır ve sonraki iletişim için kullanılmaz. Daha fazla bilgi için Windows, Linux veya macOS şirket içinde barındırılan aracılar makalelerinin Kişisel erişim belirteci (PAT) ile kimlik doğrulama bölümüne bakın.

Azure DevOps Server ile PAT kullanmak için sunucunuzun HTTPS ile yapılandırılması gerekir. Bkz. Web sitesi ayarları ve güvenliği.

Tümleşik

NTLM veya Kerberos gibi bir Windows kimlik doğrulama şeması aracılığıyla oturum açmış kullanıcının kimlik bilgilerini kullanarak bir Windows aracısını TFS'ye bağlayın.

Bu kimlik doğrulama yöntemini kullanmak için önce TFS sunucunuzu yapılandırmanız gerekir.

  1. TFS'yi çalıştırdığınız makinede oturum açın.

  2. Internet Information Services (IIS) Yöneticisi’ni başlatın. TFS sitenizi seçin ve NTLM veya Kerberos gibi geçerli bir sağlayıcıyla Windows Kimlik Doğrulaması'nın etkinleştirildiğinden emin olun.

IIS TFS windows kimlik doğrulaması

ntlm sağlayıcısı ile IIS TFS windows kimlik doğrulaması

Anlaşma

NTLM veya Kerberos gibi bir Windows kimlik doğrulama şeması aracılığıyla TFS'ye oturum açmış kullanıcı dışında bir kullanıcı olarak bağlanın.

Bu kimlik doğrulama yöntemini kullanmak için önce TFS sunucunuzu yapılandırmanız gerekir.

  1. TFS'yi çalıştırdığınız makinede oturum açın.

  2. Internet Information Services (IIS) Yöneticisi’ni başlatın. TFS sitenizi seçin ve Anlaşma sağlayıcısı ve NTLM veya Kerberos gibi başka bir yöntemle Windows Kimlik Doğrulaması'nın etkinleştirildiğinden emin olun.

IIS TFS windows kimlik doğrulaması

Anlaşma ve ntlm sağlayıcısı ile IIS TFS windows kimlik doğrulaması

Alternatif

Temel kimlik doğrulamasını kullanarak TFS'ye bağlanın. Bu yöntemi kullanmak için önce TFS'de HTTPS'yi yapılandırmanız gerekir.

Bu kimlik doğrulama yöntemini kullanmak için TFS sunucunuzu aşağıdaki gibi yapılandırmanız gerekir:

  1. TFS'yi çalıştırdığınız makinede oturum açın.

  2. Temel kimlik doğrulamayı yapılandırma. Bkz. Temel Kimlik Doğrulaması kullanarak Team Foundation Server 2015'e karşı kullanma.tfx

Etkileşimli veya hizmet

Şirket içinde barındırılan aracınızı bir hizmet veya etkileşimli bir işlem olarak çalıştırabilirsiniz. Aracıyı yapılandırdıktan sonra çalıştığından emin olmak için önce etkileşimli modda denemeniz önerilir. Ardından üretim ortamında kullanmak için güvenilir bir şekilde çalışır durumda kalması amacıyla aracıyı aşağıdaki modlardan birinde çalıştırmanız önerilir. Bu modlar, makine yeniden başlatılırsa aracının otomatik olarak başlatılmasını da sağlar.

  1. Hizmet olarak. Aracının yaşam döngüsünü yönetmek için işletim sisteminin hizmet yöneticisinden yararlanabilirsiniz. Ayrıca aracı bir hizmet olarak çalıştırıldığında aracıyı otomatik yükseltme deneyimi daha iyi çalışır.

  2. Otomatik oturum açmanın etkinleştirildiği etkileşimli bir işlem olarak. Bazı durumlarda aracıyı üretim ortamı kullanımı için etkileşimli olarak çalıştırmanız gerekebilir (örneğin, kullanıcı arabirimi testlerini çalıştırmak için). Aracı bu modda çalışacak şekilde yapılandırıldığında ekran koruyucu da devre dışı bırakılır. Bazı etki alanı ilkeleri otomatik oturum açmayı etkinleştirmenizi veya ekran koruyucuyu devre dışı bırakmanızı engelleyebilir. Böyle durumlarda etki alanı ilkesinden muafiyet istemeniz veya aracıyı etki alanı ilkelerinin uygulanmadığı bir çalışma grubu bilgisayarında çalıştırmanız gerekebilir.

    Not

    Diğer kullanıcıların bilgisayara gidip otomatik olarak oturum açan hesabı kullanmasını sağladığınız için otomatik oturum açmayı etkinleştirdiğinizde veya ekran koruyucuyu devre dışı bırakırken güvenlik riskleri vardır. Aracıyı bu şekilde çalışacak şekilde yapılandırdığınızda, bilgisayarın fiziksel olarak korunduğundan emin olmanız gerekir; örneğin, güvenli bir tesiste bulunur. Otomatik oturum açma ile bir aracının çalıştığı bilgisayara erişmek için Uzak Masaüstü kullanıyorsanız, Uzak Masaüstü'nü kapatmanız bilgisayarın kilitlenmesine neden olur ve bu aracıda çalışan tüm ui testleri başarısız olabilir. Bunu önlemek için uzak masaüstü bağlantısını kesmek için tscon komutunu kullanın. Örneğin:

    %windir%\System32\tscon.exe 1 /dest:console

Aracı hesabı

Bir aracıyı hizmet olarak veya etkileşimli olarak çalıştırdığınızda, aracıyı çalıştırmak için hangi bilgisayar hesabını kullanacağınızı seçebilirsiniz. (Bunun, aracıyı Azure Pipelines veya Azure DevOps Server kaydederken kullandığınız kimlik bilgileriyle farklı olduğunu unutmayın.) Aracı hesabı seçimi yalnızca derleme ve dağıtım işlerinizde çalışan görevlerin gereksinimlerine bağlıdır.

Örneğin, bir dış hizmete erişmek için Windows kimlik doğrulamasını kullanan görevleri çalıştırmak için aracıyı bu hizmete erişimi olan bir hesap kullanarak çalıştırmanız gerekir. Ancak, tarayıcı gerektiren Selenium veya Kodlanmış UI testleri gibi ui testleri çalıştırıyorsanız, tarayıcı aracı hesabı bağlamında başlatılır.

Windows'da Ağ Hizmeti veya Yerel Hizmet gibi bir hizmet hesabı kullanmayı düşünmelisiniz. Bu hesapların kısıtlı izinleri vardır ve parolalarının süresi dolmaz; bu da aracının zaman içinde daha az yönetim gerektirdiği anlamına gelir.

Aracı sürümü ve yükseltmeleri

Aracı yazılımını Azure Pipelines'da birkaç haftada bir güncelleştiriyoruz. Aracı sürümünü biçiminde {major}.{minor}belirtiriz. Örneğin aracı sürümü ise 2.1ana sürüm 2, ikincil sürüm ise 1'dir.

Microsoft barındırılan aracılar her zaman güncel tutulur. Aracının daha yeni sürümü yalnızca ikincil sürümde farklıysa, şirket içinde barındırılan aracılar genellikle Azure Pipelines tarafından otomatik olarak güncelleştirilebilir (aracı havuzlarında bu ayarı yapılandırın, aracınızı seçin , Ayarlar - varsayılan etkindir). Bir platform özelliği veya işlem hattında kullanılan görevlerden biri aracının daha yeni bir sürümünü gerektirdiğinde yükseltme istenir.

Şirket içinde barındırılan bir aracıyı etkileşimli olarak çalıştırırsanız veya aracının daha yeni bir ana sürümü varsa aracıları el ile yükseltmeniz gerekebilir. Bunu kuruluşunuzun altındaki Aracı havuzları sekmesinden kolayca yapabilirsiniz. İşlem hatlarınız uyumlu bir aracıyı hedefleyene kadar çalışmaz.

Şirket içinde barındırılan aracıları güncelleştirmek için

  1. Proje ayarları, Aracı havuzları'na gidin.

    Proje ayarları, Aracı havuzları

  2. Aracı havuzunuzu seçin ve Tüm aracıları güncelleştir'i seçin.

    Tüm aracıları güncelleştirme

    Aracıları tek tek güncelleştirmek için ... menüsünden Aracıyı güncelleştir'i de seçebilirsiniz.

    Aracıyı güncelleştirme

  3. Güncelleştirmeyi onaylamak için Güncelleştir'i seçin.

    Tüm aracıları güncelleştirme onayı

  4. Havuzdaki her aracı için bir güncelleştirme isteği kuyruğa alınmış ve çalışmakta olan işler tamamlandığında çalıştırılır. Yükseltme genellikle yalnızca birkaç dakika sürer- aracı yazılımının en son sürümünü (yaklaşık 200 MB) indirmek, sıkıştırmasını açmak ve aracıyı yeni sürümle yeniden başlatmak için yeterlidir. Aracılarınızın durumunu Aracılar sekmesinden izleyebilirsiniz.

Aracı yazılımını Azure DevOps Server ve TFS'deki her güncelleştirmeyle güncelleştiriyoruz. Aracı sürümünü biçiminde {major}.{minor}belirtiriz. Örneğin, aracı sürümü ise 2.1ana sürüm 2 ve ikincil sürüm 1'dir.

Azure DevOps Server veya TFS sunucunuzda aracının daha yeni bir sürümü varsa ve bu yeni aracı yalnızca ikincil sürümde farklıysa, genellikle otomatik olarak yükseltilebilir. Bir platform özelliği veya işlem hattında kullanılan görevlerden biri aracının daha yeni bir sürümünü gerektirdiğinde yükseltme istenir. Azure DevOps Server 2019'dan itibaren yeni bir sunucu sürümünü beklemeniz gerekmez. Aracının yeni bir sürümünü uygulama katmanınıza yükleyebilirsiniz ve bu sürüm yükseltme olarak sunulur.

Aracıyı etkileşimli olarak çalıştırırsanız veya aracının daha yeni bir ana sürümü varsa aracıları el ile yükseltmeniz gerekebilir. Bunu proje koleksiyonunuzun altındaki Aracı havuzları sekmesinden kolayca yapabilirsiniz. İşlem hatlarınız uyumlu bir aracıyı hedefleyene kadar çalışmaz.

Aracı özelliklerini yapılandırma bölümünde açıklandığı gibi Aracı havuzlarına gidip istenen aracı için Özellikler sekmesini seçerek aracının sürümünü görüntüleyebilirsiniz.

Aracı güncelleştirmesini program aracılığıyla tetikleme için Aracı güncelleştirme API'sini belirli aracı havuzu için program aracılığıyla nasıl tetikleyebilirim? bölümünde açıklandığı gibi kullanabilirsiniz.

Not

İnternet erişimi olmayan sunucular için aracı zip dosyasını yerel dosya C:\ProgramData\Microsoft\Azure DevOps\Agents\ olarak kullanmak üzere adresine el ile kopyalayın.

SSS

Nasıl yaparım? en son v2 aracısı sürümüne sahip olduğumdan emin olun?

  1. Aracı havuzları sekmesine gidin:

    1. Azure DevOps, Kuruluş ayarları'nı seçin.

      Kuruluş ayarları'nı seçin.

    2. Aracı havuzları'nı seçin.

      Aracı havuzları sekmesini seçin.

    1. Azure DevOps, Koleksiyon ayarları'nı seçin.

      Koleksiyon ayarları'nı seçin.

    2. Aracı havuzları'nı seçin.

      Aracı havuzları'nı seçin.

    1. Azure DevOps, Koleksiyon ayarları'nı seçin.

      Koleksiyon ayarları, 2019.

    2. Aracı havuzları'nı seçin.

      Aracı havuzları, 2019'u seçin.

    1. Projenize gidin ve Ayarlar (dişli simgesi) Aracı Kuyrukları'nı> seçin.

      Ayarlar, Aracı Kuyrukları, 2018'i seçin.

    2. Havuzları yönet'i seçin.

      Havuzları yönet, 2018'i seçin.

  2. Aracıyı içeren havuza tıklayın.

  3. Aracının etkinleştirildiğinden emin olun.

  4. Özellikler sekmesine gidin:

    1. Aracı havuzları sekmesinden istediğiniz aracı havuzunu seçin.

      Aracı havuzları'ndan istediğiniz aracı havuzunu seçin.

    2. Aracılar'ı seçin ve istediğiniz aracıyı seçin.

      Aracılar'ı seçin ve aracıyı seçin.

    3. Özellikler sekmesini seçin.

      Özellikler sekmesini seçin.

      Not

      Microsoft barındırılan aracılar sistem özelliklerini görüntülemez. Microsoft barındırılan aracılarda yüklü yazılımların listesi için bkz. Microsoft barındırılan aracı kullanma.

    1. Aracı havuzları sekmesinden istediğiniz havuzu seçin.

      İstediğiniz havuzu seçin.

    2. Aracılar'ı seçin ve istediğiniz aracıyı seçin.

      Aracılar'ı seçin ve istediğiniz aracıyı seçin.

    3. Özellikler sekmesini seçin.

      Aracı özellikleri sekmesi.

    1. Aracı havuzları sekmesinden istediğiniz havuzu seçin.

      İstediğiniz sekme olan 2019'u seçin.

    2. Aracılar'ı seçin ve istediğiniz aracıyı seçin.

      İstediğiniz aracıyı (2019) seçin.

    3. Özellikler sekmesini seçin.

      Özellikler sekmesi olan 2019'u seçin.

    İstediğiniz aracıyı seçin ve Özellikler sekmesini seçin.

    Aracı özellikleri sekmesi, 2018.

  5. Özelliğ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.

  6. 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 v2 aracılarımı güncelleştirebilir miyim?

Evet. Azure DevOps Server 2019'da başlayarak, sunucunuzu yerel diskte aracı paket 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 erişimi olmadığında da geçerlidir.

  1. İnternet erişimi olan bir bilgisayardan Azure Pipelines Aracısı GitHub Yayınları sayfasından aracı paket dosyalarının en son sürümünü (.zip veya .tar.gz biçiminde) indirin.

  2. İndirilen paket dosyalarını istediğiniz bir yöntemle (USB sürücüsü, Ağ aktarımı vb.) her Azure DevOps Server Uygulama Katmanına aktarın. Aracı dosyalarını klasörün altına %ProgramData%\Microsoft\Azure DevOps\Agents yerleştirin.

  3. Hazırsınız! Aracılar her güncelleştirildiğinde Azure DevOps Server artık 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.

Şirket içinde barındırılan aracıların Microsoft barındırılan aracılara göre performans avantajları var mı?

Çoğu durumda, evet. Özellikle:

  • Şirket içinde barındırılan aracı kullanıyorsanız artımlı derlemeler çalıştırabilirsiniz. Örneğin, depoyu temizlemeyen ve temiz bir derleme gerçekleştirmeyen bir işlem hattı tanımlarsanız, derlemeleriniz genellikle daha hızlı çalışır. Microsoft barındırılan aracı kullandığınızda, derleme veya yayın işlem hattı tamamlandıktan sonra aracı yok edildiğinden bu avantajları elde etmezsiniz.

  • Microsoft barındırılan bir aracının derlemenizi başlatması daha uzun sürebilir. İşinizin Microsoft barındırılan bir aracıya atanabilmesi genellikle birkaç saniye sürse de, sistemimizdeki yüke bağlı olarak bir aracının ayrılması bazen birkaç dakika sürebilir.

Aynı makineye şirket için barındırılan birden çok aracı yükleyebilir miyim?

Evet. Bu yaklaşım, çok fazla paylaşılan kaynak tüketmeyen işler çalıştıran aracılar için iyi çalışabilir. Örneğin, çoğunlukla dağıtımları düzenleyen ve aracı üzerinde çok fazla iş yapmayan yayınları çalıştıran aracılar için deneyebilirsiniz.

Diğer durumlarda, aynı makinede birden çok aracı çalıştırarak çok fazla verimlilik kazanmayabileceğinizi fark edebilirsiniz. Örneğin, çok fazla disk ve G/Ç kaynağı kullanan derlemeler çalıştıran aracılar için faydalı olmayabilir.

Paralel derleme işleri npm paketleri gibi aynı tekil araç dağıtımını kullanıyorsa da sorunlarla karşılaşabilirsiniz. Örneğin, bir derleme bir bağımlılığı, başka bir derleme onu kullanmanın ortasındayken güncelleştirebilir ve bu da güvenilir olmayan sonuçlara ve hatalara neden olabilir.

İşlem hattı işleri iptal edildiğinde aracıların davranışı nedir?

Microsoft barındırılan aracılar için aracı ayrılmıştır ve Azure Pipelines havuzuna döndürülür.

Şirket içi barındırılan aracılar için:

bir işlem hattı iptal edildiğinde aracı geçerli adımı yürüten işleme bir dizi komut gönderir. İlk komut 7,5 saniyelik zaman aşımı ile gönderilir. İşlem sonlandırılmadıysa, 2,5 saniyelik zaman aşımı ile ikinci bir komut gönderilir. İşlem sonlandırılmadıysa, aracı işlemi sonlandırmak için bir komut oluşturur. İşlem ilk iki sonlandırma isteğini kabul etmiyorsa, sonlandırılır. İlk istekten sonlandırmaya kadar yaklaşık 10 saniye sürer.

İşlem hattını iptal etme işlemine verilen komutlar aracı işletim sistemine göre farklılık gösterir.

  • macOS ve Linux - Gönderilen komutlar SIGINT, ardından SIGTERM ve ardından SIGKILL komutlarıdır.
  • Windows - İşleme gönderilen komutlar Ctrl+C, ardından Ctrl+Break ve ardından Process.Kill şeklindedir.

Belirli bir aracı havuzu için program aracılığıyla aracı güncelleştirmelerini nasıl tetikleyebilirim?

Sonraki API'yi kullanarak havuz için aracı güncelleştirmelerini tetikleyebilirsiniz:

POST https://dev.azure.com/{organization}/_apis/distributedtask/pools/{poolId}/messages?agentId={agentId}&api-version=6.0

URI Parametreleri

Name İçinde Gerekli Tür Description
agentId query False string Güncelleştirilecek aracı. Belirtilmezse - güncelleştirme tüm aracılar için tetiklenir.
organization path True string Azure DevOps kuruluşunun adı.
poolId path Doğru tamsayı int32 Kullanılacak aracı havuzu
api-version query False string Kullanılacak API'nin sürümü. Bu, api'nin bu sürümünü kullanmak için '6.0' olarak ayarlanmalıdır.

Aracı güncelleştirmesini tetikleme - istek gövdesi boş olmalıdır.

Not

Azure Pipelines Aracısı GitHub'da açık kaynak.

Daha fazla bilgi edinin

Aracılar hakkında daha fazla bilgi için Azure DevOps ile uygulama derleme öğrenme yolundaki aşağıdaki modüllere bakın.