Skip to content

A collection of charm libraries curated by the Data Platform Team

License

Notifications You must be signed in to change notification settings

canonical/data-platform-libs

Repository files navigation

Data Platform Libraries for Operator Framework Charms

Charmhub Release Tests

Description

The data-platform-libs charm provides a set of charm libraries which offers convenience methods for interacting with charmed databases, but also writing you own database consuming application charms, through relations

This charm is not meant to be deployed itself, and is used as a mechanism for hosting libraries only.

Usage

This charm is not intended to be deployed. It is a container for standalone charm libraries, which can be managed using charmcraft fetch-lib (ref. link), after which they may be imported and used as normal charms. For example:

charmcraft fetch-lib charms.data_platform_libs.v0.data_interfaces

Following are the libraries available in this repository:

  • data_interfaces - Library to manage the relation for the data-platform products.
  • data_models - Library to introduce pydantic models for handling configuration, action parameters and databags.
  • database_provides - [DEPRECATED] Library that offers custom events and methods for provider-side of the relation (e.g. mysql)
  • database_requires - [DEPRECATED] Library that offers custom events and methods for requirer-side of the relation (e.g. wordpress)

Note: data_interfaces is not compatible ops<=1.5.4. It is compatible with only ops>=2.0.0.

The charms from the tests/integration folder aren't meant to be used for anything beyond testing and example code. They serve as examples of how to use the charm libraries.

Contributing

Please see the Juju SDK docs for guidelines on enhancements to this charm following best practice guidelines, and CONTRIBUTING.md for developer guidance.