sunbeam-charms/tests/caas/smoke.yaml.j2
Guillaume Boutry 943c9fd988
Migrate database interface
data_platform_libs.v0.database_requires was deprecated on January 4th,
2023 and has not received updates since then.
This change migrates to data_platform_libs.v0.data_interfaces which the
preferred way to interact with MySQL.

Most notable changes:
- User/password in a secret
- Keystone test 'test_on_peer_data_changed_with_fernet_keys_and_fernet_secret_different'
  is no longer mocking secrets to make sure it's using database secrets.

Change-Id: Ia1908c0828689458c6ff3fa8d9640c8debfc0a73
2024-01-27 14:29:40 +01:00

191 lines
4.8 KiB
Django/Jinja

bundle: kubernetes
applications:
traefik:
charm: ch:traefik-k8s
channel: 1.0/candidate
scale: 1
trust: true
options:
kubernetes-service-annotations: metallb.universe.tf/address-pool=public
mysql:
charm: ch:mysql-k8s
channel: 8.0/stable
scale: 1
trust: true
vault:
charm: ch:vault-k8s
channel: latest/edge
scale: 1
trust: false
tls-operator:
charm: self-signed-certificates
channel: latest/beta
scale: 1
options:
ca-common-name: internal-ca
rabbitmq:
charm: ch:rabbitmq-k8s
channel: 3.12/edge
scale: 1
trust: true
options:
minimum-replicas: 1
ovn-central:
{% if ovn_central_k8s is defined and ovn_central_k8s is sameas true -%}
charm: ../../../ovn-central-k8s.charm
{% else -%}
charm: ch:ovn-central-k8s
channel: 23.03/edge
{% endif -%}
scale: 1
trust: true
resources:
ovn-sb-db-server-image: ghcr.io/canonical/ovn-consolidated:23.09
ovn-nb-db-server-image: ghcr.io/canonical/ovn-consolidated:23.09
ovn-northd-image: ghcr.io/canonical/ovn-consolidated:23.09
keystone:
{% if keystone_k8s is defined and keystone_k8s is sameas true -%}
charm: ../../../keystone-k8s.charm
{% else -%}
charm: ch:keystone-k8s
channel: 2023.2/edge
{% endif -%}
scale: 1
trust: true
options:
admin-role: admin
storage:
fernet-keys: 5M
credential-keys: 5M
resources:
keystone-image: ghcr.io/canonical/keystone:2023.2
glance:
{% if glance_k8s is defined and glance_k8s is sameas true -%}
charm: ../../../glance-k8s.charm
{% else -%}
charm: ch:glance-k8s
channel: 2023.2/edge
{% endif -%}
scale: 1
trust: true
storage:
local-repository: 5G
resources:
glance-api-image: ghcr.io/canonical/glance-api:2023.2
heat:
{% if heat_k8s is defined and heat_k8s is sameas true -%}
charm: ../../../heat-k8s.charm
{% else -%}
charm: ch:heat-k8s
channel: 2023.2/edge
{% endif -%}
scale: 1
trust: true
resources:
heat-api-image: ghcr.io/canonical/heat-consolidated:2023.2
heat-engine-image: ghcr.io/canonical/heat-consolidated:2023.2
octavia:
{% if octavia_k8s is defined and octavia_k8s is sameas true -%}
charm: ../../../octavia-k8s.charm
{% else -%}
charm: ch:octavia-k8s
channel: 2023.2/edge
{% endif -%}
scale: 1
trust: true
resources:
octavia-api-image: ghcr.io/canonical/octavia-consolidated:2023.2
octavia-driver-agent-image: ghcr.io/canonical/octavia-consolidated:2023.2
octavia-housekeeping-image: ghcr.io/canonical/octavia-consolidated:2023.2
barbican:
{% if barbican_k8s is defined and barbican_k8s is sameas true -%}
charm: ../../../barbican-k8s.charm
{% else -%}
charm: ch:barbican-k8s
channel: 2023.2/edge
{% endif -%}
scale: 1
trust: false
resources:
barbican-api-image: ghcr.io/canonical/barbican-consolidated:2023.2
barbican-worker-image: ghcr.io/canonical/barbican-consolidated:2023.2
magnum:
{% if magnum_k8s is defined and magnum_k8s is sameas true -%}
charm: ../../../magnum-k8s.charm
{% else -%}
charm: ch:magnum-k8s
channel: 2023.2/edge
{% endif -%}
scale: 1
trust: false
resources:
magnum-api-image: ghcr.io/canonical/magnum-consolidated:2023.2
magnum-conductor-image: ghcr.io/canonical/magnum-consolidated:2023.2
relations:
- - tls-operator:certificates
- ovn-central:certificates
- - mysql:database
- keystone:database
- - traefik:ingress
- keystone:ingress-public
- - mysql:database
- glance:database
- - keystone:identity-service
- glance:identity-service
- - rabbitmq:amqp
- glance:amqp
- - traefik:ingress
- glance:ingress-public
- - mysql:database
- heat:database
- - keystone:identity-service
- heat:identity-service
- - keystone:identity-ops
- heat:identity-ops
- - traefik:traefik-route
- heat:traefik-route-public
- - rabbitmq:amqp
- heat:amqp
- - mysql:database
- octavia:database
- - keystone:identity-service
- octavia:identity-service
- - keystone:identity-ops
- octavia:identity-ops
- - traefik:ingress
- octavia:ingress-public
- - tls-operator:certificates
- octavia:certificates
- - octavia:ovsdb-cms
- ovn-central:ovsdb-cms
- - mysql:database
- barbican:database
- - rabbitmq:amqp
- barbican:amqp
- - keystone:identity-service
- barbican:identity-service
- - keystone:identity-ops
- barbican:identity-ops
- - traefik:ingress
- barbican:ingress-public
- - vault:vault-kv
- barbican:vault-kv
- - mysql:database
- magnum:database
- - rabbitmq:amqp
- magnum:amqp
- - keystone:identity-service
- magnum:identity-service
- - keystone:identity-ops
- magnum:identity-ops
- - traefik:ingress
- magnum:ingress-public