def mcg_obj(request): """ Returns an MCG resource that's connected to the S3 endpoint Returns: MCG: An MCG resource """ mcg_obj = MCG() if config.ENV_DATA['platform'].lower() == 'aws': def finalizer(): mcg_obj.cred_req_obj.delete() request.addfinalizer(finalizer) return mcg_obj
def __init__(self): """ Initializer function """ self.ns_obj = OCP(kind="namespace") self.namespace = constants.COSBENCH_PROJECT self.configmap_obj = OCP(namespace=self.namespace, kind=constants.CONFIGMAP) self.ocp_obj = OCP(namespace=self.namespace) self.cosbench_config = None self.cosbench_pod = None self.cosbench_dir = mkdtemp(prefix="cosbench-tool-") self.xml_file = "" self.workload_id = "" self.init_container = 1 self.range_selector = "r" self.init_object = 1 mcg_obj = MCG() self.access_key_id = mcg_obj.access_key_id self.access_key = mcg_obj.access_key self.endpoint = ( "http://" + mcg_obj.s3_internal_endpoint.split("/")[2].split(":")[0])
def wait_for_nooba_cr(self): self._mcg_obj = MCG()
def mcg_obj(self): if not self._mcg_obj: self._mcg_obj = MCG() return self._mcg_obj
def __init__(self): """ Cluster object initializer, this object needs to be initialized after cluster deployment. However its harmless to do anywhere. """ # cluster_name is name of cluster in rook of type CephCluster self.POD = ocp.OCP(kind='Pod', namespace=config.ENV_DATA['cluster_namespace']) self.CEPHCLUSTER = ocp.OCP( kind='CephCluster', namespace=config.ENV_DATA['cluster_namespace']) self.CEPHFS = ocp.OCP(kind='CephFilesystem', namespace=config.ENV_DATA['cluster_namespace']) self.DEP = ocp.OCP(kind='Deployment', namespace=config.ENV_DATA['cluster_namespace']) self.cluster_resource_config = self.CEPHCLUSTER.get().get('items')[0] try: self.cephfs_config = self.CEPHFS.get().get('items')[0] except IndexError as e: logging.warning(e) logging.warning("No CephFS found") self.cephfs_config = None self._cluster_name = ( self.cluster_resource_config.get('metadata').get('name')) self._namespace = ( self.cluster_resource_config.get('metadata').get('namespace')) # We are not invoking ocs.create() here # assuming cluster creation is done somewhere after deployment # So just load ocs with existing cluster details self.cluster = ocs.OCS(**self.cluster_resource_config) if self.cephfs_config: self.cephfs = ocs.OCS(**self.cephfs_config) else: self.cephfs = None self.mon_selector = constant.MON_APP_LABEL self.mds_selector = constant.MDS_APP_LABEL self.tool_selector = constant.TOOL_APP_LABEL self.mgr_selector = constant.MGR_APP_LABEL self.osd_selector = constant.OSD_APP_LABEL self.noobaa_selector = constant.NOOBAA_APP_LABEL self.noobaa_core_selector = constant.NOOBAA_CORE_POD_LABEL self.mons = [] self._ceph_pods = [] self.mdss = [] self.mgrs = [] self.osds = [] self.noobaas = [] self.toolbox = None self.mds_count = 0 self.mon_count = 0 self.mgr_count = 0 self.osd_count = 0 self.noobaa_count = 0 self.mcg_obj = MCG() self.scan_cluster() logging.info(f"Number of mons = {self.mon_count}") logging.info(f"Number of mds = {self.mds_count}") self.used_space = 0