When filing a bug, please include the following headings if possible. Any
example text in this template can be deleted.
Packer is picking up the PACKER_GITHUB_API_TOKEN, the token is valid, however Packer is still saying Plugin host rate limited the plugin getter.
We are using Github Enterprise. Using a Github action, populate the PAT in the env PACKER_GITHUB_API_TOKEN, run packer that pulls down a plugin.
GitHub API Rate Limit Info with PAT:
{
"limit": 5000,
"used": 25,
"remaining": 4975,
"reset": 1778274326
}
GitHub API Rate Limit Info without PAT:
{
"limit": 60,
"remaining": 0,
"reset": 1778276081,
"used": 60,
"resource": "core"
}
2026/05/08 20:43:45 [INFO] Packer version: 1.15.3 [go1.25.9 linux amd64]
2026/05/08 20:43:45 Detected xdg config directory from env var: /home/runner/.config
2026/05/08 20:43:45 [INFO] PACKER_CONFIG env var not set; checking the default config file path
2026/05/08 20:43:45 [INFO] PACKER_CONFIG env var set; attempting to open config file: /home/runner/.packerconfig
2026/05/08 20:43:45 [WARN] Config file doesn't exist: /home/runner/.packerconfig
2026/05/08 20:43:45 Detected xdg config directory from env var: /home/runner/.config
2026/05/08 20:43:45 [INFO] Setting cache directory: /home/runner/.cache/packer
2026/05/08 20:43:45 Detected xdg config directory from env var: /home/runner/.config
e: Running in background, not using a TTY
2026/05/08 20:43:46 [TRACE] init: plugingetter.ListInstallationsOptions{PluginDirectory:"/home/runner/.config/packer/plugins", BinaryInstallationOptions:plugingetter.BinaryInstallationOptions{APIVersionMajor:"5", APIVersionMinor:"0", OS:"linux", ARCH:"amd64", Ext:"", Checksummers:[]plugingetter.Checksummer{plugingetter.Checksummer{Type:"sha256", Hash:(*sha256.Digest)(0xc000872100)}}, ReleasesOnly:true}}
2026/05/08 20:43:46 [TRACE] listing potential installations for "[github.com/hashicorp/vsphere](http://github.com/hashicorp/vsphere)" that match ">= 1.3.0". plugingetter.ListInstallationsOptions{PluginDirectory:"/home/runner/.config/packer/plugins", BinaryInstallationOptions:plugingetter.BinaryInstallationOptions{APIVersionMajor:"5", APIVersionMinor:"0", OS:"linux", ARCH:"amd64", Ext:"", Checksummers:[]plugingetter.Checksummer{plugingetter.Checksummer{Type:"sha256", Hash:(*sha256.Digest)(0xc000872100)}}, ReleasesOnly:true}}
2026/05/08 20:43:46 Directory "/home/runner/.config/packer/plugins/[github.com/hashicorp](http://github.com/hashicorp)" does not exist, the plugin likely isn't installed locally yet.
2026/05/08 20:43:46 [TRACE] Getting releases of [github.com/hashicorp/vsphere](http://github.com/hashicorp/vsphere) plugin from [releases.hashicorp.com](http://releases.hashicorp.com/)
Error: /08 20:43:46 [ERROR] Got error while trying getting data from [releases.hashicorp.com](http://releases.hashicorp.com/), <nil>
2026/05/08 20:43:46 [TRACE] Getting releases of [github.com/hashicorp/vsphere](http://github.com/hashicorp/vsphere) plugin from [github.com](http://github.com/)
2026/05/08 20:43:46 [DEBUG] github-getter: using PACKER_GITHUB_API_TOKEN
2026/05/08 20:43:46 [DEBUG] github-getter: getting "https://api.github.com/repos/hashicorp/packer-plugin-vsphere/git/matching-refs/tags"
2026/05/08 20:43:46 [TRACE] Plugin host rate limited the plugin getter. Try again in 50m54.316765655s.
Failed getting the "[github.com/hashicorp/vsphere](http://github.com/hashicorp/vsphere)" plugin:
HINT: Set the PACKER_GITHUB_API_TOKEN env var with a token to get more requests.
1 error occurred:
GET https://api.github.com/repositories/356315097/git/matching-refs/tags: 403 API rate limit exceeded for 161.151.119.213. (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details.) [rate reset in 50m54s]
* Plugin host rate limited the plugin getter. Try again in 50m54.31671545s.
* Plugin host rate limited the plugin getter. Try again in 50m54.31671545s.
HINT: Set the PACKER_GITHUB_API_TOKEN env var with a token to get more requests.
GET https://api.github.com/repositories/356315097/git/matching-refs/tags: 403 API rate limit exceeded for 161.151.119.213. (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details.) [rate reset in 50m54s]
2026/05/08 20:43:46 [TRACE] listing potential installations for "[github.com/rgl/windows-update](http://github.com/rgl/windows-update)" that match ">= 0.17.0". plugingetter.ListInstallationsOptions{PluginDirectory:"/home/runner/.config/packer/plugins", BinaryInstallationOptions:plugingetter.BinaryInstallationOptions{APIVersionMajor:"5", APIVersionMinor:"0", OS:"linux", ARCH:"amd64", Ext:"", Checksummers:[]plugingetter.Checksummer{plugingetter.Checksummer{Type:"sha256", Hash:(*sha256.Digest)(0xc000872100)}}, ReleasesOnly:true}}
2026/05/08 20:43:46 Directory "/home/runner/.config/packer/plugins/[github.com/rgl](http://github.com/rgl)" does not exist, the plugin likely isn't installed locally yet.
2026/05/08 20:43:46 [TRACE] Getting releases of [github.com/rgl/windows-update](http://github.com/rgl/windows-update) plugin from [releases.hashicorp.com](http://releases.hashicorp.com/)
HINT: Set the PACKER_GITHUB_API_TOKEN env var with a token to get more requests.
GET https://api.github.com/repositories/356315097/git/matching-refs/tags: 403 API rate limit exceeded for 161.151.119.213. (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details.) [rate reset in 50m54s]
Error: /08 20:43:47 [ERROR] Got error while trying getting data from [releases.hashicorp.com](http://releases.hashicorp.com/), <nil>
Failed getting the "[github.com/rgl/windows-update](http://github.com/rgl/windows-update)" plugin:
1 error occurred:
2026/05/08 20:43:47 [TRACE] Getting releases of [github.com/rgl/windows-update](http://github.com/rgl/windows-update) plugin from [github.com](http://github.com/)
2026/05/08 20:43:47 [DEBUG] github-getter: getting "https://api.github.com/repos/rgl/packer-plugin-windows-update/git/matching-refs/tags"
2026/05/08 20:43:47 [TRACE] Plugin host rate limited the plugin getter. Try again in 50m53.944573682s.
HINT: Set the PACKER_GITHUB_API_TOKEN env var with a token to get more requests.
GET https://api.github.com/repos/rgl/packer-plugin-windows-update/git/matching-refs/tags: 403 API rate limit of 60 still exceeded until 2026-05-08 21:34:41 +0000 UTC, not making remote request. [rate reset in 50m54s]
* Plugin host rate limited the plugin getter. Try again in 50m53.944541273s.
HINT: Set the PACKER_GITHUB_API_TOKEN env var with a token to get more requests.
* Plugin host rate limited the plugin getter. Try again in 50m53.944541273s.
HINT: Set the PACKER_GITHUB_API_TOKEN env var with a token to get more requests.
GET https://api.github.com/repos/rgl/packer-plugin-windows-update/git/matching-refs/tags: 403 API rate limit of 60 still exceeded until 2026-05-08 21:34:41 +0000 UTC, not making remote request. [rate reset in 50m54s]
GET https://api.github.com/repos/rgl/packer-plugin-windows-update/git/matching-refs/tags: 403 API rate limit of 60 still exceeded until 2026-05-08 21:34:41 +0000 UTC, not making remote request. [rate reset in 50m54s]
2026/05/08 20:43:47 [INFO] (telemetry) Finalizing.
2026/05/08 20:43:47 waiting for all plugin processes to complete...
Error: Process completed with exit code 1.
Community Note
When filing a bug, please include the following headings if possible. Any
example text in this template can be deleted.
Overview of the Issue
Packer is picking up the PACKER_GITHUB_API_TOKEN, the token is valid, however Packer is still saying Plugin host rate limited the plugin getter.
Reproduction Steps
We are using Github Enterprise. Using a Github action, populate the PAT in the env PACKER_GITHUB_API_TOKEN, run packer that pulls down a plugin.
Packer version
1.15.3
Simplified Packer Template
Any template will do as long as it pulls down a plugin
Operating system and Environment details
Ubuntu 24.04 x64
Log Fragments and crash.log files
GitHub API Rate Limit Info with PAT: