@forall_hosts
def run(h: str) -> str:
with self.async_timeout_handler(h, 'cephadm deploy (osd daemon)'):
- return self.wait_async(self.osd_service.deploy_osd_daemons_for_existing_osds(h, 'osd'))
+ return self.wait_async(
+ self.osd_service.deploy_osd_daemons_for_existing_osds(
+ h, DriveGroupSpec(service_type='osd', service_id='')
+ )
+ )
return HandleCommandResult(stdout='\n'.join(run(host)))
raise RuntimeError(
'cephadm exited with an error code: %d, stderr:%s' % (
code, '\n'.join(err)))
- return await self.deploy_osd_daemons_for_existing_osds(host, drive_group.service_name(),
+ return await self.deploy_osd_daemons_for_existing_osds(host, drive_group,
replace_osd_ids)
- async def deploy_osd_daemons_for_existing_osds(self, host: str, service_name: str,
+ async def deploy_osd_daemons_for_existing_osds(self, host: str, spec: DriveGroupSpec,
replace_osd_ids: Optional[List[str]] = None) -> str:
if replace_osd_ids is None:
continue
created.append(osd_id)
- daemon_spec: CephadmDaemonDeploySpec = CephadmDaemonDeploySpec(
- service_name=service_name,
+ daemon_spec: CephadmDaemonDeploySpec = self.make_daemon_spec(
+ spec=spec,
daemon_id=str(osd_id),
host=host,
daemon_type='osd',
+ network='', # required arg but only really needed for mons
)
daemon_spec.final_config, daemon_spec.deps = self.generate_config(daemon_spec)
await CephadmServe(self.mgr)._create_daemon(
continue
created.append(osd_id)
- daemon_spec = CephadmDaemonDeploySpec(
- service_name=service_name,
+ daemon_spec = self.make_daemon_spec(
+ spec=spec,
daemon_id=osd_id,
host=host,
daemon_type='osd',
+ network='', # required arg but only really needed for mons
)
daemon_spec.final_config, daemon_spec.deps = self.generate_config(daemon_spec)
await CephadmServe(self.mgr)._create_daemon(