Samouczek: uwierzytelnianie rejestrów opartych na narzędziu vcpkg w usłudze GitHub Actions
W przypadku korzystania z narzędzia vcpkg z rejestrami prywatnymi konieczne jest zapewnienie poświadczeń dostępu do uwierzytelniania operacji usługi Git wykonywanych wewnętrznie przez program vcpkg.
Z tego samouczka dowiesz się, jak uwierzytelnić prywatne repozytorium Git do użycia w przepływie pracy funkcji GitHub Actions.
- Konto usługi GitHub
- Prywatny rejestr gitcpkg hostowany w usłudze GitHub
- vcpkg
Postępuj zgodnie z instrukcjami w witrynie GitHub, aby wygenerować szczegółowe osobiste tokeny dostępu (PAT) i przyznać mu uprawnienia dostępu do prywatnego repozytorium, w którym jest hostowany rejestr git vcpkg.
Uwaga
Nigdy nie przechowuj osobistego tokenu dostępu usługi GitHub w plikach repozytorium
Następnym krokiem jest wykonanie instrukcji usługi GitHub dotyczących przechowywania tokenu dostępu jako wpisu tajnego dostępnego w przepływach pracy funkcji GitHub Actions.
Teraz nadszedł czas, aby dodać krok uwierzytelniania do przepływu pracy, użyj następującego szablonu w pliku YAML przepływu pracy. Zastąp PRIVATE_REPO_URL
ciąg adresem URL repozytorium prywatnego, na przykład: https://github.com/Microsoft/secret-vcpkg-registry
; zastąp PRIVATE_REGISTRY_PAT
ciąg nazwą zmiennej tajnej utworzonej w poprzednim kroku.
Ten krok przepływu pracy musi zostać uruchomiony przed każdym innym krokiem przepływu pracy, który wywołuje narzędzie vcpkg.
- name: Authenticate private registries
shell: bash
run: git config --global credential.PRIVATE_REPO_URL.helper '!f() { echo username=unused; echo password=${{secrets.PRIVATE_REGISTRY_PAT }}; }; f'
W poniższym przykładzie pokazano, jak podać poświadczenia usługi Git dla wielu repozytoriów prywatnych przy użyciu credential.<url>.helper
wzorca.
- name: Authenticate private registries
shell: bash
run: |
git config --global credential.https://github.com/vcpkg/private_registry.helper '!f() { echo username=unused; echo password=${{secrets.private_registry_pat}}; }; f'
git config --global credential.https://github.com/vcpkg/secret_registry.helper `!f() { echo username=unused; echo password=${{secrets.secret_registry_pat}}; }; f'
Opinia o produkcie vcpkg
vcpkg to projekt typu open source. Wybierz link, aby przekazać opinię: