@@ -1566,7 +1566,7 @@ def _infer_config(ctx: CephadmContext) -> Any:
15661566
15671567 def config_path (daemon_type : str , daemon_name : str ) -> str :
15681568 ident = DaemonIdentity (ctx .fsid , daemon_type , daemon_name )
1569- data_dir = get_data_dir ( ident , ctx .data_dir )
1569+ data_dir = ident . data_dir ( ctx .data_dir )
15701570 return os .path .join (data_dir , 'config' )
15711571
15721572 def get_mon_daemon_name (fsid : str ) -> Optional [str ]:
@@ -1771,12 +1771,6 @@ def infer_local_ceph_image(ctx: CephadmContext, container_path: str) -> Optional
17711771 return None
17721772
17731773
1774- def get_data_dir (ident : 'DaemonIdentity' , data_dir : str ) -> str :
1775- return os .path .join (
1776- data_dir , ident .fsid , f'{ ident .daemon_type } .{ ident .daemon_id } '
1777- )
1778-
1779-
17801774def get_log_dir (fsid , log_dir ):
17811775 # type: (str, str) -> str
17821776 return os .path .join (log_dir , fsid )
@@ -1801,7 +1795,7 @@ def make_data_dir(
18011795 if uid is None or gid is None :
18021796 uid , gid = extract_uid_gid (ctx )
18031797 make_data_dir_base (ident .fsid , ctx .data_dir , uid , gid )
1804- data_dir = get_data_dir ( ident , ctx .data_dir )
1798+ data_dir = ident . data_dir ( ctx .data_dir )
18051799 makedirs (data_dir , uid , gid , DATA_DIR_MODE )
18061800 return data_dir
18071801
@@ -2172,38 +2166,38 @@ def create_daemon_dirs(
21722166 config_dir = ''
21732167 data_dir_root = ''
21742168 if daemon_type == 'prometheus' :
2175- data_dir_root = get_data_dir ( ident , ctx .data_dir )
2169+ data_dir_root = ident . data_dir ( ctx .data_dir )
21762170 config_dir = 'etc/prometheus'
21772171 makedirs (os .path .join (data_dir_root , config_dir ), uid , gid , 0o755 )
21782172 makedirs (os .path .join (data_dir_root , config_dir , 'alerting' ), uid , gid , 0o755 )
21792173 makedirs (os .path .join (data_dir_root , 'data' ), uid , gid , 0o755 )
21802174 recursive_chown (os .path .join (data_dir_root , 'etc' ), uid , gid )
21812175 recursive_chown (os .path .join (data_dir_root , 'data' ), uid , gid )
21822176 elif daemon_type == 'grafana' :
2183- data_dir_root = get_data_dir ( ident , ctx .data_dir )
2177+ data_dir_root = ident . data_dir ( ctx .data_dir )
21842178 config_dir = 'etc/grafana'
21852179 makedirs (os .path .join (data_dir_root , config_dir ), uid , gid , 0o755 )
21862180 makedirs (os .path .join (data_dir_root , config_dir , 'certs' ), uid , gid , 0o755 )
21872181 makedirs (os .path .join (data_dir_root , config_dir , 'provisioning/datasources' ), uid , gid , 0o755 )
21882182 makedirs (os .path .join (data_dir_root , 'data' ), uid , gid , 0o755 )
21892183 touch (os .path .join (data_dir_root , 'data' , 'grafana.db' ), uid , gid )
21902184 elif daemon_type == 'alertmanager' :
2191- data_dir_root = get_data_dir ( ident , ctx .data_dir )
2185+ data_dir_root = ident . data_dir ( ctx .data_dir )
21922186 config_dir = 'etc/alertmanager'
21932187 makedirs (os .path .join (data_dir_root , config_dir ), uid , gid , 0o755 )
21942188 makedirs (os .path .join (data_dir_root , config_dir , 'data' ), uid , gid , 0o755 )
21952189 elif daemon_type == 'promtail' :
2196- data_dir_root = get_data_dir ( ident , ctx .data_dir )
2190+ data_dir_root = ident . data_dir ( ctx .data_dir )
21972191 config_dir = 'etc/promtail'
21982192 makedirs (os .path .join (data_dir_root , config_dir ), uid , gid , 0o755 )
21992193 makedirs (os .path .join (data_dir_root , 'data' ), uid , gid , 0o755 )
22002194 elif daemon_type == 'loki' :
2201- data_dir_root = get_data_dir ( ident , ctx .data_dir )
2195+ data_dir_root = ident . data_dir ( ctx .data_dir )
22022196 config_dir = 'etc/loki'
22032197 makedirs (os .path .join (data_dir_root , config_dir ), uid , gid , 0o755 )
22042198 makedirs (os .path .join (data_dir_root , 'data' ), uid , gid , 0o755 )
22052199 elif daemon_type == 'node-exporter' :
2206- data_dir_root = get_data_dir ( ident , ctx .data_dir )
2200+ data_dir_root = ident . data_dir ( ctx .data_dir )
22072201 config_dir = 'etc/node-exporter'
22082202 makedirs (os .path .join (data_dir_root , config_dir ), uid , gid , 0o755 )
22092203 recursive_chown (os .path .join (data_dir_root , 'etc' ), uid , gid )
@@ -2448,7 +2442,7 @@ def get_container_binds(
24482442 binds .extend (CephNvmeof .get_container_binds ())
24492443 elif ident .daemon_type == CustomContainer .daemon_type :
24502444 cc = CustomContainer .init (ctx , ident .fsid , ident .daemon_id )
2451- data_dir = get_data_dir ( ident , ctx .data_dir )
2445+ data_dir = ident . data_dir ( ctx .data_dir )
24522446 binds .extend (cc .get_container_binds (data_dir ))
24532447
24542448 return binds
@@ -2541,7 +2535,7 @@ def get_container_mounts(
25412535 assert ident .fsid
25422536 assert ident .daemon_id
25432537 if daemon_type in Ceph .daemons :
2544- data_dir = get_data_dir ( ident , ctx .data_dir )
2538+ data_dir = ident . data_dir ( ctx .data_dir )
25452539 if daemon_type == 'rgw' :
25462540 cdata_dir = '/var/lib/ceph/radosgw/ceph-rgw.%s' % (ident .daemon_id )
25472541 else :
@@ -2555,7 +2549,7 @@ def get_container_mounts(
25552549 mounts [data_dir + '/keyring' ] = '/etc/ceph/ceph.client.%s.%s.keyring' % (daemon_type , ident .daemon_id )
25562550
25572551 if daemon_type in Monitoring .components :
2558- data_dir = get_data_dir ( ident , ctx .data_dir )
2552+ data_dir = ident . data_dir ( ctx .data_dir )
25592553 log_dir = get_log_dir (fsid , ctx .log_dir )
25602554 if daemon_type == 'prometheus' :
25612555 mounts [os .path .join (data_dir , 'etc/prometheus' )] = '/etc/prometheus:Z'
@@ -2581,20 +2575,20 @@ def get_container_mounts(
25812575 mounts [os .path .join (data_dir , 'etc/alertmanager' )] = '/etc/alertmanager:Z'
25822576
25832577 if daemon_type == NFSGanesha .daemon_type :
2584- data_dir = get_data_dir ( ident , ctx .data_dir )
2578+ data_dir = ident . data_dir ( ctx .data_dir )
25852579 nfs_ganesha = NFSGanesha .init (ctx , fsid , ident .daemon_id )
25862580 mounts .update (nfs_ganesha .get_container_mounts (data_dir ))
25872581
25882582 if daemon_type == HAproxy .daemon_type :
2589- data_dir = get_data_dir ( ident , ctx .data_dir )
2583+ data_dir = ident . data_dir ( ctx .data_dir )
25902584 mounts .update (HAproxy .get_container_mounts (data_dir ))
25912585
25922586 if daemon_type == CephNvmeof .daemon_type :
2593- data_dir = get_data_dir ( ident , ctx .data_dir )
2587+ data_dir = ident . data_dir ( ctx .data_dir )
25942588 mounts .update (CephNvmeof .get_container_mounts (data_dir ))
25952589
25962590 if daemon_type == CephIscsi .daemon_type :
2597- data_dir = get_data_dir ( ident , ctx .data_dir )
2591+ data_dir = ident . data_dir ( ctx .data_dir )
25982592 # Removes ending ".tcmu" from data_dir a tcmu-runner uses the same data_dir
25992593 # as rbd-runner-api
26002594 if data_dir .endswith ('.tcmu' ):
@@ -2603,12 +2597,12 @@ def get_container_mounts(
26032597 mounts .update (CephIscsi .get_container_mounts (data_dir , log_dir ))
26042598
26052599 if daemon_type == Keepalived .daemon_type :
2606- data_dir = get_data_dir ( ident , ctx .data_dir )
2600+ data_dir = ident . data_dir ( ctx .data_dir )
26072601 mounts .update (Keepalived .get_container_mounts (data_dir ))
26082602
26092603 if daemon_type == CustomContainer .daemon_type :
26102604 cc = CustomContainer .init (ctx , fsid , ident .daemon_id )
2611- data_dir = get_data_dir ( ident , ctx .data_dir )
2605+ data_dir = ident . data_dir ( ctx .data_dir )
26122606 mounts .update (cc .get_container_mounts (data_dir ))
26132607
26142608 _update_podman_mounts (ctx , mounts )
@@ -2870,7 +2864,7 @@ def deploy_daemon(
28702864 else :
28712865 raise Error ("TCP Port(s) '{}' required for {} already in use" .format (',' .join (map (str , endpoints )), daemon_type ))
28722866
2873- data_dir = get_data_dir ( ident , ctx .data_dir )
2867+ data_dir = ident . data_dir ( ctx .data_dir )
28742868 if deployment_type == DeploymentType .RECONFIG and not os .path .exists (data_dir ):
28752869 raise Error ('cannot reconfig, data path %s does not exist' % data_dir )
28762870 if daemon_type == 'mon' and not os .path .exists (data_dir ):
@@ -2885,7 +2879,7 @@ def deploy_daemon(
28852879 # --mkfs
28862880 create_daemon_dirs (ctx , ident , uid , gid )
28872881 assert ident .daemon_type == 'mon'
2888- mon_dir = get_data_dir ( ident , ctx .data_dir )
2882+ mon_dir = ident . data_dir ( ctx .data_dir )
28892883 log_dir = get_log_dir (ident .fsid , ctx .log_dir )
28902884 CephContainer (
28912885 ctx ,
@@ -3096,7 +3090,7 @@ def deploy_daemon_units(
30963090 daemon_type = ident .daemon_type
30973091 daemon_id = ident .daemon_id
30983092
3099- data_dir = get_data_dir ( ident , ctx .data_dir )
3093+ data_dir = ident . data_dir ( ctx .data_dir )
31003094 run_file_path = data_dir + '/unit.run'
31013095 meta_file_path = data_dir + '/unit.meta'
31023096 with write_new (run_file_path ) as f , write_new (meta_file_path ) as metaf :
@@ -4015,10 +4009,7 @@ def from_primary_and_opts(
40154009 if not vmounts :
40164010 vmounts = primary .volume_mounts
40174011 else :
4018- data_dir = data_dir or get_data_dir (
4019- primary .identity ,
4020- ctx .data_dir ,
4021- )
4012+ data_dir = data_dir or primary .identity .data_dir (ctx .data_dir )
40224013 vmounts = {
40234014 os .path .join (data_dir , src ): dst
40244015 for src , dst in vmounts .items ()
@@ -4962,7 +4953,7 @@ def prepare_create_mon(
49624953 logger .info ('Creating mon...' )
49634954 ident = DaemonIdentity (fsid , 'mon' , mon_id )
49644955 create_daemon_dirs (ctx , ident , uid , gid )
4965- mon_dir = get_data_dir ( ident , ctx .data_dir )
4956+ mon_dir = ident . data_dir ( ctx .data_dir )
49664957 log_dir = get_log_dir (fsid , ctx .log_dir )
49674958 out = CephContainer (
49684959 ctx ,
@@ -7328,7 +7319,7 @@ def command_rm_daemon(ctx):
73287319 verbosity = CallVerbosity .DEBUG )
73297320
73307321 ident = DaemonIdentity (ctx .fsid , daemon_type , daemon_id )
7331- data_dir = get_data_dir ( ident , ctx .data_dir )
7322+ data_dir = ident . data_dir ( ctx .data_dir )
73327323 if daemon_type in ['mon' , 'osd' , 'prometheus' ] and \
73337324 not ctx .force_delete_data :
73347325 # rename it out of the way -- do not delete
0 commit comments