mgr/cephadm: PEP8tify cephadmservice.py
authorSebastian Wagner <sebastian.wagner@suse.com>
Tue, 25 Aug 2020 13:33:06 +0000 (15:33 +0200)
committerSebastian Wagner <sebastian.wagner@suse.com>
Tue, 25 Aug 2020 13:33:06 +0000 (15:33 +0200)
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
src/pybind/mgr/cephadm/services/cephadmservice.py

index c42cc121d61fcda4e8425d2791c34d28de6acb37..1de8b56d51a4720ad53ae4e2564661dcfa324cd8 100644 (file)
@@ -22,13 +22,13 @@ ServiceSpecs = TypeVar('ServiceSpecs', bound=ServiceSpec)
 class CephadmDaemonSpec(Generic[ServiceSpecs]):
     # typing.NamedTuple + Generic is broken in py36
     def __init__(self, host: str, daemon_id,
-                 spec: Optional[ServiceSpecs]=None,
-                 network: Optional[str]=None,
-                 keyring: Optional[str]=None,
-                 extra_args: Optional[List[str]]=None,
-                 extra_config: Optional[Dict[str, Any]]=None,
-                 daemon_type: Optional[str]=None,
-                 ports: Optional[List[int]]=None,):
+                 spec: Optional[ServiceSpecs] = None,
+                 network: Optional[str] = None,
+                 keyring: Optional[str] = None,
+                 extra_args: Optional[List[str]] = None,
+                 extra_config: Optional[Dict[str, Any]] = None,
+                 daemon_type: Optional[str] = None,
+                 ports: Optional[List[int]] = None,):
         """
         Used for
         * deploying new daemons. then everything is set
@@ -58,7 +58,6 @@ class CephadmDaemonSpec(Generic[ServiceSpecs]):
         # TCP ports used by the daemon
         self.ports:  List[int] = ports or []
 
-
     def name(self) -> str:
         return '%s.%s' % (self.daemon_type, self.daemon_id)
 
@@ -96,7 +95,6 @@ class CephadmService(metaclass=ABCMeta):
             keyring=daemon_spec.keyring,
             extra_ceph_config=daemon_spec.extra_config.pop('config', ''))
 
-
         if daemon_spec.extra_config:
             cephadm_config.update({'files': daemon_spec.extra_config})
 
@@ -199,8 +197,6 @@ class CephadmService(metaclass=ABCMeta):
             except MonCommandFailed as e:
                 logger.warning('Failed to set Dashboard config for %s: %s', service_name, e)
 
-
-
     def ok_to_stop(self, daemon_ids: List[str]) -> HandleCommandResult:
         names = [f'{self.TYPE}.{d_id}' for d_id in daemon_ids]
         out = f'It is presumed safe to stop {names}'
@@ -230,6 +226,7 @@ class CephadmService(metaclass=ABCMeta):
         """
         pass
 
+
 class MonService(CephadmService):
     TYPE = 'mon'
 
@@ -256,7 +253,8 @@ class MonService(CephadmService):
             elif ':' not in network:
                 extra_config += 'public addr = %s\n' % network
             else:
-                raise OrchestratorError('Must specify a CIDR network, ceph addrvec, or plain IP: \'%s\'' % network)
+                raise OrchestratorError(
+                    'Must specify a CIDR network, ceph addrvec, or plain IP: \'%s\'' % network)
         else:
             # try to get the public_network from the config
             ret, network, err = self.mgr.check_mon_command({
@@ -266,13 +264,15 @@ class MonService(CephadmService):
             })
             network = network.strip() if network else network
             if not network:
-                raise OrchestratorError('Must set public_network config option or specify a CIDR network, ceph addrvec, or plain IP')
+                raise OrchestratorError(
+                    'Must set public_network config option or specify a CIDR network, ceph addrvec, or plain IP')
             if '/' not in network:
-                raise OrchestratorError('public_network is set but does not look like a CIDR network: \'%s\'' % network)
+                raise OrchestratorError(
+                    'public_network is set but does not look like a CIDR network: \'%s\'' % network)
             extra_config += 'public network = %s\n' % network
 
-        daemon_spec.extra_config={'config': extra_config}
-        daemon_spec.keyring=keyring
+        daemon_spec.extra_config = {'config': extra_config}
+        daemon_spec.keyring = keyring
 
         return self.mgr._create_daemon(daemon_spec)
 
@@ -293,10 +293,11 @@ class MonService(CephadmService):
         new_mons = [m for m in mons if m != mon_id]
         new_quorum = [m for m in j['quorum_names'] if m != mon_id]
         if len(new_quorum) > len(new_mons) / 2:
-            logger.info('Safe to remove mon.%s: new quorum should be %s (from %s)' % (mon_id, new_quorum, new_mons))
+            logger.info('Safe to remove mon.%s: new quorum should be %s (from %s)' %
+                        (mon_id, new_quorum, new_mons))
             return
-        raise OrchestratorError('Removing %s would break mon quorum (new quorum %s, new mons %s)' % (mon_id, new_quorum, new_mons))
-
+        raise OrchestratorError(
+            'Removing %s would break mon quorum (new quorum %s, new mons %s)' % (mon_id, new_quorum, new_mons))
 
     def pre_remove(self, daemon_id: str) -> None:
         self._check_safe_to_destroy(daemon_id)
@@ -328,7 +329,6 @@ class MgrService(CephadmService):
                      'mds', 'allow *'],
         })
 
-
         # Retrieve ports used by manager modules
         # In the case of the dashboard port and with several manager daemons
         # running in different hosts, it exists the possibility that the
@@ -338,7 +338,7 @@ class MgrService(CephadmService):
         ports = []
         config_ports = ''
         ret, mgr_services, err = self.mgr.check_mon_command({
-                'prefix': 'mgr services',
+            'prefix': 'mgr services',
         })
         if mgr_services:
             mgr_endpoints = json.loads(mgr_services)
@@ -353,7 +353,7 @@ class MgrService(CephadmService):
         daemon_spec.keyring = keyring
 
         return self.mgr._create_daemon(daemon_spec)
-    
+
     def get_active_daemon(self, daemon_descrs: List[DaemonDescription]) -> DaemonDescription:
         active_mgr_str = self.mgr.get('mgr_map')['active_name']
         for daemon in daemon_descrs:
@@ -393,7 +393,7 @@ class MdsService(CephadmService):
         daemon_spec.keyring = keyring
 
         return self.mgr._create_daemon(daemon_spec)
-    
+
     def get_active_daemon(self, daemon_descrs: List[DaemonDescription]) -> DaemonDescription:
         active_mds_strs = list()
         for fs in self.mgr.get('fs_map')['filesystems']:
@@ -446,8 +446,8 @@ class RgwService(CephadmService):
                 cert_data = spec.rgw_frontend_ssl_certificate
             else:
                 raise OrchestratorError(
-                        'Invalid rgw_frontend_ssl_certificate: %s'
-                        % spec.rgw_frontend_ssl_certificate)
+                    'Invalid rgw_frontend_ssl_certificate: %s'
+                    % spec.rgw_frontend_ssl_certificate)
             ret, out, err = self.mgr.check_mon_command({
                 'prefix': 'config-key set',
                 'key': f'rgw/cert/{spec.rgw_realm}/{spec.rgw_zone}.crt',
@@ -461,8 +461,8 @@ class RgwService(CephadmService):
                 key_data = spec.rgw_frontend_ssl_key
             else:
                 raise OrchestratorError(
-                        'Invalid rgw_frontend_ssl_key: %s'
-                        % spec.rgw_frontend_ssl_key)
+                    'Invalid rgw_frontend_ssl_key: %s'
+                    % spec.rgw_frontend_ssl_key)
             ret, out, err = self.mgr.check_mon_command({
                 'prefix': 'config-key set',
                 'key': f'rgw/cert/{spec.rgw_realm}/{spec.rgw_zone}.key',
@@ -497,15 +497,15 @@ class RgwService(CephadmService):
         if utils.get_cluster_health(self.mgr) != 'HEALTH_OK':
             raise OrchestratorError('Health not ok, will try agin when health ok')
 
-        #get keyring needed to run rados commands and strip out just the keyring
-        keyring = self.get_keyring(rgw_id).split('key = ',1)[1].rstrip()
+        # get keyring needed to run rados commands and strip out just the keyring
+        keyring = self.get_keyring(rgw_id).split('key = ', 1)[1].rstrip()
 
         # We can call radosgw-admin within the container, cause cephadm gives the MGR the required keyring permissions
 
         def get_realms() -> List[str]:
             cmd = ['radosgw-admin',
-                   '--key=%s'%keyring,
-                   '--user', 'rgw.%s'%rgw_id,
+                   '--key=%s' % keyring,
+                   '--user', 'rgw.%s' % rgw_id,
                    'realm', 'list',
                    '--format=json']
             result = subprocess.run(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
@@ -520,18 +520,18 @@ class RgwService(CephadmService):
 
         def create_realm():
             cmd = ['radosgw-admin',
-                   '--key=%s'%keyring,
-                   '--user', 'rgw.%s'%rgw_id,
+                   '--key=%s' % keyring,
+                   '--user', 'rgw.%s' % rgw_id,
                    'realm', 'create',
-                   '--rgw-realm=%s'%spec.rgw_realm,
+                   '--rgw-realm=%s' % spec.rgw_realm,
                    '--default']
             result = subprocess.run(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
-            self.mgr.log.info('created realm: %s'%spec.rgw_realm)
+            self.mgr.log.info('created realm: %s' % spec.rgw_realm)
 
         def get_zonegroups() -> List[str]:
             cmd = ['radosgw-admin',
-                   '--key=%s'%keyring,
-                   '--user', 'rgw.%s'%rgw_id,
+                   '--key=%s' % keyring,
+                   '--user', 'rgw.%s' % rgw_id,
                    'zonegroup', 'list',
                    '--format=json']
             result = subprocess.run(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
@@ -546,8 +546,8 @@ class RgwService(CephadmService):
 
         def create_zonegroup():
             cmd = ['radosgw-admin',
-                   '--key=%s'%keyring,
-                   '--user', 'rgw.%s'%rgw_id,
+                   '--key=%s' % keyring,
+                   '--user', 'rgw.%s' % rgw_id,
                    'zonegroup', 'create',
                    '--rgw-zonegroup=default',
                    '--master', '--default']
@@ -561,8 +561,8 @@ class RgwService(CephadmService):
 
         def get_zones() -> List[str]:
             cmd = ['radosgw-admin',
-                   '--key=%s'%keyring,
-                   '--user', 'rgw.%s'%rgw_id,
+                   '--key=%s' % keyring,
+                   '--user', 'rgw.%s' % rgw_id,
                    'zone', 'list',
                    '--format=json']
             result = subprocess.run(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
@@ -577,15 +577,14 @@ class RgwService(CephadmService):
 
         def create_zone():
             cmd = ['radosgw-admin',
-                   '--key=%s'%keyring,
-                   '--user', 'rgw.%s'%rgw_id,
+                   '--key=%s' % keyring,
+                   '--user', 'rgw.%s' % rgw_id,
                    'zone', 'create',
                    '--rgw-zonegroup=default',
-                   '--rgw-zone=%s'%spec.rgw_zone,
+                   '--rgw-zone=%s' % spec.rgw_zone,
                    '--master', '--default']
             result = subprocess.run(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
-            self.mgr.log.info('created zone: %s'%spec.rgw_zone)
-
+            self.mgr.log.info('created zone: %s' % spec.rgw_zone)
 
         changes = False
         realms = get_realms()
@@ -602,10 +601,10 @@ class RgwService(CephadmService):
         # update period if changes were made
         if changes:
             cmd = ['radosgw-admin',
-                   '--key=%s'%keyring,
-                   '--user', 'rgw.%s'%rgw_id,
+                   '--key=%s' % keyring,
+                   '--user', 'rgw.%s' % rgw_id,
                    'period', 'update',
-                   '--rgw-realm=%s'%spec.rgw_realm,
+                   '--rgw-realm=%s' % spec.rgw_realm,
                    '--commit']
             result = subprocess.run(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
             self.mgr.log.info('updated period')