Skip to content

docs: update the readme#195

Open
cbartz wants to merge 7 commits intomainfrom
docs/update-readme-ISD-5404
Open

docs: update the readme#195
cbartz wants to merge 7 commits intomainfrom
docs/update-readme-ISD-5404

Conversation

@cbartz
Copy link
Copy Markdown
Collaborator

@cbartz cbartz commented Apr 30, 2026

What this PR does

Update the README with purpose and structure of the repo, and move Grafana dashboard conventions to a new reference doc page.

Why we need it

The README is not providing a lot of information and is still marking the repo as WIP, though the charms are already used in production.

Checklist

  • Changes comply with the project's coding standards and guidelines (see CONTRIBUTING.md and STYLE.md)
  • CONTRIBUTING.md has been updated upon changes to the contribution/development process (e.g. changes to the way tests are run)
  • Technical author has been assigned to review the PR in case of documentation changes (usually *.md files)
  • I updated docs/changelog.md with user-relevant changes
  • I used AI to assist with preparing this PR
  • I added or updated tests as needed (unit and integration)
  • If integration test modules are used: I updated the workflow configuration
    (e.g., in .github/workflows/integration_tests.yaml, ensure the modules list is correct)
  • If this PR involves a Grafana dashboard: I added a screenshot of the dashboard
  • If this PR involves Terraform: terraform fmt passes and tflint reports no errors
  • If this PR involves Rockcraft: I updated the version

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates repository documentation to better explain the repo’s purpose/structure and adds a reference page documenting Grafana dashboard locations and conventions.

Changes:

  • Refresh README.md to describe the repo and provide an updated directory layout.
  • Add new reference doc for Grafana dashboards and link it from the reference index.
  • Update docs/reference/index.rst to include the new reference page in the toctree.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.

File Description
README.md Replaces WIP README content with a purpose statement, updated repo layout, and pointer to docs/.
docs/reference/index.rst Adds grafana-dashboards to the reference toctree.
docs/reference/grafana-dashboards.md New reference page describing dashboard directories and JSON conventions.

Comment thread README.md Outdated
Comment thread README.md
Comment on lines +30 to +32
## Further information

Dashboard JSON files should use `__inputs` to declare the datasource (type `prometheus`).
Setting `"editable": false` is recommended for clarity, but is not strictly required:
dashboards delivered through `cos-configuration-k8s` are filesystem-provisioned and
therefore read-only in Grafana regardless of the JSON flag. Metric names follow the
[OpenTelemetry hostmetrics receiver](https://opentelemetry.io/docs/collector/components/#receiver)
Prometheus naming convention (e.g. `system_cpu_time_seconds_total`).
Further information can be found in the `docs/` directory.
Copy link

Copilot AI Apr 30, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A new doc page is being added under docs/reference/, but docs/changelog.md wasn’t updated. Please add a short changelog entry noting the new reference page so documentation consumers can track user-facing doc changes.

Copilot uses AI. Check for mistakes.
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the changelog currently only refers to planner and webhook-gateway charm. should we change the changelog to reflect everything user-facing in this repo? @erinecon

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I think so -- the changelog should cover everything relevant to users

Comment thread README.md
Comment thread docs/reference/grafana-dashboards.md Outdated
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated 5 comments.

Comment thread README.md
Comment thread README.md
Comment thread README.md
Comment thread docs/reference/grafana-dashboards.md Outdated
Comment thread docs/reference/grafana-dashboards.md
Comment thread README.md
JSON files from this Git repository and provisions them via the `grafana-dashboard`
relation. Provisioned dashboards are **immutable** in Grafana regardless of user
role — they cannot be edited or deleted through the UI.
docs/ # Documentation
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have removed this, because I do not think we should mention deployment details here.

@cbartz cbartz marked this pull request as ready for review April 30, 2026 10:13
@cbartz cbartz requested a review from erinecon April 30, 2026 10:13
@erinecon erinecon added the documentation Improvements or additions to documentation label Apr 30, 2026
Copy link
Copy Markdown
Contributor

@erinecon erinecon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for updating the README!

Comment thread README.md
Comment on lines +30 to +32
## Further information

Dashboard JSON files should use `__inputs` to declare the datasource (type `prometheus`).
Setting `"editable": false` is recommended for clarity, but is not strictly required:
dashboards delivered through `cos-configuration-k8s` are filesystem-provisioned and
therefore read-only in Grafana regardless of the JSON flag. Metric names follow the
[OpenTelemetry hostmetrics receiver](https://opentelemetry.io/docs/collector/components/#receiver)
Prometheus naming convention (e.g. `system_cpu_time_seconds_total`).
Further information can be found in the `docs/` directory.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I think so -- the changelog should cover everything relevant to users

Comment thread README.md
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WDYT about adding a link to the RTD site somewhere in the README, or a dedicated section about the documentation? Currently we use this template section for most of our repos with RTD projects:

## Documentation

Our documentation is stored in the `docs` directory.
It is based on the Canonical starter pack
and hosted on [Read the Docs](LINK TO RTD). In structuring,
the documentation employs the [Diátaxis](https://diataxis.fr/) approach.

You may open a pull request with your documentation changes, or you can
[file a bug](LINK TO ISSUES) to provide constructive feedback or suggestions.

To run the documentation locally before submitting your changes:

```bash
cd docs
make run
```

GitHub runs automatic checks on the documentation
to verify spelling, validate links and style guide compliance.

You can (and should) run the same checks locally:

```bash
make spelling
make linkcheck
make vale
make lint-md
```

Comment thread README.md
Comment on lines 13 to 17
charms/
planner-operator/ # Juju charm: GitHub runner planner
cos_custom/
grafana_dashboards/ # Grafana dashboards for the planner charm
# (served via cos-configuration-k8s, path: charms/planner-operator/cos_custom/grafana_dashboards)
webhook-gateway-operator/ # Juju charm: GitHub webhook gateway
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you think the README should provide any descriptions or high-level overview of the roles/responsibilities fulfilled by the charms? I think that the layout block is already clear about the structure, but consider adding a new section after the layout (maybe something like ## Charms or ## Repository charms) with some brief details about the purpose of the charms.

Comment thread README.md
webhook-gateway/ # Application entry point: webhook gateway

## Observability: Grafana dashboards
internal/ # Shared Go packages
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I ran the README draft through Gemini and asked for feedback about how digestable the README is for LLMs. Gemini said that it's not clear what the internal folder actually holds -- what kind of logic exists in this folder? Perhaps clarifying the purpose in this block may help, something like:

Suggested change
internal/ # Shared Go packages
internal/ # Shared Go packages to <fulfill this specific purpose>

That way you don't need to provide more details or an explicit section

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants