-
-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Error installing provider "aws": chmod .terraform/plugins/darwin_amd64/terraform-provider-aws_v2.52.0_x4: no such file or directory. #1087
Comments
My best guess as to what is happening is a conflict on the paths, but it is a bit hard to investigate with the current info. Are you able to share the entire terragrunt log output from the run with us? Make sure to sanitize anything sensitive. Alternatively, can you share the directory structure along with some information about the code (how many dependencies, if you are deploying the same module multiple times, etc) so we can get a sense as to how many modules are being run? |
The issue happens intermittently (I'm not providing the successful running logs as not relevant) The command that I launch in every module: The issue happens no matter which module I try to deploy (but I remember only failure of only aws provider installation - not sure if there were other providers as well). tree of modules (terragrunt)
Both modules below had been launched at the same time: log of failed thread of run from path production/infrastructure/rds/online
log of successful thread of run from staging/applications/online-app/api/api-online-frontend-server
|
Thanks for sharing the logs! This may be a red herring, but I do see some funky things going on in the logs. In particular, this entry looks suspicious: (paths abbreviated for easier readability)
Note how it is copying the source for what looks like a Can you share the |
Here is the information that you asked to share: terraform {
source = "git@GIT.SERVER/URL/PATH/tf-modules.git//vpc"
} By the way - it was log of failed module rds deployment in production where vpc is one of it's dependencies. It is the reason why it creates in cache of vpc module folder named rds... relevant part of log of api-online-frontend-server(source folder:apigw-old)
I've launched the following command: And got the following: tree of cache (terragrunt) - which is exact content of the tf-modules repo
|
I think I need to dig deeper to fully analyze what is going on here, but unfortunately I am burried at the moment. This is not abandoned by any means, but it will take time to nail down the case since I don't have something that makes it easy to reproduce the issue and iterate on internal probes to pinpoint the cause. My current hypothesis is that the terragrunt cache is getting wiped by another concurrent thread (since you have the Thanks for your patience. If you want to accelerate the process, it would help a lot if you can put up a minimal terragrunt project that depicts the problem and share it with us. |
Thank you for your attention and help anyway, I'll wait patiently :) |
Ok I tried to repro this with a test case, but after 10s of runs, I have not been able to repro along the thread I had in mind. The test case was:
where terraform {
source = "../../modules//dep"
}
include {
path = find_in_parent_folders()
} and the child config (a-g) looks like: terraform {
source = "../../modules//child"
}
locals {
foo = read_terragrunt_config("${get_terragrunt_dir()}/../common.hcl")
}
include {
path = find_in_parent_folders()
}
inputs = {
data = local.foo.dependency.dep.outputs.random_val
} I tried both with The terraform config only has a I also did not observe the behavior where it copies the files in the wrong directory. Here are my logs:
At this point, I probably need more code, or more logs. Can you take a look at my test case and see if you have any suggestions on how to get it to look closer to your environment? This might be difficult, but do you think you can get a failure log with the environment variable |
I've created an example with simple code (provisioning ssm parameter). Example code is here: https://github.com/zelig81/terragrunt_issue_1087
For all the deployments I used the following command(it was plan-all/apply-all/output-all): When I launch deployment in tg-files/dep (modules without dependencies) - there were no problems. But when I launched modules tg/files/var-a, tg/files/var-b, tg/files/var-c then intermittently (1 in 2-5 launches) I've got the issue of exited plugin in tg-files/dep folder deployment. Here is the log of failed deployment in tg-files/dep with debug logging
By the way (do not know if that is some correlation with my issue) - fetching of plugins takes huge amount of time (from minutes to hours) |
I found a workaround for the problem of waiting time for fetching plugins (.terraformrc with plugin_cache_dir). |
Seems like #2542, #1212, and several other reports. |
Resolved in v0.50.11 release. |
I've got the following error when tried to launch
terragrunt plan-all --terragrunt-source-update --terragrunt-non-interactive --terragrunt-source /path/to/the/sources
on multiple modules at the same time:Error installing provider "aws": chmod .terraform/plugins/darwin_amd64/terraform-provider-aws_v2.52.0_x4: no such file or directory.
The mentioned modules do have separated set of dependencies
Terraform v0.12.23
terragrunt version v0.23.0
The text was updated successfully, but these errors were encountered: