← Cloudflare Pages / pages / configuration
Sledované cesty sestavení
Když k Pages připojíte repozitář git, ve výchozím nastavení spustí sestavení Pages změna kteréhokoli souboru v repozitáři. Pages můžete nastavit tak, aby konkrétní cesty zahrnovaly nebo vylučovaly, a určit tak, kdy má Pages sestavení pro danou cestu přeskočit. To se hodí zejména při struktuře projektu typu monorepo, kdy chcete omezit počet spouštěných sestavení.
Nastavte cesty
Chcete-li nastavit, které cesty se mají zahrnout a které vyloučit:
-
Přejděte na Workers & Pages na Cloudflare dashboardu.
Přejděte na Workers & Pages ↗ -
Najděte svůj projekt Pages.
-
Přejděte na Nastavení > Sestavit > Sledované cesty sestavení. Pages ve výchozím nastavení nastaví u vašeho projektu zahrnuté cesty na vše ([*]) a vyloučené cesty na nic (
[]).
Konfigurační pole lze vyplnit dvěma způsoby:
- Statické cesty k souborům: Zadejte přesný název souboru, který chcete zahrnout nebo vyloučit (například
docs/README.md). - Syntaxe zástupných znaků: Pomocí zástupných znaků můžete porovnat více cest. Zástupné znaky lze zadat na začátek nebo konec pravidla.
Pro každou cestu v události push se sledované cesty sestavení vyhodnotí následovně:
- Cesty splňující podmínky excludes se ignorují jako první
- Všechny zbývající cesty se porovnávají s podmínkami includes
- Pokud se najde odpovídající cesta, spustí se sestavení. V opačném případě se sestavení přeskočí
Pages u události push přeskočí porovnávání cest a projekt ve výchozím nastavení sestaví, pokud:
- Push event neobsahuje žádné změny souborů, pokud uživatel odešle prázdný push event, aby spustil sestavení
- Push event obsahuje více než 3000 změn souborů nebo více než 20 commitů
Příklady
Spouštění sestavení pro konkrétní adresáře (monorepo)
Pokud chcete spustit sestavení pouze při změně souborů v konkrétních adresářích, například project-a/ a packages/. Protože * se shoduje napříč oddělovači cest, to zahrnuje i změny ve vnořených podadresářích, jako je project-a/src/index.js nebo packages/utils/lib/helpers.ts.
- Zahrnout cesty:
project-a/*, packages/* - Vyloučené cesty: ``
Vyloučení adresáře ze spouštění sestavení
Pokud chcete spouštět sestavení při jakékoli změně, ale chcete vyloučit změny v určitém adresáři, například všechny změny v docs/ adresář (včetně vnořených cest jako docs/guides/setup.md).
- Zahrnout cesty:
* - Vyloučené cesty:
docs/*
Spouštění sestavení pro konkrétní typ souboru
Pokud chcete spouštět sestavení pro konkrétní soubor nebo typ souboru, například všechny .md soubory kdekoli v repozitáři.
- Zahrnout cesty:
*.md - Vyloučené cesty: ``
Spouštění sestavení pro adresář s vyloučením podadresáře
Pokud chcete spouštět sestavení při změnách v src/ ale chcete ignorovat změny v src/tests/.
- Zahrnout cesty:
src/* - Vyloučené cesty:
src/tests/*