INTEGRITY Dokumentace

Instalace soukromých balíčků

Cloudflare Pages podporuje vlastní registry balíčků, takže do aplikace můžete zahrnout i soukromé závislosti. Tento návod se zaměřuje konkrétně na npm, správce balíčků a registr pro Node, stejný postup lze uplatnit i u jiných nástrojů pro registry.

Budete upravovat proměnné prostředí ve vašem projektu Pages v Nastavení. Existující web můžete upravit kdykoli, ale s těmito nastaveními lze inicializovat i nové projekty. V obou případech se změna nastavení projektu projeví až při jeho dalším nasazení.

Registry Access Token

Každý registr balíčků by měl umožňovat vydávání nových přístupových tokenů. V ideálním případě byste měli vytvořit nový token určený speciálně pro Pages, stejně jako u jakékoli jiné platformy CI/CD.

Pomocí npm můžete vytvářejte a zobrazujte tokeny na jeho webu nebo můžete použít npm CLI. Pokud máte CLI nastavené lokálně a jste přihlášeni, spusťte v terminálu následující příkazy:

# Verify the current npm user is correct
npm whoami

# Create a readonly token
npm token create --read-only
#-> Enter password, if prompted
#-> Enter 2FA code, if configured

Vygeneruje se tak token pouze pro čtení ve formátu řetězce UUID. Tuto hodnotu si uložte pro pozdější krok.

Soukromé moduly v registru npm

Následující část platí pro uživatele s aplikacemi, které využívají pouze privátní moduly z registru npm.

Ve vašem projektu Pages Nastavení > Proměnné prostředí, přidejte nový proměnná prostředí s názvem NPM_TOKEN do Produkce a Náhled prostředí a vložte token pouze pro čtení, který jste vytvořili jako svou hodnotu.

Standardně npm hledá proměnnou prostředí s názvem NPM_TOKEN a protože jste nedefinovali vlastní koncový bod registru, předpokládá se registr npm. Lokální vývoj by měl i nadále fungovat podle očekávání za předpokladu, že vy i vaši kolegové jste přihlášeni pomocí účtů npm (viz npm whoami a npm login) kterým byl udělen přístup k soukromému balíčku (balíčkům).

Vlastní koncové body registru

Pokud se používá více registrů, musí projekt na své kořenové úrovni definovat vlastní .npmrc konfigurační soubor. Příklad .npmrc soubor může vypadat takto:

@foobar:registry=https://npm.pkg.github.com
//registry.npmjs.org/:_authToken=${TOKEN_FOR_NPM}
//npm.pkg.github.com/:_authToken=${TOKEN_FOR_GITHUB}

Zde jsou všechny balíčky spadající pod @foobar scope směřují do registru GitHub Packages. Jednotlivým registrům jsou pak přiřazeny vlastní přístupové tokeny prostřednictvím odpovídajících názvů proměnných prostředí.

Váš projekt Pages pak musí mít odpovídající proměnné prostředí definováno pro všechna prostředí. V našem příkladu to znamená TOKEN_FOR_NPM musí obsahovat token npm pouze pro čtení hodnotu a TOKEN_FOR_GITHUB musí obsahovat vlastní osobní přístupový token.

Správa více prostředí

V případě, že vaše místní vývojové prostředí přestane fungovat s novým .npmrc soubor, budete muset provést několik dalších úprav:

  1. Přejmenujte Pages-compliant .npmrc soubor do .npmrc.pages. Mělo by to odkazovat na proměnné prostředí.

  2. Obnovte svůj předchozí .npmrc soubor, tedy verzi, která dříve fungovala vám a členům vašeho týmu.

  3. Přejděte na Workers & Pages na Cloudflare dashboardu.

    Přejděte na Workers & Pages ↗
  4. Vyberte svůj projekt Pages.

  5. Přejděte na Nastavení > Proměnné prostředí, přidejte nový proměnná prostředí s názvem NPM_CONFIG_USERCONFIG a nastavte jeho hodnotu na /opt/buildhome/repo/.npmrc.pages. Pokud váš .npmrc.pages soubor nenachází v kořenovém adresáři vašeho projektu, upravte tuto cestu odpovídajícím způsobem.