Použití upstreamových zdrojů ve veřejném informačním kanálu

Azure Artifacts umožňuje vývojářům spravovat jejich závislosti z jednoho informačního kanálu. Pomocí upstreamových zdrojů můžete využívat balíčky z informačních kanálů a veřejných registrů, jako jsou NuGet.org, a npmjs.com. V tomto článku se naučíte:

  • Vytvoření veřejného informačního kanálu
  • Povolení upstreamových zdrojů
  • Přidání nového upstreamového zdroje

Požadavky

Důležité

Soubory uzamčení balíčků pomáhají reprodukovatelnými buildy a minimalizují scénáře, kdy se anonymní uživatel při používání veřejných informačních kanálů vyzve k zadání přihlašovacích údajů.

Vytvoření veřejného informačního kanálu

Veřejný informační kanál je informační kanál v oboru projektu ve veřejném projektu. Veřejné informační kanály dědí nastavení viditelnosti hostitelského projektu.

  1. Přihlaste se ke své organizaci Azure DevOps a vyberte svůj veřejný projekt.

  2. Vyberte Artefakty a pak vyberte Vytvořit informační kanál.

    Snímek obrazovky znázorňující tlačítko vytvořit informační kanál v Azure Artifacts

  3. Zadejte název informačního kanálu a pak jako obor vyberte Project: PublicProject (doporučeno).

    Snímek obrazovky znázorňující, jak vytvořit nový veřejný informační kanál

  4. Až budete hotovi, vyberte Vytvořit .

Přidání nadřazeného zdroje

  1. Přihlaste se ke své organizaci Azure DevOps a vyberte svůj veřejný projekt.

  2. Vyberte Artefakty a pak vyberte veřejný informační kanál.

  3. Výběrem ikony ikona ozubeného kola ozubeného kola získáte přístup k Nastavení informačního kanálu.

  4. Vyberte upstreamové zdroje a pak vyberte Přidat upstream.

    Snímek obrazovky znázorňující, jak přidat nadřazený zdroj do veřejného informačního kanálu

  5. Vyberte typ nadřazeného zdroje. V tomto příkladu přidáme NuGet.org jako nadřazený zdroj.

    Snímek obrazovky znázorňující různé typy upstreamových zdrojů

  6. Nakonfigurujte zdroj a po dokončení vyberte Uložit .

    Snímek obrazovky znázorňující, jak nakonfigurovat nadřazený zdroj

  7. Výběrem možnosti Uložit uložte nový nadřazený zdroj.

    Snímek obrazovky znázorňující, jak uložit nově přidaný nadřazený zdroj

Důležité

Veřejné informační kanály nepodporují upstreamování do privátního informačního kanálu Artifacts. Pokud používáte veřejný informační kanál Azure Artifacts, můžete upstreamovat jenom veřejné registry (NuGet.org, npmjs) nebo jiné veřejné informační kanály Azure Artifacts.

Obnovení balíčků

Na příkazovém řádku se zvýšenými oprávněními spusťte následující příkaz:

nuget.exe restore

Poznámka:

Abyste mohli nainstalovat nové verze balíčků z upstreamu , musíte být informační kanál a upstreamová čtečka (spolupracovníci) nebo vyšší. Anonymní uživatelé mohou instalovat pouze balíčky, které existují ve svém informačním kanálu.

Q&A

Otázka: Pokouším se obnovit své balíčky, ale stále dochází k chybě 401 neautorizováno?

Obsah informačního kanálu může změnit jenom ověřená a autorizovaná identita, která má příslušná oprávnění k informačnímu kanálu. To zahrnuje ukládání balíčků do informačního kanálu z upstreamového zdroje. Neověřené (anonymní) uživatelé můžou stahovat balíčky, které jsou už uložené v informačním kanálu, ale nemůžou ukládat nové balíčky z upstreamu do informačního kanálu.

Správci projektu by měli uložit všechny potřebné verze balíčků do veřejného informačního kanálu. To lze provést obnovením projektu pomocí identity, která může v informačním kanálu po zobrazení výzvy zadat přihlašovací údaje a zajistit, že použitá identita má pro veřejný informační kanál oprávnění Informační kanál a Upstream Reader (Spolupracovníci) nebo vyšší oprávnění.

Pokud jsou anonymní uživatelé, kteří obnovují balíčky pro projekt, opakovaně blokují požadavky na přihlašovací údaje (odpověď 401), následující přístupy tento problém sníží nebo odstraní:

  1. V konfiguraci projektu nepoužívejte rozsahy verzí balíčků. Explicitní verze balíčků zajistí, aby klienti balení požadovali jenom přesnou verzi.

  2. V případě podpory využijte soubory zámků pro váš ekosystém balení, aby klienti balení požadovali pouze konkrétní verze potřebné pro projekt během operace obnovení/instalace.

Otázka: Pokouším se obnovit balíčky pomocí sady Visual Studio, ale myslím, že se získávají z jiného zdroje?

A: Ujistěte se, že Visual Studio používá zdroj odkazovaný v souboru nuget.config , a ne z místního správce balíčků NuGet. Další podrobnosti najdete v tématu Zdroje balíčků.

Pomocí rozhraní příkazového řádku NuGet můžete také vynutit použití zdroje v konfiguračním souboru spuštěním následujícího příkazu:

nuget restore -config <PATH_TO_NUGET_CONFIG_FILE>