Handling properietary bundles

Really interesting question @emcp. Juju actually has a lot of internal functionality for supporting this use case.

  • charms can require that users accept terms & conditions
  • charms can add “metrics”. The intent there was to support billing

Terms

An charm that makes use of terms & conditions is Let’s Encrypt support within ssl-termination-proxy charm written by @merlijn-sebrechts’s team at Tengu.

$ charm show cs:~tengu-team/ssl-termination-proxy terms
terms:
- isrg-lets-encrypt

Another one is cs:~ibmcharmers/ibm-http to allow IBM HTTP Server to be deployed:

$ charm show cs:~ibmcharmers/ibm-http terms
terms:
- ibmcharmers/ibm-im/1
- ibmcharmers/ibm-im/1
- ibmcharmers/ibm-im/1
- ibm-http-z/1
- ibm-http-plg-z/1
- ibm-http-wct-z/1

https://discourse.charmhub.io/t/writing-charms-that-use-terms/1129

Metrics

Metrics is less well exercised, as far as I can tell. But the functionality is available and quite interesting to explore:

1 Like