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 stable
.
It includes the following changes:
-
Everything ready to produce Charmcraft installers for Windows and OS X.
-
Added the
close
command to close channels in Charmhub. -
Several improvements for packing charms:
-
the Python dependencies are now built locally (binaries from PyPI are not used anymore).
-
added a cache mechanism for the building just mentioned, as it tends to be slow (the
clean
command can be used to force the nextpack
to build everything again). -
introduced Multipass support.
-
added
--debug
,--shell
, and--shell-after
options to enable debugging of the process. -
extended the list of default files to include the LICENSE, README.md and icon files (all optional).
-
-
The
init
command now creates the given directory if it does not exist (for that, also improved configuration management to support--project-dir
pointing to a missing directory). -
Improved the
status
command to correctly show tracks without releases.
Use Charmcraft to:
- Initialise a new charm and directory structure
- Build 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.
Happy charming!