Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Ukládání binárních souborů postavených nástrojem vcpkg do mezipaměti pro pracovní postupy GitHub Actions.
Funkce binárního ukládání do mezipaměti vcpkg zkracuje dobu potřebnou k vytváření projektů, které používají GitHub Actions pro kontinuální integraci. Další informace najdete v dokumentaci k funkci binární mezipaměti.
Poskytovatel mezipaměti NuGetu GitHub Packages
Služba GitHub Packages umožňuje úložištím publikovat binární artefakty pro veřejné nebo soukromé použití. Kromě hostování úložiště pro publikované balíčky nabízí podpora GitHub Packages rozhraní registru NuGet, které může vcpkg používat jako binární mezipaměť s poskytovatelem binárníhonuget zdroje.
Graf závislostí GitHubu
Poznámka:
Tato část popisuje experimentální funkci vcpkg, která se může kdykoli změnit nebo odebrat.
Návod
Tuto funkci aktivně vyvíjíme a rádi bychom slyšeli vaši zpětnou vazbu. Dejte nám vědět, pokud máte nějaké nápady na aktuální funkce nebo požadované funkce e-mailem vcpkg@microsoft.com nebo vyplněním problému vcpkg. Pokud máte zpětnou vazbu na některou z funkcí GitHubu, které to umožňuje, dejte nám vědět také a my se ujistíme, že se dostanete k správným lidem na GitHubu.
Informace o grafu závislostí GitHubu
Graf závislostí GitHubu ukládá sadu závislostí pro úložiště. Kromě toho, že gitHub dokáže vizualizovat závislosti úložiště, sestaví na základě těchto dat několik užitečných funkcí, včetně kontroly závislostí a upozornění Dependabot. Další informace najdete v dokumentaci GitHubu k zabezpečení dodavatelského řetězce.
Integrace vcpkg s grafem závislostí GitHubu
Vcpkg má experimentální podporu pro naplnění grafu závislostí GitHubu z pracovního postupu GitHub Actions. Pokud chcete tuto funkci povolit, proveďte v souboru pracovního postupu následující změny:
- Nastavte proměnnou
VCPKG_FEATURE_FLAGSprostředí tak, aby zahrnovala hodnotudependencygraph. - Nastavte proměnnou
GITHUB_TOKENprostředí na hodnotu${{ secrets.GITHUB_TOKEN }}. - Poskytněte GitHub Actions přístup k obsahu úložiště zahrnutím následujícího bloku oprávnění. To je nutné k zápisu metadat grafu závislostí do úložiště. Tímto se do úložiště nepřidají žádné commity ani jinak nezmění obsah úložiště.
permissions:
contents: write
Graf závislostí GitHubu musíte povolit v nastavení vašeho úložiště (ve výchozím nastavení je to povolené ve veřejných úložištích). V případě privátních úložišť postupujte podle dokumentace GitHubu a povolte graf závislostí , aby tento požadavek splňoval.
Známá omezení
- Verze vcpkg, která je součástí spouštěčů GitHub Actions, nemusí být aktuální. Pomocí nejnovější verze vcpkg získejte přístup k této funkci a získejte nejnovější opravy chyb.
- Funkce, které závisí na grafu závislostí, jako jsou upozornění Dependabot a pull requesty Dependabot, ještě nejsou k dispozici. Pokud vás zajímají tyto funkce, dejte nám prosím vědět.
Ukázkový pracovní postup GitHub Actions
Poznámka:
Tento příklad předpokládá, že existuje platný vcpkg.json manifest, který uvádí některé závislé porty. Další informace o manifestech najdete v naší dokumentaci k režimu manifestu.
name: Populate dependencies
on:
push:
branches: [ main ]
workflow_dispatch:
permissions:
contents: write
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
VCPKG_FEATURE_FLAGS: dependencygraph
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: 'recursive'
# This will execute a dry-run, meaning that libraries will not be built and
# installed, but they will still be reported to the GitHub dependency graph.
# This step assumes `vcpkg` has been bootstrapped (run `./vcpkg/bootstrap-vcpkg`)
- name: Run vcpkg
run: ${{ github.workspace }}/vcpkg/vcpkg install --dry-run