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

feat: Add DynamoDB based locking to prevent race conditions in index.yaml generation #447

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

chasinglogic
Copy link

I have set this up so it is sufficiently abstracted that other lock backends could be added in the future.

Fixes #18

Important Note:

Because of where I've placed the locking it prevents breaking the index.yaml but if a lock timeout occurs the chart still gets uploaded just not added to the index.yaml

This means that follow up uploads need to use the --force flag or still require a helm s3 reindex to solve. I could acquire the lock for the entirety of the push operation which would prevent this but that increases the chance to hit these lock timeouts so wasn't sure which compromise you would prefer.

…yaml generation

I have set this up so it is sufficiently abstracted that other lock
backends could be added in the future.

Fixes hypnoglow#18
@chasinglogic
Copy link
Author

In this screenshot you can see it working:

Screenshot 2024-07-24 at 09 14 58

@sethatron
Copy link

This would also be really helpful for my org, we're going to try to deploy these changes to our CI from your branch. Do you have any additional information that would be helpful to know? Possibly any documentation you may have recorded regarding how to set this up and configure the dynamo backend?

@sethatron
Copy link

Just an update to confirm that I have been able to test this and can confirm that it is working for me as well. Is there anything we can do to expedite getting this merged?

@voodoodror
Copy link

@hypnoglow can we please expedite this? we've been suffering from this issue for a long time

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

Successfully merging this pull request may close these issues.

Race condition causes inconsistencies in chart repository's index.yaml
3 participants