def run(): """Entrypoint for IronicPythonAgent.""" # NOTE(dtantsur): this must happen very early of the files from # /etc/ironic-python-agent.d won't be loaded utils.copy_config_from_vmedia() log.register_options(CONF) CONF(args=sys.argv[1:]) # Debug option comes from oslo.log, allow overriding it via kernel cmdline ipa_debug = config.APARAMS.get('ipa-debug') if ipa_debug is not None: ipa_debug = strutils.bool_from_string(ipa_debug) CONF.set_override('debug', ipa_debug) log.setup(CONF, 'ironic-python-agent') # Used for TLS configuration sslutils.register_opts(CONF) logger = log.getLogger(__name__) logger.debug("Configuration:") CONF.log_opt_values(logger, log.DEBUG) utils.log_early_log_to_logger() agent.IronicPythonAgent( CONF.api_url, agent.Host(hostname=CONF.advertise_host, port=CONF.advertise_port), agent.Host(hostname=CONF.listen_host, port=CONF.listen_port), CONF.ip_lookup_attempts, CONF.ip_lookup_sleep, CONF.network_interface, CONF.lookup_timeout, CONF.lookup_interval, False, CONF.agent_token, CONF.hardware_initialization_delay, CONF.advertise_protocol).run()
def prepare_service(args=None): args = [] if args is None else args log.register_options(CONF) opts.set_config_defaults() opts.parse_args(args) log.setup(CONF, 'ironic_inspector') # TODO(kaifeng) Remove deprecated options at T* cycle. sslutils.register_opts(CONF) CONF.set_default('cert_file', CONF.ssl_cert_path, group='ssl') CONF.set_default('key_file', CONF.ssl_key_path, group='ssl') LOG.debug("Configuration:") CONF.log_opt_values(LOG, log.DEBUG)
def init(args, **kwargs): product_name = 'hypernet_agentless' logging.register_options(cfg.CONF) wsgi.register_opts(cfg.CONF) cfg.CONF.register_opts(service.list_opts()[0][1]) sslutils.register_opts(cfg.CONF) cfg.CONF(args=args, project=product_name, version='%%(prog)s %s' % version.version_info.release_string(), **kwargs) logging.setup(cfg.CONF, product_name) rpc.init(cfg.CONF)
def setUp(self): super(TestAgentStandalone, self).setUp() sslutils.register_opts(CONF) self.agent = agent.IronicPythonAgent('https://fake_api.example.' 'org:8081/', agent.Host(hostname='203.0.113.1', port=9990), agent.Host(hostname='192.0.2.1', port=9999), 3, 10, 'eth0', 300, 1, 'agent_ipmitool', None, True)
def start(self, tls_cert_file=None, tls_key_file=None): """Start the API service in the background.""" if tls_cert_file and tls_key_file: sslutils.register_opts(self._conf) self._conf.set_override('cert_file', tls_cert_file, group='ssl') self._conf.set_override('key_file', tls_key_file, group='ssl') use_tls = True else: use_tls = self._conf.listen_tls self.service = wsgi.Server(self._conf, 'ironic-python-agent', app=self, host=self.agent.listen_address.hostname, port=self.agent.listen_address.port, use_ssl=use_tls) self.service.start() LOG.info('Started API service on port %s', self.agent.listen_address.port)
def register_opts(conf): sslutils.register_opts(conf)
def _set_config(self): self.cfg_fixture = self.useFixture(config_fixture.Config(CONF)) # Register options from libraries that are explicitly used in the code log.register_options(CONF) sslutils.register_opts(CONF)