Charmcraft supports the development of operators using the Charmed Operator Framework. It enables developers to build, upload and release operators on Charmhub and collaboration through charm libraries.
This new version was just released to
candidate channel, we’d appreciate any tests on this, please report here any issues you find. Once we find this is solid enough, we will release it to
It includes the following changes:
22.04base is now supported (related issue).
Improved error messages for the JujuMetadata and other linters (related issue).
Better support for packing charms using Multipass provider in environments without
revisionsand other commands’ outputs to show detailed timestamps (related issue).
packcommand now includes by default the
actionsdirectory, if present (related issue).
A keyring is not longer required in the system when using the
--exportoption in the
logincommand (related issue).
The entrypoint is now always validated to be correct, even if it’s the default
Produced a specification for Charmcraft Programmatic Outputs.
Fixed the user interaction in the
--shelloption for the
packcommand (related issue).
Use Charmcraft to:
- Initialise a new charm and directory structure
- Pack your Charmed Operator into a charm for distribution
- Register your charm name on Charmhub
- Upload your charms to Charmhub
- Release your charms into channels
- Publish and fetch charm libraries
We recommend the Charmed Operator Framework for charm development, but Charmcraft will help you publish charms written in any language. The Charmed Operator Framework enables the development of operators in a simple and straightforward way, using standard Python structures to allow for clean, maintainable, and reusable code.