Merge lp:~zulcss/ceilometer/havana-alarms-ftbfs into lp:~ubuntu-server-dev/ceilometer/havana

Proposed by Chuck Short
Status: Merged
Approved by: Chuck Short
Approved revision: 68
Merged at revision: 67
Proposed branch: lp:~zulcss/ceilometer/havana-alarms-ftbfs
Merge into: lp:~ubuntu-server-dev/ceilometer/havana
Diff against target: 454 lines (+96/-93)
4 files modified
debian/ceilometer-common.install (+1/-1)
debian/changelog (+5/-2)
debian/control (+1/-1)
debian/patches/skip-database-tests.patch (+89/-89)
To merge this branch: bzr merge lp:~zulcss/ceilometer/havana-alarms-ftbfs
Reviewer Review Type Date Requested Status
Scott Moser Approve
Review via email: mp+188331@code.launchpad.net

Description of the change

Fixes FTBFS.

To post a comment you must log in.
Revision history for this message
Scott Moser (smoser) wrote :

lgtm

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'debian/ceilometer-common.install'
2--- debian/ceilometer-common.install 2013-07-18 13:28:12 +0000
3+++ debian/ceilometer-common.install 2013-09-30 13:28:40 +0000
4@@ -3,7 +3,7 @@
5 etc/ceilometer/policy.json etc/ceilometer
6 etc/ceilometer/sources.json etc/ceilometer
7 tools/show_data.py usr/share/doc/ceilometer
8+usr/bin/ceilometer-alarm-evaluator
9 usr/bin/ceilometer-alarm-notifier
10-usr/bin/ceilometer-alarm-singleton
11 usr/bin/ceilometer-dbsync
12 usr/bin/ceilometer-expirer
13
14=== modified file 'debian/changelog'
15--- debian/changelog 2013-09-19 15:36:08 +0000
16+++ debian/changelog 2013-09-30 13:28:40 +0000
17@@ -1,9 +1,9 @@
18 ceilometer (2013.2~b3-0ubuntu2) UNRELEASED; urgency=low
19
20 * debian/patches/fix-setup-requirements.patch: Dropped no longer
21- needed.
22+ needed.
23 * debian/patches/skip-database.patch: Refreshed
24- * debian/control:
25+ * debian/control:
26 - Add versioned dependency for python-pbr.
27 - Bump version dependency for python-webob.
28 - Add versioned dependency for alembic.
29@@ -33,6 +33,9 @@
30 - Added binary dependency for python-netaddr.
31 - Add python-six as a dependency.
32 * debian/patches/fix-setup-requirements.patch: Bump sqlachemy version.
33+ * debian/ceilometer-common.install:
34+ - Dropped ceilometer-alarm-singleton, no longer exists.
35+ - Added usr/bin/ceilometer-alarm-evaluator.
36
37 -- Chuck Short <zulcss@ubuntu.com> Fri, 13 Sep 2013 09:24:21 -0400
38
39
40=== modified file 'debian/control'
41--- debian/control 2013-09-19 15:25:32 +0000
42+++ debian/control 2013-09-30 13:28:40 +0000
43@@ -29,7 +29,7 @@
44 python-netaddr,
45 python-nova,
46 python-novaclient (>= 1:2.12.10),
47- python-oslo.config (>= 1:1.2.0a3),
48+ python-oslo.config (>= 1:1.2.0),
49 python-oslo.sphinx,
50 python-pbr (>= 0.5.21),
51 python-pecan (>= 0.2.0),
52
53=== modified file 'debian/patches/skip-database-tests.patch'
54--- debian/patches/skip-database-tests.patch 2013-09-27 18:17:03 +0000
55+++ debian/patches/skip-database-tests.patch 2013-09-30 13:28:40 +0000
56@@ -1,8 +1,8 @@
57-Index: upstream/ceilometer/tests/db.py
58-===================================================================
59---- upstream.orig/ceilometer/tests/db.py 2013-09-27 11:16:25.365799203 -0700
60-+++ upstream/ceilometer/tests/db.py 2013-09-27 11:16:25.353799203 -0700
61-@@ -41,8 +41,8 @@
62+diff --git a/ceilometer/tests/db.py b/ceilometer/tests/db.py
63+index 6a767cf..58f2539 100644
64+--- a/ceilometer/tests/db.py
65++++ b/ceilometer/tests/db.py
66+@@ -41,8 +41,8 @@ class TestBase(test_base.TestCase):
67 message='.*you must provide a username and password.*')
68 try:
69 self.conn = storage.get_connection(cfg.CONF)
70@@ -13,7 +13,7 @@
71 self.conn.upgrade()
72
73 def tearDown(self):
74-@@ -56,9 +56,7 @@
75+@@ -56,9 +56,7 @@ class MongoDBFakeConnectionUrl(object):
76 def __init__(self):
77 self.url = os.environ.get('CEILOMETER_TEST_MONGODB_URL')
78 if not self.url:
79@@ -24,7 +24,7 @@
80
81 def __str__(self):
82 return '%(url)s_%(db)s' % dict(url=self.url, db=uuid.uuid4().hex)
83-@@ -83,7 +81,4 @@
84+@@ -83,7 +81,4 @@ class MixinTestsWithBackendScenarios(object):
85
86 scenarios = [
87 ('sqlalchemy', dict(database_connection='sqlite://')),
88@@ -32,11 +32,11 @@
89 - ('hbase', dict(database_connection='hbase://__test__')),
90 - ('db2', dict(database_connection=DB2FakeConnectionUrl())),
91 ]
92-Index: upstream/tests/agentbase.py
93-===================================================================
94---- upstream.orig/tests/agentbase.py 2013-09-27 11:16:25.365799203 -0700
95-+++ upstream/tests/agentbase.py 2013-09-27 11:16:25.357799203 -0700
96-@@ -174,7 +174,10 @@
97+diff --git a/tests/agentbase.py b/tests/agentbase.py
98+index 383b8e7..23d6f65 100644
99+--- a/tests/agentbase.py
100++++ b/tests/agentbase.py
101+@@ -175,7 +175,10 @@ class BaseAgentManagerTestCase(base.TestCase):
102 self.assertEqual(len(polling_tasks), 1)
103 self.assertTrue(60 in polling_tasks.keys())
104 self.mgr.interval_task(polling_tasks.values()[0])
105@@ -48,7 +48,7 @@
106 self.assertEqual(pub.samples[0], self.Pollster.test_data)
107
108 def test_setup_polling_tasks_multiple_interval(self):
109-@@ -243,7 +246,10 @@
110+@@ -244,7 +247,10 @@ class BaseAgentManagerTestCase(base.TestCase):
111 self.assertEqual(len(polling_tasks.keys()), 1)
112 polling_tasks.get(10)
113 self.mgr.interval_task(polling_tasks.get(10))
114@@ -59,12 +59,12 @@
115 + self.skipTest("Skipped by Ubuntu")
116 self.assertEqual(len(pub.samples), 0)
117
118- def test_manager_exception_persistency(self):
119-Index: upstream/tests/alarm/test_notifier.py
120-===================================================================
121---- upstream.orig/tests/alarm/test_notifier.py 2013-09-27 11:16:25.365799203 -0700
122-+++ upstream/tests/alarm/test_notifier.py 2013-09-27 11:16:25.357799203 -0700
123-@@ -58,7 +58,10 @@
124+ def test_agent_manager_initialize_service_hook(self):
125+diff --git a/tests/alarm/test_notifier.py b/tests/alarm/test_notifier.py
126+index 3d71b75..46ea1aa 100644
127+--- a/tests/alarm/test_notifier.py
128++++ b/tests/alarm/test_notifier.py
129+@@ -58,7 +58,10 @@ class TestAlarmNotifier(base.TestCase):
130 'reason': 'Everything is on fire',
131 }
132 self.service.notify_alarm(context.get_admin_context(), data)
133@@ -76,7 +76,7 @@
134 self.assertEqual(len(notifications), 1)
135 self.assertEqual(notifications[0], (
136 urlparse.urlsplit(data['actions'][0]),
137-@@ -90,6 +93,7 @@
138+@@ -90,6 +93,7 @@ class TestAlarmNotifier(base.TestCase):
139 return notification
140
141 def test_notify_alarm_rest_action_ok(self):
142@@ -84,7 +84,7 @@
143 action = 'http://host/action'
144
145 with mock.patch('eventlet.spawn_n', self._fake_spawn_n):
146-@@ -102,8 +106,11 @@
147+@@ -102,8 +106,11 @@ class TestAlarmNotifier(base.TestCase):
148 action = 'https://host/action'
149 certificate = "/etc/ssl/cert/whatever.pem"
150
151@@ -98,7 +98,7 @@
152
153 with mock.patch('eventlet.spawn_n', self._fake_spawn_n):
154 with mock.patch.object(requests, 'post') as poster:
155-@@ -117,10 +124,13 @@
156+@@ -117,10 +124,13 @@ class TestAlarmNotifier(base.TestCase):
157 certificate = "/etc/ssl/cert/whatever.pem"
158 key = "/etc/ssl/cert/whatever.key"
159
160@@ -116,7 +116,7 @@
161
162 with mock.patch('eventlet.spawn_n', self._fake_spawn_n):
163 with mock.patch.object(requests, 'post') as poster:
164-@@ -132,8 +142,11 @@
165+@@ -132,8 +142,11 @@ class TestAlarmNotifier(base.TestCase):
166 def test_notify_alarm_rest_action_with_ssl_verify_disable_by_cfg(self):
167 action = 'https://host/action'
168
169@@ -130,7 +130,7 @@
170
171 with mock.patch('eventlet.spawn_n', self._fake_spawn_n):
172 with mock.patch.object(requests, 'post') as poster:
173-@@ -143,6 +156,7 @@
174+@@ -143,6 +156,7 @@ class TestAlarmNotifier(base.TestCase):
175 verify=False)
176
177 def test_notify_alarm_rest_action_with_ssl_verify_disable(self):
178@@ -138,7 +138,7 @@
179 action = 'https://host/action?ceilometer-alarm-ssl-verify=0'
180
181 with mock.patch('eventlet.spawn_n', self._fake_spawn_n):
182-@@ -155,8 +169,11 @@
183+@@ -155,8 +169,11 @@ class TestAlarmNotifier(base.TestCase):
184 def test_notify_alarm_rest_action_with_ssl_verify_enable_by_user(self):
185 action = 'https://host/action?ceilometer-alarm-ssl-verify=1'
186
187@@ -152,11 +152,11 @@
188
189 with mock.patch('eventlet.spawn_n', self._fake_spawn_n):
190 with mock.patch.object(requests, 'post') as poster:
191-Index: upstream/tests/api/v1/test_compute_duration_by_resource_scenarios.py
192-===================================================================
193---- upstream.orig/tests/api/v1/test_compute_duration_by_resource_scenarios.py 2013-09-27 11:16:25.365799203 -0700
194-+++ upstream/tests/api/v1/test_compute_duration_by_resource_scenarios.py 2013-09-27 11:16:25.357799203 -0700
195-@@ -85,7 +85,10 @@
196+diff --git a/tests/api/v1/test_compute_duration_by_resource_scenarios.py b/tests/api/v1/test_compute_duration_by_resource_scenarios.py
197+index 775b890..5a2d26a 100644
198+--- a/tests/api/v1/test_compute_duration_by_resource_scenarios.py
199++++ b/tests/api/v1/test_compute_duration_by_resource_scenarios.py
200+@@ -85,7 +85,10 @@ class TestComputeDurationByResource(tests_api.TestBase,
201 assert data['duration'] is None
202
203 def _assert_times_match(self, actual, expected):
204@@ -168,11 +168,11 @@
205 assert actual == expected
206
207 def test_overlap_range_start(self):
208-Index: upstream/tests/api/v2/test_app.py
209-===================================================================
210---- upstream.orig/tests/api/v2/test_app.py 2013-09-27 11:16:25.365799203 -0700
211-+++ upstream/tests/api/v2/test_app.py 2013-09-27 11:16:25.357799203 -0700
212-@@ -45,7 +45,10 @@
213+diff --git a/tests/api/v2/test_app.py b/tests/api/v2/test_app.py
214+index 8033891..f2a0ac2 100644
215+--- a/tests/api/v2/test_app.py
216++++ b/tests/api/v2/test_app.py
217+@@ -45,7 +45,10 @@ class TestApp(base.TestCase):
218 cfg.CONF.set_override("pipeline_cfg_file",
219 self.path_get("etc/ceilometer/pipeline.yaml"))
220 cfg.CONF.set_override('connection', "log://", group="database")
221@@ -184,7 +184,7 @@
222 self.assertEqual(api_app.auth_protocol, 'foottp')
223
224 def test_keystone_middleware_parse_conffile(self):
225-@@ -60,7 +63,10 @@
226+@@ -60,7 +63,10 @@ class TestApp(base.TestCase):
227 service.prepare_service(['ceilometer-api',
228 '--config-file=%s' % tmpfile])
229 cfg.CONF.set_override('connection', "log://", group="database")
230@@ -196,11 +196,11 @@
231 self.assertEqual(api_app.auth_protocol, 'barttp')
232 os.unlink(tmpfile)
233
234-Index: upstream/tests/api/v2/test_statistics_scenarios.py
235-===================================================================
236---- upstream.orig/tests/api/v2/test_statistics_scenarios.py 2013-09-27 11:16:25.365799203 -0700
237-+++ upstream/tests/api/v2/test_statistics_scenarios.py 2013-09-27 11:16:25.357799203 -0700
238-@@ -1234,15 +1234,17 @@
239+diff --git a/tests/api/v2/test_statistics_scenarios.py b/tests/api/v2/test_statistics_scenarios.py
240+index 61d05d7..081a1f9 100644
241+--- a/tests/api/v2/test_statistics_scenarios.py
242++++ b/tests/api/v2/test_statistics_scenarios.py
243+@@ -1234,15 +1234,17 @@ class TestGroupBySource(base.FunctionalTest,
244 # tests.
245
246 scenarios = [
247@@ -222,11 +222,11 @@
248 super(TestGroupBySource, self).setUp()
249
250 test_sample_data = (
251-Index: upstream/tests/collector/dispatcher/test_db.py
252-===================================================================
253---- upstream.orig/tests/collector/dispatcher/test_db.py 2013-09-27 11:16:25.365799203 -0700
254-+++ upstream/tests/collector/dispatcher/test_db.py 2013-09-27 11:16:25.357799203 -0700
255-@@ -30,7 +30,10 @@
256+diff --git a/tests/collector/dispatcher/test_db.py b/tests/collector/dispatcher/test_db.py
257+index a538a5d..7ca68ed 100644
258+--- a/tests/collector/dispatcher/test_db.py
259++++ b/tests/collector/dispatcher/test_db.py
260+@@ -30,7 +30,10 @@ class TestDispatcherDB(tests_base.TestCase):
261
262 def setUp(self):
263 super(TestDispatcherDB, self).setUp()
264@@ -238,11 +238,11 @@
265 self.ctx = None
266
267 def test_valid_message(self):
268-Index: upstream/tests/collector/test_service.py
269-===================================================================
270---- upstream.orig/tests/collector/test_service.py 2013-09-27 11:16:25.365799203 -0700
271-+++ upstream/tests/collector/test_service.py 2013-09-27 11:16:25.357799203 -0700
272-@@ -114,7 +114,10 @@
273+diff --git a/tests/collector/test_service.py b/tests/collector/test_service.py
274+index 0bc94da..7c3c560 100644
275+--- a/tests/collector/test_service.py
276++++ b/tests/collector/test_service.py
277+@@ -114,7 +114,10 @@ class TestUDPCollectorService(TestCollector):
278
279 def setUp(self):
280 super(TestUDPCollectorService, self).setUp()
281@@ -254,7 +254,7 @@
282 self.counter = sample.Sample(
283 name='foobar',
284 type='bad',
285-@@ -189,7 +192,10 @@
286+@@ -189,7 +192,10 @@ class TestCollectorService(TestCollector):
287
288 def setUp(self):
289 super(TestCollectorService, self).setUp()
290@@ -266,7 +266,7 @@
291 self.ctx = None
292
293 @patch('ceilometer.pipeline.setup_pipeline', MagicMock())
294-@@ -197,8 +203,11 @@
295+@@ -197,8 +203,11 @@ class TestCollectorService(TestCollector):
296 # If we try to create a real RPC connection, init_host() never
297 # returns. Mock it out so we can establish the service
298 # configuration.
299@@ -280,7 +280,7 @@
300
301 @patch('ceilometer.pipeline.setup_pipeline', MagicMock())
302 def test_process_notification(self):
303-@@ -206,8 +215,11 @@
304+@@ -206,8 +215,11 @@ class TestCollectorService(TestCollector):
305 # returns. Mock it out so we can establish the service
306 # configuration.
307 cfg.CONF.set_override("store_events", False, group="collector")
308@@ -294,11 +294,11 @@
309 self.srv.pipeline_manager.pipelines[0] = MagicMock()
310 self.srv.notification_manager = test_manager.TestExtensionManager(
311 [extension.Extension('test',
312-Index: upstream/tests/compute/pollsters/test_location_metadata.py
313-===================================================================
314---- upstream.orig/tests/compute/pollsters/test_location_metadata.py 2013-09-27 11:16:25.365799203 -0700
315-+++ upstream/tests/compute/pollsters/test_location_metadata.py 2013-09-27 11:16:25.357799203 -0700
316-@@ -47,7 +47,10 @@
317+diff --git a/tests/compute/pollsters/test_location_metadata.py b/tests/compute/pollsters/test_location_metadata.py
318+index a14ddfc..60619b5 100644
319+--- a/tests/compute/pollsters/test_location_metadata.py
320++++ b/tests/compute/pollsters/test_location_metadata.py
321+@@ -47,7 +47,10 @@ class TestLocationMetadata(test_base.TestCase):
322
323 @mock.patch('ceilometer.pipeline.setup_pipeline', mock.MagicMock())
324 def setUp(self):
325@@ -310,11 +310,11 @@
326 super(TestLocationMetadata, self).setUp()
327
328 # Mimics an instance returned from nova api call
329-Index: upstream/tests/compute/test_manager.py
330-===================================================================
331---- upstream.orig/tests/compute/test_manager.py 2013-09-27 11:16:25.365799203 -0700
332-+++ upstream/tests/compute/test_manager.py 2013-09-27 11:16:25.357799203 -0700
333-@@ -29,7 +29,10 @@
334+diff --git a/tests/compute/test_manager.py b/tests/compute/test_manager.py
335+index b3f3b3d..8e28a50 100644
336+--- a/tests/compute/test_manager.py
337++++ b/tests/compute/test_manager.py
338+@@ -29,7 +29,10 @@ class TestManager(base.TestCase):
339
340 @mock.patch('ceilometer.pipeline.setup_pipeline', mock.MagicMock())
341 def test_load_plugins(self):
342@@ -326,7 +326,7 @@
343 self.assertIsNotNone(list(mgr.pollster_manager))
344
345
346-@@ -45,7 +48,10 @@
347+@@ -45,7 +48,10 @@ class TestRunTasks(agentbase.BaseAgentManagerTestCase):
348 raise Exception
349
350 def setup_manager(self):
351@@ -338,11 +338,11 @@
352
353 @mock.patch('ceilometer.pipeline.setup_pipeline', mock.MagicMock())
354 def setUp(self):
355-Index: upstream/tests/storage/test_get_engine.py
356-===================================================================
357---- upstream.orig/tests/storage/test_get_engine.py 2013-09-27 11:16:25.365799203 -0700
358-+++ upstream/tests/storage/test_get_engine.py 2013-09-27 11:16:25.357799203 -0700
359-@@ -31,7 +31,10 @@
360+diff --git a/tests/storage/test_get_engine.py b/tests/storage/test_get_engine.py
361+index 498b6f4..4824461 100644
362+--- a/tests/storage/test_get_engine.py
363++++ b/tests/storage/test_get_engine.py
364+@@ -31,7 +31,10 @@ class EngineTest(testtools.TestCase):
365 conf = mox.Mox().CreateMockAnything()
366 conf.database = mox.Mox().CreateMockAnything()
367 conf.database.connection = 'log://localhost'
368@@ -354,11 +354,11 @@
369 self.assertIsInstance(engine, impl_log.LogStorage)
370
371 def test_get_engine_no_such_engine(self):
372-Index: upstream/tests/test_bin.py
373-===================================================================
374---- upstream.orig/tests/test_bin.py 2013-09-27 11:16:25.365799203 -0700
375-+++ upstream/tests/test_bin.py 2013-09-27 11:16:25.361799203 -0700
376-@@ -36,14 +36,20 @@
377+diff --git a/tests/test_bin.py b/tests/test_bin.py
378+index a358b57..bc2cd2a 100644
379+--- a/tests/test_bin.py
380++++ b/tests/test_bin.py
381+@@ -36,14 +36,20 @@ class BinTestCase(base.TestCase):
382 tmp.write("connection=log://localhost\n")
383
384 def test_dbsync_run(self):
385@@ -385,7 +385,7 @@
386
387
388 class BinSendCounterTestCase(base.TestCase):
389-@@ -59,11 +65,14 @@
390+@@ -59,11 +65,14 @@ class BinSendCounterTestCase(base.TestCase):
391 "pipeline_cfg_file=%s\n" % pipeline_cfg_file)
392
393 def test_send_counter_run(self):
394@@ -405,7 +405,7 @@
395
396
397 class BinApiTestCase(base.TestCase):
398-@@ -92,8 +101,11 @@
399+@@ -92,8 +101,11 @@ class BinApiTestCase(base.TestCase):
400 "port=%s\n" % self.api_port)
401 tmp.write("[database]\n")
402 tmp.write("connection=log://localhost\n")
403@@ -419,11 +419,11 @@
404
405 def tearDown(self):
406 super(BinApiTestCase, self).tearDown()
407-Index: upstream/tests/test_notifier.py
408-===================================================================
409---- upstream.orig/tests/test_notifier.py 2013-09-27 11:16:25.365799203 -0700
410-+++ upstream/tests/test_notifier.py 2013-09-27 11:16:25.361799203 -0700
411-@@ -80,7 +80,10 @@
412+diff --git a/tests/test_notifier.py b/tests/test_notifier.py
413+index 814dca1..9a659fb 100644
414+--- a/tests/test_notifier.py
415++++ b/tests/test_notifier.py
416+@@ -80,7 +80,10 @@ class TestNotifier(tests_base.TestCase):
417 }],
418 transformer_manager)
419
420@@ -435,11 +435,11 @@
421 self.assertEqual(len(pub.samples), 0)
422 notifier.notify(None, MESSAGE)
423 self.assertTrue(len(pub.samples) > 0)
424-Index: upstream/tests/test_service.py
425-===================================================================
426---- upstream.orig/tests/test_service.py 2013-09-27 11:16:25.365799203 -0700
427-+++ upstream/tests/test_service.py 2013-09-27 11:16:25.361799203 -0700
428-@@ -98,8 +98,8 @@
429+diff --git a/tests/test_service.py b/tests/test_service.py
430+index 65580b6..8497648 100644
431+--- a/tests/test_service.py
432++++ b/tests/test_service.py
433+@@ -98,8 +98,8 @@ class ServiceRestartTest(base.TestCase):
434
435 def tearDown(self):
436 super(ServiceRestartTest, self).tearDown()
437@@ -450,7 +450,7 @@
438
439 @staticmethod
440 def _check_process_alive(pid):
441-@@ -143,7 +143,10 @@
442+@@ -143,7 +143,10 @@ class ServiceRestartTest(base.TestCase):
443 self.check_process_alive()
444
445 def _service_restart(self, cmd):
446@@ -462,7 +462,7 @@
447
448 self.assertTrue(self.sub.pid)
449 #NOTE(Fengqian): Modify the pipleline configure file to see
450-@@ -159,7 +162,13 @@
451+@@ -159,7 +162,13 @@ class ServiceRestartTest(base.TestCase):
452 self.parse_output("Pipeline config: ").ret_stream))
453
454 def test_compute_service_restart(self):

Subscribers

People subscribed via source and target branches