General libraries

This page lists non-interface libraries. The search box supports regular expressions.

Library status is shown in the left column. See tooltips, or click here for a key.

description

Recommended for use in new charms today!

Recommended for use in new charms today!

⚗️
Experimental, use at your own risk!

Experimental, use at your own risk!

💬
Team internal lib, may not be stable for external use.

Team internal lib, may not be stable for external use.

🚫
Deprecated library, not recommended for use in new charms.

Deprecated library, not recommended for use in new charms.

None of the above.

name

kind

description

Recommended for use in new charms today!
charm-refresh (docs, src)
PyPI
🖥️machine ☸️K8s
In-place rolling refreshes of stateful charmed applications.
Recommended for use in new charms today!
charmlibs.pathops (docs, src)
PyPI
🖥️machine ☸️K8s
Substrate agnostic file operations.
Recommended for use in new charms today!
loki_k8s.charm_logging (src)
Charmhub
🖥️machine ☸️K8s
Add charm code logging to logs sent via loki_push_api.
Recommended for use in new charms today!
operator_libs_linux.apt (src)
Charmhub
🖥️machine
Use apt to install and manage packages.
Recommended for use in new charms today!
operator_libs_linux.grub (src)
Charmhub
🖥️machine
Use GRUB to manage kernel configuration.
Recommended for use in new charms today!
operator_libs_linux.juju_systemd_notices (src)
Charmhub
🖥️machine
Use systemd to observe and emit notices when services change state.
Recommended for use in new charms today!
operator_libs_linux.passwd (src)
Charmhub
🖥️machine
Manage Linux users and groups.
Recommended for use in new charms today!
operator_libs_linux.snap (src)
Charmhub
🖥️machine
Use snapd to install and manage packages.
Recommended for use in new charms today!
operator_libs_linux.sysctl (src)
Charmhub
🖥️machine
Create and configure sysctl options.
Recommended for use in new charms today!
operator_libs_linux.systemd (src)
Charmhub
🖥️machine
Use systemd to start, stop, and manage system services.
ops.manifest (src)
PyPI
☸️K8s
Work with Kubernetes manifests.
kubernetes_charm_libraries.multus (src)
Charmhub
☸️K8s
Use the Multus Kubernetes Container Network Interface.
observability_libs.cert_handler (src)
Charmhub
🖥️machine ☸️K8s
Wraps the requirer side of the tls-certificates-interface charm’s tls_certificates lib.
observability_libs.kubernetes_compute_resources_patch (src)
Charmhub
☸️K8s
Patch Kubernetes compute resource limits.
observability_libs.metrics_endpoint_discovery (src)
Charmhub
☸️K8s
Discover metric endpoints exposed by applications deployed to a K8s cluster.
rolling_ops.rollingops (src)
Charmhub
🖥️machine ☸️K8s
Perform “rolling” operations across units, for example rolling restarts.
zookeeper.client (src)
Charmhub
🖥️machine ☸️K8s
Perform zookeeper operations.
⚗️
Experimental, use at your own risk!
charm-api (src)
PyPI
🖥️machine ☸️K8s
Experimental API for writing charms.
⚗️
Experimental, use at your own risk!
charms.contextual_status (src)
PyPI
🖥️machine ☸️K8s
Context manager based library for setting charm statuses.
⚗️
Experimental, use at your own risk!
charms.reconciler (src)
PyPI
🖥️machine ☸️K8s
Handle all Juju events in an Ops-based charm with a single method.
💬
Team internal lib, may not be stable for external use.
charmed-kubeflow-chisme (src)
PyPI
🖥️machine ☸️K8s
Used internally by the Charmed Kubeflow team.
💬
Team internal lib, may not be stable for external use.
charmed-service-mesh-helpers (src)
PyPI
☸️K8s
Used internally by the Service Mesh team.
💬
Team internal lib, may not be stable for external use.
coordinated-workers (src)
PyPI
🖥️machine ☸️K8s
Abstractions for charms following the coordinator-worker pattern, used by Observability Team.
💬
Team internal lib, may not be stable for external use.
cosl (src)
PyPI
🖥️machine ☸️K8s
Used internally by the Observability Charm Engineering Team. A dependency (via PYDEPS) of popular charm libs such as loki_push_api.
💬
Team internal lib, may not be stable for external use.
data-platform-helpers (src)
PyPI
🖥️machine ☸️K8s
Used internally by the Data Charm Engineering team.
💬
Team internal lib, may not be stable for external use.
mongo-charms-single-kernel (src)
PyPI
🖥️machine ☸️K8s
Used internally by the Data Charm Engineering team.
💬
Team internal lib, may not be stable for external use.
hpc-libs
git
🖥️machine ☸️K8s
Used internally by HPC charms.
💬
Team internal lib, may not be stable for external use.
mysql.architecture (src)
Charmhub
🖥️machine ☸️K8s
Shared code between the mysql and mysql-k8s charms.
💬
Team internal lib, may not be stable for external use.
mysql.async_replication (src)
Charmhub
🖥️machine ☸️K8s
Shared code between the mysql and mysql-k8s charms.
💬
Team internal lib, may not be stable for external use.
mysql.backups (src)
Charmhub
🖥️machine ☸️K8s
Shared code between the mysql and mysql-k8s charms.
💬
Team internal lib, may not be stable for external use.
mysql.mysql (src)
Charmhub
🖥️machine ☸️K8s
Shared code between the mysql and mysql-k8s charms.
💬
Team internal lib, may not be stable for external use.
mysql.s3_helpers (src)
Charmhub
🖥️machine ☸️K8s
Shared code between the mysql and mysql-k8s charms.
💬
Team internal lib, may not be stable for external use.
mysql.tls (src)
Charmhub
🖥️machine ☸️K8s
Shared code between the mysql and mysql-k8s charms.
💬
Team internal lib, may not be stable for external use.
opensearch.helper_cos (src)
Charmhub
Relies on data_platform_helpers.
💬
Team internal lib, may not be stable for external use.
pgbouncer_k8s.pgb (src)
Charmhub
🖥️machine ☸️K8s
Shared code between pgbouncer and pgbouncer-k8s charms.
💬
Team internal lib, may not be stable for external use.
postgresql_k8s.postgresql (src)
Charmhub
🖥️machine ☸️K8s
Shared code between the posgresql and postgresql-k8s charms.
🚫
Deprecated library, not recommended for use in new charms.
charm-helpers (docs, src)
PyPI
🖥️machine ☸️K8s
Pre-Ops library used by reactive charms.
🚫
Deprecated library, not recommended for use in new charms.
charm-json (src)
PyPI
🖥️machine ☸️K8s
JSON typed relation data – unnecessary with Ops 2.23+ due to the addition of typed relation data.
🚫
Deprecated library, not recommended for use in new charms.
charms.docker (src)
PyPI
Legacy library used by the docker-layer reactive charm.
🚫
Deprecated library, not recommended for use in new charms.
charms.reactive (docs, src)
PyPI
🖥️machine ☸️K8s
Legacy library used to implement reactive charms.
🚫
Deprecated library, not recommended for use in new charms.
charms.templating.jinja2 (docs, src)
PyPI
Legacy library for Jinja templating in reactive charms.
🚫
Deprecated library, not recommended for use in new charms.
jujubigdata (docs, src)
PyPI
Legacy library for developing Big Data charms.
🚫
Deprecated library, not recommended for use in new charms.
jujuresources (docs, src)
PyPI
🖥️machine ☸️K8s
Legacy library for loading binary resources. New charms should use ops.Model.resources.
🚫
Deprecated library, not recommended for use in new charms.
oci-image (src)
PyPI
☸️K8s
Work with OCI images in podspec charms. New Kubernetes charms should use the sidecar pattern. Repo archived in March 2024.
🚫
Deprecated library, not recommended for use in new charms.
ops_reactive_interface (docs, src)
PyPI
🖥️machine ☸️K8s
Helper for interface library developers, to allow an Ops-based interface library to interact with legacy, reactive charms.
🚫
Deprecated library, not recommended for use in new charms.
sborl (src)
PyPI
🖥️machine ☸️K8s
Legacy library for implementing interface libraries. New interface libraries can use the typed relation data feature available in Ops 2.23+.
🚫
Deprecated library, not recommended for use in new charms.
serialized-data-interface (src)
PyPI
🖥️machine ☸️K8s
Relation data validation – use the features available in Ops instead.
🚫
Deprecated library, not recommended for use in new charms.
data_platform_libs.data_models (src)
Charmhub
🖥️machine ☸️K8s
pydantic-based typed relation data – unnecessary with Ops 2.23+ due to the addition of typed relation data.
🚫
Deprecated library, not recommended for use in new charms.
data_platform_libs.data_secrets (src)
Charmhub
🖥️machine ☸️K8s
Secrets-related helpers for interfaces. Deprecated in favour of the data-platform-libs.data_inferfaces interface lib.
🚫
Deprecated library, not recommended for use in new charms.
data_platform_libs.upgrade (src)
Charmhub
🖥️machine ☸️K8s
Manage in-place upgrades. Deprecated in favour of charm-refresh.
🚫
Deprecated library, not recommended for use in new charms.
harness_extensions.capture_events (src)
Charmhub
🖥️machine ☸️K8s
Helper for legacy harness tests. New charms should write state-transition tests with ops[testing] instead.
🚫
Deprecated library, not recommended for use in new charms.
harness_extensions.evt_sequences (src)
Charmhub
🖥️machine ☸️K8s
Helper for legacy harness tests. New charms should write state-transition tests with ops[testing] instead.
🚫
Deprecated library, not recommended for use in new charms.
observability_libs.juju_topology (src)
Charmhub
🖥️machine ☸️K8s
Deprecated in favour of cosl.juju_topology.JujuTopology.
🚫
Deprecated library, not recommended for use in new charms.
observability_libs.kubernetes_service_patch (src)
Charmhub
☸️K8s
Deprecated in favour of ops.Unit.set_ports.
🚫
Deprecated library, not recommended for use in new charms.
operator_libs_linux.dnf (src)
Charmhub
🖥️machine
Use dnf to install and manage packages – modern charms all run on Ubuntu, so this shouldn’t be needed.
🚫
Deprecated library, not recommended for use in new charms.
tempo_coordinator_k8s.charm_tracing (src)
Charmhub
🖥️machine ☸️K8s
Provided by the tempo-coordinator-k8s charm. Consider using ops[tracing] instead.
🚫
Deprecated library, not recommended for use in new charms.
tempo_k8s.charm_tracing (src)
Charmhub
🖥️machine ☸️K8s
Deprecated in favour of the tempo-coordinator-k8s charm’s libs. New charms should use ops[tracing] for tracing charm code instead.