Sync helpers for 20.05
Change-Id: I594ac490aad47cc194959279cc6ed7facbb09053
This commit is contained in:
		
							
								
								
									
										2
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								Makefile
									
									
									
									
									
								
							@@ -1,4 +1,4 @@
 | 
			
		||||
PYTHON := /usr/bin/env python
 | 
			
		||||
PYTHON := /usr/bin/env python3
 | 
			
		||||
 | 
			
		||||
lint:
 | 
			
		||||
	@tox -e pep8
 | 
			
		||||
 
 | 
			
		||||
@@ -92,6 +92,7 @@ DEFAULT_PGS_PER_OSD_TARGET = 100
 | 
			
		||||
DEFAULT_POOL_WEIGHT = 10.0
 | 
			
		||||
LEGACY_PG_COUNT = 200
 | 
			
		||||
DEFAULT_MINIMUM_PGS = 2
 | 
			
		||||
AUTOSCALER_DEFAULT_PGS = 32
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class OsdPostUpgradeError(Exception):
 | 
			
		||||
@@ -399,16 +400,28 @@ class ReplicatedPool(Pool):
 | 
			
		||||
 | 
			
		||||
    def create(self):
 | 
			
		||||
        if not pool_exists(self.service, self.name):
 | 
			
		||||
            nautilus_or_later = cmp_pkgrevno('ceph-common', '14.2.0') >= 0
 | 
			
		||||
            # Create it
 | 
			
		||||
            cmd = ['ceph', '--id', self.service, 'osd', 'pool', 'create',
 | 
			
		||||
                   self.name, str(self.pg_num)]
 | 
			
		||||
            if nautilus_or_later:
 | 
			
		||||
                cmd = [
 | 
			
		||||
                    'ceph', '--id', self.service, 'osd', 'pool', 'create',
 | 
			
		||||
                    '--pg-num-min={}'.format(
 | 
			
		||||
                        min(AUTOSCALER_DEFAULT_PGS, self.pg_num)
 | 
			
		||||
                    ),
 | 
			
		||||
                    self.name, str(self.pg_num)
 | 
			
		||||
                ]
 | 
			
		||||
            else:
 | 
			
		||||
                cmd = [
 | 
			
		||||
                    'ceph', '--id', self.service, 'osd', 'pool', 'create',
 | 
			
		||||
                    self.name, str(self.pg_num)
 | 
			
		||||
                ]
 | 
			
		||||
 | 
			
		||||
            try:
 | 
			
		||||
                check_call(cmd)
 | 
			
		||||
                # Set the pool replica size
 | 
			
		||||
                update_pool(client=self.service,
 | 
			
		||||
                            pool=self.name,
 | 
			
		||||
                            settings={'size': str(self.replicas)})
 | 
			
		||||
                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,
 | 
			
		||||
@@ -466,10 +479,24 @@ class ErasurePool(Pool):
 | 
			
		||||
            k = int(erasure_profile['k'])
 | 
			
		||||
            m = int(erasure_profile['m'])
 | 
			
		||||
            pgs = self.get_pgs(k + m, self.percent_data)
 | 
			
		||||
            nautilus_or_later = cmp_pkgrevno('ceph-common', '14.2.0') >= 0
 | 
			
		||||
            # Create it
 | 
			
		||||
            cmd = ['ceph', '--id', self.service, 'osd', 'pool', 'create',
 | 
			
		||||
                   self.name, str(pgs), str(pgs),
 | 
			
		||||
                   'erasure', self.erasure_code_profile]
 | 
			
		||||
            if nautilus_or_later:
 | 
			
		||||
                cmd = [
 | 
			
		||||
                    'ceph', '--id', self.service, 'osd', 'pool', 'create',
 | 
			
		||||
                    '--pg-num-min={}'.format(
 | 
			
		||||
                        min(AUTOSCALER_DEFAULT_PGS, pgs)
 | 
			
		||||
                    ),
 | 
			
		||||
                    self.name, str(pgs), str(pgs),
 | 
			
		||||
                    'erasure', self.erasure_code_profile
 | 
			
		||||
                ]
 | 
			
		||||
            else:
 | 
			
		||||
                cmd = [
 | 
			
		||||
                    'ceph', '--id', self.service, 'osd', 'pool', 'create',
 | 
			
		||||
                    self.name, str(pgs), str(pgs),
 | 
			
		||||
                    'erasure', self.erasure_code_profile
 | 
			
		||||
                ]
 | 
			
		||||
 | 
			
		||||
            try:
 | 
			
		||||
                check_call(cmd)
 | 
			
		||||
                try:
 | 
			
		||||
@@ -478,7 +505,6 @@ class ErasurePool(Pool):
 | 
			
		||||
                                          name=self.app_name)
 | 
			
		||||
                except CalledProcessError:
 | 
			
		||||
                    log('Could not set app name for pool {}'.format(self.name, level=WARNING))
 | 
			
		||||
                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,
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										5
									
								
								tox.ini
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								tox.ini
									
									
									
									
									
								
							@@ -41,6 +41,11 @@ basepython = python3.7
 | 
			
		||||
deps = -r{toxinidir}/requirements.txt
 | 
			
		||||
       -r{toxinidir}/test-requirements.txt
 | 
			
		||||
 | 
			
		||||
[testenv:py38]
 | 
			
		||||
basepython = python3.8
 | 
			
		||||
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