We're mocking internal calls inside heatclient ("heatclient.common.event_utils.get_events"), which can break us even though the interface didn't change. See https://review.openstack.org/#/c/374968/ for one example where it was fixed. A couple of other places where this is done should also be updated.
Previous description (for context):
---------------------
All the UT jobs, both on master and stable/newton, are failing with the following error:
2016-09-22 21:21:10.260701 | FAIL: tripleoclient.tests.test_utils.TestWaitForStackUtil.test_wait_for_stack_in_progress
2016-09-22 21:21:10.260734 | tags: worker-1
2016-09-22 21:21:10.260761 | ----------------------------------------------------------------------
2016-09-22 21:21:10.260777 | Traceback (most recent call last):
2016-09-22 21:21:10.260821 | File "/home/jenkins/workspace/gate-python-tripleoclient-python34/.tox/py34/lib/python3.4/site-packages/mock/mock.py", line 1305, in patched
2016-09-22 21:21:10.260842 | return func(*args, **keywargs)
2016-09-22 21:21:10.260888 | File "/home/jenkins/workspace/gate-python-tripleoclient-python34/tripleoclient/tests/test_utils.py", line 237, in test_wait_for_stack_in_progress
2016-09-22 21:21:10.260930 | utils.wait_for_stack_ready(self.mock_orchestration, 'stack')
2016-09-22 21:21:10.260971 | File "/home/jenkins/workspace/gate-python-tripleoclient-python34/tripleoclient/utils.py", line 281, in wait_for_stack_ready
2016-09-22 21:21:10.261004 | poll_period=5, marker=marker, out=out, nested_depth=2)
2016-09-22 21:21:10.261056 | File "/home/jenkins/workspace/gate-python-tripleoclient-python34/.tox/py34/lib/python3.4/site-packages/heatclient/common/event_utils.py", line 194, in poll_for_events
2016-09-22 21:21:10.261091 | events_log = utils.event_log_formatter(events, event_log_context)
2016-09-22 21:21:10.261142 | File "/home/jenkins/workspace/gate-python-tripleoclient-python34/.tox/py34/lib/python3.4/site-packages/heatclient/common/utils.py", line 172, in event_log_formatter
2016-09-22 21:21:10.261164 | rsrc_name = event_log_context.build_resource_name(event)
2016-09-22 21:21:10.261240 | File "/home/jenkins/workspace/gate-python-tripleoclient-python34/.tox/py34/lib/python3.4/site-packages/heatclient/common/utils.py", line 135, in build_resource_name
2016-09-22 21:21:10.261274 | stack_id = get_stack_id()
2016-09-22 21:21:10.261324 | File "/home/jenkins/workspace/gate-python-tripleoclient-python34/.tox/py34/lib/python3.4/site-packages/heatclient/common/utils.py", line 128, in get_stack_id
2016-09-22 21:21:10.261354 | for l in getattr(event, 'links', []):
2016-09-22 21:21:10.261373 | TypeError: 'Mock' object is not iterable
Example:
https://review.openstack.org/#/c/375125/1
http://logs.openstack.org/25/375125/1/check/gate-python-tripleoclient-python34/423218d/console.html#_2016-09-22_21_21_10_260701
I can recreate locally after recreating the tox environment.