Charm Tech pulse 2025#19

This pulse we added contributor documentation for the charmlibs monorepo in the form of a new tutorial. The charmlibs monorepo is the new home for charm libraries of wide interest – don’t hesitate to get in touch with us if you have a charm library you’d like to move there.

We also continued our work moving the operator-libs-linux libraries to charmlibs with the release of charmlibs-snap 1.0.0.

Ops

  • Continued work on adding a low-level API to the Juju hook commands (#2019).
  • Continued work on adding a tool to general charmcraft YAML from Python config and action classes (#1975).
  • Completed work on exposing the Juju context in Ops (#1996)
  • Continued to refactor secrets handling to ensure parity between Juju versions and unit testing
  • Improved the testing internal _MockModelBackend’s handling of the relation-get event so that the mock backend’s operations on the databag are properly separated from the user facing cached data (#2052).

Concierge

  • Added the ability to specify the Juju agent version when bootstrapping (#111).

Charming

  • Continued work on the new Charmhub public listing review process (#1989).
  • Opened issues against Juju (#20565, #20623) and fixed Juju hook tool help text (#20700).

Charmlibs

  • Added a tutorial to the charmlibs documentation site, including a template for adding a new charm library (just run just init) (#159).
  • Released charmlibs-snap 1.0.0! This is a move of the code from operator-libs-linux.v2.snap (release 2.14) to the charmlibs monorepo (#160) with consistent typing for the revision argument (#165). The Charmhub-hosted snap library is now deprecated in favour of charmlibs-snap, and will have its documentation updated accordingly.

Pebble

  • Pebble now supports a certificate (“cert”) identity type (#694).

Documentation

  • Work continues to document the reconciler pattern.
  • Started working on a how-to guide for migrating unit tests away from Harness.
3 Likes

Hi, If it helps, we wrote a guide about converting unit tests from Harness to Ops here: https://canonical-platform-engineering.readthedocs-hosted.com/latest/engineering-practices/charm-development/unit-tests/convert-from-harness/

3 Likes

Thanks, @amandahla! I’ve shared this with @davidwilding as well.