lukas-krecan / ShedLock

Distributed lock for your scheduled tasks
Apache License 2.0
3.66k stars 518 forks source link

Add a ShedLock provider for commercetools #2153

Closed studix closed 1 month ago

studix commented 1 month ago

Is your feature request related to a problem? Please describe. We are using the commercetools platform to build our e-commerce solutions. If you use this platform the backend applications usually have no database other than commercetools itself.

Describe the solution you'd like We'd like to use a provider that uses commercetools custom objects to persist lock information. Custom objects are a key/value document store that is part of the API extensibility provided by the platform.

Describe alternatives you've considered We considered using the existing Redis providers. This would require us to setup an additional infrastructure component which leads to increased infrastructure costs.

Additional context The provider would use the HTTP AP provided by commercetools: https://docs.commercetools.com/api

studix commented 1 month ago

We can work on that and we would provide a PR soon at https://github.com/BisonSchweizAG

lukas-krecan commented 1 month ago

Hi, please send a PR. The main condition is that you also provide passing tests (extending AbstractLockProviderIntegrationTest). Thanks a lot.

studix commented 1 month ago

I couldn't get the AbstractLockProviderIntegrationTest green in the build pipeline. One of the tests (FuzzTester) performs a lot of concurrent requests which seems to be an issue with the commercetools api mock that is used in my integration test.

I'm closing this issue.

lukas-krecan commented 1 month ago

Thanks a lot for trying.