From 03770d0a05b504aa6ee7896ea96994bac07a521b Mon Sep 17 00:00:00 2001 From: rahu3180 Date: Tue, 2 Apr 2019 07:22:53 -0700 Subject: [PATCH 01/10] Tweak with the flow --- otter/auth.py | 48 ++++++++++++++++++++++++++++++----------- otter/test/test_auth.py | 38 ++++++++++++++++---------------- requirements/mimic.txt | 3 ++- 3 files changed, 57 insertions(+), 32 deletions(-) diff --git a/otter/auth.py b/otter/auth.py index 720b9a8d3..69d77c607 100644 --- a/otter/auth.py +++ b/otter/auth.py @@ -261,11 +261,36 @@ def authenticate_tenant(self, tenant_id, log=None): see :meth:`IAuthenticator.authenticate_tenant` """ auth = partial(self._auth_me, log=log) - - d = user_for_tenant(self._admin_url, - self._identity_admin_user, - self._identity_admin_password, - tenant_id, log=log) + request = { + "auth": { + "passwordCredentials": { + "username": self._identity_admin_user, + "password": self._identity_admin_password + }}} + if tenant_id: + request['auth']['tenantId'] = tenant_id + token = '' + + def set_token(tokenVal): + global token + token = tokenVal + + d = treq.post( + append_segments(self._admin_url, 'tokens'), + json.dumps(request), + headers=headers(), + ) + d.addCallback(check_success, [200, 203]) + d.addErrback( + wrap_upstream_error, 'identity', + ('authenticating', self._identity_admin_user), self._admin_url + ) + d.addCallback(treq.json_content) + d.addCallback(extract_token) + d.addCallback(set_token) + d.addCallback(lambda ignore: user_for_tenant(self._admin_url, + token, + log=log)) def impersonate(user): iud = impersonate_user(self._admin_url, @@ -371,7 +396,7 @@ def endpoints_for_token(auth_endpoint, identity_admin_token, user_token, return d -def user_for_tenant(auth_endpoint, username, password, tenant_id, log=None): +def user_for_tenant(auth_endpoint, token, log=None): """ Use a super secret API to get the special actual username for a tenant id. @@ -383,17 +408,16 @@ def user_for_tenant(auth_endpoint, username, password, tenant_id, log=None): :return: Username of the magical identity:user-admin user for the tenantid. """ d = treq.get( - append_segments(auth_endpoint.replace('v2.0', 'v1.1'), 'mosso', str(tenant_id)), - auth=(username, password), + append_segments(auth_endpoint, 'users'), + headers=headers(token), allow_redirects=False, log=log) - d.addCallback(check_success, [301]) - d.addErrback(wrap_upstream_error, 'identity', 'mosso', auth_endpoint) + d.addCallback(check_success, [200, 203]) + d.addErrback(wrap_upstream_error, 'identity', 'users', auth_endpoint) d.addCallback(treq.json_content) - d.addCallback(lambda user: user['user']['id']) + d.addCallback(lambda user: user['users'][0]['username']) return d - def authenticate_user(auth_endpoint, username, password, tenant_id=None, log=None, pool=None): """ diff --git a/otter/test/test_auth.py b/otter/test/test_auth.py index e80dbfe5c..ece5dc54b 100644 --- a/otter/test/test_auth.py +++ b/otter/test/test_auth.py @@ -36,7 +36,7 @@ ) from otter.effect_dispatcher import get_simple_dispatcher from otter.test.utils import SameJSON, iMock, mock_log, patch -from otter.util.http import APIError, UpstreamError +from otter.util.http import APIError, UpstreamError, headers expected_headers = {'accept': ['application/json'], @@ -299,18 +299,18 @@ def test_user_for_tenant(self): the list of users for a given tenant. """ response = mock.Mock(code=200) - response_body = {'user': {'id': 'ausername'}} + response_body = {'users': [{'username': 'username'}]} self.treq.json_content.return_value = succeed(response_body) self.treq.get.return_value = succeed(response) - d = user_for_tenant('http://identity/v2.0', 'username', 'password', - 111111, log=self.log) + d = user_for_tenant('http://identity/v2.0', 'auth-token', + log=self.log) - self.assertEqual(self.successResultOf(d), 'ausername') + self.assertEqual(self.successResultOf(d), 'username') self.treq.get.assert_called_once_with( - 'http://identity/v1.1/mosso/111111', - auth=('username', 'password'), + 'http://identity/v2.0/users', + headers=headers('auth-token'), allow_redirects=False, log=self.log) def test_user_for_tenant_propagates_errors(self): @@ -321,8 +321,7 @@ def test_user_for_tenant_propagates_errors(self): self.treq.content.return_value = succeed('error_body') self.treq.get.return_value = succeed(response) - d = user_for_tenant('http://identity/v2.0', 'username', 'password', - 111111) + d = user_for_tenant('http://identity/v2.0', 'username', 'auth-token') failure = self.failureResultOf(d) self.assertTrue(failure.check(UpstreamError)) @@ -508,16 +507,16 @@ def test_authenticate_tenant_gets_user_for_specified_tenant(self): endpoint. """ self.successResultOf(self.ia.authenticate_tenant(111111)) - self.user_for_tenant.assert_called_once_with(self.admin_url, self.user, - self.password, 111111, + self.user_for_tenant.assert_called_once_with(self.admin_url, + 'auth-token', log=None) self.user_for_tenant.reset_mock() self.successResultOf(self.ia.authenticate_tenant(111111, log=self.log)) - self.user_for_tenant.assert_called_once_with(self.admin_url, self.user, - self.password, 111111, + self.user_for_tenant.assert_called_once_with(self.admin_url, + 'auth-token', log=self.log) def test_authenticate_tenant_impersonates_first_user(self): @@ -548,12 +547,12 @@ def test_authenticate_tenant_retries_impersonates_first_user(self): succeed({'access': {'token': {'id': 'impersonation_token'}}})] self.successResultOf(self.ia.authenticate_tenant(111111, self.log)) self.impersonate_user.assert_has_calls( - [mock.call(self.admin_url, None, 'test_user', log=self.log), + [mock.call(self.admin_url, 'auth-token', 'test_user', log=self.log), mock.call(self.admin_url, 'auth-token', 'test_user', log=self.log)]) - self.authenticate_user.assert_called_once_with(self.url, self.user, + self.authenticate_user.assert_called_with(self.url, self.user, self.password, log=self.log) - self.log.msg.assert_called_once_with('Getting new identity admin token') + self.log.msg.assert_called_with('Getting new identity admin token') def test_authenticate_tenant_gets_endpoints_for_the_impersonation_token(self): """ @@ -575,12 +574,12 @@ def test_authenticate_tenant_retries_getting_endpoints_for_the_impersonation_tok succeed({'endpoints': [{'name': 'anEndpoint', 'type': 'anType'}]})] self.successResultOf(self.ia.authenticate_tenant(111111, log=self.log)) self.endpoints_for_token.assert_has_calls( - [mock.call(self.admin_url, None, 'impersonation_token', log=self.log), + [mock.call(self.admin_url, 'auth-token', 'impersonation_token', log=self.log), mock.call(self.admin_url, 'auth-token', 'impersonation_token', log=self.log)]) - self.authenticate_user.assert_called_once_with(self.url, self.user, + self.authenticate_user.assert_called_with(self.url, self.user, self.password, log=self.log) - self.log.msg.assert_called_once_with('Getting new identity admin token') + self.log.msg.assert_called_with('Getting new identity admin token') def test_authenticate_tenant_returns_impersonation_token_and_endpoint_list(self): """ @@ -988,3 +987,4 @@ def test_cache_ttl_defaults(self): r = mock.Mock() a = generate_authenticator(r, self.config) self.assertEqual(a._ttl, 300) + diff --git a/requirements/mimic.txt b/requirements/mimic.txt index 0910a53c0..c34c23b83 100644 --- a/requirements/mimic.txt +++ b/requirements/mimic.txt @@ -1 +1,2 @@ -git+https://github.com/rackerlabs/mimic.git@594dd5c8e80b670fa2d0c42f5eec9645e14aa54e +#git+https://github.com/rackerlabs/mimic.git@594dd5c8e80b670fa2d0c42f5eec9645e14aa54e +git+ssh://github.com/rackerlabs/autoscale-mimic.git@autoscale-546 From 4ccbffefa469f0e7f509355a64ca5eae3971b2d4 Mon Sep 17 00:00:00 2001 From: rahu3180 Date: Wed, 3 Apr 2019 04:53:36 -0700 Subject: [PATCH 02/10] Update the flow by direct function call --- otter/auth.py | 56 +++++++++++++++++++++++------------------ otter/test/test_auth.py | 8 +++--- 2 files changed, 36 insertions(+), 28 deletions(-) diff --git a/otter/auth.py b/otter/auth.py index 69d77c607..b82abc7c9 100644 --- a/otter/auth.py +++ b/otter/auth.py @@ -261,36 +261,44 @@ def authenticate_tenant(self, tenant_id, log=None): see :meth:`IAuthenticator.authenticate_tenant` """ auth = partial(self._auth_me, log=log) - request = { - "auth": { - "passwordCredentials": { - "username": self._identity_admin_user, - "password": self._identity_admin_password - }}} - if tenant_id: - request['auth']['tenantId'] = tenant_id +# request = { +# "auth": { +# "passwordCredentials": { +# "username": self._identity_admin_user, +# "password": self._identity_admin_password +# } +# } +# } +# if tenant_id: +# request['auth']['tenantId'] = tenant_id token = '' - def set_token(tokenVal): + def set_token(token_val): global token - token = tokenVal - - d = treq.post( - append_segments(self._admin_url, 'tokens'), - json.dumps(request), - headers=headers(), - ) - d.addCallback(check_success, [200, 203]) - d.addErrback( - wrap_upstream_error, 'identity', - ('authenticating', self._identity_admin_user), self._admin_url - ) - d.addCallback(treq.json_content) + token = token_val +# d = treq.post( +# append_segments(self._admin_url, 'tokens'), +# json.dumps(request), +# headers=headers(), +# log=log, +# pool=None +# ) +# d.addCallback(check_success, [200, 203]) +# d.addErrback( +# wrap_upstream_error, 'identity', +# ('authenticating', self._identity_admin_user), self._admin_url +# ) +# d.addCallback(treq.json_content) +# d.addCallback(extract_token) + d = authenticate_user(self._url, + self._identity_admin_user, + self._identity_admin_password, + log=log) d.addCallback(extract_token) d.addCallback(set_token) d.addCallback(lambda ignore: user_for_tenant(self._admin_url, - token, - log=log)) + token, + log=log)) def impersonate(user): iud = impersonate_user(self._admin_url, diff --git a/otter/test/test_auth.py b/otter/test/test_auth.py index ece5dc54b..597a1aef4 100644 --- a/otter/test/test_auth.py +++ b/otter/test/test_auth.py @@ -508,7 +508,7 @@ def test_authenticate_tenant_gets_user_for_specified_tenant(self): """ self.successResultOf(self.ia.authenticate_tenant(111111)) self.user_for_tenant.assert_called_once_with(self.admin_url, - 'auth-token', + '', log=None) self.user_for_tenant.reset_mock() @@ -516,7 +516,7 @@ def test_authenticate_tenant_gets_user_for_specified_tenant(self): self.successResultOf(self.ia.authenticate_tenant(111111, log=self.log)) self.user_for_tenant.assert_called_once_with(self.admin_url, - 'auth-token', + '', log=self.log) def test_authenticate_tenant_impersonates_first_user(self): @@ -547,7 +547,7 @@ def test_authenticate_tenant_retries_impersonates_first_user(self): succeed({'access': {'token': {'id': 'impersonation_token'}}})] self.successResultOf(self.ia.authenticate_tenant(111111, self.log)) self.impersonate_user.assert_has_calls( - [mock.call(self.admin_url, 'auth-token', 'test_user', log=self.log), + [mock.call(self.admin_url, None, 'test_user', log=self.log), mock.call(self.admin_url, 'auth-token', 'test_user', log=self.log)]) self.authenticate_user.assert_called_with(self.url, self.user, self.password, @@ -574,7 +574,7 @@ def test_authenticate_tenant_retries_getting_endpoints_for_the_impersonation_tok succeed({'endpoints': [{'name': 'anEndpoint', 'type': 'anType'}]})] self.successResultOf(self.ia.authenticate_tenant(111111, log=self.log)) self.endpoints_for_token.assert_has_calls( - [mock.call(self.admin_url, 'auth-token', 'impersonation_token', log=self.log), + [mock.call(self.admin_url, None, 'impersonation_token', log=self.log), mock.call(self.admin_url, 'auth-token', 'impersonation_token', log=self.log)]) self.authenticate_user.assert_called_with(self.url, self.user, self.password, From 865c613b74d693a2ed6b6aaa94d89e77d393ba10 Mon Sep 17 00:00:00 2001 From: rahu3180 Date: Fri, 5 Apr 2019 02:43:50 -0700 Subject: [PATCH 03/10] Test adding logs --- otter/auth.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/otter/auth.py b/otter/auth.py index b82abc7c9..3ef97f1e2 100644 --- a/otter/auth.py +++ b/otter/auth.py @@ -59,7 +59,8 @@ wrap_upstream_error, ) from otter.util.retry import repeating_interval, retry, retry_times - +from twisted.logger import Logger +LOG = Logger() class _DoNothingLogger(BoundLog): """This class implements a do-nothing logger for the benefit of @@ -272,7 +273,8 @@ def authenticate_tenant(self, tenant_id, log=None): # if tenant_id: # request['auth']['tenantId'] = tenant_id token = '' - + LOG.debug("RAHU3180: Test log") + LOG.info("RAHU1991: Test log") def set_token(token_val): global token token = token_val From af5c8cab73e2f4fc097e3d05eaec41da509bb426 Mon Sep 17 00:00:00 2001 From: rahu3180 Date: Fri, 5 Apr 2019 04:27:53 -0700 Subject: [PATCH 04/10] Adding logs 1 --- otter/auth.py | 3 +-- otter/integration/tests/test_convergence.py | 9 ++++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/otter/auth.py b/otter/auth.py index 3ef97f1e2..d6235b320 100644 --- a/otter/auth.py +++ b/otter/auth.py @@ -273,8 +273,6 @@ def authenticate_tenant(self, tenant_id, log=None): # if tenant_id: # request['auth']['tenantId'] = tenant_id token = '' - LOG.debug("RAHU3180: Test log") - LOG.info("RAHU1991: Test log") def set_token(token_val): global token token = token_val @@ -298,6 +296,7 @@ def set_token(token_val): log=log) d.addCallback(extract_token) d.addCallback(set_token) + LOG.debug("RAHU3180: Token is : %(token)s"%{'token': token}) d.addCallback(lambda ignore: user_for_tenant(self._admin_url, token, log=log)) diff --git a/otter/integration/tests/test_convergence.py b/otter/integration/tests/test_convergence.py index 287178e67..b70e789f5 100644 --- a/otter/integration/tests/test_convergence.py +++ b/otter/integration/tests/test_convergence.py @@ -53,7 +53,8 @@ tag ) from otter.integration.lib.utils import diagnose - +from twisted.logger import Logger +LOG = Logger() # if this is None, the test will be skipped convergence_tenant_auth_errors = os.environ.get( @@ -689,7 +690,7 @@ def test_servers_that_build_for_too_long_time_out_and_are_replaced(self): {"name": "default"} ]) yield group.start(self.rcs, self) - + LOG.debug("RAHU1991 FAIL: self.rcs: %(rcs1)s, self.rcs.token: %(token)s self.rcs.tenant: %(tenant)s"%{'rcs1':self.rcs, 'token':self.rcs.token, 'tenant':self.rcs.tenant}) initial_servers = yield wait_for_servers( self.rcs, pool=self.helper.pool, group=group, timeout=otter_build_timeout, @@ -985,7 +986,8 @@ def test_recover_from_identity_auth_failures(self): resources=get_resource_mapping(), region=region ) - + LOG.debug("RAHU3180: PASS rcs: %(rcs)s identitity: %(identity)s rcs.token: %(token)s rcs.tenant:%(tenant)s"%{'rcs': rcs, 'identity': identity, 'token':rcs.token, 'tenant':rcs.tenant}) + LOG.debug("RAHU3180 PASS: self.rcs: %(rcs1)s, self.rcs.token: %(token)s self.rcs.tenant: %(tenant)s"%{'rcs1':self.rcs, 'token':self.rcs.token, 'tenant':self.rcs.tenant}) # inject behavior errors for this user, so that when otter # impersonates, it gets failures mimic_identity = MimicIdentity(pool=self.helper.pool, test_case=self, @@ -1007,6 +1009,7 @@ def test_recover_from_identity_auth_failures(self): min_entities=2, max_entities=10) yield self.helper.start_group_and_wait(group, rcs, desired=5) + LOG.debug("RAHU3180: PASS group created: %(group)s"%{'group':group}`) @inlineCallbacks def test_error_reasons_are_updated(self): From 651c07a4e19f0a3cfeb67e989ed33be52601ed23 Mon Sep 17 00:00:00 2001 From: rahu3180 Date: Fri, 5 Apr 2019 05:18:42 -0700 Subject: [PATCH 05/10] Updated --- otter/integration/tests/test_convergence.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/otter/integration/tests/test_convergence.py b/otter/integration/tests/test_convergence.py index b70e789f5..6a7278e24 100644 --- a/otter/integration/tests/test_convergence.py +++ b/otter/integration/tests/test_convergence.py @@ -1009,7 +1009,7 @@ def test_recover_from_identity_auth_failures(self): min_entities=2, max_entities=10) yield self.helper.start_group_and_wait(group, rcs, desired=5) - LOG.debug("RAHU3180: PASS group created: %(group)s"%{'group':group}`) + LOG.debug("RAHU3180: PASS group created: %(group)s"%{'group':group}) @inlineCallbacks def test_error_reasons_are_updated(self): From 2b95ae2dcb6d4de4f3814b961da45178096c8cd3 Mon Sep 17 00:00:00 2001 From: rahu3180 Date: Fri, 5 Apr 2019 07:54:57 -0700 Subject: [PATCH 06/10] Update further --- otter/integration/lib/autoscale.py | 5 +++++ otter/integration/tests/test_convergence.py | 6 +++--- otter/util/http.py | 4 +++- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/otter/integration/lib/autoscale.py b/otter/integration/lib/autoscale.py index 30b9b033c..0c9ae07bb 100644 --- a/otter/integration/lib/autoscale.py +++ b/otter/integration/lib/autoscale.py @@ -30,6 +30,8 @@ repeating_interval, terminal_errors_except ) +from twisted.logger import Logger +LOG = Logger() pp = pprint.PrettyPrinter(indent=4) verbosity = int(os.environ.get('AS_VERBOSITY', 0)) @@ -534,7 +536,9 @@ def wait_for_state(self, rcs, matcher, timeout=600, period=10, clock=None): """ def check(result): response, group_state = result + LOG.debug("RAHU0808: mismatch result: %(result)s"%{'result': result}) mismatch = matcher.match(group_state['group']) + if mismatch: msg("Waiting for group {} to reach desired group state.\n" "Mismatch: {}" @@ -545,6 +549,7 @@ def check(result): return rcs def poll(): +# LOG.debug("RAHU8080: polling get_scaling_group: %(get_sg)s"%{'get_sg': self.get_scaling_group_state(rcs, [200])}) return self.get_scaling_group_state(rcs, [200]).addCallback(check) return retry_and_timeout( diff --git a/otter/integration/tests/test_convergence.py b/otter/integration/tests/test_convergence.py index 6a7278e24..eeba08ea2 100644 --- a/otter/integration/tests/test_convergence.py +++ b/otter/integration/tests/test_convergence.py @@ -690,7 +690,7 @@ def test_servers_that_build_for_too_long_time_out_and_are_replaced(self): {"name": "default"} ]) yield group.start(self.rcs, self) - LOG.debug("RAHU1991 FAIL: self.rcs: %(rcs1)s, self.rcs.token: %(token)s self.rcs.tenant: %(tenant)s"%{'rcs1':self.rcs, 'token':self.rcs.token, 'tenant':self.rcs.tenant}) + LOG.debug("RAHU1991 FAIL: self.rcs.token: %(token)s self.rcs.tenant: %(tenant)s"%{'rcs1':self.rcs, 'token':self.rcs.token, 'tenant':self.rcs.tenant}) initial_servers = yield wait_for_servers( self.rcs, pool=self.helper.pool, group=group, timeout=otter_build_timeout, @@ -986,8 +986,8 @@ def test_recover_from_identity_auth_failures(self): resources=get_resource_mapping(), region=region ) - LOG.debug("RAHU3180: PASS rcs: %(rcs)s identitity: %(identity)s rcs.token: %(token)s rcs.tenant:%(tenant)s"%{'rcs': rcs, 'identity': identity, 'token':rcs.token, 'tenant':rcs.tenant}) - LOG.debug("RAHU3180 PASS: self.rcs: %(rcs1)s, self.rcs.token: %(token)s self.rcs.tenant: %(tenant)s"%{'rcs1':self.rcs, 'token':self.rcs.token, 'tenant':self.rcs.tenant}) + LOG.debug("RAHU3180: PASS identitity: %(identity)s rcs.token: %(token)s rcs.tenant:%(tenant)s"%{'rcs': rcs, 'identity': identity, 'token':rcs.token, 'tenant':rcs.tenant}) + LOG.debug("RAHU3180 PASS: self.rcs.token: %(token)s self.rcs.tenant: %(tenant)s"%{'rcs1':self.rcs, 'token':self.rcs.token, 'tenant':self.rcs.tenant}) # inject behavior errors for this user, so that when otter # impersonates, it gets failures mimic_identity = MimicIdentity(pool=self.helper.pool, test_case=self, diff --git a/otter/util/http.py b/otter/util/http.py index 5cd4cf865..5c4cc3817 100644 --- a/otter/util/http.py +++ b/otter/util/http.py @@ -16,7 +16,8 @@ from otter.log.formatters import serialize_to_jsonable from otter.util.config import config_value - +from twisted.logger import Logger +LOG = Logger() class RequestError(Exception): """ @@ -218,6 +219,7 @@ def check_success(response, success_codes, _treq=None): :return: response or a deferred that errbacks with an APIError. """ + LOG.debug("RAHU1618: response of call is Response: %(resp)s"%{'resp': response}) if _treq is None: _treq = treq From e8d253c6c522962e0645da9b865804d3bfe9e223 Mon Sep 17 00:00:00 2001 From: rahu3180 Date: Tue, 9 Apr 2019 03:30:14 -0700 Subject: [PATCH 07/10] Print request content --- otter/util/http.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/otter/util/http.py b/otter/util/http.py index 5c4cc3817..1f0a0b27b 100644 --- a/otter/util/http.py +++ b/otter/util/http.py @@ -219,7 +219,7 @@ def check_success(response, success_codes, _treq=None): :return: response or a deferred that errbacks with an APIError. """ - LOG.debug("RAHU1618: response of call is Response: %(resp)s"%{'resp': response}) + LOG.debug("RAHU1618: response of call is Response: %(resp)s"%{'resp': response.content}) if _treq is None: _treq = treq From dbbb5eedfb63235417fe8895a9e5890497aa13d1 Mon Sep 17 00:00:00 2001 From: rahu3180 Date: Tue, 9 Apr 2019 04:26:22 -0700 Subject: [PATCH 08/10] Updating the response msg --- otter/util/http.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/otter/util/http.py b/otter/util/http.py index 1f0a0b27b..2693b7a93 100644 --- a/otter/util/http.py +++ b/otter/util/http.py @@ -219,7 +219,7 @@ def check_success(response, success_codes, _treq=None): :return: response or a deferred that errbacks with an APIError. """ - LOG.debug("RAHU1618: response of call is Response: %(resp)s"%{'resp': response.content}) + LOG.debug("RAHU1618: response of call is ResponseCode: %(resp_code)s Response-Header: %(header)s Methode: %(meth)s url: %(url)s "%{'resp_code': response.code, 'header': response.headers, 'meth':response.request.method, 'url': response.request.absoluteURI}) if _treq is None: _treq = treq From c5d3b42eea0b67f4e222610766d73f0203f47d1e Mon Sep 17 00:00:00 2001 From: rahu3180 Date: Tue, 9 Apr 2019 05:27:39 -0700 Subject: [PATCH 09/10] Removing observer setup --- otter/integration/lib/trial_tools.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/otter/integration/lib/trial_tools.py b/otter/integration/lib/trial_tools.py index ec247bbd0..88c33b4e2 100644 --- a/otter/integration/lib/trial_tools.py +++ b/otter/integration/lib/trial_tools.py @@ -207,7 +207,7 @@ def __init__(self, test_case, num_clbs=0): """ Set up the test case, HTTP pool, identity, and cleanup. """ - setup_test_log_observer(test_case) + # setup_test_log_observer(test_case) self.test_case = test_case self.pool = HTTPConnectionPool(reactor, False) self.treq = LoggingTreq(log=log, log_response=True) From a642d0c2b6bf45b4546104aab05276a52c2ad755 Mon Sep 17 00:00:00 2001 From: rahu3180 Date: Tue, 9 Apr 2019 05:45:44 -0700 Subject: [PATCH 10/10] Reverting the tc observer change --- otter/integration/lib/trial_tools.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/otter/integration/lib/trial_tools.py b/otter/integration/lib/trial_tools.py index 88c33b4e2..ec247bbd0 100644 --- a/otter/integration/lib/trial_tools.py +++ b/otter/integration/lib/trial_tools.py @@ -207,7 +207,7 @@ def __init__(self, test_case, num_clbs=0): """ Set up the test case, HTTP pool, identity, and cleanup. """ - # setup_test_log_observer(test_case) + setup_test_log_observer(test_case) self.test_case = test_case self.pool = HTTPConnectionPool(reactor, False) self.treq = LoggingTreq(log=log, log_response=True)