github API rate limiting when running terraenv terragrunt install
booya opened this issue · comments
We've been running into an issue occasionally in our deployment pipelines where we use the terraenv terragrunt install
command:
> terraenv terragrunt install
API rate limit exceeded for XX.XX.63.182. (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details.)
Traceback (most recent call last):
File "/usr/local/bin/terraenv", line 46, in <module>
args.func(args)
File "/usr/local/lib/python3.7/dist-packages/commands/install.py", line 89, in install
download_program(args, program, version)
File "/usr/local/lib/python3.7/dist-packages/commands/install.py", line 19, in download_program
available_versions = list_remote(args)
File "/usr/local/lib/python3.7/dist-packages/commands/list.py", line 68, in list_remote
available_versions.append(version['name'].lstrip('v'))
TypeError: string indices must be integers
The issue appears to happen because running the terragrunt install command first runs the list command to fetch a list of available versions. Perhaps the list command can be skipped when a specific version is requested (we're using .terraenv file for this). If "latest" is provided, then it would still be necessary to figure out which is the latest version. But for a specific version, maybe it's better to just try to download that version, and fail if it is invalid?
@booya Thanks for reporting this, I've seen this aswell and will plan a fix soon in next release !!