Sdílet prostřednictvím


Samohostovaní agenti macOS

Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019

Tento článek obsahuje pokyny k používání softwaru agenta 3.x s Azure DevOps Services a aktuálními verzemi Azure DevOps Serveru. Seznam verzí Azure DevOps Serveru, které podporují agenta 3.x, najdete v tématu Podporuje Azure DevOps Server agent 3.x.

K sestavení a nasazení aplikací Xcode potřebujete aspoň jednoho agenta pro macOS. Tento agent může také sestavovat a nasazovat aplikace v Javě a Androidu.

Poznámka

Tento článek popisuje, jak nakonfigurovat agenta v místním prostředí. Pokud používáte Azure DevOps Services a agent hostovaný Microsoftem splňuje vaše potřeby, můžete přeskočit nastavení agenta macOS hostovaného místně.

Informace o agentech

Pokud už víte, co je agent a jak funguje, můžete přejít přímo do následujících částí. Pokud byste ale chtěli více informací o tom, co dělají a jak fungují, podívejte se na agenty Azure Pipelines, sekci .

Kontrola požadavků

  • Podporované operační systémy
    • x64
      • macOS 10.15 "Catalina"
      • macOS 11.0 "Big Sur"
      • macOS 12.0 "Monterey"
      • macOS 13.0 "Ventura"
      • macOS 14.0 "Sonoma"
    • ARM64
      • macOS 11.0 "Big Sur"
      • macOS 12.0 "Monterey"
      • macOS 13.0 "Ventura"
      • macOS 14.0 "Sonoma"
  • git – Git 2.9.0 nebo novější (doporučuje se nejnovější verze – můžete snadno nainstalovat pomocí Homebrew)
  • .NET – Software agenta běží na .NET 6, ale nainstaluje vlastní verzi rozhraní .NET, takže neexistuje žádný požadavek .NET.
  • TFVC – pokud vytváříte z úložiště TFVC, přečtěte si požadavky TFVC.

Příprava oprávnění

Pokud vytváříte z úložiště Subversion, musíte na počítač nainstalovat klienta Subversion.

Při prvním nastavení agenta byste měli tento proces spustit ručně. Jakmile zjistíte, jak agenti fungují, nebo pokud chcete automatizovat nastavení mnoha agentů, zvažte použití bezobslužné konfigurace.

Zabezpečení informací pro agenty v místním prostředí

Uživatel, který konfiguruje agenta, potřebuje oprávnění správce fondu, ale uživatel, který agent spouští, ne.

Složky řízené agentem by měly být omezeny na co nejméně uživatelů, protože obsahují tajemství, která by mohla být dešifrována nebo exfiltrována.

Agent Azure Pipelines je softwarový produkt navržený ke spuštění kódu, který stáhne z externích zdrojů. Ze své podstaty může být cílem útoků RCE (Remote Code Execution).

Proto je důležité vzít v úvahu model hrozeb, který obklopuje každé jednotlivé použití agentů Pipelines, k provádění práce a rozhodnout se, jaká minimální oprávnění by mohla být udělena uživateli, na kterém běží agent, na počítači, na kterém agent běží, pro uživatele, kteří mají přístup k definici kanálu, úložiště Git, kde je yaml uložený, nebo skupinu uživatelů, kteří řídí přístup k fondu pro nové kanály.

Osvědčeným postupem je, aby identita, pod kterou agent běží, byla jiná než identita s oprávněními pro připojení agenta k fondu. Uživatel, který generuje přihlašovací údaje (a další soubory související s agenty), se liší od uživatele, který je potřebuje přečíst. Proto je bezpečnější pečlivě zvážit přístup udělený samotnému počítači agenta a složky agentů, které obsahují citlivé soubory, jako jsou protokoly a artefakty.

Dává smysl udělit přístup ke složce agenta pouze správcům DevOps a identitě uživatele, která spouští proces agenta. Správci možná budou muset prozkoumat systém souborů, aby porozuměli chybám sestavení nebo získali soubory protokolů, aby mohli hlásit selhání Azure DevOps.

Rozhodněte se, kterého uživatele použijete.

Jako jednorázový krok musíte agenta zaregistrovat. Tento postup musí provést někdo s oprávněním spravovat frontu agentů. Agent nebude používat přihlašovací údaje této osoby v každodenní operaci, ale musí dokončit registraci. Přečtěte si další informace o tom, jak agenti komunikují.

Potvrzení, že má uživatel oprávnění

Ujistěte se, že uživatelský účet, který budete používat, má oprávnění k registraci agenta.

Je uživatel vlastníkem organizace Azure DevOps nebo správcem TFS nebo Azure DevOps Serveru? Zastavte tady, máte oprávnění.

Jinak:

  1. Otevřete prohlížeč a přejděte na kartu Fondy agentů pro vaši organizaci Azure Pipelines nebo Azure DevOps Server nebo server TFS:

    1. Přihlaste se ke své organizaci (https://dev.azure.com/{yourorganization}).

    2. Zvolte Azure DevOps, Nastavení organizace.

      Zvolte nastavení organizace.

    3. Zvolte fondy agentů.

      vyberte kartu Fondy agentů.

    1. Přihlaste se ke své kolekci projektů (http://your-server/DefaultCollection).

    2. Zvolte Azure DevOps, nastavení kolekce .

      Zvolte nastavení kolekce.

    3. Zvolte pooly agentů.

      Zvolte pooly agentů.

    1. Zvolte Azure DevOps, nastavení kolekce .

      Nastavení kolekce, 2019.

    2. Zvolte pooly agentů.

      Vyberte fondy agentů, 2019.

  2. Vyberte fond na pravé straně stránky a potom klikněte na Zabezpečení.

  3. Pokud se uživatelský účet, který budete používat, nezobrazuje, získejte správce, aby ho přidal. Správcem může být správce fondu agentů, vlastníkem organizace Azure DevOpsnebo správcem TFS nebo Azure DevOps Serveru.

    Pokud se jedná o skupinu nasazení agenta, může být správcem skupiny nasazení, vlastníkemorganizace Azure DevOps nebo správcem TFS nebo Azure DevOps Serveru.

    Uživatele můžete přidat do role správce skupiny nasazení na kartě Zabezpečení na stránce Skupiny nasazení v Azure Pipelines.

Poznámka

Pokud se zobrazí podobná zpráva: Omlouváme se, ale identitu se nám nepovedlo přidat. Zkuste jinou identitu.jste pravděpodobně postupovali podle výše uvedených kroků pro vlastníka organizace nebo správce TFS nebo Azure DevOps Serveru. Nemusíte dělat nic. už máte oprávnění ke správě fondu agentů.

Stažení a konfigurace agenta

Azure Pipelines

  1. Přihlaste se k počítači pomocí účtu, pro který jste připravili oprávnění, jak je vysvětleno v předchozí části.

  2. Ve webovém prohlížeči se přihlaste ke službě Azure Pipelines a přejděte na kartu fondy agentů:

    1. Přihlaste se ke své organizaci (https://dev.azure.com/{yourorganization}).

    2. Zvolte Azure DevOps, Nastavení organizace.

      Zvolte nastavení organizace.

    3. Zvolte fondy agentů.

      vyberte kartu Fondy agentů.

    1. Přihlaste se ke své kolekci projektů (http://your-server/DefaultCollection).

    2. Zvolte Azure DevOps, nastavení kolekce .

      Zvolte nastavení kolekce.

    3. Zvolte skupiny agentů.

      Vyberte fondy Agentů.

    1. Zvolte Azure DevOps, nastavení kolekce .

      Nastavení kolekce, 2019.

    2. Zvolte pooly agentů.

      Zvolit pooly agentů, 2019.

  3. Vyberte Výchozí fond, zvolte kartu Agenti a vyberte Nového agenta.

  4. V dialogovém okně Získat agenta klikněte na macOS .

  5. Klikněte na tlačítko Stáhnout.

  6. Postupujte podle pokynů na stránce.

  7. Vymažte rozšířený atribut souboru tar: xattr -c vsts-agent-osx-x64-V.v.v.tar.gz.

  8. Rozbalte agenta do vámi vybraného adresáře. cd do daného adresáře a spusťte ./config.sh. Ujistěte se, že cesta k adresáři neobsahuje mezery, protože nástroje a skripty ne vždy správně řídicí mezery.

Adresa URL serveru

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

Azure DevOps Server: https://{your_server}/tfs

Typ ověřování

Při registraci agenta vyberte z následujících typů ověřování a instalační program agenta vás vyzve k zadání konkrétních dalších informací požadovaných pro každý typ ověřování. Další informace najdete v tématu možnosti ověřování agenta v místním prostředí.

  • osobní přístupový token
  • Alternativní připojení k Azure DevOps Serveru nebo TFS pomocí základního ověřování. Když vyberete alternativní zobrazí se výzva k zadání přihlašovacích údajů.

Interaktivní spuštění

Pokyny ke spuštění agenta v interaktivním režimu nebo jako služba najdete v tématu Agents: Interactive vs. service.

Interaktivní spuštění agenta:

  1. Pokud jste agenta provozovali jako službu, odinstalujte tuto službu.

  2. Spusťte agenta.

    ./run.sh
    

Pokud chcete agenta restartovat, stiskněte Ctrl+C a potom spusťte run.sh pro jeho restartování.

Chcete-li použít svého agenta, spusťte úlohu pomocí fondu agenta. Pokud jste nevybrali jiný fond, váš agent je umístěn do Výchozího fondu.

Spustit jednou

Pro agenty nakonfigurované tak, aby běželi interaktivně, můžete se rozhodnout, že agent přijme jenom jednu úlohu. Pro spuštění v této konfiguraci:

./run.sh --once

Agenti v tomto režimu přijmou pouze jednu úlohu a pak se plynule ukončí (užitečné pro spouštění ve službě, jako je Azure Container Instances).

Spustit jako spuštěnou službu

Poskytujeme ./svc.sh skript pro spuštění a správu agenta jako služby launchd LaunchAgent. Tento skript se vygeneruje po konfiguraci agenta. Služba má přístup k uživatelskému rozhraní pro spouštění testů uživatelského rozhraní.

Poznámka

Pokud dáváte přednost jiným přístupům, můžete použít jakýkoli druh mechanismu služby, který dáváte přednost. Viz Soubory služby.

Odznaky

V následující části jsou tyto tokeny nahrazeny:

  • {agent-name}

  • {tfs-name}

Například jste nakonfigurovali agenta (jak je znázorněno v předchozím příkladu) s názvem our-osx-agent. V následujících příkladech je {tfs-name} buď:

  • Azure Pipelines: název vaší organizace. Pokud se například připojíte k https://dev.azure.com/fabrikam, bude název služby vsts.agent.fabrikam.our-osx-agent

  • TFS: název místního serveru TFS AT. Pokud se například připojíte k http://our-server:8080/tfs, bude název služby vsts.agent.our-server.our-osx-agent

Příkazy

Změna do adresáře agenta

Pokud jste například nainstalovali do podsložky myagent ve vašem domovském adresáři:

cd ~/myagent$

Nainstalovat

Příkaz:

./svc.sh install

Tento příkaz vytvoří plist launchd, který odkazuje na ./runsvc.sh. Tento skript nastaví prostředí (další podrobnosti v následující části) a spustí hostitele agenta.

Začínat

Příkaz:

./svc.sh start

Výstup:

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}

Levé číslo je PID, pokud je služba spuštěná. Pokud druhé číslo není nula, došlo k problému.

Stav

Příkaz:

./svc.sh status

Výstup:

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}

Levé číslo je PID, pokud služba běží. Pokud druhé číslo není nula, došlo k problému.

Zastavit

Příkaz:

./svc.sh stop

Výstup:

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

Odinstalovat

Před odinstalací byste měli přestat.

Příkaz:

./svc.sh uninstall

Automatické přihlášení a uzamčení

Za normálních okolností se služba agenta spustí až po přihlášení uživatele. Pokud chcete, aby se služba agenta automaticky spustila při restartování počítače, můžete počítač nakonfigurovat tak, aby se automaticky přihlásil a zamkl při spuštění. Viz Nastavení automatického přihlášení počítače Mac při spuštění – Podpora Apple.

Poznámka

Další informace najdete v Terminally Geeky: bezpečné použití automatického přihlášení blogu. Soubor .plist uvedený v tomto blogu již nemusí být k dispozici na původním místě, ale kopii lze najít zde: Lifehacker - Nastavte OS X tak, aby načetl vaši plochu před přihlášením.

Aktualizace proměnných prostředí

Když službu nakonfigurujete, pořídí snímek některých užitečných proměnných prostředí pro aktuálního přihlašovacího uživatele, jako je PATH, LANG, JAVA_HOME, ANT_HOME a MYSQL_PATH. Pokud potřebujete aktualizovat proměnné (například po instalaci nového softwaru):

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

Snímek proměnných prostředí je uložený v .env souboru v kořenovém adresáři agenta. Tento soubor můžete také změnit přímo tak, aby se změny proměnných prostředí použily.

Před spuštěním služby spusťte pokyny.

Můžete také spustit vlastní instrukce a příkazy, které mají být spuštěny při zahájení služby. Můžete například nastavit prostředí nebo volat skripty.

  1. Upravit runsvc.sh.

  2. Nahraďte následující řádek těmito pokyny:

    # insert anything to setup env when running as a service
    

Soubory služby

Při instalaci služby se nasadí některé soubory služby.

Soubor služby .plist

Vytvoří se soubor služby .plist:

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

Například:

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

./svc.sh install vygeneruje tento soubor z této šablony: ./bin/vsts.agent.plist.template

Soubor .service

./svc.sh start službu najde čtením souboru .service, který obsahuje cestu k souboru služby plist popsaného výše.

Alternativní mechanismy služeb

Poskytujeme ./svc.sh skript jako pohodlný způsob, jak spustit a spravovat agenta jako službu launchd LaunchAgent. Můžete ale použít jakýkoli druh mechanismu služby, který dáváte přednost.

Pomocí výše popsané šablony můžete usnadnit generování dalších typů souborů služby. Pokud například nepotřebujete testy uživatelského rozhraní a nechcete konfigurovat automatické přihlašování a zámek, upravíte šablonu tak, aby vygenerovala službu, která se spouští jako spouštěcí démon. Viz Apple Developer Library: Vytváření spouštěcích démonů a agentů.

Nahrazení agenta

Pokud chcete nahradit agenta, postupujte opakovaně podle kroků Stažení a konfigurace agenta.

Když nakonfigurujete agenta se stejným názvem jako agent, který už existuje, zobrazí se dotaz, jestli chcete nahradit existujícího agenta. Pokud odpovíte Y, nezapomeňte odebrat agenta (viz níže), který nahrazujete. Jinak se po několika minutách konfliktů jeden z agentů vypne.

Odebrání a změna konfigurace agenta

Chcete-li odebrat agenta:

  1. Zastavte a odinstalujte službu, jak je vysvětleno v předchozí části.

  2. Odeberte agenta.

    ./config.sh remove
    
  3. Zadejte svoje přihlašovací údaje.

Jakmile agenta odeberete, můžete ho znovu nakonfigurovat.

Bezobslužná konfigurace

Agenta je možné nastavit ze skriptu bez zásahu člověka. Musíte předat --unattended a odpovědi na všechny otázky.

Pokud chcete nakonfigurovat agenta, musí znát adresu URL vaší organizace nebo kolekce a přihlašovací údaje někoho, kdo má oprávnění k nastavení agentů. Všechny ostatní odpovědi jsou volitelné. Libovolný parametr příkazového řádku lze místo toho zadat pomocí proměnné prostředí: zadejte jeho název velkými písmeny a před něj přidejte VSTS_AGENT_INPUT_. Například VSTS_AGENT_INPUT_PASSWORD místo zadání --password.

Požadované možnosti

  • --unattended – instalační program agenta nezobrazí výzvu k zadání informací a všechna nastavení musí být k dispozici na příkazovém řádku.
  • --url <url> – adresa URL serveru. Příklad: https://dev.azure.com/myorganization nebo http://my-azure-devops-server:8080/tfs
  • --auth <type> – typ ověřování. Platné hodnoty jsou:
    • pat (osobní přístupový token - PAT) – PAT je jediné schéma, které funguje pro Azure DevOps Services.
    • alt (základní ověřování)

Možnosti ověřování

  • Pokud jste zvolili --auth pat:
    • --token <token> – určuje váš osobní přístupový token.
    • PAT je jediné schéma, které funguje s Azure DevOps Services.
  • Pokud jste zvolili --auth negotiate nebo --auth alt:
    • --userName <userName> – určuje uživatelské jméno.
    • --password <password> – určuje heslo.

Názvy fondů a agentů

  • --pool <pool> – název fondu, ke které se má agent připojit
  • --agent <agent> – název agenta
  • --replace – vyměňte agenta ve skupině. Pokud jiný agent naslouchá stejným jménem, začne selhávat kvůli konfliktu.

Nastavení agenta

  • --work <workDirectory> – pracovní adresář, ve kterém jsou uložená data úlohy. Ve výchozím nastavení je _work v kořenovém adresáři agenta. Pracovní adresář vlastní daný agent a neměl by být sdílen mezi několika agenty.
  • --acceptTeeEula – přijměte Licenční smlouvu team Exploreru pro všechny koncové uživatele (jenom macOS a Linux).
  • --disableloguploads – nez streamujte a také neodesílejte výstup protokolu konzoly na server. Místo toho je můžete po dokončení úlohy načíst ze systému souborů hostitele agenta.

Pouze skupina implementace

  • --deploymentGroup – konfigurace agenta jako agenta skupiny nasazení
  • --deploymentGroupName <name> – používá se s --deploymentGroup k určení skupiny nasazení, ke které se má agent připojit.
  • --projectName <name> – používá se s --deploymentGroup k nastavení názvu projektu
  • --addDeploymentGroupTags – používá se s --deploymentGroup k označení, že by se měly přidat značky skupiny nasazení.
  • --deploymentGroupTags <tags> – používá se s --addDeploymentGroupTags k určení čárkami odděleného seznamu značek pro agenta skupiny nasazení – například "web, db".

Pouze prostředí

  • --addvirtualmachineresourcetags – slouží k označení, že by se měly přidat značky prostředků prostředí.
  • --virtualmachineresourcetags <tags> – používá se s --addvirtualmachineresourcetags k určení čárkami odděleného seznamu tagů pro agenta zdrojů prostředí – například "web, db".

./config.sh --help vždy uvádí nejnovější požadované a volitelné odpovědi.

Diagnostika

Pokud máte potíže se samostatně hostovaným agentem, můžete zkusit spustit diagnostiku. Po konfiguraci agenta:

./run.sh --diagnostics

Tím se projde diagnostický soubor nástrojů, který vám může pomoct s odstraněním problému. Funkce diagnostiky je dostupná od agenta verze 2.165.0.

Diagnostika sítě pro agenty v místním prostředí

Nastavte hodnotu Agent.Diagnostic na true a shromážděte další logy použitelné k řešení problémů se sítí pro samohostované agenty. Další informace najdete v tématu Diagnostika sítě pro agenty v místním prostředí.

Nápověda k dalším možnostem

Další informace o dalších možnostech:

./config.sh --help

Nápověda poskytuje informace o alternativách ověřování a bezobslužné konfiguraci.

Schopnosti

Možnosti vašeho agenta jsou katalogizovány a inzerovány ve skupině tak, aby mu byly přiřazeny pouze ty sestavení a verze, které může zpracovat. Viz možnosti agenta sestavení a vydávání verzí.

V mnoha případech budete muset po nasazení agenta nainstalovat software nebo nástroje. Obecně byste měli na agenty nainstalovat jakýkoli software a nástroje, které používáte na vývojovém počítači.

Pokud například sestavení obsahuje úlohu npm, sestavení se nespustí, pokud ve fondu není nainstalovaný agent sestavení.

Důležitý

Možnosti zahrnují všechny proměnné prostředí a hodnoty, které jsou nastavené při spuštění agenta. Pokud se některá z těchto hodnot změní, zatímco je agent spuštěný, musí být restartován, aby načetl nové hodnoty. Po instalaci nového softwaru do agenta je nutné restartovat agenta, aby se nová funkce zobrazila ve fondu, aby bylo možné sestavení spustit.

Pokud chcete vyloučit proměnné prostředí jako možnosti, můžete je určit nastavením proměnné prostředí VSO_AGENT_IGNORE se seznamem proměnných oddělených čárkami, které chcete ignorovat.

FAQ

Jak zajistím, že mám nejnovější verzi klienta?

  1. Přejděte na kartu Pooly agentů:

    1. Přihlaste se ke své organizaci (https://dev.azure.com/{yourorganization}).

    2. Vyberte Azure DevOps, Nastavení organizace.

      Zvolte nastavení organizace.

    3. Vyberte fondu agentů.

      vyberte kartu Fondy agentů.

    1. Přihlaste se ke své kolekci projektů (http://your-server/DefaultCollection).

    2. Zvolte Azure DevOps, nastavení kolekce .

      Zvolte nastavení kolekce.

    3. Zvolte fondy agentů.

      Zvolte fondy agentů.

    1. Zvolte Azure DevOps, nastavení kolekce .

      Nastavení kolekce, 2019.

    2. Zvolte pooly agentů.

      Zvolit fond agentů, 2019.

  2. Klikněte na skupinu, která obsahuje agenta.

  3. Ujistěte se, že je agent povolený.

  4. Přejděte na kartu schopností:

    1. Na kartě Fondy agentů vyberte požadovaný fond agentů.

      Z fondů agentů vyberte požadovaný fond agentů.

    2. Vyberte Agent a zvolte požadovaného agenta.

      Vyberte agenty a zvolte agenta.

    3. Zvolte kartu Schopnosti.

      Zvolte kartu Možnosti.

      Poznámka

      Agenti hostovaní Microsoftem nezobrazují systémové funkce. Seznam softwaru nainstalovaných na agentech hostovaných Microsoftem najdete v tématu Použití agenta hostovaného Microsoftem.

    1. Na záložce Fondy agentů vyberte požadovaný fond.

      Vyberte požadovaný fond.

    2. Vyberte Agenti a zvolte požadovaného agenta.

      Vyberte agenty a zvolte požadovaného agenta.

    3. Zvolte kartu Schopnosti.

      karta Možnosti agenta.

    1. Na kartě Fondy agentů vyberte požadovaný fond.

      Vyberte požadovanou záložku 2019.

    2. Vyberte Agenti a zvolte požadovaného agenta.

      Zvolte požadovaného agenta 2019.

    3. Zvolte kartu Schopnosti.

      Zvolte kartu Schopnosti, 2019.

  5. Vyhledejte možnost Agent.Version. Tuto hodnotu můžete zkontrolovat u nejnovější publikované verze agenta. Viz agenta Azure Pipelines a podívejte se na stránku s nejvyšším uvedeným číslem verze.

  6. Každý agent se automaticky aktualizuje, když spustí úlohu, která vyžaduje novější verzi agenta. Pokud chcete některé agenty aktualizovat ručně, klikněte pravým tlačítkem myši na fond a vyberte Aktualizovat všechny agenty.

Můžu aktualizovat agenty, kteří jsou součástí fondu Azure DevOps Serveru?

Ano. Od Azure DevOps Serveru 2019 můžete nakonfigurovat server tak, aby hledal soubory balíčků agentů na místním disku. Tato konfigurace přepíše výchozí verzi, která byla součástí serveru v době vydání. Tento scénář platí také v případě, že server nemá přístup k internetu.

  1. Z počítače s přístupem k internetu stáhněte nejnovější verzi souborů balíčku agenta (ve formátu .zip nebo .tar.gz) ze stránky verze agenta Azure Pipelines na GitHubu.

  2. Přeneste stažené soubory balíčků do každé aplikační vrstvy serveru Azure DevOps pomocí zvolené metody (jako je usb disk, síťový přenos atd.). Soubory agenta umístěte do následující složky:

  • Windows: %ProgramData%\Microsoft\Azure DevOps\Agents
  • Linux: usr/share/Microsoft/Azure DevOps/Agents
  • macOS: usr/share/Microsoft/Azure DevOps/Agents

Pokud není k dispozici, vytvořte složku Agents.

  1. Máte všechno připravené! Váš Azure DevOps Server teď použije místní soubory při každé aktualizaci agentů. Každý agent se automaticky aktualizuje, když spustí úlohu, která vyžaduje novější verzi agenta. Pokud ale chcete některé agenty aktualizovat ručně, klikněte pravým tlačítkem na fond a pak zvolte Aktualizovat všechny agenty.

Jak zajistím, že mám nejnovější verzi agenta?

  1. Přejděte na kartu Fondy agentů:

    1. Přihlaste se ke své organizaci (https://dev.azure.com/{yourorganization}).

    2. Zvolte Azure DevOps, Nastavení organizace.

      Zvolte nastavení organizace.

    3. Zvolte pooly agentů.

      vyberte kartu Fondy agentů.

    1. Přihlaste se ke své kolekci projektů (http://your-server/DefaultCollection).

    2. Zvolte Azure DevOps, nastavení kolekce .

      Zvolte nastavení kolekce.

    3. Zvolte pooly agentů.

      Zvolte fondy agentů.

    1. Zvolte Azure DevOps, nastavení kolekce .

      Nastavení kolekce, 2019.

    2. Zvolte fondy agentů.

      Vybrat skupiny agentů, 2019.

  2. Klikněte na fond, který obsahuje agenta.

  3. Ujistěte se, že je agent povolený.

  4. Přejděte na kartu schopností:

    1. Na kartě Fondy agentů vyberte požadovaný fond agentů.

      Z fondů agentů vyberte požadovaný fond agentů.

    2. Vyberte Agenti a zvolte požadovaného agenta.

      Vyberte agenty a zvolte jednoho agenta.

    3. Zvolte kartu Schopnosti.

      Zvolte kartu Možnosti.

      Poznámka

      Agenti hostovaní Microsoftem nezobrazují systémové funkce. Seznam softwaru nainstalovaných na agentech hostovaných Microsoftem najdete v tématu Použití agenta hostovaného Microsoftem.

    1. Na kartě Fondy agentů vyberte požadovaný fond.

      Vyberte požadovaný fond.

    2. Vyberte Agenti a zvolte požadovaného agenta.

      Vyberte agenty a zvolte požadovaného agenta.

    3. Zvolte kartu Schopnosti.

      karta Možnosti agenta.

    1. Na záložce Fondy agentů vyberte požadovaný fond.

      Vyberte požadovanou kartu 2019.

    2. Vyberte Agenti a zvolte požadovaného agenta.

      Zvolte požadovaného agenta 2019.

    3. Zvolte záložku Možnosti.

      Zvolte kartu Schopnosti, 2019.

  5. Vyhledejte možnost Agent.Version. Tuto hodnotu můžete zkontrolovat u nejnovější publikované verze agenta. Viz agenta Azure Pipelines a podívejte se na stránku s nejvyšším uvedeným číslem verze.

  6. Každý agent se automaticky aktualizuje, když spustí úlohu, která vyžaduje novější verzi agenta. Pokud chcete některé agenty aktualizovat ručně, klikněte pravým tlačítkem na fond a vyberte Aktualizovat všechny agenty.

Můžu aktualizovat agenty, kteří jsou součástí fondu Azure DevOps Serveru?

Ano. Od Azure DevOps Serveru 2019 můžete nakonfigurovat server tak, aby hledal soubory balíčků agentů na místním disku. Tato konfigurace přepíše výchozí verzi, která byla součástí serveru v době vydání. Tento scénář platí také v případě, že server nemá přístup k internetu.

  1. Z počítače s přístupem k internetu stáhněte nejnovější verzi souborů balíčku agenta (ve formátu .zip nebo .tar.gz) ze stránky GitHub Releases pro agenta Azure Pipelines .

  2. Přeneste stažené soubory balíčků do každé aplikační vrstvy serveru Azure DevOps pomocí zvolené metody (jako je usb disk, síťový přenos atd.). Soubory agenta umístěte do následující složky:

  • Windows: %ProgramData%\Microsoft\Azure DevOps\Agents
  • Linux: usr/share/Microsoft/Azure DevOps/Agents
  • macOS: usr/share/Microsoft/Azure DevOps/Agents

Pokud není k dispozici, vytvořte složku Agents.

  1. Máte všechno připravené! Váš Azure DevOps Server teď použije místní soubory při každé aktualizaci agentů. Každý agent se automaticky aktualizuje, když spustí úlohu, která vyžaduje novější verzi agenta. Pokud ale chcete některé agenty aktualizovat ručně, klikněte pravým tlačítkem na fond a pak zvolte Aktualizovat všechny agenty.

Kde se dozvím další informace o tom, jak spuštěná služba funguje?

Apple Developer Library: Vytváření spuštění démonů a agentů

Provozuji bránu firewall a můj kód je v úložištích Azure Repos. S jakými adresami URL musí agent komunikovat?

Pokud používáte agenta v zabezpečené síti za bránou firewall, ujistěte se, že agent může zahájit komunikaci s následujícími adresami URL a IP adresami.

Adresa URL domény Popis
https://{organization_name}.pkgs.visualstudio.com Azure DevOps Packaging API pro organizace používající doménu {organization_name}.visualstudio.com
https://{organization_name}.visualstudio.com Pro organizace používající doménu {organization_name}.visualstudio.com
https://{organization_name}.vsblob.visualstudio.com Telemetrie Azure DevOps pro organizace používající doménu {organization_name}.visualstudio.com
https://{organization_name}.vsrm.visualstudio.com Release Management Services pro organizace používající doménu {organization_name}.visualstudio.com
https://{organization_name}.vssps.visualstudio.com Azure DevOps Platform Services pro organizace používající doménu {organization_name}.visualstudio.com
https://{organization_name}.vstmr.visualstudio.com Azure DevOps Test Management Services pro organizace používající doménu {organization_name}.visualstudio.com
https://*.blob.core.windows.net Azure Artifacts
https://*.dev.azure.com Pro organizace používající doménu dev.azure.com
https://*.vsassets.io Azure Artifacts přes CDN
https://*.vsblob.visualstudio.com Telemetrie Azure DevOps pro organizace používající doménu dev.azure.com
https://*.vssps.visualstudio.com Azure DevOps Platform Services pro organizace používající doménu dev.azure.com
https://*.vstmr.visualstudio.com Azure DevOps Test Management Services pro organizace používající doménu dev.azure.com
https://app.vssps.visualstudio.com Pro organizace používající doménu {organization_name}.visualstudio.com
https://dev.azure.com Pro organizace používající doménu dev.azure.com
https://login.microsoftonline.com Přihlášení k Microsoft Entra
https://management.core.windows.net Rozhraní API pro správu Azure
https://vstsagentpackage.azureedge.net Balíček agenta

Pokud chcete zajistit, aby vaše organizace fungovala s existujícími omezeními brány firewall nebo IP adres, ujistěte se, že dev.azure.com a *dev.azure.com jsou otevřené a aktualizujte ip adresy uvedené v seznamu povolených tak, aby obsahovaly následující IP adresy na základě vaší verze IP adresy. Pokud momentálně zařazujete IP adresy 13.107.6.183 a 13.107.9.183 na seznam povolených, ponechte je tam, protože je nemusíte odebírat.

rozsahy IPv4

  • 13.107.6.0/24
  • 13.107.9.0/24
  • 13.107.42.0/24
  • 13.107.43.0/24

rozsahy IPv6

  • 2620:1ec:4::/48
  • 2620:1ec:a92::/48
  • 2620:1ec:21::/48
  • 2620:1ec:22::/48

Poznámka

Další informace o povolených adresách najdete v tématu Seznam povolených adres a síťových připojení.

Jak spustit agenta se samopodepsaným certifikátem?

Spusťte agenta s certifikátem, který si podepsal sám

Jak spustit agenta za webovým proxy serverem?

spuštění agenta za webovým proxy serverem

Jak můžu agenta restartovat

Pokud agenta spouštíte interaktivně, přečtěte si pokyny k restartování v Interaktivní spuštění. Pokud spouštíte agenta jako službu, postupujte podle pokynů k zastavení a pak ke spuštění agenta.

Jak nakonfiguruji agenta tak, aby obešel webový proxy server a připojil se ke službě Azure Pipelines?

Pokud chcete, aby agent vynechal proxy server a připojil se přímo ke službě Azure Pipelines, měli byste nakonfigurovat webový proxy server tak, aby agent měl přístup k následujícím adresám URL.

Pro organizace používající doménu *.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

Pro organizace používající doménu 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

Pokud chcete zajistit, aby vaše organizace fungovala s existujícími omezeními brány firewall nebo IP adres, ujistěte se, že dev.azure.com a *dev.azure.com jsou otevřené a aktualizujte ip adresy uvedené v seznamu povolených tak, aby obsahovaly následující IP adresy na základě vaší verze IP adresy. Pokud v současnosti máte na seznamu povolených adres IP adresy 13.107.6.183 a 13.107.9.183, ponechte je tam, protože je nemusíte odstraňovat.

rozsahy IPv4

  • 13.107.6.0/24
  • 13.107.9.0/24
  • 13.107.42.0/24
  • 13.107.43.0/24

rozsahy IPv6

  • 2620:1ec:4::/48
  • 2620:1ec:a92::/48
  • 2620:1ec:21::/48
  • 2620:1ec:22::/48

Poznámka

Tento postup umožňuje agentu obejít webový proxy server. Sestavovací kanál a skripty musí stále zvládat vynechání webového proxy serveru pro každou úlohu a nástroj, které spouštíte v sestavení.

Pokud například používáte úlohu NuGet, musíte nakonfigurovat webový proxy server tak, aby podporoval obejití adresy URL serveru, který je hostitelem kanálu NuGet, který používáte.

Používám TFS a adresy URL v oddílech výše nefungují pro mě. Kde získám pomoc?

Nastavení webových stránek a zabezpečení

Používám místně TFS a některé z těchto funkcí nevidím. Proč ne?

Některé z těchto funkcí jsou dostupné jenom na Azure Pipelines a zatím nejsou dostupné místně. Některé funkce jsou k dispozici místně, pokud jste upgradovali na nejnovější verzi TFS.

Požadavky TFVC

Pokud budete používat TFVC, budete také potřebovat Oracle Java JDK 1.6 nebo vyšší. (Oracle JRE a OpenJDK pro tento účel nestačí.)

Plug-in TEE se používá pro funkčnost TFVC. Má smlouvu EULA, kterou musíte přijmout během konfigurace, pokud plánujete pracovat s TFVC.

Vzhledem k tomu, že modul plug-in TEE už není udržovaný a obsahuje některé zastaralé závislosti Java, od agenta 2.198.0 už není součástí distribuce agenta. Modul plug-in TEE se ale stáhne během provádění úlohy rezervace, pokud si rezervovat úložiště TFVC. Modul plug-in TEE se po spuštění úlohy odebere.

Poznámka

Poznámka: Vzhledem k tomuto stahovacímu mechanismu si můžete všimnout, že úloha při pokladně začíná pracovat s velkým zpožděním.

Pokud agent běží za proxy serverem nebo bránou firewall, musíte souhlasit, abyste zajistili přístup k následující lokalitě: https://vstsagenttools.blob.core.windows.net/. Z této adresy se stáhne modul plug-in TEE.

Pokud používáte agenta v místním prostředí a dochází k problémům se stahováním TEE, můžete TEE nainstalovat ručně:

  1. Nastavte DISABLE_TEE_PLUGIN_REMOVAL proměnnou prostředí nebo potrubí na true. Tato proměnná brání agentu v odebrání pluginu TEE po převzetí úložiště TFVC.
  2. Stáhněte TEE-CLC verze 14.135.0 ručně z Team Exploreru všude, kde GitHub vydává.
  3. Extrahujte obsah složky TEE-CLC-14.135.0 do <agent_directory>/externals/tee.