canonical / operator

Pure Python framework for writing Juju charms
Apache License 2.0
245 stars 119 forks source link

[Docs] Do we need a "Debian Policy" style document for Charms and Libraries #766

Closed pengale closed 11 months ago

pengale commented 2 years ago

As we develop best practices around writing charms with the charmed operator framework, it would be nice to collect CharmHub listing requirements, along with recommended best practices into a single place.

The document might cover:

Basically, any time that we have a discussion and agree on a best practice, it should make it into this doc.

PietroPasotti commented 2 years ago

@mcjaeger sounds like something for you :)

jnsgruk commented 2 years ago

We do have this: https://juju.is/docs/sdk/naming

We also have the style guide https://juju.is/docs/sdk/styleguide

But we might be able to do better around linking these and advertising them - and I do think better docs around the conditions of making a charm publicly visible/searchable would be very useful indeed.

rwcarlsen commented 2 years ago

I know there was some discussion about charmhub visibility at the last roadmap meeting. But is there somewhere where decisions/direction around that has been recorded/distilled?

pengale commented 2 years ago

I know there was some discussion about charmhub visibility at the last roadmap meeting. But is there somewhere where decisions/direction around that has been recorded/distilled?

IIRC, the decision was that search results would continue to include only listed charms, but that the charm teams within Canonical would be more pro-active about getting their charms listed. Listing is a matter of dropping into the discourse, and presenting a case for the charm being listed.

One of the TODOs from the meeting was the write up more complete docs about the process.

mcjaeger commented 2 years ago

Hello @pengale thanks for pointing out it is useful. it is already in progress. (and I thought you might have been aware of it?)

There are two points to this points:

  1. Which are the relevant criteria?
  2. Then, how do we apply these criteria?

It makes sense to start with the first part, and have had this discussion about qualities sand capabilities we see important when creating charmed operators, and we shared these with the community already. It is very obvious that we need to be transparent about it and encourage collaboration.

We call this publication checklist (= minimal points to care for as guidance to Charm developers) and we had two community workshops working on these the points there - to get also the important feedback. One workshop took even place today:

https://discourse.charmhub.io/t/community-workshop-publication-checklist-for-charms-part-deux/6516/3

the previous one on April 29th:

https://discourse.charmhub.io/t/community-workshop-publication-checklist-for-charms/6277/6

I wish we could have a third community workshop in July, but it makes sense to integrate the feedback from the past two meetings and then continue with a third meeting.

benhoyt commented 11 months ago

I think our docs and process on these have been publicized fairly widely now, so closing this. We can always open more specific issues if appropriate.