df70e376ff
* Add sunbeam project template to run pep8, py3 tests * Add zuul.d/zuul.yaml to run pep8, py3, cover tests * Update charmcraft and requirements for each charm * Add global tox.ini to invoke fmt, pep8, py3, cover, build * Add gitreview file * Fix py3 test failures in ciner-ceph-k8s, glance-k8s, openstack-exporter * Add jobs for charm builds using files option so that job is invoked if files within the component are modified. Add charm builds to both check and gate pipeline. * Make function tests as part of global. Split the function tests into core, ceph, caas, misc mainly to accomodate function tests to run on 8GB. Add function tests as part of check pipeline. * Add zuul job to publish charms in promote pipeline Add charmhub token as secret that can be used to publish charms. Note: Charmhub token is generated with ttl of 90 days. * Run tox formatting * Make .gitignore, .jujuignore, .stestr.conf global and remove the files from all charms. * Make libs and templates global. Split libs to internal and external so that internal libs can adhere to sunbeam formatting styles. * Add script to copy common files necessary libs, config templates, stestr conf, jujuignore during py3 tests and charm builds. * Tests for keystone-ldap-k8s are commented due to intermittent bug LP#2045206 Change-Id: I804ca64182c109d16bd820ac00f129aa6dcf4496 |
||
---|---|---|
.. | ||
src | ||
tests | ||
actions.yaml | ||
charmcraft.yaml | ||
config.yaml | ||
CONTRIBUTING.md | ||
LICENSE | ||
metadata.yaml | ||
README.md | ||
requirements.txt |
heat-k8s
Description
heat-k8s is an operator to manage the orchestration services heat api, heat api cfn and heat engine on a Kubernetes based environment.
Usage
Deployment
heat-k8s is deployed using below command:
juju deploy heat-k8s heat --trust
Now connect the heat operator to existing database, keystone identity, keystone ops and rabbitmq operators:
juju relate mysql:database heat:database
juju relate keystone:identity-service heat:identity-service
juju relate keystone:identity-ops heat:identity-ops
juju relate rabbitmq:amqp heat:amqp
heat-api-cfn is deployed as separate instance of charm using below command:
juju deploy heat-k8s heat-cfn --trust --config api_service=heat-api-cfn
Configuration
This section covers common and/or important configuration options. See file
config.yaml
for the full list of options, along with their descriptions and
default values. See the Juju documentation for details
on configuring applications.
api_service
The api_service
option determines whether to act as heat-api service or
heat-api-cfn service. Accepted values are heat-api
or heat-api-service
and defaults to heat-api
.
Actions
This section covers Juju actions supported by the charm.
Actions allow specific operations to be performed on a per-unit basis. To
display action descriptions run juju actions heat
. If the charm is not
deployed then see file actions.yaml
.
Relations
heat-k8s requires the following relations:
database
: To connect to MySQL
identity-service
: To register endpoints in Keystone
identity-ops
: To create heat stack domain and users
ingress-internal
: To expose service on underlying internal network
ingress-public
: To expose service on public network
amqp
: To connect to Rabbitmq
OCI Images
The charm by default uses following images:
ghcr.io/canonical/heat-consolidated:2023.2
Contributing
Please see the Juju SDK docs for guidelines on enhancements to this charm following best practice guidelines, and CONTRIBUTING.md for developer guidance.
Bugs
Please report bugs on Launchpad.