Skip to content
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 when trying to push package that contains Chart.yaml with 31 dependencies #112

Closed
tal9543 opened this issue Feb 11, 2020 · 9 comments · Fixed by #124
Closed

Error when trying to push package that contains Chart.yaml with 31 dependencies #112

tal9543 opened this issue Feb 11, 2020 · 9 comments · Fixed by #124
Labels
Milestone

Comments

@tal9543
Copy link

tal9543 commented Feb 11, 2020

helm client version: v3.0.3
helm s3 version: 0.9.2

when trying to push package that contains Chart.yaml with 31 dependencies
helm s3 push --force solution.tgz s3-solution-global-charts

Error:
upload chart to s3: upload object to s3: MetadataTooLarge: Your metadata headers exceed the maximum allowed metadata size
status code: 400, request id: 3F85E2D4089EDF8D, host id: PbCItQ4IsQKAEPi35LrM2wfrYHyAWwEQhpU/dgnTM7ihumlm4mc2Sq5nsQexQ2mN6+1hgSs+obE=
Error: plugin "s3" exited with error

*I managed to push it with awscli so it was not related to aws limitation.
*with fewer dependencies (i tried with 5) it works..
*the issue is only with the Chart.yaml dependencies list, not with the size of the package

Thank you in advance!

@tal9543 tal9543 changed the title Error when trying to push package that contains Chart.yaml with more 31 dependencies Error when trying to push package that contains Chart.yaml with 31 dependencies Feb 11, 2020
@hypnoglow
Copy link
Owner

Thank you for reporting the issue.

Wow, I've never had a chance to deal with charts with 30+ dependencies 😮 The issue is pretty straightforward - s3 custom metadata limit is 2kb, so probably your chart meta exceeds this limit.

I don't think I'm able to suggest any easy solution for this right now. We use s3 metadata to store chart meta to make some operations more lightweight. Probably we can revisit this concept, making metadata feature optional and describe consequences.

@tal9543
Copy link
Author

tal9543 commented Feb 11, 2020

Thank you for your fast reply!
for now, I managed to workaround it with:
push with awscli
and then I reindex with helm-s3 command

@hypnoglow
Copy link
Owner

I thought that reindex also throws this error, because it also writes chart meta to metadata :/ Glad that worked for you.

@hypnoglow hypnoglow added the needs-investigation Requires digging/reproducing, or not obvious how to solve the issue label Feb 11, 2020
@cep21
Copy link

cep21 commented Feb 28, 2020

Also having this issue, at 20 dependencies.

@rafalwrzeszcz
Copy link

The problem appears I think after switching to Helm3. Helm2 did not store dependencies in chart metadata. Maybe it's possible to exclude dependencies form metadata? Everything worked with Helm2 so dependencies we do not need in metadata on S3.

@jroucheton
Copy link

I am facing the same issue after switching from helm v2 to v3.

@ericmcbride
Copy link

facing the same issue

@DavidARivkin
Copy link

DavidARivkin commented Oct 19, 2020

Yes, this is blocking our progress. If anyone has a great work-around suggestion or other change they can suggest, not to mention an ETA for this getting fixed, it would be appreciated.
For us, we found that by having a common library which multiple microservices would use (all common chart content there), that Helm appears to re-copy the library into the metadata for every microservice, so a version without using the library (each microservice with all templates in it) can copy to S3 just fine, but one using the library fails. So effectively, there are 2 bugs.

hypnoglow added a commit that referenced this issue Oct 26, 2020
@hypnoglow hypnoglow added this to the 0.10.0 milestone Oct 26, 2020
@hypnoglow hypnoglow added bug and removed needs-investigation Requires digging/reproducing, or not obvious how to solve the issue labels Oct 26, 2020
@hypnoglow
Copy link
Owner

The plugin version 0.10.0 is released.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants