Charm Tech pulse 2025#1

Happy New Year all! The Charm Tech team has been busy in this last pulse, notably writing specs for and implementing new Pebble features, significant documentation work, and various charming improvements. Talk to us if you have thoughts on unifying codebases for machines vs K8s charms.

Ops

Charming

  • Started working on hooks for distributed tracing, with the goal of a native Ops feature equivalent to the current “charm-tracing” charm lib. Discussions on the API are welcome!
  • Wrote spec and proof-of-concept implementation for a library which unifies file operations for machine and Kubernetes charms. Get in touch with James Garner if there are higher level file operations you’d be interested in seeing in such a library.
  • Updated operator-libs-linux CI to fix a longstanding intermittently failing integration test, run on ubuntu-latest, and use the same linting rules as Ops. WIP: Adding type checking to CI, and updating libraries to pass all the new linting checks.
  • Work on the jubilant integration testing library was more or less on hold this pulse due to other priorities.

Pebble

  • Refactored client test to use the requester interface (PR #549, issue #315).
  • Started working on a new feature to run a health check synchronously and get the result immediately. This is for debugging purposes without interfering with health check operation.
  • Finalised the spec for adding the ability to start and stop checks, and started work on the implementation.
  • Finalised the spec for a Pebble metrics endpoint.
  • Made it valid to pass just a uid for operations that take user and group arguments.

Documentation

1 Like