Skip to content

canonical/charmed-kubeflow-chisme

Repository files navigation

Charmed Kubeflow Chisme

Chisme: a Spanish word for gossip, or a story worth telling to your friends.

This repository is for chisme within the Charmed Kubeflow team's codebase - it is a collection of helpers for use in both the Charmed Operators maintained by the Charmed Kubeflow team as well as anyone else who benefits from them.

Contents

  • Exceptions: A collection of standard Exceptions for use when writing charms.
  • Kubernetes: Helpers for interacting with Kubernetes
  • Lightkube: Helpers specific to using or extending Lightkube
  • Pebble: Helpers for managing pebble when writing charms
  • Reusable Charm Components: The Component abstraction that encapsulates any piece of logic for a Charm, a reusable reconcile function CharmReconciler that executes Components, and a collection of Components for things like running Pebble containers or deploying Kubernetes resources
  • Rock: Utilities for testing rocks
  • Status Handling: Helpers for working with Charm Status objects
  • Testing: Utilities for testing Charms
  • Types: Reusable typing definitions, useful for adding type hints

Publishing to PyPi

To publish a new release to Pypi:

  1. Update setup.cfg to the new version and commit it to the repo via a completed PR
  2. Apply local git tag according to the format X.X.X (semantic versioning) on the main branch
  3. Push tag to the repo. Example: git push origin 0.0.8
  4. GitHub Action will create a new release on GitHub
  5. Edit release via GitHub UI and click publish
  6. GitHub Action will automatically publish the same commit to PyPi repository