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

Azure Pipelines | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018 - TFS 2015

Not

Microsoft Team Foundation Server (TFS) 2018 ve önceki sürümlerde derleme ve yayın işlem hatları tanımlar, çalıştırmalar derlemeler, hizmet bağlantıları hizmet noktaları,aşamalar ortamlar ve işler olarak adlandırılan aşamalar olarak adlandırılanlardır.

Xcode uygulamaları veya Xamarin.iOS projeleri oluşturmak ve dağıtmak için en az bir macOS aracınız gerekir. Bu aracı Ayrıca Java ve Android uygulamaları da derleme ve dağıtma.

Başlamadan önce:

  • İşlem hatlarınız Azure Pipelines Microsoft tarafından barındırılan bir aracı ihtiyaçlarınıza uygunsa, kendinden konak bir macOS aracısı ayarlamayı atlayabilirsiniz.
  • Aksi takdirde, macOS üzerinde bir aracı ayarlamak için doğru yere gelirsiniz. Sonraki bölüme devam edin.

Aracılar hakkında bilgi

Bir aracının ne olduğunu ve nasıl çalıştığını zaten biliyorsanız, hemen aşağıdaki bölümlere geçebilirsiniz. Ancak, ne yapacakları ve nasıl çalışacakları hakkında daha fazla arka plan bilgi için bkz. Azure Pipelines..

Önkoşulları denetleme

Makinenizin şu önkoşullara sahip olduğundan emin olun:

  • macOS Sierra (10.12) veya daha yüksek
  • Git 2.9.0 veya daha yeni bir sürüm (en son sürüm kesinlikle önerilir; Homebrew)

Aracı sürümü 2.125.0 ve üzerinde bu önk sürümler gereklidir.

Aracı sürümü 2.124.0 ve altı için bu önk sürümler gereklidir. Mümkünse, daha yeni bir macOS 'a (10.12+) yükseltmenizi ve en yeni aracıya yükseltmenizi öneririz.

Makinenizin şu önkoşullara sahip olduğundan emin olun:

TFVC'yi kullanıyorsanız Oracle Java JDK 1.6 veya üst sürümüne de ihtiyacınız olacaktır. (Oracle JRE ve OpenJDK bu amaç için yeterli değildir.)

İzinleri hazırlama

Bir Subversion repo'dan binayaıyorsanız, makineye Subversion istemcisini yüklemeniz gerekir.

Aracı kurulumunu ilk kez el ile çalıştırmanız gerekir. Aracıların nasıl çalışmalarına yönelik bir his elde ettikten sonra veya birçok aracıyı ayarlamayı otomatikleştirmek için katılımsız yapılandırmayı kullanmayı göz önünde bulundurabilirsiniz.

Kendinden konak aracılar için bilgi güvenliği

Aracıyı yapılandıran kullanıcının havuz yöneticisi izinlerine sahip olması gerekir, ancak aracıyı çalıştıran kullanıcının ihtiyacı olmaz.

Aracı tarafından denetlenen klasörler mümkün olduğunca az kullanıcıyla kısıtlanmış olmalı ve şifresi çözülebilecek veya sızması mümkün olan gizli diziler içeriyor olabilir.

ADO işlem hatları aracısı, dış kaynaklardan indirdiği kodu yürütmek için tasarlanmış bir yazılım ürünüdür. Doğal olarak Uzaktan Kod Yürütme (RCE) saldırılarının hedefi olabilir.

Bu nedenle, işi gerçekleştirmek için Pipelines Aracılarının her bir kullanımını çevreleyen tehdit modelini göz önünde bulundurarak, aracıyı çalıştıran kullanıcıya, aracının çalıştırlandığı makineye, İşlem hattı tanımına yazma erişimi olan kullanıcılara, yaml'nin depolandığı git depolarına hangi minimum izinlerin verilil olduğuna karar vermek önemlidir. veya yeni işlem hatları için havuza erişimi kontrol eden kullanıcı grubu.

Aracıyı çalıştıran kimliğin, aracıyı havuza bağlama izinlerine sahip kimlikten farklı olması en iyi uygulamadır. Kimlik bilgilerini (ve aracıyla ilgili diğer dosyaları) üreten 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 dikkatle göz önünde bulundurmalısınız.

Aracı klasörüne yalnızca aracı işlemini çalıştıran DevOps ve kullanıcı kimliği için erişim izni vermek mantıklıdır. Yöneticilerin derleme hatalarını anlamak veya günlük dosyalarını almak için dosya sistemini araştırması veya bu hataları Azure DevOps gerekir.

Hangi kullanıcıyı kullanabileceğinize karar verme

Tek bir adım olarak aracıyı kaydetmelisiniz. Aracı kuyruğu yönetme izni olan birinin bu adımları tamamlaması gerekir. Aracı günlük işlemde bu kişinin kimlik bilgilerini kullanmaz, ancak kaydı tamamlaması gerekir. Aracıların iletişim kurması hakkında daha fazla bilgi.

Kişisel erişim belirteci (PAT) ile kimlik doğrulaması

  1. Team Foundation Server web portalında () kullanmayı planlasanız kullanıcı hesabıyla oturum https://{your-server}:8080/tfs/ açın.
  1. Web portalında () kullanarak kullanmayı planlayı kullanıcı Azure DevOps Server oturum https://{your-server}/DefaultCollection/ açın.
  1. Azure DevOps ( ) içinde kullanmayı planlastırarak kullanıcı hesabıyla oturum https://dev.azure.com/{your_organization} açın.
  1. Giriş sayfasında profilinizi açın. Güvenlik ayrıntılarınıza gidin.

    Güvenlik ayrıntılarınıza gidin.

  2. Kişisel erişim belirteci oluşturun.

    Kişisel erişim belirteci oluşturun.

  1. Giriş sayfasında kullanıcı ayarlarınızı açın ve Kişisel erişim belirteçleri'ne tıklayın.

    Güvenlik ayrıntılarınıza gidin.

  2. Kişisel erişim belirteci oluşturun.

    Kişisel erişim belirteci oluşturun.

  1. Kapsam için Aracı Havuzları (okuma, yönetme) öğesini seçin ve diğer tüm kutuların temiz olduğundan emin olun. Bu bir dağıtım grubu aracısı ise, kapsam için Dağıtım grubu (okuma, yönetme) öğesini seçin ve diğer tüm kutuların temiz olduğundan emin olun.

    Kapsamların tam listesini görmek için Yeni kişisel erişim belirteci oluştur penceresinin altındaki Tüm kapsamları göster'i seçin.

  2. Belirteci kopyalayın. Aracıyı yapılandırıldığında bu belirteci kullanıcaz.

Kullanıcı olarak kimlik Windows (TFS 2015 ve TFS 2017)

Alternatif olarak, TFS 2017'de bir etki alanı kullanıcısı veya yerel bir Windows TFS uygulama katmanlarınız üzerinde kullanabilirsiniz.

Yalnızca macOS ve Linux için TFS 2015'te, TFS uygulama katmanlarınız üzerinde yerel bir Windows kullanıcısı oluşturmanızı ve bu kullanıcıya derleme aracıları dağıtmak amacıyla ayırmanızı öneririz.

Kullanıcının izni olduğunu onaylayın

Kullanmakta olacağınız kullanıcı hesabının aracıyı kaydetme izni olduğundan emin olun.

Kullanıcı kuruluş sahibi Azure DevOps TFS mi yoksa yönetici Azure DevOps Server mı? Burada dur,izniniz var.

Aksi durumda:.

  1. Bir tarayıcı açın ve Azure Pipelines veya TFS sunucunuz için Aracı Azure DevOps Server sekmesine gidin:

    1. , Azure DevOpsayarlarını seçin.

      Kuruluş ayarları'ı seçin.

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

      Aracı havuzları sekmesini seçin.

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

      Koleksiyon ayarları'ı seçin.

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

      Aracı havuzları'ı seçin.

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

      Koleksiyon ayarları, 2019.

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

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

    1. Projenize gidin ve Aracı kuyrukları Ayarlar (dişli simgesi) seçin.

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

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

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

    1. Projenize gidin ve Aracı kuyrukları Ayarlar (dişli simgesi) seçin.

      Ayarlar, Aracı Kuyrukları, 2017'yi seçin.

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

      Havuzları yönet, 2017'yi seçin.

    1. Projenize gidin ve Projeyi yönet 'i (dişli simgesi) seçin.

      Projeyi yönetme, 2015.

    2. Denetim masası'nı seçin.

      Denetim masası, 2015'i seçin.

    3. Aracı havuzları'ı seçin.

      Aracı havuzları, 2015'i seçin.

  2. Sayfanın sağ tarafındaki havuzu seçin ve ardından Güvenlik'e tıklayın.

  3. Kullanmak istediğiniz kullanıcı hesabı gösterilmezse, eklemesi için bir yöneticiye danışın. Yönetici bir aracı havuzu yöneticisi, kuruluş sahibi Azure DevOpsveya TFSya da Azure DevOps Server olabilir.

    Bu bir dağıtım grubu aracısı ise, yönetici bir dağıtım grubu yöneticisi, Azure DevOps kuruluş sahibi veyaTFS ya da Azure DevOps Server yöneticisi olabilir.

    Bir kullanıcı, dağıtım grubu yöneticisi rolüne, Azure Pipelines'daki Dağıtım Grupları sayfasındaki Güvenlik sekmesinden ekleyebilirsiniz.

Not

Şöyle bir ileti görüyorsanız: Üzgünüz, kimliği ekleyemedik. Lütfen farklı bir kimlik deneyin.Bir kuruluş sahibi, TFS veya yönetici için yukarıdaki adımları Azure DevOps Server. Herhangi bir şey yapmak zorunda değilsiniz; aracı kuyruğu yönetme iznine zaten sahipsiniz.

Aracıyı indirme ve yapılandırma

Azure Pipelines

  1. Yukarıda açıklanan izinlere sahip olduğunuz hesabı kullanarak makinede oturum açın.

  2. Web tarayıcınızda oturum açın Azure Pipelines aracı havuzları sekmesine gidin:

    1. , Azure DevOpsayarlarını seçin.

      Kuruluş ayarları'ı seçin.

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

      Aracı havuzları sekmesini seçin.

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

      Koleksiyon ayarları'ı seçin.

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

      Aracı havuzları'ı seçin.

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

      Koleksiyon ayarları, 2019.

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

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

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

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

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

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

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

      Ayarlar, Aracı Kuyrukları, 2017'yi seçin.

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

      Havuzları yönet, 2017'yi seçin.

    1. Projenize gidin ve Projeyi yönet 'i (dişli simgesi) seçin.

      Projeyi yönetme, 2015.

    2. Denetim masası'nı seçin.

      Denetim masası, 2015'i seçin.

    3. Aracı havuzları'ı seçin.

      Aracı havuzları, 2015'i seçin.

  3. Varsayılan havuzu seçin, Aracılar sekmesini seçin ve Yeni aracı'ya tıklayın.

  4. Aracıyı al iletişim kutusundamacOS'a tıklayın.

  5. İndir düğmesine tıklayın.

  6. Sayfada yer alan yönergeleri izleyin.

  7. Tar dosyasındaki genişletilmiş özniteliğini temizleme: xattr -c vsts-agent-osx-x64-V.v.v.tar.gz .

  8. Aracıyı kendi tercih dizininize alın. cd bu dizine ve ./config.sh çalıştırın. Araçlar ve betikler her zaman düzgün kaçış alanları kullanmay olduğundan dizin yolunun boşluk içerdiğine emin olun.

Azure DevOps Server 2019 ve 2020 Azure DevOps Server

  1. Yukarıda açıklanan izinlere sahip olduğunuz hesabı kullanarak makinede oturum açın.

  2. Web tarayıcınızda oturum açın Azure DevOps Server aracı havuzları sekmesine gidin:

    1. , Azure DevOpsayarlarını seçin.

      Kuruluş ayarları'ı seçin.

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

      Aracı havuzları sekmesini seçin.

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

      Koleksiyon ayarları'ı seçin.

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

      Aracı havuzları'ı seçin.

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

      Koleksiyon ayarları, 2019.

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

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

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

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

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

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

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

      Ayarlar, Aracı Kuyrukları, 2017'yi seçin.

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

      Havuzları yönet, 2017'yi seçin.

    1. Projenize gidin ve Projeyi yönet 'i (dişli simgesi) seçin.

      Projeyi yönetme, 2015.

    2. Denetim masası'nı seçin.

      Denetim masası, 2015'i seçin.

    3. Aracı havuzları'ı seçin.

      Aracı havuzları, 2015'i seçin.

  3. Aracıyı indir'e tıklayın.

  4. Aracıyı al iletişim kutusunda macOS'a tıklayın.

  5. İndir düğmesine tıklayın.

  6. Sayfada yer alan yönergeleri izleyin.

  7. Tar dosyasındaki genişletilmiş özniteliğini temizleme: xattr -c vsts-agent-osx-x64-V.v.v.tar.gz .

  8. Aracıyı kendi tercih dizininize alın. cd bu dizine ve ./config.sh çalıştırın. Araçlar ve betikler her zaman düzgün kaçış alanları kullanmay olduğundan dizin yolunun boşluk içerdiğine emin olun.

TFS 2017 ve TFS 2018

  1. Yukarıda açıklanan izinlere sahip olduğunuz hesabı kullanarak makinede oturum açın.

  2. Web tarayıcınızda Azure Pipelines veya TFS'de oturum açın ve Aracı havuzları sekmesine gidin:

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

      Ayarlar, Aracı Kuyrukları, 2017'yi seçin.

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

      Havuzları yönet, 2017'yi seçin.

  3. Aracıyı indir'e tıklayın.

  4. Aracıyı al iletişim kutusunda macOS'a tıklayın.

  5. İndir düğmesine tıklayın.

  6. Sayfada yer alan yönergeleri izleyin.

  7. Tar dosyasındaki genişletilmiş özniteliğini temizleme: xattr -c vsts-agent-osx-x64-V.v.v.tar.gz .

  8. Aracıyı kendi tercih dizininize alın. cd bu dizine ve ./config.sh çalıştırın. Araçlar ve betikler her zaman düzgün kaçış alanları kullanmay olduğundan dizin yolunun boşluk içerdiğine emin olun.

TFS 2015

  1. GitHub'da en son sürüme göz GitHub.

  2. Aracıyı indirmek için bu sayfada yer alan yönergeleri izleyin.

  3. Aracıyı yapılandırma.

    ./config.sh
    

Sunucu URL'si

Azure Pipelines:https://dev.azure.com/{your-organization}

TFS 2017 ve daha yenisi: https://{your_server}/tfs

TFS 2015: http://{your_server}:8080/tfs

Kimlik doğrulaması türü

Azure Pipelines

PAT 'iseçin ve ardından oluşturduğunuz PAT belirteci komut istemi penceresine yapıştırın.

Not

Kimlik doğrulama yöntemi olarak PAT kullanılırken PAT belirteci yalnızca aracının ilk yapılandırması için kullanılır. Daha fazla bilgi için Azure Pipelines TFS ile iletişim.

TFS veya Azure DevOps Server

Önemli

Sunucunuz, kullanmak istediğiniz kimlik doğrulama yöntemini destekleyecek şekilde yapılandırıldığından emin olun.

Aracınızı TFS'ye bağlanarak yapılandırarak aşağıdaki seçenekleri kullanabilirsiniz:

  • Temel Bağlan kullanarak TFS veya Azure DevOps Server alternatif kimlik doğrulaması. Alternatif'i seçdikten sonra kimlik bilgileriniz istenir.

  • Entegre macOS veya Linux'ta desteklenmiyor.

  • TFS'Bağlan (Varsayılan) anlaşması Azure DevOps Server, NTLM veya Kerberos gibi bir Windows kimlik doğrulama şeması aracılığıyla oturum Windows kullanıcı dışında bir kullanıcı olarak kabul et. Anlaşma'ya karar verdikten sonra kimlik bilgileriniz istenir.

  • PAT Yalnızca Azure Pipelines ve TFS 2017 ve daha yeni sürümlerde destekler. PAT'yi seçtikten sonra, oluşturduğunuz PAT belirteci komut istemi penceresine yapıştırın. Kişisel erişim belirteci (PAT) Azure DevOps Server veya TFS örneğiniz ve aracı makineniz güvenilir bir etki alanında değilse kullanın. PAT kimlik doğrulaması, etki alanı Azure DevOps Server veya TFS örneğiniz tarafından işleme tabi olur.

Not

Kimlik doğrulama yöntemi olarak PAT kullanılırken PAT belirteci yalnızca Azure DevOps Server ve TFS'nin yeni sürümlerinde aracının ilk yapılandırması için kullanılır. Daha fazla bilgi için Azure Pipelines TFS ile iletişim.

Etkileşimli olarak çalıştırma

Aracıyı etkileşimli modda mı yoksa hizmet olarak mı çalıştıracakları konusunda rehberlik için bkz. Aracılar: Etkileşimli ve hizmet.

Aracıyı etkileşimli olarak çalıştırmak için:

  1. Aracıyı bir hizmet olarak çalıştırdıysanız, hizmetini kaldırın.

  2. Aracıyı çalıştırın.

    ./run.sh
    

Aracıyı yeniden başlatmak için Ctrl+C tuşlarına basın ve ardından run.sh çalıştırarak yeniden başlatın.

Aracınızı kullanmak için, aracı havuzunu kullanarak bir iş çalıştırın. Farklı bir havuz seçmezsiniz, aracınız Varsayılan havuzda olur.

Bir kez çalıştır

Etkileşimli olarak çalıştıracak ş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 uygun şekilde aşağı döner (örneğin, Azure Container Instances).

Başlatan hizmet olarak çalıştırma

Aracınızı ./svc.sh çalıştıracak ve başlatan bir LaunchAgent hizmeti olarak yönetecek betiği sağlaruz. Bu betik, siz aracıyı yapılandırdikten sonra oluşturulur. Hizmetin kullanıcı arabirimi testlerinizi çalıştırmak için kullanıcı arabirimine erişimi vardır.

Not

Diğer yaklaşımları tercih ediyorsanız, tercih ederseniz herhangi bir hizmet mekanizmasını kullanabilirsiniz. Bkz. Hizmet dosyaları.

Belirteçler

Aşağıdaki bölümde, bu belirteçler değiştirilir:

  • {agent-name}

  • {tfs-name}

Örneğin, adıyla bir aracı yapılandırmış (yukarıya our-osx-agent bakın). Aşağıdaki örneklerde şu {tfs-name} iki örnek de verilmiştir:

  • Azure Pipelines: Kuruluş adı. Örneğin, hizmetine https://dev.azure.com/fabrikam bağlansanız, hizmet adı şu şekilde olur: vsts.agent.fabrikam.our-osx-agent

  • TFS: Şirket içi TFS AT sunucunuz adı. Örneğin, hizmetine http://our-server:8080/tfs bağlansanız, hizmet adı şu şekilde olur: vsts.agent.our-server.our-osx-agent

Komutlar

Aracı dizinine değiştirme

Örneğin, giriş dizininizin myagent alt klasörüne yüklemiş olursanız:

cd ~/myagent$

Yükleme

Komut:

./svc.sh install

Bu komut, 'a göre başlatan bir plist ./runsvc.sh oluşturur. Bu betik ortamı ayarlar (daha fazla ayrıntı aşağıda verilmiştir) ve aracının ana bilgisayarlarını başlatır.

Başlangıç

Komut:

./svc.sh start

Çıkış:

starting vsts.agent.{tfs-name}.{agent-name}
status vsts.agent.{tfs-name}.{agent-name}:

/Users/{your-name}/Library/LaunchAgents/vsts.agent.{tfs-name}.{agent-name}.plist

Started:
13472 0 vsts.agent.{tfs-name}.{agent-name}

Hizmet çalışıyorsa sol sayı pid'tir. İkinci sayı sıfıra yakınsa bir sorun oluştu demektir.

Durum

Komut:

./svc.sh status

Çıkış:

status vsts.agent.{tfs-name}.{agent-name}:

/Users/{your-name}/Library/LaunchAgents/vsts.{tfs-name}.{agent-name}.testsvc.plist

Started:
13472 0 vsts.agent.{tfs-name}.{agent-name}

Hizmet çalışıyorsa sol sayı pid'tir. İkinci sayı sıfıra yakınsa bir sorun oluştu demektir.

Durdur

Komut:

./svc.sh stop

Çıkış:

stopping vsts.agent.{tfs-name}.{agent-name}
status vsts.agent.{tfs-name}.{agent-name}:

/Users/{your-name}/Library/LaunchAgents/vsts.{tfs-name}.{agent-name}.testsvc.plist

Stopped

Kaldırma

Kaldırmadan önce durdurmanız gerekir.

Komut:

./svc.sh uninstall

Otomatik oturum açma ve kilitleme

Normalde, aracı hizmeti yalnızca kullanıcı oturum açtığında çalışır. Makine yeniden başlatıldığında aracı hizmetinin otomatik olarak başlatılmasını istemiyorsanız, makineyi başlangıçta otomatik olarak oturum açmak ve kilitlemek üzere yapılandırabilirsiniz. Bkz. Başlangıç sırasında Mac'inizi otomatik olarak oturum açmak için ayarlama - Apple Desteği.

Not

Daha fazla bilgi için Terminally Securey: otomatik oturum açma bilgilerini daha güvenli bir şekilde kullanma bloguna bakın. Bu blogda bahsedilen .plist dosyası artık kaynakta kullanılamıyor olabilir, ancak burada bir kopya bulunabilir: Lifecaner - Oturumaçmadan önce OS X'in masaüstünü yüklemesi.

Ortam değişkenlerini güncelleştirme

Hizmeti yapılandırarak PATH, LANG, JAVA_HOME, ANT_HOME ve MYSQL_PATH. Değişkenleri güncelleştirmeniz gerekirse (örneğin, bazı yeni yazılımları yükledikten sonra):

./env.sh
./svc.sh stop
./svc.sh start

Ortam değişkenlerinin anlık görüntüsü aracı kök dizini altındaki dosyada depolanır, ayrıca ortam değişkeni değişikliklerini uygulamak .env için bu dosyayı doğrudan 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ı veya çağrı betiklerini kurabilirsiniz.

  1. 'yi runsvc.sh düzenleyin.

  2. Aşağıdaki satırı yönergeleriniz ile değiştirin:

    # insert anything to setup env when running as a service
    

Hizmet Dosyaları

Hizmeti yüklemenizin ardından bazı hizmet dosyaları yerine konacak.

.plist hizmet dosyası

Bir .plist hizmet dosyası oluşturulur:

~/Library/LaunchAgents/vsts.agent.{tfs-name}.{agent-name}.plist

Örnek:

~/Library/LaunchAgents/vsts.agent.fabrikam.our-osx-agent.plist

sudo ./svc.sh install bu şablonu kullanarak şu dosyayı oluşturur: ./bin/vsts.agent.plist.template

.service dosyası

./svc.sh start yukarıda açıklanan .service plist hizmet dosyasının yolunu içeren dosyasını okuyarak hizmeti bulur.

Alternatif hizmet mekanizmaları

Betiği, aracınızı başlatan bir LaunchAgent hizmeti olarak çalıştırmanız ve ./svc.sh yönetmeniz için kullanışlı bir yol sağlariz. Ancak, tercih ederseniz herhangi bir hizmet mekanizmasını kullanabilirsiniz.

Diğer hizmet dosyası türleri oluşturmayı kolaylaştırmak için yukarıda açıklanan şablonu kullanabilirsiniz. Örneğin, kullanıcı arabirimi testlerine ihtiyacınız yoksa ve otomatik oturum açma ve kilitleme yapılandırmak istemiyorsanız başlatma daemon'ı olarak çalışan bir hizmet oluşturmak için şablonu değiştirirsiniz. Bkz. Apple Geliştirici Kitaplığı: Başlatma Daemon'ları ve Aracıları Oluşturma.

Aracıyı değiştirme

Bir aracıyı değiştirmek için Aracıyı indirme ve yapılandırma adımlarını tekrar izleyin.

Zaten var olan bir aracıyla aynı adı kullanarak bir aracı yapılandırıldığında, mevcut aracıyı değiştirmek istiyor musunuz? yanıtını Y verirsanız, değiştirerek aracıyı kaldır (aşağıya bakın) emin olun. Aksi takdirde, birkaç dakikalık çakışmaların ardından aracılardan biri kapanacak.

Aracıyı kaldırma ve yeniden yapılandırma

Aracıyı kaldırmak için:

  1. Yukarıda açıklanan şekilde hizmeti durdurun ve kaldırın.

  2. Aracıyı kaldırın.

    ./config.sh remove
    
  3. Kimlik bilgilerinizi girin.

Aracıyı kaldırdikten sonra yeniden yapılandırılabilir.

Katılımsız yapılandırma

Aracı, bir betikten insan müdahalesi gerekm yok olarak ayarlanmaz. Tüm soruların --unattended yanıtlarını ve yanıtlarını geçmelisiniz.

Bir aracıyı yapılandırmak için, kuruluşun URL'sini veya aracıları ayarlama yetkisine sahip birinin koleksiyonunu ve kimlik bilgilerini biliyor olması gerekir. Diğer tüm yanıtlar isteğe bağlıdır. Herhangi bir komut satırı parametresi, bunun yerine bir ortam değişkeni kullanılarak belirtilebilir: adını büyük harf ve ön uç olarak VSTS_AGENT_INPUT_ girin. Örneğin, VSTS_AGENT_INPUT_PASSWORD belirtmek --password yerine.

Gerekli seçenekler

  • --unattended - aracı kurulumu bilgi isteminde olmaz ve tüm ayarlar komut satırına 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ğrulaması türü. Geçerli değerler:
    • pat (Kişisel erişim belirteci)
    • negotiate (Kerberos veya NTLM)
    • alt (Temel kimlik doğrulaması)
    • integrated(Windows kimlik bilgileri için)

Kimlik doğrulaması seçenekleri

  • 'yi --auth pat seçtiysanız:
    • --token <token> - Kişisel erişim belirtecini belirtir
  • veya --auth negotiate--auth alt seçtiysanız:
    • --userName <userName>- biçiminde bir Windows kullanıcı adı domain\userName belirtir veyauserName@domain.com
    • --password <password> - bir parola belirtir

Havuz ve aracı adları

  • --pool <pool> - aracının katılması için havuz adı
  • --agent <agent> - aracı adı
  • --replace - bir havuz içinde aracıyı değiştirin. Başka bir aracı aynı adla dinliyorsa, çakışmayla başarısız olur

Aracı kurulumu

  • --work <workDirectory> - iş verisi depolandığı iş dizini. Varsayılan _work olarak, aracı dizininin kökü altında değeri kullanılır. İş dizini, verilen bir aracıya aittir ve birden çok aracı arasında paylaşılmaz.
  • --acceptTeeEula- son Team Explorer Everywhere Lisans Sözleşmesi'nin (yalnızca macOS ve Linux) kabul etme
  • --disableloguploads - Konsol günlüğü çıkışını sunucuya akışla göndermeyin veya göndermeyin. Bunun yerine, iş tamamlandıktan sonra aracı ana bilgisayarının dosya sisteminden bunları alabilir.

Windows başlatma

  • --runAsService- Aracıyı Windows olarak çalıştıracak şekilde yapılandırma (yönetici izni gerekir)
  • --runAsAutoLogon - otomatik oturum açmayı yapılandırma ve aracıyı başlangıçta çalıştırma (yönetici izni gerekir)
  • --windowsLogonAccount <account>- kullanıcı adını veya Windows belirtmek için veya --runAsService--runAsAutoLogon ile domain\userName kullanılıruserName@domain.com
  • --windowsLogonPassword <password>- oturum açma --runAsService parolasını belirtmek için veya Windows --runAsAutoLogon kullanılır
  • --overwriteAutoLogon - makinede --runAsAutoLogon mevcut otomatik oturum açmanın üzerine yazmak için ile kullanılır
  • --noRestart - Aracı yapılandırması --runAsAutoLogon tamamlandıktan sonra ana bilgisayarın yeniden başlatılmasını durdurmak için ile kullanılır

Yalnızca dağıtım grubu

  • --deploymentGroup - aracıyı dağıtım grubu aracısı olarak yapılandırma
  • --deploymentGroupName <name> - --deploymentGroup aracının katılması için dağıtım grubunu belirtmek için ile kullanılır
  • --projectName <name> - proje adını --deploymentGroup ayarlamak için ile kullanılır
  • --addDeploymentGroupTags - dağıtım grubu --deploymentGroup etiketlerinin ek gerektiğini belirtmek için ile kullanılır
  • --deploymentGroupTags <tags> - dağıtım grubu aracısı için virgülle ayrılmış etiket listesini belirtmek için ile --addDeploymentGroupTags kullanılır ; örneğin, "web, db"

Yalnızca ortamlar

  • --addvirtualmachineresourcetags - ortam kaynağı etiketlerinin ek gerektiğini belirtmek için kullanılır
  • --virtualmachineresourcetags <tags> - ortam kaynak aracısı için virgülle ayrılmış etiket listesini belirtmek için ile --addvirtualmachineresourcetags 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

Kendi kendine barındırılan aracınız ile ilgili sorun varsa tanılama çalıştırmayı denemeniz gerekir. Aracıyı yapılandırdikten sonra:

./run.sh --diagnostics

Bu, sorunu gidermenize yardımcı olacak bir tanılama paketi aracılığıyla ecek. Tanılama özelliği aracı sürümü 2.165.0'dan başlayarak kullanılabilir.

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

Yalnızca işleyilen derlemeler ve sürümler atanacak şekilde, aracının özellikleri kataler ve havuzda tanıtıldı. Bkz. Derleme ve sürüm aracısı özellikleri.

Çoğu durumda, aracıyı dağıtınca yazılım veya yardımcı programları yüklemeniz gerekir. Genellikle aracılarınızı geliştirme makinenize hangi yazılımları ve araçları kullanırsınız? yüklemeniz gerekir.

Örneğin, derlemeniz npm görevini içerirse, havuzda npmyüklü bir derleme aracısı olmadığı sürece derleme çalışmaz.

Önemli

Özellikler, tüm ortam değişkenlerini ve aracı çalıştır olduğunda ayarlanmış değerleri içerir. Aracı çalışırken bu değerlerden herhangi biri değişirse, yeni değerleri almak için aracı yeniden başlatılacaktır. Bir aracıya yeni yazılım yükledikten sonra, derlemenin çalışması için yeni özelliğin havuzda göster için aracıyı yeniden başlatmanız gerekir.

Ortam değişkenlerini özellik olarak dışlamak için, yoksayılacak virgülle ayrılmış bir değişken listesiyle bir ortam değişkeni ayarerek bunları VSO_AGENT_IGNORE atabilirsiniz.

SSS

Nasıl yaparım? v2 aracı sürümüne sahip miyim?

  1. Aracı havuzları sekmesine gidin:

    1. , Azure DevOpsayarlarını seçin.

      Kuruluş ayarları'ı seçin.

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

      Aracı havuzları sekmesini seçin.

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

      Koleksiyon ayarları'ı seçin.

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

      Aracı havuzları'ı seçin.

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

      Koleksiyon ayarları, 2019.

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

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

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

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

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

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

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

      Ayarlar, Aracı Kuyrukları, 2017'yi seçin.

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

      Havuzları yönet, 2017'yi seçin.

    1. Projenize gidin ve Projeyi yönet 'i (dişli simgesi) seçin.

      Projeyi yönetme, 2015.

    2. Denetim masası'nı seçin.

      Denetim masası, 2015'i seçin.

    3. Aracı havuzları'ı seçin.

      Aracı havuzları, 2015'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ı'nın istediğiniz aracı havuzunu seçin.

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

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

    3. Özellikler sekmesini 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ılara yüklenmiş yazılımların listesi için bkz. Microsoft tarafından 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.

      İstenen 2019 sekmesini 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, 2019'ı seçin.

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

    Aracı özellikleri sekmesi, 2018.

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

    Aracı özellikleri sekmesi, 2017.

    Aracı havuzları sekmesinden istediğiniz aracıyı seçin ve Özellikler sekmesini seçin.

    Aracı özellikleri sekmesi olan 2015'i seçin.

  5. Özelliğine Agent.Version bakın. Bu değeri yayımlanan en son aracı sürümüne göre kontrol edin. Aracı Azure Pipelines a bakın ve listelenen en yüksek sürüm numarasının sayfasını kontrol edin.

  6. Her aracı, aracının daha yeni bir sürümünü gerektiren bir görevi çalıştırarak otomatik olarak kendini güncelleştirmesi. Bazı aracıları el ile güncelleştirmek için havuza sağ tıklayın ve Tüm aracıları güncelleştir'i seçin.

Bir sanal havuza parçası olan v2 aracılarımı Azure DevOps Server miyim?

Evet. Azure DevOps Server 2019'dan itibaren, yerel diskte aracı paketi dosyalarını araması için sunucuyu yapılandırabilirsiniz. Bu yapılandırma, yayın tarihi geldiğinde sunucuyla birlikte gelen varsayılan sürümü geçersiz kılar. Bu senaryo, sunucunun İnternet erişimi olmayanlar için de geçerlidir.

  1. İnternet erişimi olan bir bilgisayardan, Azure Pipelines Agent GitHub Releases sayfasından aracı paketi dosyalarının en son sürümünü (.zip veya .tar.gz formunda) indirin.

  2. İndirilen paket dosyalarını, Azure DevOps Server yöntemi (USB sürücüsü, Ağ aktarımı vb.) kullanarak her bir uygulama katmanına aktarın. Aracı dosyalarını klasörünün altına %ProgramData%\Microsoft\Azure DevOps\Agents yazın.

  3. Her şey hazır! Aracınız Azure DevOps Server her güncelleştirildiğinde yerel dosyaları kullanır. Her aracı, aracının daha yeni bir sürümünü gerektiren bir görevi çalıştırarak otomatik olarak kendini güncelleştirmesi. Ancak bazı aracıları el ile güncelleştirmek için havuza sağ tıklayın ve Ardından Tüm aracıları güncelleştir'i seçin.

Başlatan hizmetin nasıl çalıştığını nereden öğrenebilirim?

Apple Geliştirici Kitaplığı: Başlatma Daemon'ları ve Aracıları Oluşturma

Güvenlik duvarı çalıştır çalıştırarak kodum şu anda Azure Repos. Aracı hangi URL'lerle iletişim kurmalı?

Bir aracıyı güvenlik duvarının arkasındaki güvenli bir ağ üzerinde çalıştıracaksanız, aracının aşağıdaki URL'ler ve IP adresleriyle iletişim başlatayacağına emin olun.

Etki alanı URL'si Description
https://{organization_name}.pkgs.visualstudio.com Azure DevOps kullanan kuruluşlar için Paketleme API'sini {organization_name}.visualstudio.com kullanma
https://{organization_name}.visualstudio.com Etki alanını kullanan kuruluşlar {organization_name}.visualstudio.com için
https://{organization_name}.vsblob.visualstudio.com Azure DevOps kullanan kuruluşlar için telemetri {organization_name}.visualstudio.com verileri ekleme
https://{organization_name}.vsrm.visualstudio.com Release Management kullanan kuruluşlar için hizmet {organization_name}.visualstudio.com hizmetleri
https://{organization_name}.vssps.visualstudio.com Azure DevOps kullanan kuruluşlar için platform {organization_name}.visualstudio.com hizmetleri
https://{organization_name}.vstmr.visualstudio.com Azure DevOps kullanan kuruluşlar için Test Yönetim Hizmetleri'ne {organization_name}.visualstudio.com sahip olun
https://*.blob.core.windows.net Azure Artifacts
https://*.dev.azure.com Etki alanını kullanan kuruluşlar dev.azure.com için
https://*.vsassets.io Azure Artifacts aracılığıyla CDN
https://*.vsblob.visualstudio.com Azure DevOps kullanan kuruluşlar için telemetri dev.azure.com verileri ekleme
https://*.vssps.visualstudio.com Azure DevOps kullanan kuruluşlar için platform dev.azure.com hizmetleri
https://*.vstmr.visualstudio.com Azure DevOps kullanan kuruluşlar için Test Yönetim Hizmetleri'ne dev.azure.com sahip olun
https://app.vssps.visualstudio.com Etki alanını kullanan kuruluşlar {organization_name}.visualstudio.com için
https://dev.azure.com Etki alanını kullanan kuruluşlar dev.azure.com için
https://login.microsoftonline.com Azure Active Directory oturumu açma
https://management.core.windows.net Azure Yönetim API'si'ler
https://vstsagentpackage.azureedge.net Aracı paketi

Kuruluşta mevcut güvenlik duvarı veya IP kısıtlamalarının olduğundan emin olmak için, ve 'nin açık olduğundan emin olun ve izin ver listelenen IP'lerinizi IP sürümünüze bağlı olarak aşağıdaki IP adreslerini içerecek dev.azure.com*dev.azure.com şekilde güncelleştirin. Şu anda ve IP adreslerini izinli olarak listeleye alıyorsanız, bunları kaldırmanız gerekmay olarak 13.107.6.18313.107.9.183 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ı.

Nasıl yaparım? otomatik olarak imzalanan sertifikayla çalıştıracak mısınız?

Aracıyı otomatik olarak imzalanan sertifikayla çalıştırma

Nasıl yaparım? arkanızda çalıştıracak web proxy?

Aracıyı bir web proxy

Nasıl yaparım? yeniden başlatmak için

Aracıyı etkileşimli olarak çalıştıracaksanız Etkileşimli olarak çalıştırma konusunda yeniden başlatma yönergelerine bakın. Aracıyı bir hizmet olarak çalıştırdıysanız, Aracıyı Durdur ve ardından Başlat adımlarını izleyin.

Nasıl yaparım? aracıyı bir aracıyı atlayarak web proxy ve Azure Pipelines?

Aracının proxy'nizi atlayarak doğrudan Azure Pipelines bağlanmalarını web proxy aşağıdaki URL'lere erişmesini sağlamak için yapılandırmanız gerekir.

Etki alanını kullanan kuruluşlar *.visualstudio.com için:

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 dev.azure.com için:

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şta mevcut güvenlik duvarı veya IP kısıtlamalarının olduğundan emin olmak için, ve 'nin açık olduğundan emin olun ve izin ver listelenen IP'lerinizi IP sürümünüze bağlı olarak aşağıdaki IP adreslerini içerecek dev.azure.com*dev.azure.com şekilde güncelleştirin. Şu anda ve IP adreslerini izinli olarak listeleye alıyorsanız, bunları kaldırmanız gerekmay olarak 13.107.6.18313.107.9.183 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 aracıyı atlayarak web proxy. Derleme işlem hattınız ve betikleriniz, derlemenize web proxy her görev ve araç için işlerinizi atlayarak işlemeye devam ediyor.

Örneğin, bir NuGet görevi kullanıyorsanız, web proxy akışı barındıran sunucunun URL'sini atlayarak desteklemek için NuGet yapılandırmanız gerekir.

TFS'yi ve yukarıdaki bölümlerde yer alan URL'leri kullanmak bana uygun değil. Nereden yardım aedebilirim?

Web sitesi ayarları ve güvenliği

Şirket içi TFS'yi kullanıyor ve bu özelliklerden bazılarını göremiyorum. Neden olmasın?

Bu özelliklerden bazıları yalnızca şirket Azure Pipelines şirket içinde kullanılamaz. TFS'nin en son sürümüne yükseltme yaptıysanız bazı özellikler şirket içinde kullanılabilir.