def validate(self, phase: str): """Perform validations for phase.""" try: Conf.load(phase, f'json://{self._preqs_conf_file}') prereqs_block = Conf.get(phase, f'{phase}') if prereqs_block: pip3s = Conf.get(phase, f'{phase}>pip3s') if pip3s: PkgV().validate('pip3s', pip3s) rpms = Conf.get(phase, f'{phase}>rpms') if rpms: PkgV().validate('rpms', rpms) services = Conf.get(phase, f'{phase}>services') if services: for service in services: pid = os.popen('pidof ' + service).read() if pid is None: Log.debug( 'Validation failed for service %s in %s phase' % (service, phase)) raise Exception( 'Validation failed for service %s in %s phase' % (service, phase)) files = Conf.get(phase, f'{phase}>files') if files: PathV().validate('exists', files) Log.debug("%s - pre-requisite validation complete" % phase) except Exception: Log.debug("%s - pre-requisite validation failed" % phase) raise Exception("prereqs validation failed") return 0
def validate_pre_requisites(self, rpms: list = None, pip3s: list = None, services: list = None, files: list = None): """Validate pre requisites using cortx-py-utils validator.""" sys.stdout.write(f'Validations running from {self._preqs_conf_file}\n') if pip3s: PkgV().validate('pip3s', pip3s) if services: ServiceV().validate('isrunning', services) if rpms: PkgV().validate('rpms', rpms) if files: PathV().validate('exists', files)
def validate_pre_requisites(self, rpms: list = None, pip3s: list = None, services: list = None, files: list = None): try: if pip3s: PkgV().validate('pip3s', pip3s) if services: ServiceV().validate('isrunning', services) if rpms: PkgV().validate('rpms', rpms) if files: PathV().validate('exists', files) except Exception as e: print(f"{e}, config:{self.__preqs_conf_file}") return False return True
def validate_pre_requisites(self, rpms: list = None, pip3s: list = None, services: list = None, files: list = None): """Validate pre requisites using cortx-py-utils validator.""" try: if pip3s: PkgV().validate('pip3s', pip3s) if services: ServiceV().validate('isrunning', services) if rpms: PkgV().validate('rpms', rpms) if files: PathV().validate('exists', files) except Exception as e: sys.stderr.write('ERROR: post_install validations failed.\n') sys.stderr.write(f"{e}, config:{self._preqs_conf_file}\n") raise e
def validate(self, phase: str): """Perform validations for phase.""" try: Conf.load(phase, f'json://{self._preqs_conf_file}') prereqs_block = Conf.get(phase, f'{phase}') if prereqs_block: pip3s = Conf.get(phase, f'{phase}>pip3s') if pip3s: PkgV().validate('pip3s', pip3s) rpms = Conf.get(phase, f'{phase}>rpms') if rpms: PkgV().validate('rpms', rpms) services = Conf.get(phase, f'{phase}>services') if services: ServiceV().validate('isrunning', services) files = Conf.get(phase, f'{phase}>files') if files: PathV().validate('exists', files) Log.debug("%s - pre-requisite validation complete" % phase) except Exception: Log.debug("%s - pre-requisite validation failed" % phase) raise Exception("prereqs validation failed") return 0
def test_remote_path(self): """Check paths.""" PathV().validate('exists', self.paths, self.host)
def test_path(self): """Check paths.""" PathV().validate('exists', self.paths)
def test_path_neg(self): """Check negative paths.""" neg_path = ['device:/dev/loop9'] self.assertRaises(VError, PathV().validate, 'exists', neg_path)
def test_remote_path(self): """Check paths.""" try: PathV().validate('exists', self.paths, self.host) except Exception: PathV().validate('exists', self.paths, self.host)