def __init__(self, version_args, image_version, offline_mode): self.version_args = version_args self.image_version = image_version self.offline_mode = offline_mode self.enabled = is_conductr_supportive_of_features(self.image_version) self.docker_present = docker.is_docker_present() self.image_name = None
def conductr_args(self): if is_conductr_supportive_of_features(self.image_version): return [ '-Dcontrail.syslog.server.port=9200', '-Dcontrail.syslog.server.elasticsearch.enabled=on' ] else: return []
def start(self): if is_conductr_supportive_of_features(self.image_version): log = logging.getLogger(__name__) log.info(h1('Starting logging feature based on eslite')) eslite = select_bintray_uri('eslite', self.version_args) log.info('Deploying bundle %s..' % eslite['bundle']) load_command = ['load', eslite['bundle'], '--disable-instructions'] + \ parse_offline_mode_arg(self.offline_mode) conductr_cli.conduct_main.run(load_command, configure_logging=False) conductr_cli.conduct_main.run( ['run', eslite['name'], '--disable-instructions'], configure_logging=False) return FeatureStartResult(True, []) else: return FeatureStartResult(False, [])
def start(self): if is_conductr_supportive_of_features(self.image_version): log = logging.getLogger(__name__) log.info( h1('Starting logging feature based on elasticsearch and kibana' )) log.info( 'conductr-kibana bundle is packaged as a Docker image. Checking Docker requirements..' ) docker.validate_docker_vm(docker.vm_type()) log.info('Docker is installed and configured correctly.') elasticsearch = select_bintray_uri('conductr-elasticsearch', self.version_args) log.info('Deploying bundle %s..' % elasticsearch['bundle']) elasticsearch_load_command = ['load', elasticsearch['bundle'], '--disable-instructions'] + \ parse_offline_mode_arg(self.offline_mode) conductr_cli.conduct_main.run(elasticsearch_load_command, configure_logging=False) conductr_cli.conduct_main.run( ['run', elasticsearch['name'], '--disable-instructions'], configure_logging=False) kibana = select_bintray_uri('conductr-kibana', self.version_args) log.info('Deploying bundle %s..' % kibana['bundle']) kibana_load_command = ['load', kibana['bundle'], '--disable-instructions'] + \ parse_offline_mode_arg(self.offline_mode) conductr_cli.conduct_main.run(kibana_load_command, configure_logging=False) conductr_cli.conduct_main.run([ 'run', kibana['name'], '--disable-instructions', '--wait-timeout', '600' ], configure_logging=False) return FeatureStartResult(True, [ BundleStartResult('conductr-kibana', self.ports[0]), BundleStartResult('conductr-elasticsearch', self.ports[1]) ]) else: return FeatureStartResult(False, [])
def enabled(self): return is_conductr_supportive_of_features(self.image_version)
def conductr_roles(self): if is_conductr_supportive_of_features(self.image_version): return ['elasticsearch'] else: return []
def conductr_feature_envs(self): if is_conductr_supportive_of_features(self.image_version): return [] else: return [self.name]