feat: add tls certificates per app support to tls certificates interface #172
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Currently, the tls-certificates integration only allows for certificates to be requested by charm units. In this change, we add support for certificates to be requested and owned by applications. TLS requirers can now insert the same content in the unit databag and in the application databag. The selection of the correct databag will be done by the TLS Library V4 trough the use of a Mode parameter with the potential values being Mode.UNIT, and Mode.APP.
This PR replaces #161 which I can't update anymore (likely because of changes in repository settings).
Rationale
Certain applications like ingresses (ex. Traefik) require TLS Certificates to be owned at the application level.
Reference