Jedna obecná proxy nemusí vyhovovat každému zdroji balíčků. Moderní Yarn podporuje síťová nastavení podle názvu hostitele, takže vybraný hostitel může použít jinou trasu než výchozí.

Projekt může například zachovat jednu obecnou trasu a pro interní registr zvolit jinou:

httpsProxy: "http://203.0.113.10:8080"
networkSettings:
  "registry.example.internal":
    httpsProxy: "http://203.0.113.20:8080"

Obě adresy jsou zástupné. Pro obecnou trasu k veřejným zdrojům balíčků nabízí seznam HTTP proxy kandidáty, pokud jsou veřejné proxy povoleny. Přepsání pro interní registr ponechte na jeho schválené proxy. Konfiguraci vložte do příslušného .yarnrc.yml pro moderní verzi Yarnu. Tento příklad volí dvě proxy; neříká, že se interní hostitel má připojovat přímo.

Slaďte požadovaný název hostitele

Záznam networkSettings se vztahuje na vzor názvu hostitele, ne na rozsah balíčku ani na libovolnou cestu URL. Pravidlo pro jednoho hostitele ponechte přesné, když to je to, co chcete. Zástupný znak je užitečný jen tehdy, když skutečně zamýšlíte, aby další hostitelé sdíleli konfiguraci.

Rozsah balíčku a název síťového hostitele jsou různé selektory. Balíček s rozsahem lze načíst z registru, jehož hostitele sdílí s jinými balíčky, zatímco přesměrovaný artefakt může pocházet z úplně jiného názvu hostitele.

Sledujte celou cestu stahování

Pokud metadata používají jeden hostitel a stahování archivu jiný, mohou odpovídat různým síťovým nastavením. Než pravidlo rozšíříte, zaznamenejte URL, která skutečně selhává. „Registr fungoval“ neurčuje, kterou trasu pozdější požadavek zvolil.

Nastavení Yarnu podle hostitele mohou zahrnovat také CA a další konfiguraci TLS. Tato rozhodnutí držte odděleně: volba adresy proxy sama o sobě neposkytuje důvěru potřebnou pro prostředí provádějící inspekci.

Zviditelněte přepsání

Prohlédněte si efektivní konfiguraci projektu nástroji, které podporuje jeho verze Yarnu, a poté otestujte zamýšlený požadavek. Vyhněte se sdílení úplného výpisu konfigurace, pokud obsahuje přihlašovací údaje.

Tato funkce je užitečná, když hostitelé skutečně vyžadují různé trasy. Pokud by měl každý požadavek používat stejný koncový bod, je jedna obecná konfigurace snazší na údržbu než rostoucí seznam identických přepsání hostitelů.

Související články