Closed charlie-fox closed 1 year ago
I have been having this same issue, I downgraded my eksctl version arbitrarily to 0.77.0 and it fixed this error for me. Versions 0.90,0.89, and 0.88 are all affected in my testing.
Here are my Terraform debug errors:
[ERROR] vertex "eksctl_cluster.cluster" error: reading cluster: reading aws-auth via eksctl get iamidentitymaping: can not get iamidentitymapping from eks cluster: parse iamidentitymapping : invalid character '-' after top-level value
Error: reading cluster: reading aws-auth via eksctl get iamidentitymaping: can not get iamidentitymapping from eks cluster: parse iamidentitymapping : invalid character '-' after top-level value
I am using MacOS with homebrew, to downgrade the version I found a previous commit of the brew formula and used this command:
curl https://raw.githubusercontent.com/Homebrew/homebrew-core/19e81b3c456c0afb8abede830e38bad28be44b09/Formula/eksctl.rb > $(find $(brew --repository) -name eksctl.rb) && brew reinstall eksctl
This works as a workaround!
Hey! Have you already reported this to eksctl? If eksctl0.88+ has a regression that wraps any json output with some prefixes for the logger of their choice, I consider it's a bug in eksctl, because that effectively breaks the meaning of -o json
.
Hey! Have you already reported this to eksctl? If eksctl0.88+ has a regression that wraps any json output with some prefixes the logger of their choice, I consider it's a bug in eksctl, because that effectively breaks the meaning of
-o json
.
It looks like they are working on it here: https://github.com/weaveworks/eksctl/issues/5038. I will comment to provide additional context in that thread!
Hi @mumoshu , I have reported this issue to eksctl on first time, but also file case here to let terraform-provider-eksctl users be aware it.
Hi @mumoshu , eksctl team would not change the output format, and they think the output from stdout is still structured and can be parsed, FYI https://github.com/weaveworks/eksctl/issues/5038
@charlie-fox Thanks for sharing! I didn't realize this provider captured both stdout and stderr. Yes, I eksctl's behavior seems correct and we should fix this provider to only capture stdout!
What happened?
using eksctl new version, like 0.89.0
eksclt terraform provider would return such error when refreshing or creating EKS cluster
dig some more details, I found it would be cause new output of ecksctl new version.
When we execute
eksctl get iamidentitymapping --cluster my-cluster-name -o json --region my-region
it would response
if tools is using the json output to parse aws_auth information, it would make them failed.