sunbeam-charms/charms/nova-k8s/charmcraft.yaml
Hemanth Nakkina 43119913d6
Make ingress-internal mandatory relation
* Make ingress-internal relation mandatory for
charms instead of ingress-public
* If ingress-public is not integrated, default
public endpoint to internal endpoint

Change-Id: Ibbc600b3dd53655f2160394d4717b75e14d63cf8
2024-12-09 18:43:30 +05:30

149 lines
3.4 KiB
YAML

type: charm
name: nova-k8s
summary: OpenStack Compute - Nova cloud controller service
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.
assumes:
- k8s-api
- juju >= 3.1
links:
source:
- https://opendev.org/openstack/charm-nova-k8s
issues:
- https://bugs.launchpad.net/charm-nova-k8s
base: ubuntu@24.04
platforms:
amd64:
config:
options:
debug:
default: false
description: Enable debug logging.
type: boolean
region:
default: RegionOne
description: Name of the OpenStack region
type: string
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:
ingress-internal:
interface: ingress
limit: 1
ingress-public:
interface: ingress
optional: true
limit: 1
traefik-route-internal:
interface: traefik_route
limit: 1
traefik-route-public:
interface: traefik_route
optional: true
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
logging:
interface: loki_push_api
optional: true
tracing:
interface: tracing
optional: true
limit: 1
provides:
nova-service:
interface: nova
peers:
peers:
interface: nova-peer
parts:
update-certificates:
plugin: nil
override-build: |
apt update
apt install -y ca-certificates
update-ca-certificates
charm:
after:
- update-certificates
build-packages:
- git
- libffi-dev
- libssl-dev
- pkg-config
- rustc
- cargo
charm-binary-python-packages:
- cryptography
- jsonschema
- pydantic
- jinja2