Is there any charm for an approval system?

What I mean by this

I have a use case that I need an approval workflow to be triggered when someone wants to create/update/delete a resource.

This approval workflow can only be approved/rejected by users with specific permissions to approve/reject.

Example

One developer wants to remove an application from a Kubernetes cluster, so he creates a request.

This request triggers the approval system, and set it to pending state.

Then, any owner of this application can approve or reject the request, switching it’s state to accepted or rejected.

If the request was accepted, the application is removed.

The actual question

I was studying about some options to fill those requirements and I was trying to understand if it’s possible to use charmed operators to manage this approval workflow. Is it possible?

Sorry for my long answer and such a specific use-case

You should rather investigate CI/CD tools and GitOps workflows.
Things like Gitlab/Gitlab-CI, Flux, Argo, …
I don’t really see how Juju could help in that case.

1 Like