sunbeam-charms/charms/horizon-k8s/CONTRIBUTING.md
Liam Young 73547de754 Switch charm to Bobcat
Switch charm to Bobcat release. Microk8s 1.28 will be the default
for Bobcat. Also ensure images are being collected from
ghcr.io/canonical

Change-Id: If574f807bdde197520111a8c475d5f1f96737c44
2023-10-05 06:17:16 +00:00

1.3 KiB

horizon-k8s

Developing

Create and activate a virtualenv with the development requirements:

virtualenv -p python3 venv
source venv/bin/activate
pip install -r requirements-dev.txt

Code overview

Get familiarise with Charmed Operator Framework and Sunbeam documentation.

horizon-k8s charm uses the ops_sunbeam library and extends OSBaseOperatorAPICharm from the library.

horizon-k8s charm consumes database relation to connect to database, identity-service to create cloud credentials and ingress-internal/ ingress-public relation to get exposed over internal and public networks.

Intended use case

horizon-k8s charm deploys and configures Horizon service on a kubernetes based environment.

Roadmap

TODO

Testing

The Python operator framework includes a very nice harness for testing operator behaviour without full deployment. Run tests using command:

tox -e py3

Deployment

This project uses tox for building and managing. To build the charm run:

tox -e build

To deploy the local test instance:

juju deploy ./horizon-k8s_ubuntu-20.04-amd64.charm --trust --resource horizon-image=ghcr.io/canonical/horizon:2023.2