Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Penggunaan cache untuk biner hasil pembangunan vcpkg dalam alur kerja GitHub Actions Anda
Fitur penyimpanan biner vcpkg mempercepat proses kompilasi proyek yang memanfaatkan GitHub Actions untuk integrasi berkelanjutan. Untuk informasi selengkapnya, baca dokumentasi fitur penyimpanan biner.
Penyedia cache NuGet Paket GitHub
Paket GitHub memungkinkan repositori menerbitkan artefak biner untuk penggunaan publik atau privat. Di luar penyimpanan hosting untuk paket yang diterbitkan, dukungan Paket GitHub menawarkan antarmuka registri NuGet yang dapat digunakan vcpkg sebagai cache biner, dengan nuget penyedia sumber biner.
Grafik dependensi GitHub
Nota
Bagian ini mencakup fitur eksperimental vcpkg yang dapat berubah atau dihapus kapan saja.
Petunjuk / Saran
Kami secara aktif mengembangkan fitur ini dan ingin mendengar umpan balik Anda. Beri tahu kami jika Anda memiliki pemikiran tentang fungsionalitas saat ini atau fungsionalitas yang diinginkan dengan mengirim vcpkg@microsoft.com email atau dengan mengajukan masalah di vcpkg. Jika Anda memiliki umpan balik tentang salah satu fitur GitHub yang memungkinkan ini, beri tahu kami bahwa juga dan kami akan memastikannya sampai ke orang yang tepat di GitHub.
Tentang grafik dependensi GitHub
Grafik dependensi GitHub menyimpan serangkaian dependensi untuk repositori. Selain dapat memvisualisasikan dependensi repositori, GitHub membangun beberapa fitur berguna di atas data ini, termasuk tinjauan dependensi dan pemberitahuan Dependabot. Pelajari lebih lanjut di dokumentasi GitHub tentang mengamankan rantai pasokan Anda.
Integrasi vcpkg dengan grafik dependensi GitHub
vcpkg memiliki dukungan eksperimental untuk mengisi grafik dependensi GitHub dari dalam alur kerja GitHub Actions. Untuk mengaktifkan fitur ini, buat perubahan berikut dalam file alur kerja Anda:
- Atur
VCPKG_FEATURE_FLAGSvariabel lingkungan untuk menyertakan nilaidependencygraph. - Atur
GITHUB_TOKENvariabel lingkungan ke nilai${{ secrets.GITHUB_TOKEN }}. - Berikan GitHub Actions akses tulis ke konten repositori Anda dengan menyertakan blok izin berikut. Ini diperlukan untuk menulis metadata grafik dependensi ke repositori Anda. Ini tidak akan menambahkan commit apa pun ke repositori Anda atau melakukan modifikasi lainnya pada konten repositori Anda.
permissions:
contents: write
Anda harus mengaktifkan grafik dependensi GitHub di pengaturan repositori Anda (diaktifkan secara default pada repositori publik). Untuk repositori privat, ikuti dokumentasi GitHub untuk mengaktifkan grafik dependensi untuk memenuhi persyaratan ini.
Batasan yang diketahui
- Versi vcpkg yang dibundel dengan runner GitHub Actions mungkin tidak diperbarui. Gunakan versi terbaru vcpkg untuk mendapatkan akses ke fitur ini dan menerima perbaikan bug terbaru.
- Fitur yang bergantung pada grafik dependensi, seperti pemberitahuan Dependabot dan permintaan penarikan Dependabot, belum tersedia. Harap beri tahu kami jika Anda tertarik dengan fitur-fitur tersebut!
Contoh alur kerja GitHub Actions
Nota
Contoh ini mengasumsikan bahwa ada vcpkg.json manifes valid yang mencantumkan beberapa port dependen. Untuk informasi selengkapnya tentang manifes, lihat dokumentasi kami tentang mode manifes.
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