Add functional tests

Add zuul yaml
Add functional tests
Premit charm to run on juju 3.1

Change-Id: I7bf691860a8d8521fa927fbb1eb50041871791fb
This commit is contained in:
Hemanth Nakkina
2023-08-23 09:51:55 +05:30
parent 955c89fb54
commit 4a04e98877
4 changed files with 133 additions and 4 deletions

View File

@@ -0,0 +1,11 @@
- project:
templates:
- openstack-python3-charm-jobs
- openstack-cover-jobs
- microk8s-func-test
vars:
charm_build_name: ceilometer-k8s
juju_channel: 3.1/stable
juju_classic_mode: false
microk8s_channel: 1.26-strict/stable
microk8s_classic_mode: false

View File

@@ -12,7 +12,7 @@ bases:
channel: 22.04/stable
assumes:
- k8s-api
- juju >= 3.2
- juju >= 3.1
tags:
- openstack
source: https://opendev.org/openstack/charm-ceilometer-k8s

View File

@@ -0,0 +1,93 @@
bundle: kubernetes
applications:
mysql:
charm: ch:mysql-k8s
channel: 8.0/stable
scale: 1
trust: false
# Currently traefik is required for networking things.
# If this isn't present, the units will hang at "installing agent".
traefik:
charm: ch:traefik-k8s
channel: 1.0/stable
scale: 1
trust: true
traefik-public:
charm: ch:traefik-k8s
channel: 1.0/stable
scale: 1
trust: true
options:
kubernetes-service-annotations: metallb.universe.tf/address-pool=public
# required for nova
rabbitmq:
charm: ch:rabbitmq-k8s
channel: 3.9/edge
scale: 1
trust: true
keystone:
charm: ch:keystone-k8s
channel: 2023.1/edge
scale: 1
trust: true
options:
admin-role: admin
storage:
fernet-keys: 5M
credential-keys: 5M
gnocchi:
charm: ch:gnocchi-k8s
channel: 2023.1/edge
scale: 1
trust: true
ceilometer:
charm: ../../ceilometer-k8s.charm
scale: 1
trust: true
resources:
ceilometer-central-image: ghcr.io/openstack-snaps/ceilometer-consolidated:2023.1
ceilometer-notification-image: ghcr.io/openstack-snaps/ceilometer-consolidated:2023.1
aodh:
charm: ch:aodh-k8s
channel: 2023.1/edge
scale: 1
trust: true
relations:
- - traefik:ingress
- keystone:ingress-internal
- - traefik-public:ingress
- keystone:ingress-public
- - mysql:database
- keystone:database
- - mysql:database
- aodh:database
- - rabbitmq:amqp
- aodh:amqp
- - keystone:identity-service
- aodh:identity-service
- - traefik:ingress
- aodh:ingress-internal
- - traefik-public:ingress
- aodh:ingress-public
- - mysql:database
- gnocchi:database
- - traefik:ingress
- gnocchi:ingress-internal
- - traefik-public:ingress
- gnocchi:ingress-public
- - keystone:identity-service
- gnocchi:identity-service
- - rabbitmq:amqp
- ceilometer:amqp
- - keystone:identity-credentials
- ceilometer:identity-credentials

View File

@@ -3,8 +3,9 @@ gate_bundles:
smoke_bundles:
- smoke
configure:
- zaza.openstack.charm_tests.keystone.setup.add_tempest_roles
tests: []
- zaza.charm_tests.noop.setup.basic_setup
tests:
- zaza.charm_tests.noop.tests.NoopTest
tests_options:
trust:
- smoke
@@ -15,4 +16,28 @@ tests_options:
default:
smoke: True
target_deploy_status: []
target_deploy_status:
traefik:
workload-status: active
workload-status-message-regex: '^$'
traefik-public:
workload-status: active
workload-status-message-regex: '^$'
keystone:
workload-status: active
workload-status-message-regex: '^$'
mysql:
workload-status: active
workload-status-message-regex: '^.*$'
rabbitmq:
workload-status: active
workload-status-message-regex: '^.*$'
ceilometer:
workload-status: active
workload-status-message-regex: '^.*$'
aodh:
workload-status: active
workload-status-message-regex: '^.*$'
gnocchi:
workload-status: blocked
workload-status-message-regex: '^.*ceph.*$'