]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/cephadm: split out `config-and-keyrings` json
authorMichael Fritch <mfritch@suse.com>
Mon, 24 Feb 2020 18:43:07 +0000 (11:43 -0700)
committerMichael Fritch <mfritch@suse.com>
Wed, 25 Mar 2020 22:26:12 +0000 (16:26 -0600)
Signed-off-by: Michael Fritch <mfritch@suse.com>
src/pybind/mgr/cephadm/module.py

index 6883ff0604c6e65766b032a69ad3cba35983a48a..6755238e02372fdd7e791a6c6fe68b205851ff20 100644 (file)
@@ -2208,6 +2208,33 @@ class CephadmOrchestrator(orchestrator.Orchestrator, MgrModule):
                 deps.append(dd.name())
         return sorted(deps)
 
+    def _get_config_and_keyring(self, daemon_type, daemon_id,
+                                keyring=None,
+                                extra_config=None):
+        # type: (str, str, Optional[str], Optional[str]) -> Dict[str, Any]
+        # keyring
+        if not keyring:
+            if daemon_type == 'mon':
+                ename = 'mon.'
+            else:
+                ename = name_to_config_section(daemon_type + '.' + daemon_id)
+            ret, keyring, err = self.mon_command({
+                'prefix': 'auth get',
+                'entity': ename,
+            })
+
+        # generate config
+        ret, config, err = self.mon_command({
+            "prefix": "config generate-minimal-conf",
+        })
+        if extra_config:
+            config += extra_config
+
+        return {
+            'config': config,
+            'keyring': keyring,
+        }
+
     def _create_daemon(self, daemon_type, daemon_id, host,
                        keyring=None,
                        extra_args=None, extra_config=None,
@@ -2230,28 +2257,10 @@ class CephadmOrchestrator(orchestrator.Orchestrator, MgrModule):
             cephadm_config, deps = self._generate_alertmanager_config()
             extra_args.extend(['--config-json', '-'])
         else:
-            # keyring
-            if not keyring:
-                if daemon_type == 'mon':
-                    ename = 'mon.'
-                else:
-                    ename = name_to_config_section(daemon_type + '.' + daemon_id)
-                ret, keyring, err = self.mon_command({
-                    'prefix': 'auth get',
-                    'entity': ename,
-                })
-
-            # generate config
-            ret, config, err = self.mon_command({
-                "prefix": "config generate-minimal-conf",
-            })
-            if extra_config:
-                config += extra_config
-
-            cephadm_config = {
-                'config': config,
-                'keyring': keyring,
-            }
+            cephadm_config = self._get_config_and_keyring(
+                    daemon_type, daemon_id,
+                    keyring=keyring,
+                    extra_config=extra_config)
             extra_args.extend(['--config-json', '-'])
 
             # osd deployments needs an --osd-uuid arg