aaratn / terraenv

Terraform & Terragrunt Version Manager

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

github API rate limiting when running terraenv terragrunt install

booya opened this issue · comments

commented

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 !!