Charm maturity

Software operators are built for reuse. Covering just one use case does not make much sense, because software operators implement a general approach for operating applications. But how to ensure the reuse?

The best way to enable reuse is to start an open-source project. Open-source brings experts together; they can participate in the development and contribute their knowledge from their different backgrounds. In addition, the open-source approach offers transparency and lets users and developers freely use, modify, analyse and redistribute the software. Read more about reasons to publish your charm in our documentation.

Two stages of maturity

An open-source project is the right foundation for reuse. However, providing a reusable software operator is also a matter of maturity: the charm should be developed according to high-quality standards and it should have all the relevant capabilities for operating applications. Accordingly, the development of a charm follows a two-stage approach:

  1. Stage 1: Important qualities: A quality open-source project, implementing state-the-art in documentation, testing and automation – this is the foundation for sharing and effective collaboration.

  2. Stage 2: Important capabilities: A charm that implements all the most relevant capabilities for ensuring effective operations.

For both stages, the reference documents provide two parts: a first part explains the goals and a second part lists references to the documentation or example code for implementation. The points listed in the stages prioritize the development and explain how to implement the qualities and capabilities using the Charmed Operator SDK; for general best practices for developing a charm, please read the Charm development best practices.

Requirements for public listing

Everyone can publish charms to https://charmhub.io/. Once you do that, your charm can be accessed via Juju (e.g., for juju deploy) or via a web browser by its URL. However, in order to be visible for browsing and included in search results, the charm entry needs to be switched to listed mode. To have your charm listed, you need to reach out to the community to announce your charm and to ask for a review by an experienced community member.

The Stage 1- Important qualities reference is the requirement for switching a charm into the listed mode. The points listed in the first stage ensure a useful charm project suitable for presentation on https://charmhub.io/ and for testing by others.

To announce the charm in the community forum and ask for a review please use the following link:

Announce charm ready for review.


Last updated 21 days ago.