vcpkg install --head
fails in some environments due to GitHub API rate limits; vcpkg should allow us to provide GitHub credentials for authenticated GitHub API requests
#19177
Labels
category:vcpkg-bug
The issue is with the vcpkg system (including helper scripts in `scripts/cmake/`)
Describe the bug
We're running into issues when using
vcpkg install --head
anywhere within NVIDIA's corporate VPN, including personal developer workstations and our CI system.The problem appears to be that
vcpkg install --head
will attempt to accessapi.github.com
methods unauthenticated (e.g. without providing an authentication token/API key), which fails due to GitHub API rate limits, presumably because there's other things within our corporate VPN that are hammering GitHub APIs.We recognize this is probably more of our problem than your problem, but we've got no idea how to workaround this.
It is highly unlikely that we'll be able to track down or stop the sources of all the GitHub API requests that are being made elsewhere at NVIDIA and are interfering with our usage of vcpkg.
GitHub's API supports authenticated requests. Authenticated requests not only get a higher API rate limit, but the rate limit is counted per-user, instead of per site/per IP. However, I couldn't find a way to pass a GitHub personal access tokens/etc to vcpkg. Adding a way to pass GitHub personal access tokens/etc to the vcpkg command line tool to be used for all GitHub API requests would solve this issue. I think more than just GitHub personal access tokens should be supported (like GitHub Enterprise credentials or repo credentials if that's a thing), but personal access tokens would be a good start.
https://docs.github.com/en/developers/apps/building-github-apps/rate-limits-for-github-apps
https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token
To Reproduce
Failure logs
The text was updated successfully, but these errors were encountered: