self.prio_limit = config_json.get('prio-limit', 5)
self.stats_period = config_json.get('stats-period', 5)
- self.validate()
-
@classmethod
def init(
cls, ctx: CephadmContext, fsid: str, daemon_id: Union[int, str]
def validate(self) -> None:
if not os.path.isdir(self.sock_dir):
- raise Error(f'Directory does not exist. Got: {self.sock_dir}')
+ raise Error(f'Desired sock dir for ceph-exporter is not directory: {self.sock_dir}')
def container(self, ctx: CephadmContext) -> CephContainer:
ctr = daemon_to_container(ctx, self)
def default_entrypoint(self) -> str:
return self.entrypoint
+ def prepare_data_dir(self, data_dir: str, uid: int, gid: int) -> None:
+ if not os.path.exists(self.sock_dir):
+ os.mkdir(self.sock_dir)
+ # part of validation is for the sock dir, so we postpone
+ # it until now
+ self.validate()
+
def get_ceph_mounts_for_type(
ctx: CephadmContext, fsid: str, daemon_type: str