Adding archiver for Azure blob store#9303
Conversation
This implementation has been mostly generated by a coding agent (Google Antigravity) with a few minor exceptions. All generated code has been thoroughly reviewed and tested.
|
Hi @uromahn, Thank you for the contribution and for your interest in improving Temporal — we really appreciate the effort. Unfortunate, at the moment, the team doesn’t have the bandwidth to take on and maintain an additional archiver implementation in this repository. To ensure we can properly support and maintain what’s in-tree, we need to be selective about adding new long-term maintenance surface area. That said, we’re working on enabling custom archiver implementations to be injected via ServerOptions (see https://github.com/temporalio/temporal/pull/9090/changes Thanks again for the contribution and for being part of the community 🙏 |
|
This is a bit disappointing! Anyways, I am looking forward to the ServerOptions implementation so I can then simply "inject" the Azure archiver. In the meantime, I will close my PR without merging. In case you change your mind and consider adding the Azure archiver, feel free to email me and I am happy to update my code and re-submit a new PR. |
This implementation has been mostly generated by a coding agent (Google Antigravity) with a few minor exceptions.
All generated code has been thoroughly reviewed and tested.
What changed?
I have added a new archiver implementation using Azure blob storage.
Why?
Currently, there are only three archiver available:
However, there are a large number of enterprise customers that are running their workloads in Azure and
would like to use Azure blob store for their self-hosted deployment there.
How did you test it?
Potential risks
None
The archiver is completely isolated and decoupled from the core functionality. Even if there is a bug in the Azure archiver implementation, core functionality will not be impacted and keeps running, albeit without archiving.
Potential future improvement
Add automated integration tests using the Azurite container locally.