Skip to content

gitHubKeys user

gitHubKeys returns user's public SSH keys from GitHub using the GitHub API. The returned value is a slice of structs with .ID and .Key fields.

Warning

If you use this function to populate your ~/.ssh/authorized_keys file then you potentially open SSH access to anyone who is able to modify or add to your GitHub public SSH keys, possibly including certain GitHub employees. You should not use this function on publicly-accessible machines and should always verify that no unwanted keys have been added, for example by using the -v / --verbose option when running chezmoi apply or chezmoi update.

By default, an anonymous GitHub API request will be made, which is subject to GitHub's rate limits (currently 60 requests per hour per source IP address). If any of the environment variables $CHEZMOI_GITHUB_ACCESS_TOKEN, $GITHUB_ACCESS_TOKEN, or $GITHUB_TOKEN are found, then the first one found will be used to authenticate the GitHub API request, with a higher rate limit (currently 5,000 requests per hour per user).

In practice, GitHub API rate limits are high enough that you should rarely need to set a token, unless you are sharing a source IP address with many other GitHub users. If needed, the GitHub documentation describes how to create a personal access token.

Example

{{ range gitHubKeys "user" }}
{{- .Key }}
{{ end }}
Back to top