Files
sunbeam-charms/charms/nova-k8s/metadata.yaml
Hemanth Nakkina f611ba9e60 [nova] add support for nova spice proxy
lib changes
Add new library nova_service to exchange config
information like nova spice proxy url.

ops-sunbeam changes
Move TraefikRouteHandler from heat-k8s to
ops_sunbeam to reuse in nova-k8s charm as well.
Add nova-service requires handler

nova-k8s changes
Add new container in nova-k8s for nova spice proxy
Add the corresponding pebble handler with plan to
start nova spice proxy process
Change the ingress relation to use traefik-route so
that both nova-api and nova-spiceproxy applications
are exposed via traefik
Add new interface nova-service to provide nova
spiceproxy url to client openstack-hypervisor.
Add nova-service provider handler

openstack-hypervisor changes:
Add interace nova-service in requires section of
metadata.yaml
Handle nova-service requires and update snap config

Change-Id: I27dd6523628e492bef1d1dd851dc528e41c520c7
2024-04-19 14:28:46 +05:30

100 lines
2.6 KiB
YAML

name: nova-k8s
summary: OpenStack Compute - Nova cloud controller service
maintainer: OpenStack Charmers <openstack-charmers@lists.ubuntu.com>
description: |
OpenStack is a reliable cloud infrastructure. Its mission is to produce
the ubiquitous cloud computing platform that will meet the needs of public
and private cloud providers regardless of size, by being simple to implement
and massively scalable.
.
OpenStack Compute, codenamed Nova, is a cloud computing fabric controller. In
addition to its "native" API (the OpenStack API), it also supports the Amazon
EC2 API.
.
This charm provides the cloud controller service for OpenStack Nova and includes
nova-scheduler, nova-api and nova-conductor services.
version: 3
bases:
- name: ubuntu
channel: 22.04/stable
assumes:
- k8s-api
- juju >= 3.1
tags:
- openstack
source: https://opendev.org/openstack/charm-nova-k8s
issues: https://bugs.launchpad.net/charm-nova-k8s
containers:
nova-api:
resource: nova-api-image
nova-scheduler:
resource: nova-scheduler-image
nova-conductor:
resource: nova-conductor-image
nova-spiceproxy:
resource: nova-spiceproxy-image
resources:
nova-api-image:
type: oci-image
description: OCI image for OpenStack Nova API
upstream-source: ghcr.io/canonical/nova-consolidated:2024.1
nova-scheduler-image:
type: oci-image
description: OCI image for OpenStack Nova Scheduler
upstream-source: ghcr.io/canonical/nova-consolidated:2024.1
nova-conductor-image:
type: oci-image
description: OCI image for OpenStack Nova Conductor
upstream-source: ghcr.io/canonical/nova-consolidated:2024.1
nova-spiceproxy-image:
type: oci-image
description: OCI image for OpenStack Nova Spice proxy
upstream-source: ghcr.io/canonical/nova-consolidated:2024.1
requires:
traefik-route-internal:
interface: traefik_route
optional: true
limit: 1
traefik-route-public:
interface: traefik_route
limit: 1
database:
interface: mysql_client
limit: 1
api-database:
interface: mysql_client
limit: 1
cell-database:
interface: mysql_client
limit: 1
amqp:
interface: rabbitmq
image-service:
interface: glance
identity-service:
interface: keystone
cloud-compute:
interface: nova-compute
cinder-volume-service:
interface: cinder
neutron-network-service:
interface: neutron
neutron-api:
interface: neutron-api
placement:
interface: placement
receive-ca-cert:
interface: certificate_transfer
optional: true
provides:
nova-service:
interface: nova
peers:
peers:
interface: nova-peer