def setUp(self): super(BinApiTestCase, self).setUp() # create api_paste.ini file without authentication content = ( "[pipeline:main]\n" "pipeline = api-server\n" "[app:api-server]\n" "paste.app_factory = ceilometer.api.app:app_factory\n" ) self.paste = fileutils.write_to_tempfile(content=content, prefix="api_paste", suffix=".ini") # create ceilometer.conf file self.api_port = random.randint(10000, 11000) self.http = httplib2.Http() pipeline_cfg_file = self.path_get("etc/ceilometer/pipeline.yaml") policy_file = self.path_get("etc/ceilometer/policy.json") content = ( "[DEFAULT]\n" "rpc_backend=fake\n" "auth_strategy=noauth\n" "debug=true\n" "pipeline_cfg_file={0}\n" "policy_file={1}\n" "api_paste_config={2}\n" "[api]\n" "port={3}\n" "[database]\n" "connection=log://localhost\n".format(pipeline_cfg_file, policy_file, self.paste, self.api_port) ) self.tempfile = fileutils.write_to_tempfile(content=content, prefix="ceilometer", suffix=".conf") self.subp = subprocess.Popen(["ceilometer-api", "--config-file=%s" % self.tempfile])
def setUp(self): super(BaseRealNotification, self).setUp() self.CONF = self.useFixture(fixture_config.Config()).conf self.setup_messaging(self.CONF, "nova") pipeline = yaml.dump( [ { "name": "test_pipeline", "interval": 5, "counters": ["instance", "memory"], "transformers": [], "publishers": ["test://"], } ] ) self.expected_samples = 2 pipeline_cfg_file = fileutils.write_to_tempfile(content=pipeline, prefix="pipeline", suffix="yaml") self.CONF.set_override("pipeline_cfg_file", pipeline_cfg_file) self.CONF.set_override("store_events", True, group="notification") ev_pipeline = yaml.dump( { "sources": [{"name": "test_event", "events": "*", "sinks": ["test_sink"]}], "sinks": [{"name": "test_sink", "publishers": ["test://"]}], } ) self.expected_events = 1 ev_pipeline_cfg_file = fileutils.write_to_tempfile(content=ev_pipeline, prefix="event_pipeline", suffix="yaml") self.CONF.set_override("event_pipeline_cfg_file", ev_pipeline_cfg_file) self.CONF.set_override( "definitions_cfg_file", self.path_get("etc/ceilometer/event_definitions.yaml"), group="event" ) self.publisher = test_publisher.TestPublisher("")
def setUp(self): super(BinTestCase, self).setUp() content = "[database]\n"\ "connection=log://localhost\n" self.tempfile = fileutils.write_to_tempfile(content=content, prefix='ceilometer', suffix='.conf')
def setUp(self): super(TestRealNotification, self).setUp() self.CONF = self.useFixture(config.Config()).conf self.useFixture(oslo.messaging.conffixture.ConfFixture(self.CONF)) pipeline = yaml.dump([{ 'name': 'test_pipeline', 'interval': 5, 'counters': ['instance', 'memory'], 'transformers': [], 'publishers': ['test://'], }]) self.expected_samples = 2 self.sem = eventlet.semaphore.Semaphore(0) pipeline_cfg_file = fileutils.write_to_tempfile(content=pipeline, prefix="pipeline", suffix="yaml") self.CONF.set_override("pipeline_cfg_file", pipeline_cfg_file) self.CONF.set_override("notification_driver", "messaging") self.CONF.set_override("control_exchange", "nova") messaging.setup('fake://') self.addCleanup(messaging.cleanup) self.srv = notification.NotificationService()
def setUp(self): super(BaseRealNotification, self).setUp() self.CONF = self.useFixture(fixture_config.Config()).conf self.setup_messaging(self.CONF, 'nova') pipeline = yaml.dump([{ 'name': 'test_pipeline', 'interval': 5, 'counters': ['instance', 'memory'], 'transformers': [], 'publishers': ['test://'], }]) if six.PY3: pipeline = pipeline.encode('utf-8') self.expected_samples = 2 pipeline_cfg_file = fileutils.write_to_tempfile(content=pipeline, prefix="pipeline", suffix="yaml") self.CONF.set_override("pipeline_cfg_file", pipeline_cfg_file) self.CONF.set_override("store_events", True, group="notification") self.CONF.set_override("disable_non_metric_meters", False, group="notification") ev_pipeline = yaml.dump({ 'sources': [{ 'name': 'test_event', 'events': ['compute.instance.*'], 'sinks': ['test_sink'] }], 'sinks': [{ 'name': 'test_sink', 'publishers': ['test://'] }] }) if six.PY3: ev_pipeline = ev_pipeline.encode('utf-8') self.expected_events = 1 ev_pipeline_cfg_file = fileutils.write_to_tempfile( content=ev_pipeline, prefix="event_pipeline", suffix="yaml") self.CONF.set_override("event_pipeline_cfg_file", ev_pipeline_cfg_file) self.CONF.set_override( "definitions_cfg_file", self.path_get('etc/ceilometer/event_definitions.yaml'), group='event') self.publisher = test_publisher.TestPublisher("")
def setUp(self): super(BinSendSampleTestCase, self).setUp() pipeline_cfg_file = self.path_get('etc/ceilometer/pipeline.yaml') content = "[DEFAULT]\n"\ "rpc_backend=ceilometer.openstack.common.rpc.impl_fake\n"\ "pipeline_cfg_file={0}\n".format(pipeline_cfg_file) self.tempfile = fileutils.write_to_tempfile( content=content, prefix='ceilometer', suffix='.conf')
def setUp(self): super(BinTestCase, self).setUp() content = ("[DEFAULT]\n" "rpc_backend=fake\n" "[database]\n" "connection=log://localhost\n") self.tempfile = fileutils.write_to_tempfile(content=content, prefix='ceilometer', suffix='.conf')
def test_run_expirer_ttl_enabled(self): content = "[database]\n" "time_to_live=1\n" "connection=log://localhost\n" self.tempfile = fileutils.write_to_tempfile(content=content, prefix="ceilometer", suffix=".conf") subp = subprocess.Popen( ["ceilometer-expirer", "-d", "--config-file=%s" % self.tempfile], stderr=subprocess.PIPE ) __, err = subp.communicate() self.assertEqual(subp.poll(), 0) self.assertIn("Dropping data with TTL 1", err)
def test_keystone_middleware_parse_conffile(self): content = "[{0}]\nauth_protocol = barttp"\ "\nauth_version = v2.0".format(acl.OPT_GROUP_NAME) tmpfile = fileutils.write_to_tempfile(content=content, prefix='ceilometer', suffix='.conf') service.prepare_service(['ceilometer-api', '--config-file=%s' % tmpfile]) api_app = app.make_app(self.CONF, attach_storage=False) self.assertTrue(api_app.wsgi_app.auth_uri.startswith('barttp')) os.unlink(tmpfile)
def setUp(self): super(BinCeilometerPollingServiceTestCase, self).setUp() content = ("[DEFAULT]\n" "rpc_backend=fake\n" "[database]\n" "connection=log://localhost\n") if six.PY3: content = content.encode('utf-8') self.tempfile = fileutils.write_to_tempfile(content=content, prefix='ceilometer', suffix='.conf') self.subp = None
def setUp(self): super(BinSendSampleTestCase, self).setUp() pipeline_cfg_file = self.path_get('etc/ceilometer/pipeline.yaml') content = ("[DEFAULT]\n" "rpc_backend=fake\n" "pipeline_cfg_file={0}\n".format(pipeline_cfg_file)) if six.PY3: content = content.encode('utf-8') self.tempfile = fileutils.write_to_tempfile(content=content, prefix='ceilometer', suffix='.conf')
def setUp(self): super(ServiceRestartTest, self).setUp() self.pipeline_cfg_file = fileutils.write_to_tempfile(content='', prefix='pipeline', suffix='.yaml') shutil.copy(self.path_get('etc/ceilometer/pipeline.yaml'), self.pipeline_cfg_file) self.pipelinecfg_read_from_file() policy_file = self.path_get('etc/ceilometer/policy.json') content = "[DEFAULT]\n"\ "rpc_backend=ceilometer.openstack.common.rpc.impl_fake\n"\ "auth_strategy=noauth\n"\ "debug=true\n"\ "pipeline_cfg_file={0}\n"\ "policy_file={1}\n"\ "[database]\n"\ "connection=log://localhost\n".format(self.pipeline_cfg_file, policy_file) self.tempfile = fileutils.write_to_tempfile(content=content, prefix='ceilometer', suffix='.conf')
def run_api(self, content, err_pipe=None): if six.PY3: content = content.encode('utf-8') self.tempfile = fileutils.write_to_tempfile(content=content, prefix='ceilometer', suffix='.conf') if err_pipe: return subprocess.Popen(['ceilometer-api', "--config-file=%s" % self.tempfile], stderr=subprocess.PIPE) else: return subprocess.Popen(['ceilometer-api', "--config-file=%s" % self.tempfile])
def setUp(self): super(BinApiTestCase, self).setUp() # create api_paste.ini file without authentication content = ("[pipeline:main]\n" "pipeline = api-server\n" "[app:api-server]\n" "paste.app_factory = ceilometer.api.app:app_factory\n") self.paste = fileutils.write_to_tempfile(content=content, prefix='api_paste', suffix='.ini') # create ceilometer.conf file self.api_port = random.randint(10000, 11000) self.http = httplib2.Http(proxy_info=None) self.pipeline_cfg_file = self.path_get('etc/ceilometer/pipeline.yaml') self.policy_file = self.path_get('etc/ceilometer/policy.json')
def test_run_expirer_ttl_enabled(self): content = ("[DEFAULT]\n" "rpc_backend=fake\n" "[database]\n" "time_to_live=1\n" "connection=log://localhost\n") self.tempfile = fileutils.write_to_tempfile(content=content, prefix='ceilometer', suffix='.conf') subp = subprocess.Popen(['ceilometer-expirer', '-d', "--config-file=%s" % self.tempfile], stderr=subprocess.PIPE) __, err = subp.communicate() self.assertEqual(0, subp.poll()) self.assertIn("Dropping data with TTL 1", err)
def test_keystone_middleware_parse_conffile(self): pipeline_conf = self.path_get("etc/ceilometer/pipeline.yaml") content = "[DEFAULT]\n"\ "pipeline_cfg_file = {0}\n"\ "[{1}]\n"\ "auth_protocol = barttp\n"\ "auth_version = v2.0\n".format(pipeline_conf, acl.OPT_GROUP_NAME) tmpfile = fileutils.write_to_tempfile(content=content, prefix='ceilometer', suffix='.conf') service.prepare_service(['ceilometer-api', '--config-file=%s' % tmpfile]) self.CONF.set_override('connection', "log://", group="database") api_app = app.setup_app() self.assertTrue(api_app.auth_uri.startswith('barttp')) os.unlink(tmpfile)
def setUp(self): super(BaseRealNotification, self).setUp() self.CONF = self.useFixture(fixture_config.Config()).conf self.setup_messaging(self.CONF, 'nova') pipeline = yaml.dump([{ 'name': 'test_pipeline', 'interval': 5, 'counters': ['instance', 'memory'], 'transformers': [], 'publishers': ['test://'], }]) self.expected_samples = 2 pipeline_cfg_file = fileutils.write_to_tempfile(content=pipeline, prefix="pipeline", suffix="yaml") self.CONF.set_override("pipeline_cfg_file", pipeline_cfg_file) self.publisher = test_publisher.TestPublisher("")
def setUp(self): super(BinApiTestCase, self).setUp() self.api_port = random.randint(10000, 11000) self.http = httplib2.Http() pipeline_cfg_file = self.path_get("etc/ceilometer/pipeline.yaml") policy_file = self.path_get("etc/ceilometer/policy.json") content = ( "[DEFAULT]\n" "rpc_backend=ceilometer.openstack.common.rpc.impl_fake\n" "auth_strategy=noauth\n" "debug=true\n" "pipeline_cfg_file={0}\n" "policy_file={1}\n" "[api]\n" "port={2}\n" "[database]\n" "connection=log://localhost\n".format(pipeline_cfg_file, policy_file, self.api_port) ) self.tempfile = fileutils.write_to_tempfile(content=content, prefix="ceilometer", suffix=".conf") self.subp = subprocess.Popen(["ceilometer-api", "--config-file=%s" % self.tempfile])
def _test_run_expirer_ttl_enabled(self, ttl_name, data_name): content = ("[DEFAULT]\n" "rpc_backend=fake\n" "[database]\n" "%s=1\n" "connection=log://localhost\n" % ttl_name) if six.PY3: content = content.encode('utf-8') self.tempfile = fileutils.write_to_tempfile(content=content, prefix='ceilometer', suffix='.conf') subp = subprocess.Popen(['ceilometer-expirer', '-d', "--config-file=%s" % self.tempfile], stderr=subprocess.PIPE) __, err = subp.communicate() self.assertEqual(0, subp.poll()) msg = "Dropping %s data with TTL 1" % data_name if six.PY3: msg = msg.encode('utf-8') self.assertIn(msg, err)
def _do_test(self, driver, driver_class): pipeline_cfg_file = self.path_get('etc/ceilometer/pipeline.yaml') content = ("[DEFAULT]\n" "rpc_backend=fake\n" "pipeline_cfg_file={0}\n" "debug=true\n" "[database]\n" "time_to_live=1\n" "connection=log://localhost\n".format(pipeline_cfg_file)) if driver: content += "[alarm]\nevaluation_service=%s\n" % driver self.tempfile = fileutils.write_to_tempfile(content=content, prefix='ceilometer', suffix='.conf') self.subp = subprocess.Popen(['ceilometer-alarm-evaluator', "--config-file=%s" % self.tempfile], stderr=subprocess.PIPE) err = self.subp.stderr.read(1024) self.assertIn("Alarm evaluator loaded: %s" % driver_class, err)
def setUp(self): super(TestRealNotification, self).setUp() self.CONF = self.useFixture(config.Config()).conf self.useFixture(oslo.messaging.conffixture.ConfFixture(self.CONF)) pipeline = yaml.dump([{ 'name': 'test_pipeline', 'interval': 5, 'counters': ['*'], 'transformers': [], 'publishers': ['test://'], }]) pipeline_cfg_file = fileutils.write_to_tempfile(content=pipeline, prefix="pipeline", suffix="yaml") self.CONF.set_override("pipeline_cfg_file", pipeline_cfg_file) self.CONF.set_override("notification_driver", "messaging") self.CONF.set_override("control_exchange", "nova") messaging.setup('fake://') self.addCleanup(messaging.cleanup) self.srv = notification.NotificationService()
def _do_test(self, driver, driver_class): pipeline_cfg_file = self.path_get('etc/ceilometer/pipeline.yaml') content = ("[DEFAULT]\n" "rpc_backend=fake\n" "pipeline_cfg_file={0}\n" "debug=true\n" "[database]\n" "time_to_live=1\n" "connection=log://localhost\n".format(pipeline_cfg_file)) if driver: content += "[alarm]\nevaluation_service=%s\n" % driver self.tempfile = fileutils.write_to_tempfile(content=content, prefix='ceilometer', suffix='.conf') self.subp = subprocess.Popen( ['ceilometer-alarm-evaluator', "--config-file=%s" % self.tempfile], stderr=subprocess.PIPE) err = self.subp.stderr.read(1024) self.assertIn("Alarm evaluator loaded: %s" % driver_class, err)
def setUp(self): super(BinApiTestCase, self).setUp() self.api_port = random.randint(10000, 11000) self.http = httplib2.Http() pipeline_cfg_file = self.path_get('etc/ceilometer/pipeline.yaml') policy_file = self.path_get('etc/ceilometer/policy.json') content = "[DEFAULT]\n"\ "rpc_backend=ceilometer.openstack.common.rpc.impl_fake\n"\ "auth_strategy=noauth\n"\ "debug=true\n"\ "pipeline_cfg_file={0}\n"\ "policy_file={1}\n"\ "[api]\n"\ "port={2}\n"\ "[database]\n"\ "connection=log://localhost\n".format(pipeline_cfg_file, policy_file, self.api_port) self.tempfile = fileutils.write_to_tempfile(content=content, prefix='ceilometer', suffix='.conf') self.subp = subprocess.Popen(['ceilometer-api', "--config-file=%s" % self.tempfile])
def setUp(self): super(BinSendSampleTestCase, self).setUp() pipeline_cfg_file = self.path_get("etc/ceilometer/pipeline.yaml") content = "[DEFAULT]\n" "rpc_backend=fake\n" "pipeline_cfg_file={0}\n".format(pipeline_cfg_file) self.tempfile = fileutils.write_to_tempfile(content=content, prefix="ceilometer", suffix=".conf")
def setUp(self): super(BinTestCase, self).setUp() content = ("[database]\n" "connection=log://localhost\n") self.tempfile = fileutils.write_to_tempfile(content=content, prefix='ceilometer', suffix='.conf')