Add yoga bundles and release-tool syncs
* charm-helpers sync for classic charms * sync from release-tools * switch to release-specific zosci functional tests * run focal-ussuri as smoke tests * remove trusty, xenial, and groovy metadata/tests * drop py35 and add py39 * add focal-ussuri-gr bundles Change-Id: I1fbab001a381fe2c3015915ee0d4bc417cb04fef
This commit is contained in:
		@@ -1413,7 +1413,8 @@ def incomplete_relation_data(configs, required_interfaces):
 | 
			
		||||
        for i in incomplete_relations}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def do_action_openstack_upgrade(package, upgrade_callback, configs):
 | 
			
		||||
def do_action_openstack_upgrade(package, upgrade_callback, configs,
 | 
			
		||||
                                force_upgrade=False):
 | 
			
		||||
    """Perform action-managed OpenStack upgrade.
 | 
			
		||||
 | 
			
		||||
    Upgrades packages to the configured openstack-origin version and sets
 | 
			
		||||
@@ -1427,12 +1428,13 @@ def do_action_openstack_upgrade(package, upgrade_callback, configs):
 | 
			
		||||
    @param package: package name for determining if upgrade available
 | 
			
		||||
    @param upgrade_callback: function callback to charm's upgrade function
 | 
			
		||||
    @param configs: templating object derived from OSConfigRenderer class
 | 
			
		||||
    @param force_upgrade: perform dist-upgrade regardless of new openstack
 | 
			
		||||
 | 
			
		||||
    @return: True if upgrade successful; False if upgrade failed or skipped
 | 
			
		||||
    """
 | 
			
		||||
    ret = False
 | 
			
		||||
 | 
			
		||||
    if openstack_upgrade_available(package):
 | 
			
		||||
    if openstack_upgrade_available(package) or force_upgrade:
 | 
			
		||||
        if config('action-managed-upgrade'):
 | 
			
		||||
            juju_log('Upgrading OpenStack release')
 | 
			
		||||
 | 
			
		||||
@@ -2599,6 +2601,23 @@ def get_subordinate_release_packages(os_release, package_type='deb'):
 | 
			
		||||
    return SubordinatePackages(install, purge)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def get_subordinate_services():
 | 
			
		||||
    """Iterate over subordinate relations and get service information.
 | 
			
		||||
 | 
			
		||||
    In a similar fashion as with get_subordinate_release_packages(),
 | 
			
		||||
    principle charms can retrieve a list of services advertised by their
 | 
			
		||||
    subordinate charms. This is useful to know about subordinate services when
 | 
			
		||||
    pausing, resuming or upgrading a principle unit.
 | 
			
		||||
 | 
			
		||||
    :returns: Name of all services advertised by all subordinates
 | 
			
		||||
    :rtype: Set[str]
 | 
			
		||||
    """
 | 
			
		||||
    services = set()
 | 
			
		||||
    for rdata in container_scoped_relation_get('services'):
 | 
			
		||||
        services |= set(json.loads(rdata or '[]'))
 | 
			
		||||
    return services
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
os_restart_on_change = partial(
 | 
			
		||||
    pausable_restart_on_change,
 | 
			
		||||
    can_restart_now_f=deferred_events.check_and_record_restart_request,
 | 
			
		||||
 
 | 
			
		||||
@@ -294,7 +294,6 @@ class BasePool(object):
 | 
			
		||||
        # NOTE: Do not perform initialization steps that require live data from
 | 
			
		||||
        # a running cluster here. The *Pool classes may be used for validation.
 | 
			
		||||
        self.service = service
 | 
			
		||||
        self.nautilus_or_later = cmp_pkgrevno('ceph-common', '14.2.0') >= 0
 | 
			
		||||
        self.op = op or {}
 | 
			
		||||
 | 
			
		||||
        if op:
 | 
			
		||||
@@ -341,7 +340,8 @@ class BasePool(object):
 | 
			
		||||
        Do not add calls for a specific pool type here, those should go into
 | 
			
		||||
        one of the pool specific classes.
 | 
			
		||||
        """
 | 
			
		||||
        if self.nautilus_or_later:
 | 
			
		||||
        nautilus_or_later = cmp_pkgrevno('ceph-common', '14.2.0') >= 0
 | 
			
		||||
        if nautilus_or_later:
 | 
			
		||||
            # Ensure we set the expected pool ratio
 | 
			
		||||
            update_pool(
 | 
			
		||||
                client=self.service,
 | 
			
		||||
@@ -660,8 +660,9 @@ class ReplicatedPool(BasePool):
 | 
			
		||||
        else:
 | 
			
		||||
            self.pg_num = self.get_pgs(self.replicas, self.percent_data)
 | 
			
		||||
 | 
			
		||||
        nautilus_or_later = cmp_pkgrevno('ceph-common', '14.2.0') >= 0
 | 
			
		||||
        # Create it
 | 
			
		||||
        if self.nautilus_or_later:
 | 
			
		||||
        if nautilus_or_later:
 | 
			
		||||
            cmd = [
 | 
			
		||||
                'ceph', '--id', self.service, 'osd', 'pool', 'create',
 | 
			
		||||
                '--pg-num-min={}'.format(
 | 
			
		||||
@@ -745,9 +746,9 @@ class ErasurePool(BasePool):
 | 
			
		||||
        k = int(erasure_profile['k'])
 | 
			
		||||
        m = int(erasure_profile['m'])
 | 
			
		||||
        pgs = self.get_pgs(k + m, self.percent_data)
 | 
			
		||||
        self.nautilus_or_later = cmp_pkgrevno('ceph-common', '14.2.0') >= 0
 | 
			
		||||
        nautilus_or_later = cmp_pkgrevno('ceph-common', '14.2.0') >= 0
 | 
			
		||||
        # Create it
 | 
			
		||||
        if self.nautilus_or_later:
 | 
			
		||||
        if nautilus_or_later:
 | 
			
		||||
            cmd = [
 | 
			
		||||
                'ceph', '--id', self.service, 'osd', 'pool', 'create',
 | 
			
		||||
                '--pg-num-min={}'.format(
 | 
			
		||||
 
 | 
			
		||||
@@ -29,6 +29,7 @@ UBUNTU_RELEASES = (
 | 
			
		||||
    'groovy',
 | 
			
		||||
    'hirsute',
 | 
			
		||||
    'impish',
 | 
			
		||||
    'jammy',
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -275,6 +275,7 @@ UBUNTU_OPENSTACK_RELEASE = OrderedDict([
 | 
			
		||||
    ('groovy', 'victoria'),
 | 
			
		||||
    ('hirsute', 'wallaby'),
 | 
			
		||||
    ('impish', 'xena'),
 | 
			
		||||
    ('jammy', 'yoga'),
 | 
			
		||||
])
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -18,7 +18,6 @@ tags:
 | 
			
		||||
- openstack
 | 
			
		||||
- cache-proxy
 | 
			
		||||
series:
 | 
			
		||||
- xenial
 | 
			
		||||
- bionic
 | 
			
		||||
- focal
 | 
			
		||||
- groovy
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										53
									
								
								osci.yaml
									
									
									
									
									
								
							
							
						
						
									
										53
									
								
								osci.yaml
									
									
									
									
									
								
							@@ -1,32 +1,30 @@
 | 
			
		||||
- project:
 | 
			
		||||
    templates:
 | 
			
		||||
      - charm-unit-jobs
 | 
			
		||||
      - charm-yoga-unit-jobs
 | 
			
		||||
    check:
 | 
			
		||||
      jobs:
 | 
			
		||||
        - test-s3api-impish-xena:
 | 
			
		||||
        - test-s3api-bionic-queens
 | 
			
		||||
        - test-s3api-bionic-stein
 | 
			
		||||
        - test-s3api-bionic-train
 | 
			
		||||
        - test-s3api-bionic-ussuri
 | 
			
		||||
        - focal-ussuri-gr_swift-proxy
 | 
			
		||||
        - test-s3api-focal-ussuri
 | 
			
		||||
        - test-s3api-focal-victoria
 | 
			
		||||
        - test-s3api-focal-wallaby
 | 
			
		||||
        - test-s3api-focal-xena
 | 
			
		||||
        - test-s3api-focal-yoga:
 | 
			
		||||
            voting: false
 | 
			
		||||
        - test-s3api-hirsute-wallaby
 | 
			
		||||
        - test-s3api-focal-xena:
 | 
			
		||||
        - test-s3api-impish-xena:
 | 
			
		||||
            voting: false
 | 
			
		||||
        - test-s3api-jammy-yoga:
 | 
			
		||||
            voting: false
 | 
			
		||||
        - test-s3api-focal-wallaby
 | 
			
		||||
        - test-s3api-focal-victoria
 | 
			
		||||
        - test-s3api-focal-ussuri
 | 
			
		||||
        - test-s3api-bionic-ussuri
 | 
			
		||||
        - test-s3api-bionic-train
 | 
			
		||||
        - test-s3api-bionic-stein
 | 
			
		||||
        - test-s3api-bionic-queens
 | 
			
		||||
        - xenial-mitaka_swift-proxy
 | 
			
		||||
        - bionic-train-gr_swift-proxy
 | 
			
		||||
 | 
			
		||||
- job:
 | 
			
		||||
    name: xenial-mitaka_swift-proxy
 | 
			
		||||
    parent: xenial-mitaka
 | 
			
		||||
    dependencies: &smoke-jobs
 | 
			
		||||
      - test-s3api-focal-ussuri
 | 
			
		||||
- job:
 | 
			
		||||
    name: test-s3api-bionic-queens
 | 
			
		||||
    parent: func-target
 | 
			
		||||
    dependencies: *smoke-jobs
 | 
			
		||||
    dependencies: &smoke-jobs
 | 
			
		||||
      - test-s3api-focal-ussuri
 | 
			
		||||
    vars:
 | 
			
		||||
      tox_extra_args: test-s3api:bionic-queens
 | 
			
		||||
- job:
 | 
			
		||||
@@ -48,11 +46,11 @@
 | 
			
		||||
    vars:
 | 
			
		||||
      tox_extra_args: test-s3api:bionic-train
 | 
			
		||||
- job:
 | 
			
		||||
    name: bionic-train-gr_swift-proxy
 | 
			
		||||
    name: focal-ussuri-gr_swift-proxy
 | 
			
		||||
    parent: func-target
 | 
			
		||||
    dependencies: *smoke-jobs
 | 
			
		||||
    vars:
 | 
			
		||||
      tox_extra_args: swift_gr_region1:bionic-train-gr-r1 swift_gr_region2:bionic-train-gr-r2
 | 
			
		||||
      tox_extra_args: swift_gr_region1:focal-ussuri-gr-r1 swift_gr_region2:focal-ussuri-gr-r2
 | 
			
		||||
- job:
 | 
			
		||||
    name: test-s3api-bionic-ussuri
 | 
			
		||||
    parent: func-target
 | 
			
		||||
@@ -64,10 +62,9 @@
 | 
			
		||||
    parent: func-target
 | 
			
		||||
    dependencies:
 | 
			
		||||
      - osci-lint
 | 
			
		||||
      - tox-py35
 | 
			
		||||
      - tox-py36
 | 
			
		||||
      - tox-py37
 | 
			
		||||
      - tox-py38
 | 
			
		||||
      - tox-py39
 | 
			
		||||
    vars:
 | 
			
		||||
      tox_extra_args: test-s3api:focal-ussuri
 | 
			
		||||
- job:
 | 
			
		||||
@@ -88,6 +85,12 @@
 | 
			
		||||
    dependencies: *smoke-jobs
 | 
			
		||||
    vars:
 | 
			
		||||
      tox_extra_args: test-s3api:focal-xena
 | 
			
		||||
- job:
 | 
			
		||||
    name: test-s3api-focal-yoga
 | 
			
		||||
    parent: func-target
 | 
			
		||||
    dependencies: *smoke-jobs
 | 
			
		||||
    vars:
 | 
			
		||||
      tox_extra_args: test-s3api:focal-yoga
 | 
			
		||||
- job:
 | 
			
		||||
    name: test-s3api-hirsute-wallaby
 | 
			
		||||
    parent: func-target
 | 
			
		||||
@@ -100,3 +103,9 @@
 | 
			
		||||
    dependencies: *smoke-jobs
 | 
			
		||||
    vars:
 | 
			
		||||
      tox_extra_args: test-s3api:impish-xena
 | 
			
		||||
- job:
 | 
			
		||||
    name: test-s3api-jammy-yoga
 | 
			
		||||
    parent: func-target
 | 
			
		||||
    dependencies: *smoke-jobs
 | 
			
		||||
    vars:
 | 
			
		||||
      tox_extra_args: test-s3api:jammy-yoga
 | 
			
		||||
 
 | 
			
		||||
@@ -7,6 +7,7 @@
 | 
			
		||||
#       requirements.  They are intertwined.  Also, Zaza itself should specify
 | 
			
		||||
#       all of its own requirements and if it doesn't, fix it there.
 | 
			
		||||
#
 | 
			
		||||
pyparsing<3.0.0  # aodhclient is pinned in zaza and needs pyparsing < 3.0.0, but cffi also needs it, so pin here.
 | 
			
		||||
cffi==1.14.6; python_version < '3.6'  # cffi 1.15.0 drops support for py35.
 | 
			
		||||
setuptools<50.0.0  # https://github.com/pypa/setuptools/commit/04e3df22df840c6bb244e9b27bc56750c44b7c85
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										83
									
								
								tests/bundles/focal-ussuri-gr-r1.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										83
									
								
								tests/bundles/focal-ussuri-gr-r1.yaml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,83 @@
 | 
			
		||||
series: focal
 | 
			
		||||
local_overlay_enabled: false
 | 
			
		||||
applications:
 | 
			
		||||
  keystone-mysql-router:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/mysql-router
 | 
			
		||||
  glance-mysql-router:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/mysql-router
 | 
			
		||||
 | 
			
		||||
  mysql-innodb-cluster:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/mysql-innodb-cluster
 | 
			
		||||
    num_units: 3
 | 
			
		||||
    options:
 | 
			
		||||
      source: distro
 | 
			
		||||
  swift-proxy-region1:
 | 
			
		||||
    charm: ../../.
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      region: RegionOne
 | 
			
		||||
      zone-assignment: manual
 | 
			
		||||
      replicas: 2
 | 
			
		||||
      enable-multi-region: true
 | 
			
		||||
      swift-hash: "global-cluster"
 | 
			
		||||
      read-affinity: "r1=100, r2=200"
 | 
			
		||||
      write-affinity: "r1, r2"
 | 
			
		||||
      write-affinity-node-count: '1'
 | 
			
		||||
      openstack-origin: distro
 | 
			
		||||
  swift-storage-region1-zone1:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/swift-storage
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      storage-region: 1
 | 
			
		||||
      zone: 1
 | 
			
		||||
      block-device: /etc/swift/storage.img|2G
 | 
			
		||||
      openstack-origin: distro
 | 
			
		||||
  swift-storage-region1-zone2:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/swift-storage
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      storage-region: 1
 | 
			
		||||
      zone: 2
 | 
			
		||||
      block-device: /etc/swift/storage.img|2G
 | 
			
		||||
      openstack-origin: distro
 | 
			
		||||
  swift-storage-region1-zone3:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/swift-storage
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      storage-region: 1
 | 
			
		||||
      zone: 3
 | 
			
		||||
      block-device: /etc/swift/storage.img|2G
 | 
			
		||||
      openstack-origin: distro
 | 
			
		||||
  keystone:
 | 
			
		||||
    expose: True
 | 
			
		||||
    charm: cs:~openstack-charmers-next/keystone
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: distro
 | 
			
		||||
  glance:
 | 
			
		||||
    expose: True
 | 
			
		||||
    charm: cs:~openstack-charmers-next/glance
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: distro
 | 
			
		||||
relations:
 | 
			
		||||
  - - keystone:shared-db
 | 
			
		||||
    - keystone-mysql-router:shared-db
 | 
			
		||||
  - - keystone-mysql-router:db-router
 | 
			
		||||
    - mysql-innodb-cluster:db-router
 | 
			
		||||
  - - glance:shared-db
 | 
			
		||||
    - glance-mysql-router:shared-db
 | 
			
		||||
  - - glance-mysql-router:db-router
 | 
			
		||||
    - mysql-innodb-cluster:db-router
 | 
			
		||||
  - - swift-proxy-region1:swift-storage
 | 
			
		||||
    - swift-storage-region1-zone1:swift-storage
 | 
			
		||||
  - - swift-proxy-region1:swift-storage
 | 
			
		||||
    - swift-storage-region1-zone2:swift-storage
 | 
			
		||||
  - - swift-proxy-region1:swift-storage
 | 
			
		||||
    - swift-storage-region1-zone3:swift-storage
 | 
			
		||||
  - - glance:identity-service
 | 
			
		||||
    - keystone:identity-service
 | 
			
		||||
  - - swift-proxy-region1:identity-service
 | 
			
		||||
    - keystone:identity-service
 | 
			
		||||
  - - glance:object-store
 | 
			
		||||
    - swift-proxy-region1:object-store
 | 
			
		||||
							
								
								
									
										47
									
								
								tests/bundles/focal-ussuri-gr-r2.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								tests/bundles/focal-ussuri-gr-r2.yaml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,47 @@
 | 
			
		||||
series: focal
 | 
			
		||||
local_overlay_enabled: false
 | 
			
		||||
applications:
 | 
			
		||||
  swift-proxy-region2:
 | 
			
		||||
    charm: ../../.
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      region: RegionTwo
 | 
			
		||||
      zone-assignment: manual
 | 
			
		||||
      replicas: 2
 | 
			
		||||
      enable-multi-region: true
 | 
			
		||||
      swift-hash: "global-cluster"
 | 
			
		||||
      read-affinity: "r1=100, r2=200"
 | 
			
		||||
      write-affinity: "r1, r2"
 | 
			
		||||
      write-affinity-node-count: '1'
 | 
			
		||||
      openstack-origin: distro
 | 
			
		||||
  swift-storage-region2-zone1:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/swift-storage
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      storage-region: 2
 | 
			
		||||
      zone: 1
 | 
			
		||||
      block-device: /etc/swift/storage.img|2G
 | 
			
		||||
      openstack-origin: distro
 | 
			
		||||
  swift-storage-region2-zone2:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/swift-storage
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      storage-region: 2
 | 
			
		||||
      zone: 2
 | 
			
		||||
      block-device: /etc/swift/storage.img|2G
 | 
			
		||||
      openstack-origin: distro
 | 
			
		||||
  swift-storage-region2-zone3:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/swift-storage
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      storage-region: 2
 | 
			
		||||
      zone: 3
 | 
			
		||||
      block-device: /etc/swift/storage.img|2G
 | 
			
		||||
      openstack-origin: distro
 | 
			
		||||
relations:
 | 
			
		||||
  - - swift-proxy-region2:swift-storage
 | 
			
		||||
    - swift-storage-region2-zone1:swift-storage
 | 
			
		||||
  - - swift-proxy-region2:swift-storage
 | 
			
		||||
    - swift-storage-region2-zone2:swift-storage
 | 
			
		||||
  - - swift-proxy-region2:swift-storage
 | 
			
		||||
    - swift-storage-region2-zone3:swift-storage
 | 
			
		||||
							
								
								
									
										99
									
								
								tests/bundles/focal-yoga.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										99
									
								
								tests/bundles/focal-yoga.yaml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,99 @@
 | 
			
		||||
variables:
 | 
			
		||||
  openstack-origin: &openstack-origin cloud:focal-yoga
 | 
			
		||||
 | 
			
		||||
series: focal
 | 
			
		||||
 | 
			
		||||
comment:
 | 
			
		||||
- 'machines section to decide order of deployment. database sooner = faster'
 | 
			
		||||
machines:
 | 
			
		||||
  '0':
 | 
			
		||||
    constraints: mem=3072M
 | 
			
		||||
  '1':
 | 
			
		||||
    constraints: mem=3072M
 | 
			
		||||
  '2':
 | 
			
		||||
    constraints: mem=3072M
 | 
			
		||||
  '3':
 | 
			
		||||
  '4':
 | 
			
		||||
  '5':
 | 
			
		||||
  '6':
 | 
			
		||||
 | 
			
		||||
applications:
 | 
			
		||||
 | 
			
		||||
  keystone-mysql-router:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/mysql-router
 | 
			
		||||
  glance-mysql-router:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/mysql-router
 | 
			
		||||
 | 
			
		||||
  mysql-innodb-cluster:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/mysql-innodb-cluster
 | 
			
		||||
    num_units: 3
 | 
			
		||||
    options:
 | 
			
		||||
      source: *openstack-origin
 | 
			
		||||
    to:
 | 
			
		||||
      - '0'
 | 
			
		||||
      - '1'
 | 
			
		||||
      - '2'
 | 
			
		||||
 | 
			
		||||
  keystone:
 | 
			
		||||
    expose: True
 | 
			
		||||
    charm: cs:~openstack-charmers-next/keystone
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: *openstack-origin
 | 
			
		||||
    to:
 | 
			
		||||
      - '3'
 | 
			
		||||
 | 
			
		||||
  swift-proxy:
 | 
			
		||||
    charm: swift-proxy
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      zone-assignment: manual
 | 
			
		||||
      replicas: 1
 | 
			
		||||
      swift-hash: fdfef9d4-8b06-11e2-8ac0-531c923c8fae
 | 
			
		||||
      openstack-origin: *openstack-origin
 | 
			
		||||
    to:
 | 
			
		||||
      - '4'
 | 
			
		||||
 | 
			
		||||
  glance:
 | 
			
		||||
    expose: True
 | 
			
		||||
    charm: cs:~openstack-charmers-next/glance
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: *openstack-origin
 | 
			
		||||
    to:
 | 
			
		||||
      - '5'
 | 
			
		||||
 | 
			
		||||
  swift-storage:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/swift-storage
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    storage:
 | 
			
		||||
      block-devices: 'cinder,10G'
 | 
			
		||||
    options:
 | 
			
		||||
      zone: 1
 | 
			
		||||
      openstack-origin: *openstack-origin
 | 
			
		||||
    to:
 | 
			
		||||
      - '6'
 | 
			
		||||
 | 
			
		||||
relations:
 | 
			
		||||
 | 
			
		||||
  - - 'keystone:shared-db'
 | 
			
		||||
    - 'keystone-mysql-router:shared-db'
 | 
			
		||||
  - - 'keystone-mysql-router:db-router'
 | 
			
		||||
    - 'mysql-innodb-cluster:db-router'
 | 
			
		||||
 | 
			
		||||
  - - 'glance:shared-db'
 | 
			
		||||
    - 'glance-mysql-router:shared-db'
 | 
			
		||||
  - - 'glance-mysql-router:db-router'
 | 
			
		||||
    - 'mysql-innodb-cluster:db-router'
 | 
			
		||||
 | 
			
		||||
  - - 'glance:identity-service'
 | 
			
		||||
    - 'keystone:identity-service'
 | 
			
		||||
 | 
			
		||||
  - - 'swift-proxy:identity-service'
 | 
			
		||||
    - 'keystone:identity-service'
 | 
			
		||||
 | 
			
		||||
  - - 'swift-storage:swift-storage'
 | 
			
		||||
    - 'swift-proxy:swift-storage'
 | 
			
		||||
 | 
			
		||||
  - - 'glance:object-store'
 | 
			
		||||
    - 'swift-proxy:object-store'
 | 
			
		||||
							
								
								
									
										99
									
								
								tests/bundles/jammy-yoga.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										99
									
								
								tests/bundles/jammy-yoga.yaml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,99 @@
 | 
			
		||||
variables:
 | 
			
		||||
  openstack-origin: &openstack-origin distro
 | 
			
		||||
 | 
			
		||||
series: jammy
 | 
			
		||||
 | 
			
		||||
comment:
 | 
			
		||||
- 'machines section to decide order of deployment. database sooner = faster'
 | 
			
		||||
machines:
 | 
			
		||||
  '0':
 | 
			
		||||
    constraints: mem=3072M
 | 
			
		||||
  '1':
 | 
			
		||||
    constraints: mem=3072M
 | 
			
		||||
  '2':
 | 
			
		||||
    constraints: mem=3072M
 | 
			
		||||
  '3':
 | 
			
		||||
  '4':
 | 
			
		||||
  '5':
 | 
			
		||||
  '6':
 | 
			
		||||
 | 
			
		||||
applications:
 | 
			
		||||
 | 
			
		||||
  keystone-mysql-router:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/mysql-router
 | 
			
		||||
  glance-mysql-router:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/mysql-router
 | 
			
		||||
 | 
			
		||||
  mysql-innodb-cluster:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/mysql-innodb-cluster
 | 
			
		||||
    num_units: 3
 | 
			
		||||
    options:
 | 
			
		||||
      source: *openstack-origin
 | 
			
		||||
    to:
 | 
			
		||||
      - '0'
 | 
			
		||||
      - '1'
 | 
			
		||||
      - '2'
 | 
			
		||||
 | 
			
		||||
  keystone:
 | 
			
		||||
    expose: True
 | 
			
		||||
    charm: cs:~openstack-charmers-next/keystone
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: *openstack-origin
 | 
			
		||||
    to:
 | 
			
		||||
      - '3'
 | 
			
		||||
 | 
			
		||||
  swift-proxy:
 | 
			
		||||
    charm: swift-proxy
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      zone-assignment: manual
 | 
			
		||||
      replicas: 1
 | 
			
		||||
      swift-hash: fdfef9d4-8b06-11e2-8ac0-531c923c8fae
 | 
			
		||||
      openstack-origin: *openstack-origin
 | 
			
		||||
    to:
 | 
			
		||||
      - '4'
 | 
			
		||||
 | 
			
		||||
  glance:
 | 
			
		||||
    expose: True
 | 
			
		||||
    charm: cs:~openstack-charmers-next/glance
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: *openstack-origin
 | 
			
		||||
    to:
 | 
			
		||||
      - '5'
 | 
			
		||||
 | 
			
		||||
  swift-storage:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/swift-storage
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    storage:
 | 
			
		||||
      block-devices: 'cinder,10G'
 | 
			
		||||
    options:
 | 
			
		||||
      zone: 1
 | 
			
		||||
      openstack-origin: *openstack-origin
 | 
			
		||||
    to:
 | 
			
		||||
      - '6'
 | 
			
		||||
 | 
			
		||||
relations:
 | 
			
		||||
 | 
			
		||||
  - - 'keystone:shared-db'
 | 
			
		||||
    - 'keystone-mysql-router:shared-db'
 | 
			
		||||
  - - 'keystone-mysql-router:db-router'
 | 
			
		||||
    - 'mysql-innodb-cluster:db-router'
 | 
			
		||||
 | 
			
		||||
  - - 'glance:shared-db'
 | 
			
		||||
    - 'glance-mysql-router:shared-db'
 | 
			
		||||
  - - 'glance-mysql-router:db-router'
 | 
			
		||||
    - 'mysql-innodb-cluster:db-router'
 | 
			
		||||
 | 
			
		||||
  - - 'glance:identity-service'
 | 
			
		||||
    - 'keystone:identity-service'
 | 
			
		||||
 | 
			
		||||
  - - 'swift-proxy:identity-service'
 | 
			
		||||
    - 'keystone:identity-service'
 | 
			
		||||
 | 
			
		||||
  - - 'swift-storage:swift-storage'
 | 
			
		||||
    - 'swift-proxy:swift-storage'
 | 
			
		||||
 | 
			
		||||
  - - 'glance:object-store'
 | 
			
		||||
    - 'swift-proxy:object-store'
 | 
			
		||||
							
								
								
									
										28
									
								
								tests/bundles/overlays/focal-ussuri-gr-r1.yaml.j2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								tests/bundles/overlays/focal-ussuri-gr-r1.yaml.j2
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,28 @@
 | 
			
		||||
applications:
 | 
			
		||||
  keystone:
 | 
			
		||||
    offers:
 | 
			
		||||
      keystone:
 | 
			
		||||
        endpoints:
 | 
			
		||||
        - identity-service
 | 
			
		||||
  swift-proxy-region1:
 | 
			
		||||
    charm: {{ charm_location }}
 | 
			
		||||
    offers:
 | 
			
		||||
      swift-proxy-region1:
 | 
			
		||||
        endpoints:
 | 
			
		||||
        - swift-storage
 | 
			
		||||
        - rings-distributor
 | 
			
		||||
  swift-storage-region1-zone1:
 | 
			
		||||
    offers:
 | 
			
		||||
      swift-storage-region1-zone1:
 | 
			
		||||
        endpoints:
 | 
			
		||||
        - swift-storage
 | 
			
		||||
  swift-storage-region1-zone2:
 | 
			
		||||
    offers:
 | 
			
		||||
      swift-storage-region1-zone2:
 | 
			
		||||
        endpoints:
 | 
			
		||||
        - swift-storage
 | 
			
		||||
  swift-storage-region1-zone3:
 | 
			
		||||
    offers:
 | 
			
		||||
      swift-storage-region1-zone3:
 | 
			
		||||
        endpoints:
 | 
			
		||||
        - swift-storage
 | 
			
		||||
							
								
								
									
										31
									
								
								tests/bundles/overlays/focal-ussuri-gr-r2.yaml.j2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								tests/bundles/overlays/focal-ussuri-gr-r2.yaml.j2
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,31 @@
 | 
			
		||||
applications:
 | 
			
		||||
  swift-proxy-region2:
 | 
			
		||||
    charm: {{ charm_location }}
 | 
			
		||||
relations:
 | 
			
		||||
- - swift-proxy-region2:identity-service
 | 
			
		||||
  - keystone:identity-service
 | 
			
		||||
- - swift-proxy-region2:swift-storage
 | 
			
		||||
  - swift-storage-region1-zone1:swift-storage
 | 
			
		||||
- - swift-proxy-region2:swift-storage
 | 
			
		||||
  - swift-storage-region1-zone2:swift-storage
 | 
			
		||||
- - swift-proxy-region2:swift-storage
 | 
			
		||||
  - swift-storage-region1-zone3:swift-storage
 | 
			
		||||
- - swift-storage-region2-zone1:swift-storage
 | 
			
		||||
  - swift-proxy-region1:swift-storage
 | 
			
		||||
- - swift-storage-region2-zone2:swift-storage
 | 
			
		||||
  - swift-proxy-region1:swift-storage
 | 
			
		||||
- - swift-storage-region2-zone3:swift-storage
 | 
			
		||||
  - swift-proxy-region1:swift-storage
 | 
			
		||||
- - swift-proxy-region2:rings-consumer
 | 
			
		||||
  - swift-proxy-region1:rings-distributor
 | 
			
		||||
saas:
 | 
			
		||||
  keystone:
 | 
			
		||||
    url: admin/{{ swift_gr_region1 }}.keystone
 | 
			
		||||
  swift-proxy-region1:
 | 
			
		||||
    url: admin/{{ swift_gr_region1 }}.swift-proxy-region1
 | 
			
		||||
  swift-storage-region1-zone1:
 | 
			
		||||
    url: admin/{{ swift_gr_region1 }}.swift-storage-region1-zone1
 | 
			
		||||
  swift-storage-region1-zone2:
 | 
			
		||||
    url: admin/{{ swift_gr_region1 }}.swift-storage-region1-zone2
 | 
			
		||||
  swift-storage-region1-zone3:
 | 
			
		||||
    url: admin/{{ swift_gr_region1 }}.swift-storage-region1-zone3
 | 
			
		||||
@@ -1,51 +0,0 @@
 | 
			
		||||
series: trusty
 | 
			
		||||
applications:
 | 
			
		||||
  swift-proxy:
 | 
			
		||||
    charm: swift-proxy
 | 
			
		||||
    series: trusty
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: cloud:trusty-mitaka
 | 
			
		||||
      zone-assignment: manual
 | 
			
		||||
      replicas: 1
 | 
			
		||||
      swift-hash: fdfef9d4-8b06-11e2-8ac0-531c923c8fae
 | 
			
		||||
  percona-cluster:
 | 
			
		||||
    charm:  cs:trusty/percona-cluster
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      dataset-size: 25%
 | 
			
		||||
      max-connections: 1000
 | 
			
		||||
      source: cloud:trusty-mitaka
 | 
			
		||||
  keystone:
 | 
			
		||||
    expose: True
 | 
			
		||||
    charm: cs:~openstack-charmers-next/keystone
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: cloud:trusty-mitaka
 | 
			
		||||
  glance:
 | 
			
		||||
    expose: True
 | 
			
		||||
    charm: cs:~openstack-charmers-next/glance
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: cloud:trusty-mitaka
 | 
			
		||||
  swift-storage:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/swift-storage
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    storage:
 | 
			
		||||
      block-devices: 'cinder,10G'
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: cloud:trusty-mitaka
 | 
			
		||||
      zone: 1
 | 
			
		||||
relations:
 | 
			
		||||
- - keystone:shared-db
 | 
			
		||||
  - percona-cluster:shared-db
 | 
			
		||||
- - glance:shared-db
 | 
			
		||||
  - percona-cluster:shared-db
 | 
			
		||||
- - glance:identity-service
 | 
			
		||||
  - keystone:identity-service
 | 
			
		||||
- - swift-proxy:identity-service
 | 
			
		||||
  - keystone:identity-service
 | 
			
		||||
- - swift-storage:swift-storage
 | 
			
		||||
  - swift-proxy:swift-storage
 | 
			
		||||
- - glance:object-store
 | 
			
		||||
  - swift-proxy:object-store
 | 
			
		||||
@@ -1,44 +0,0 @@
 | 
			
		||||
series: xenial
 | 
			
		||||
applications:
 | 
			
		||||
  swift-proxy:
 | 
			
		||||
    charm: swift-proxy
 | 
			
		||||
    series: xenial
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      zone-assignment: manual
 | 
			
		||||
      replicas: 1
 | 
			
		||||
      swift-hash: fdfef9d4-8b06-11e2-8ac0-531c923c8fae
 | 
			
		||||
  percona-cluster:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/percona-cluster
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      dataset-size: 25%
 | 
			
		||||
      max-connections: 1000
 | 
			
		||||
  keystone:
 | 
			
		||||
    expose: True
 | 
			
		||||
    charm: cs:~openstack-charmers-next/keystone
 | 
			
		||||
    num_units: 1
 | 
			
		||||
  glance:
 | 
			
		||||
    expose: True
 | 
			
		||||
    charm: cs:~openstack-charmers-next/glance
 | 
			
		||||
    num_units: 1
 | 
			
		||||
  swift-storage:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/swift-storage
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    storage:
 | 
			
		||||
      block-devices: 'cinder,10G'
 | 
			
		||||
    options:
 | 
			
		||||
      zone: 1
 | 
			
		||||
relations:
 | 
			
		||||
- - keystone:shared-db
 | 
			
		||||
  - percona-cluster:shared-db
 | 
			
		||||
- - glance:shared-db
 | 
			
		||||
  - percona-cluster:shared-db
 | 
			
		||||
- - glance:identity-service
 | 
			
		||||
  - keystone:identity-service
 | 
			
		||||
- - swift-proxy:identity-service
 | 
			
		||||
  - keystone:identity-service
 | 
			
		||||
- - swift-storage:swift-storage
 | 
			
		||||
  - swift-proxy:swift-storage
 | 
			
		||||
- - glance:object-store
 | 
			
		||||
  - swift-proxy:object-store
 | 
			
		||||
@@ -1,51 +0,0 @@
 | 
			
		||||
series: xenial
 | 
			
		||||
applications:
 | 
			
		||||
  swift-proxy:
 | 
			
		||||
    charm: swift-proxy
 | 
			
		||||
    series: xenial
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: cloud:xenial-ocata
 | 
			
		||||
      zone-assignment: manual
 | 
			
		||||
      replicas: 1
 | 
			
		||||
      swift-hash: fdfef9d4-8b06-11e2-8ac0-531c923c8fae
 | 
			
		||||
  percona-cluster:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/percona-cluster
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      dataset-size: 25%
 | 
			
		||||
      max-connections: 1000
 | 
			
		||||
      source: cloud:xenial-ocata
 | 
			
		||||
  keystone:
 | 
			
		||||
    expose: True
 | 
			
		||||
    charm: cs:~openstack-charmers-next/keystone
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: cloud:xenial-ocata
 | 
			
		||||
  glance:
 | 
			
		||||
    expose: True
 | 
			
		||||
    charm: cs:~openstack-charmers-next/glance
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: cloud:xenial-ocata
 | 
			
		||||
  swift-storage:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/swift-storage
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    storage:
 | 
			
		||||
      block-devices: 'cinder,10G'
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: cloud:xenial-ocata
 | 
			
		||||
      zone: 1
 | 
			
		||||
relations:
 | 
			
		||||
- - keystone:shared-db
 | 
			
		||||
  - percona-cluster:shared-db
 | 
			
		||||
- - glance:shared-db
 | 
			
		||||
  - percona-cluster:shared-db
 | 
			
		||||
- - glance:identity-service
 | 
			
		||||
  - keystone:identity-service
 | 
			
		||||
- - swift-proxy:identity-service
 | 
			
		||||
  - keystone:identity-service
 | 
			
		||||
- - swift-storage:swift-storage
 | 
			
		||||
  - swift-proxy:swift-storage
 | 
			
		||||
- - glance:object-store
 | 
			
		||||
  - swift-proxy:object-store
 | 
			
		||||
@@ -1,51 +0,0 @@
 | 
			
		||||
series: xenial
 | 
			
		||||
applications:
 | 
			
		||||
  swift-proxy:
 | 
			
		||||
    charm: swift-proxy
 | 
			
		||||
    series: xenial
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: cloud:xenial-pike
 | 
			
		||||
      zone-assignment: manual
 | 
			
		||||
      replicas: 1
 | 
			
		||||
      swift-hash: fdfef9d4-8b06-11e2-8ac0-531c923c8fae
 | 
			
		||||
  percona-cluster:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/percona-cluster
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      dataset-size: 25%
 | 
			
		||||
      max-connections: 1000
 | 
			
		||||
      source: cloud:xenial-pike
 | 
			
		||||
  keystone:
 | 
			
		||||
    expose: True
 | 
			
		||||
    charm: cs:~openstack-charmers-next/keystone
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: cloud:xenial-pike
 | 
			
		||||
  glance:
 | 
			
		||||
    expose: True
 | 
			
		||||
    charm: cs:~openstack-charmers-next/glance
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: cloud:xenial-pike
 | 
			
		||||
  swift-storage:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/swift-storage
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    storage:
 | 
			
		||||
      block-devices: 'cinder,10G'
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: cloud:xenial-pike
 | 
			
		||||
      zone: 1
 | 
			
		||||
relations:
 | 
			
		||||
- - keystone:shared-db
 | 
			
		||||
  - percona-cluster:shared-db
 | 
			
		||||
- - glance:shared-db
 | 
			
		||||
  - percona-cluster:shared-db
 | 
			
		||||
- - glance:identity-service
 | 
			
		||||
  - keystone:identity-service
 | 
			
		||||
- - swift-proxy:identity-service
 | 
			
		||||
  - keystone:identity-service
 | 
			
		||||
- - swift-storage:swift-storage
 | 
			
		||||
  - swift-proxy:swift-storage
 | 
			
		||||
- - glance:object-store
 | 
			
		||||
  - swift-proxy:object-store
 | 
			
		||||
@@ -1,51 +0,0 @@
 | 
			
		||||
series: xenial
 | 
			
		||||
applications:
 | 
			
		||||
  swift-proxy:
 | 
			
		||||
    charm: swift-proxy
 | 
			
		||||
    series: xenial
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: cloud:xenial-queens
 | 
			
		||||
      zone-assignment: manual
 | 
			
		||||
      replicas: 1
 | 
			
		||||
      swift-hash: fdfef9d4-8b06-11e2-8ac0-531c923c8fae
 | 
			
		||||
  percona-cluster:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/percona-cluster
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      dataset-size: 25%
 | 
			
		||||
      max-connections: 1000
 | 
			
		||||
      source: cloud:xenial-queens
 | 
			
		||||
  keystone:
 | 
			
		||||
    expose: True
 | 
			
		||||
    charm: cs:~openstack-charmers-next/keystone
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: cloud:xenial-queens
 | 
			
		||||
  glance:
 | 
			
		||||
    expose: True
 | 
			
		||||
    charm: cs:~openstack-charmers-next/glance
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: cloud:xenial-queens
 | 
			
		||||
  swift-storage:
 | 
			
		||||
    charm: cs:~openstack-charmers-next/swift-storage
 | 
			
		||||
    num_units: 1
 | 
			
		||||
    storage:
 | 
			
		||||
      block-devices: 'cinder,10G'
 | 
			
		||||
    options:
 | 
			
		||||
      openstack-origin: cloud:xenial-queens
 | 
			
		||||
      zone: 1
 | 
			
		||||
relations:
 | 
			
		||||
- - keystone:shared-db
 | 
			
		||||
  - percona-cluster:shared-db
 | 
			
		||||
- - glance:shared-db
 | 
			
		||||
  - percona-cluster:shared-db
 | 
			
		||||
- - glance:identity-service
 | 
			
		||||
  - keystone:identity-service
 | 
			
		||||
- - swift-proxy:identity-service
 | 
			
		||||
  - keystone:identity-service
 | 
			
		||||
- - swift-storage:swift-storage
 | 
			
		||||
  - swift-proxy:swift-storage
 | 
			
		||||
- - glance:object-store
 | 
			
		||||
  - swift-proxy:object-store
 | 
			
		||||
@@ -1,27 +1,27 @@
 | 
			
		||||
charm_name: swift-proxy
 | 
			
		||||
 | 
			
		||||
gate_bundles:
 | 
			
		||||
  - test-s3api: focal-wallaby
 | 
			
		||||
  - test-s3api: focal-victoria
 | 
			
		||||
  - test-s3api: focal-ussuri
 | 
			
		||||
  - test-s3api: bionic-ussuri
 | 
			
		||||
  - test-s3api: bionic-train
 | 
			
		||||
  - test-s3api: bionic-stein
 | 
			
		||||
  - test-s3api: bionic-rocky
 | 
			
		||||
  - test-s3api: bionic-queens
 | 
			
		||||
  - xenial-mitaka
 | 
			
		||||
  - test-s3api: bionic-stein
 | 
			
		||||
  - test-s3api: bionic-ussuri
 | 
			
		||||
  - test-s3api: focal-ussuri
 | 
			
		||||
  - focal-ussuri-gr:
 | 
			
		||||
    - swift_gr_region1: focal-ussuri-gr-r1
 | 
			
		||||
    - swift_gr_region2: focal-ussuri-gr-r2
 | 
			
		||||
  - test-s3api: focal-victoria
 | 
			
		||||
  - test-s3api: focal-wallaby
 | 
			
		||||
  - test-s3api: focal-xena
 | 
			
		||||
  - test-s3api: hirsute-wallaby
 | 
			
		||||
  - test-s3api: impish-xena
 | 
			
		||||
 | 
			
		||||
dev_bundles:
 | 
			
		||||
  - test-s3api: bionic-rocky
 | 
			
		||||
  - test-s3api: bionic-train
 | 
			
		||||
  - bionic-train-gr:
 | 
			
		||||
    - swift_gr_region1: bionic-train-gr-r1
 | 
			
		||||
    - swift_gr_region2: bionic-train-gr-r2
 | 
			
		||||
 | 
			
		||||
dev_bundles:
 | 
			
		||||
  - test-s3api: impish-xena
 | 
			
		||||
  - test-s3api: hirsute-wallaby
 | 
			
		||||
  - test-s3api: focal-xena
 | 
			
		||||
  - trusty-mitaka
 | 
			
		||||
  - test-s3api: xenial-queens
 | 
			
		||||
  - xenial-ocata
 | 
			
		||||
  - xenial-pike
 | 
			
		||||
  - test-s3api: focal-yoga
 | 
			
		||||
  - test-s3api: jammy-yoga
 | 
			
		||||
 | 
			
		||||
smoke_bundles:
 | 
			
		||||
  # Use no s3api test for smoke
 | 
			
		||||
@@ -43,6 +43,8 @@ tests:
 | 
			
		||||
 | 
			
		||||
tests_options:
 | 
			
		||||
  force_deploy:
 | 
			
		||||
    - hirsute-wallaby
 | 
			
		||||
    - impish-xena
 | 
			
		||||
    - jammy-yoga
 | 
			
		||||
  policyd:
 | 
			
		||||
    - service: swift
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										5
									
								
								tox.ini
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								tox.ini
									
									
									
									
									
								
							@@ -61,6 +61,11 @@ basepython = python3.8
 | 
			
		||||
deps = -r{toxinidir}/requirements.txt
 | 
			
		||||
       -r{toxinidir}/test-requirements.txt
 | 
			
		||||
 | 
			
		||||
[testenv:py39]
 | 
			
		||||
basepython = python3.9
 | 
			
		||||
deps = -r{toxinidir}/requirements.txt
 | 
			
		||||
       -r{toxinidir}/test-requirements.txt
 | 
			
		||||
 | 
			
		||||
[testenv:py3]
 | 
			
		||||
basepython = python3
 | 
			
		||||
deps = -r{toxinidir}/requirements.txt
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user