diff --git a/charmcraft.yaml b/charmcraft.yaml new file mode 100644 index 0000000..a850351 --- /dev/null +++ b/charmcraft.yaml @@ -0,0 +1,13 @@ +type: charm + +parts: + charm: + source: src/ + plugin: reactive + build-snaps: [charm] + +bases: + - name: ubuntu + channel: "20.04" + architectures: + - amd64 diff --git a/metadata.yaml b/metadata.yaml new file mode 120000 index 0000000..0768683 --- /dev/null +++ b/metadata.yaml @@ -0,0 +1 @@ +src/metadata.yaml \ No newline at end of file diff --git a/osci.yaml b/osci.yaml index f2cbd23..74c111f 100644 --- a/osci.yaml +++ b/osci.yaml @@ -1,16 +1,15 @@ - project: templates: - - charm-yoga-unit-jobs + - charm-unit-jobs-py38 + - charm-unit-jobs-py39 check: jobs: - focal - - hirsute - impish: voting: false - jammy: voting: false - full_model_ha-focal-full-ha - - full_model_ha-hirsute-full-ha - full_model_ha-impish-full-ha: voting: false - full_model_ha-jammy-full-ha: @@ -26,13 +25,6 @@ - focal vars: tox_extra_args: full_model_ha:focal-full-ha -- job: - name: full_model_ha-hirsute-full-ha - parent: func-target - dependencies: - - focal - vars: - tox_extra_args: full_model_ha:hirsute-full-ha - job: name: full_model_ha-impish-full-ha parent: func-target diff --git a/src/metadata.yaml b/src/metadata.yaml index 510baf0..b41fbba 100644 --- a/src/metadata.yaml +++ b/src/metadata.yaml @@ -8,8 +8,6 @@ tags: subordinate: true series: - focal -- groovy -- hirsute - impish provides: shared-db: diff --git a/src/tests/bundles/focal-full.yaml b/src/tests/bundles/focal-full.yaml index ab8cb37..c93fc3c 100644 --- a/src/tests/bundles/focal-full.yaml +++ b/src/tests/bundles/focal-full.yaml @@ -17,53 +17,63 @@ applications: vault-mysql-router: charm: ../../../mysql-router mysql-innodb-cluster: - charm: cs:~openstack-charmers-next/mysql-innodb-cluster + charm: ch:mysql-innodb-cluster num_units: 3 options: source: *openstack-origin + channel: latest/edge keystone: - charm: cs:~openstack-charmers-next/keystone + charm: ch:keystone num_units: 1 options: openstack-origin: *openstack-origin + channel: latest/edge rabbitmq-server: - charm: cs:~openstack-charmers-next/rabbitmq-server + charm: ch:rabbitmq-server num_units: 1 options: source: *openstack-origin + channel: latest/edge vault: - charm: cs:~openstack-charmers-next/vault + charm: ch:vault num_units: 1 + channel: latest/edge ovn-central: - charm: cs:~openstack-charmers-next/ovn-central + charm: ch:ovn-central num_units: 3 options: source: *openstack-origin + channel: latest/edge neutron-api-plugin-ovn: - charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn + charm: ch:neutron-api-plugin-ovn + channel: latest/edge neutron-api: - charm: cs:~openstack-charmers-next/neutron-api + charm: ch:neutron-api series: *series num_units: 1 options: flat-network-providers: physnet1 neutron-security-groups: true openstack-origin: *openstack-origin + channel: latest/edge glance: - charm: cs:~openstack-charmers-next/glance + charm: ch:glance num_units: 1 options: openstack-origin: *openstack-origin + channel: latest/edge nova-cloud-controller: - charm: cs:~openstack-charmers-next/nova-cloud-controller + charm: ch:nova-cloud-controller num_units: 1 options: network-manager: Neutron openstack-origin: *openstack-origin + channel: latest/edge ovn-chassis: - charm: cs:~openstack-charmers-next/ovn-chassis + charm: ch:ovn-chassis + channel: latest/edge nova-compute: - charm: cs:~openstack-charmers-next/nova-compute + charm: ch:nova-compute num_units: 1 options: config-flags: default_ephemeral_format=ext4 @@ -71,11 +81,13 @@ applications: enable-resize: true migration-auth-type: ssh openstack-origin: *openstack-origin + channel: latest/edge placement: - charm: cs:~openstack-charmers-next/placement + charm: ch:placement num_units: 1 options: openstack-origin: *openstack-origin + channel: latest/edge memcached: charm: cs:memcached num_units: 1 diff --git a/src/tests/bundles/focal.yaml b/src/tests/bundles/focal.yaml index 2d60a98..d92f778 100644 --- a/src/tests/bundles/focal.yaml +++ b/src/tests/bundles/focal.yaml @@ -7,14 +7,17 @@ applications: series: focal charm: ../../../mysql-router mysql-innodb-cluster: - charm: cs:~openstack-charmers-next/mysql-innodb-cluster + charm: ch:mysql-innodb-cluster num_units: 3 + channel: latest/edge keystone: - charm: cs:~openstack-charmers-next/keystone + charm: ch:keystone num_units: 1 + channel: latest/edge vault: - charm: cs:~openstack-charmers-next/vault + charm: ch:vault num_units: 1 + channel: latest/edge relations: - - vault:certificates - mysql-innodb-cluster:certificates diff --git a/src/tests/bundles/hirsute-full-ha.yaml b/src/tests/bundles/hirsute-full-ha.yaml deleted file mode 120000 index cdca6df..0000000 --- a/src/tests/bundles/hirsute-full-ha.yaml +++ /dev/null @@ -1 +0,0 @@ -hirsute-full.yaml \ No newline at end of file diff --git a/src/tests/bundles/hirsute-full.yaml b/src/tests/bundles/hirsute-full.yaml deleted file mode 100644 index 2ac5f27..0000000 --- a/src/tests/bundles/hirsute-full.yaml +++ /dev/null @@ -1,159 +0,0 @@ -variables: - openstack-origin: &openstack-origin distro - -series: &series hirsute - -applications: - keystone-mysql-router: - charm: ../../../mysql-router - nova-mysql-router: - charm: ../../../mysql-router - glance-mysql-router: - charm: ../../../mysql-router - neutron-mysql-router: - charm: ../../../mysql-router - placement-mysql-router: - charm: ../../../mysql-router - vault-mysql-router: - charm: ../../../mysql-router - mysql-innodb-cluster: - charm: cs:~openstack-charmers-next/mysql-innodb-cluster - num_units: 3 - options: - source: *openstack-origin - keystone: - charm: cs:~openstack-charmers-next/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - rabbitmq-server: - charm: cs:~openstack-charmers-next/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - vault: - charm: cs:~openstack-charmers-next/vault - num_units: 1 - ovn-central: - charm: cs:~openstack-charmers-next/ovn-central - num_units: 3 - options: - source: *openstack-origin - neutron-api-plugin-ovn: - charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn - neutron-api: - charm: cs:~openstack-charmers-next/neutron-api - series: *series - num_units: 1 - options: - flat-network-providers: physnet1 - neutron-security-groups: true - openstack-origin: *openstack-origin - glance: - charm: cs:~openstack-charmers-next/glance - num_units: 1 - options: - openstack-origin: *openstack-origin - nova-cloud-controller: - charm: cs:~openstack-charmers-next/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - ovn-chassis: - charm: cs:~openstack-charmers-next/ovn-chassis - nova-compute: - charm: cs:~openstack-charmers-next/nova-compute - num_units: 1 - options: - config-flags: default_ephemeral_format=ext4 - enable-live-migration: true - enable-resize: true - migration-auth-type: ssh - openstack-origin: *openstack-origin - placement: - charm: cs:~openstack-charmers-next/placement - num_units: 1 - options: - openstack-origin: *openstack-origin - memcached: - charm: cs:memcached - num_units: 1 - series: focal -relations: - - - neutron-api:amqp - - rabbitmq-server:amqp - - - neutron-api:neutron-api - - nova-cloud-controller:neutron-api - - - neutron-api:identity-service - - keystone:identity-service - - - nova-cloud-controller:amqp - - rabbitmq-server:amqp - - - nova-compute:amqp - - rabbitmq-server:amqp - - - nova-cloud-controller:identity-service - - keystone:identity-service - - - nova-cloud-controller:cloud-compute - - nova-compute:cloud-compute - - - glance:identity-service - - keystone:identity-service - - - glance:amqp - - rabbitmq-server:amqp - - - nova-compute:image-service - - glance:image-service - - - nova-cloud-controller:image-service - - glance:image-service - - - placement:identity-service - - keystone:identity-service - - - placement:placement - - nova-cloud-controller:placement - - - neutron-api-plugin-ovn:neutron-plugin - - neutron-api:neutron-plugin-api-subordinate - - - ovn-central:certificates - - vault:certificates - - - ovn-central:ovsdb-cms - - neutron-api-plugin-ovn:ovsdb-cms - - - neutron-api:certificates - - vault:certificates - - - ovn-chassis:nova-compute - - nova-compute:neutron-plugin - - - ovn-chassis:certificates - - vault:certificates - - - ovn-chassis:ovsdb - - ovn-central:ovsdb - - - vault:certificates - - neutron-api-plugin-ovn:certificates - - - vault:certificates - - glance:certificates - - - vault:certificates - - keystone:certificates - - - vault:certificates - - nova-cloud-controller:certificates - - - vault:certificates - - placement:certificates - - - memcached:cache - - nova-cloud-controller:memcache - - - keystone:shared-db - - keystone-mysql-router:shared-db - - - glance:shared-db - - glance-mysql-router:shared-db - - - nova-cloud-controller:shared-db - - nova-mysql-router:shared-db - - - neutron-api:shared-db - - neutron-mysql-router:shared-db - - - placement:shared-db - - placement-mysql-router:shared-db - - - vault:shared-db - - vault-mysql-router:shared-db - - - keystone-mysql-router:db-router - - mysql-innodb-cluster:db-router - - - nova-mysql-router:db-router - - mysql-innodb-cluster:db-router - - - glance-mysql-router:db-router - - mysql-innodb-cluster:db-router - - - neutron-mysql-router:db-router - - mysql-innodb-cluster:db-router - - - placement-mysql-router:db-router - - mysql-innodb-cluster:db-router - - - vault-mysql-router:db-router - - mysql-innodb-cluster:db-router diff --git a/src/tests/bundles/hirsute.yaml b/src/tests/bundles/hirsute.yaml deleted file mode 100644 index ca0f750..0000000 --- a/src/tests/bundles/hirsute.yaml +++ /dev/null @@ -1,28 +0,0 @@ -series: hirsute -applications: - keystone-mysql-router: - charm: ../../../mysql-router - vault-mysql-router: - charm: ../../../mysql-router - mysql-innodb-cluster: - charm: cs:~openstack-charmers-next/mysql-innodb-cluster - num_units: 3 - keystone: - charm: cs:~openstack-charmers-next/keystone - num_units: 1 - vault: - charm: cs:~openstack-charmers-next/vault - num_units: 1 -relations: - - - vault:certificates - - mysql-innodb-cluster:certificates - - - vault:certificates - - keystone:certificates - - - keystone:shared-db - - keystone-mysql-router:shared-db - - - vault:shared-db - - vault-mysql-router:shared-db - - - keystone-mysql-router:db-router - - mysql-innodb-cluster:db-router - - - vault-mysql-router:db-router - - mysql-innodb-cluster:db-router diff --git a/src/tests/bundles/impish-full.yaml b/src/tests/bundles/impish-full.yaml index bbf4023..649f267 100644 --- a/src/tests/bundles/impish-full.yaml +++ b/src/tests/bundles/impish-full.yaml @@ -17,53 +17,63 @@ applications: vault-mysql-router: charm: ../../../mysql-router mysql-innodb-cluster: - charm: cs:~openstack-charmers-next/mysql-innodb-cluster + charm: ch:mysql-innodb-cluster num_units: 3 options: source: *openstack-origin + channel: latest/edge keystone: - charm: cs:~openstack-charmers-next/keystone + charm: ch:keystone num_units: 1 options: openstack-origin: *openstack-origin + channel: latest/edge rabbitmq-server: - charm: cs:~openstack-charmers-next/rabbitmq-server + charm: ch:rabbitmq-server num_units: 1 options: source: *openstack-origin + channel: latest/edge vault: - charm: cs:~openstack-charmers-next/vault + charm: ch:vault num_units: 1 + channel: latest/edge ovn-central: - charm: cs:~openstack-charmers-next/ovn-central + charm: ch:ovn-central num_units: 3 options: source: *openstack-origin + channel: latest/edge neutron-api-plugin-ovn: - charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn + charm: ch:neutron-api-plugin-ovn + channel: latest/edge neutron-api: - charm: cs:~openstack-charmers-next/neutron-api + charm: ch:neutron-api series: *series num_units: 1 options: flat-network-providers: physnet1 neutron-security-groups: true openstack-origin: *openstack-origin + channel: latest/edge glance: - charm: cs:~openstack-charmers-next/glance + charm: ch:glance num_units: 1 options: openstack-origin: *openstack-origin + channel: latest/edge nova-cloud-controller: - charm: cs:~openstack-charmers-next/nova-cloud-controller + charm: ch:nova-cloud-controller num_units: 1 options: network-manager: Neutron openstack-origin: *openstack-origin + channel: latest/edge ovn-chassis: - charm: cs:~openstack-charmers-next/ovn-chassis + charm: ch:ovn-chassis + channel: latest/edge nova-compute: - charm: cs:~openstack-charmers-next/nova-compute + charm: ch:nova-compute num_units: 1 options: config-flags: default_ephemeral_format=ext4 @@ -71,11 +81,13 @@ applications: enable-resize: true migration-auth-type: ssh openstack-origin: *openstack-origin + channel: latest/edge placement: - charm: cs:~openstack-charmers-next/placement + charm: ch:placement num_units: 1 options: openstack-origin: *openstack-origin + channel: latest/edge memcached: charm: cs:memcached num_units: 1 diff --git a/src/tests/bundles/impish.yaml b/src/tests/bundles/impish.yaml index b6b35a3..b6edfbd 100644 --- a/src/tests/bundles/impish.yaml +++ b/src/tests/bundles/impish.yaml @@ -5,14 +5,17 @@ applications: vault-mysql-router: charm: ../../../mysql-router mysql-innodb-cluster: - charm: cs:~openstack-charmers-next/mysql-innodb-cluster + charm: ch:mysql-innodb-cluster num_units: 3 + channel: latest/edge keystone: - charm: cs:~openstack-charmers-next/keystone + charm: ch:keystone num_units: 1 + channel: latest/edge vault: - charm: cs:~openstack-charmers-next/vault + charm: ch:vault num_units: 1 + channel: latest/edge relations: - - vault:certificates - mysql-innodb-cluster:certificates diff --git a/src/tests/bundles/jammy-full.yaml b/src/tests/bundles/jammy-full.yaml index c0482f5..fb6ac22 100644 --- a/src/tests/bundles/jammy-full.yaml +++ b/src/tests/bundles/jammy-full.yaml @@ -17,53 +17,63 @@ applications: vault-mysql-router: charm: ../../../mysql-router mysql-innodb-cluster: - charm: cs:~openstack-charmers-next/mysql-innodb-cluster + charm: ch:mysql-innodb-cluster num_units: 3 options: source: *openstack-origin + channel: latest/edge keystone: - charm: cs:~openstack-charmers-next/keystone + charm: ch:keystone num_units: 1 options: openstack-origin: *openstack-origin + channel: latest/edge rabbitmq-server: - charm: cs:~openstack-charmers-next/rabbitmq-server + charm: ch:rabbitmq-server num_units: 1 options: source: *openstack-origin + channel: latest/edge vault: - charm: cs:~openstack-charmers-next/vault + charm: ch:vault num_units: 1 + channel: latest/edge ovn-central: - charm: cs:~openstack-charmers-next/ovn-central + charm: ch:ovn-central num_units: 3 options: source: *openstack-origin + channel: latest/edge neutron-api-plugin-ovn: - charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn + charm: ch:neutron-api-plugin-ovn + channel: latest/edge neutron-api: - charm: cs:~openstack-charmers-next/neutron-api + charm: ch:neutron-api series: *series num_units: 1 options: flat-network-providers: physnet1 neutron-security-groups: true openstack-origin: *openstack-origin + channel: latest/edge glance: - charm: cs:~openstack-charmers-next/glance + charm: ch:glance num_units: 1 options: openstack-origin: *openstack-origin + channel: latest/edge nova-cloud-controller: - charm: cs:~openstack-charmers-next/nova-cloud-controller + charm: ch:nova-cloud-controller num_units: 1 options: network-manager: Neutron openstack-origin: *openstack-origin + channel: latest/edge ovn-chassis: - charm: cs:~openstack-charmers-next/ovn-chassis + charm: ch:ovn-chassis + channel: latest/edge nova-compute: - charm: cs:~openstack-charmers-next/nova-compute + charm: ch:nova-compute num_units: 1 options: config-flags: default_ephemeral_format=ext4 @@ -71,11 +81,13 @@ applications: enable-resize: true migration-auth-type: ssh openstack-origin: *openstack-origin + channel: latest/edge placement: - charm: cs:~openstack-charmers-next/placement + charm: ch:placement num_units: 1 options: openstack-origin: *openstack-origin + channel: latest/edge memcached: charm: cs:memcached num_units: 1 diff --git a/src/tests/bundles/jammy.yaml b/src/tests/bundles/jammy.yaml index 48705ad..04b2c51 100644 --- a/src/tests/bundles/jammy.yaml +++ b/src/tests/bundles/jammy.yaml @@ -5,14 +5,17 @@ applications: vault-mysql-router: charm: ../../../mysql-router mysql-innodb-cluster: - charm: cs:~openstack-charmers-next/mysql-innodb-cluster + charm: ch:mysql-innodb-cluster num_units: 3 + channel: latest/edge keystone: - charm: cs:~openstack-charmers-next/keystone + charm: ch:keystone num_units: 1 + channel: latest/edge vault: - charm: cs:~openstack-charmers-next/vault + charm: ch:vault num_units: 1 + channel: latest/edge relations: - - vault:certificates - mysql-innodb-cluster:certificates diff --git a/src/tests/bundles/overlays/full-ha.yaml.j2 b/src/tests/bundles/overlays/full-ha.yaml.j2 index 2d8fd26..85bd5a1 100644 --- a/src/tests/bundles/overlays/full-ha.yaml.j2 +++ b/src/tests/bundles/overlays/full-ha.yaml.j2 @@ -8,9 +8,11 @@ applications: options: vip: {{TEST_VIP01}} keystone-hacluster: - charm: cs:~openstack-charmers-next/hacluster + charm: ch:hacluster + channel: latest/edge nova-hacluster: - charm: cs:~openstack-charmers-next/hacluster + charm: ch:hacluster + channel: latest/edge relations: - ["keystone:ha", "keystone-hacluster:ha"] - ["nova-cloud-controller:ha", "nova-hacluster:ha"] diff --git a/src/tests/tests.yaml b/src/tests/tests.yaml index 30e6ad7..0e418f4 100644 --- a/src/tests/tests.yaml +++ b/src/tests/tests.yaml @@ -23,7 +23,6 @@ tests: gate_bundles: - full_model_ha: focal-full-ha -- full_model_ha: hirsute-full-ha - full_model_ha: impish-full-ha dev_bundles: @@ -37,8 +36,6 @@ tests_options: principle-app-name: keystone hacluster-charm-name: hacluster force_deploy: - - hirsute - - hirsute-full-ha - impish - impish-full-ha - jammy