← Back to issue list

Add init documentation for a gentle introduction to the charm operator

View original Github issue

Metadata

Project
charmcraft
Number
#242
Type
pull request
State
merged
Author
edumucelli
Labels
—
Created
Updated
Closed

Current evaluation

Merged in commit 7bce42bb, adding charmcraft init documentation linking to a Charmhub Discourse beginner guide for operator-framework development.

Resolution: closed resolved

Reason: PR charmcraft#242 was approved and merged as commit 7bce42bb, resolving the documentation request with an external Charmhub Discourse guide.

Evaluated by: mr-cal-bot

No scores available.

Issue body

So I have recently worked on creating a new charm [operator for Redis](https://github.com/edumucelli/redis-operator). As someone new to Juju and with some knowledge on K8s I ended up struggling a bit to find where were the documentation, examples and even how to set up my local environment to make things work. Consider it as someone new to the whole context: I even searched for the instructions as someone from the outside, looking on Google for documentation -- which mostly took me to the reactive operator. @mthaddon took some time today to discuss with me and gather some feedback about how the process was to understand where things were easy and where the main roadblocks were. One thing I have mentioned is that the skeleton command `charmcraft init` was great to give something that was already in the expected format -- thanks for that. However, from there I was mostly lost. It took me around 10 days to get the Redis operator working, but I think that having the right links this can be way faster. One thing @mthaddon suggested was if the `init` command had some more documentation or pointers where to go, or what to do after you are there. This PR takes most of my notes and some links I have found during the process that could have been useful for someone starting writing a charm with the operator framework. Things that really helped me were the existing up-to-date charms such as the MongoDB (thanks @balbirthomas) one and the discussion with many people here and there that materialized with some stuff I have did in the Redis one, usage of the, e.g., [resource-oci-image](https://github.com/juju-solutions/resource-oci-image) library (thanks @johnsca) as I would have found nowhere suggesting me to use it.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Merged in commit 7bce42bb, adding charmcraft init documentation linking to a Charmhub Discourse beginner guide for operator-framework development.
stealth/space-bunny-alpha — closed resolved Merged in commit 7bce42bb, adding an init documentation link to a Charmhub Discourse wiki for beginners developing charms with the operator framework.
qwen/qwen3.6-35b-a3b — — Merged PR adding starter docs to charmcraft init. Reviewer requested moving content to a Charmhub discourse wiki and linking it. Contributor adapted the change, and the PR was merged with the external link integrated.
qwen3.6-35b-a3b-mtp-q6 — — Merged. Added beginner documentation for charmcraft init. Per reviewer feedback, embedded text was replaced with a link to a Charmhub Discourse wiki post to enable easier maintenance. External documentation now guides new developers.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#2748 docs: improve charm naming docs, with links to detailed guidance charmcraft merged Docs PR #2748 merged (commit 0389aeb4): rewrote charm naming guidance in the charmcraft.yaml reference and manage-charms how-to, replacing inline best-practice notes with links to the Ops docs. Fixes #2582; relied on canonical/operator#2610.
74%
#161 Add a link to the online documentation in the help summary charmcraft closed Added the Charmhub documentation link to Charmcraft’s help output in merged PR #188 (ffc44697).
73%
#91 First pass at 'charmcraft init' charmcraft merged Merged PR #91 delivered the first non-interactive charmcraft init scaffolding implementation; README improvements, extra options, and prompts were deferred (commit 0ebd9f87).
72%
#471 config: add charm part to documentation (CRAFT-356) charmcraft merged Merged PR #471 via commit e0b18661, documenting the charm part in the configuration schema for CRAFT-356.
72%