Charmcraft¶
Charmcraft is the command-line tool for building Juju charms.
It provides commands to build, pack, and publish charms and integrates with Ops and Charmhub.
Charmcraft supports popular languages and web app frameworks such as Django, Express, Python, and Go through its extensions. These create language-specific scaffolding so developers can focus on the content of their charms.
Charmcraft is for platform engineers, site reliability engineers, and systems administrators looking to charm an application for their Juju deployment.
In this documentation¶
Installation and setup |
|
Vocabulary and syntax |
Configure package information • Commands • charmcraft.yaml • Part keys |
Platform compatibility |
|
Software integration |
|
12-factor web apps |
Tutorials • Initialization • Configuration • Integration • Usage • Extensions |
Debugging |
|
Distribution |
Publish a charm • Manage names • Manage tracks • Manage channels • Manage revisions |
How this documentation is organized¶
The Charmcraft documentation embodies the Diátaxis framework.
The tutorials are lessons that steps through the main process of packaging a charm.
How-to guides contain directions for crafting charms.
References describe the structure and function of the individual components in Charmcraft.
Explanations aid in understanding the concepts and relationships of Charmcraft as a system.
Project and community¶
Charmcraft is a member of the Canonical family. It’s an open source project that warmly welcomes community projects, contributions, suggestions, fixes and constructive feedback.