diff --git a/swift/common/internal_client.py b/swift/common/internal_client.py index d82035c398..fc5242ae8a 100644 --- a/swift/common/internal_client.py +++ b/swift/common/internal_client.py @@ -160,6 +160,8 @@ class InternalClient(object): raise ValueError('request_tries must be positive') # Internal clients don't use the gatekeeper and the pipeline remains # static so we never allow anything to modify the proxy pipeline. + if kwargs.get('allow_modify_pipeline'): + raise ValueError("'allow_modify_pipeline' is no longer supported") self.app = app or loadapp(conf_path, global_conf=global_conf, allow_modify_pipeline=False,) self.check_gatekeeper_not_loaded(self.app) diff --git a/test/unit/common/test_internal_client.py b/test/unit/common/test_internal_client.py index 1ccbf30f08..65bbed9a9b 100644 --- a/test/unit/common/test_internal_client.py +++ b/test/unit/common/test_internal_client.py @@ -437,6 +437,27 @@ class TestInternalClient(unittest.TestCase): self.assertEqual(request_tries, client.request_tries) self.assertTrue(client.use_replication_network) + def test_init_allow_modify_pipeline(self): + conf_path = 'some_path' + app = FakeSwift() + user_agent = 'some_user_agent' + + with mock.patch.object( + internal_client, 'loadapp', return_value=app) as mock_loadapp,\ + self.assertRaises(ValueError) as cm: + internal_client.InternalClient( + conf_path, user_agent, 1, allow_modify_pipeline=True) + mock_loadapp.assert_not_called() + self.assertIn("'allow_modify_pipeline' is no longer supported", + str(cm.exception)) + + with mock.patch.object( + internal_client, 'loadapp', return_value=app) as mock_loadapp: + internal_client.InternalClient( + conf_path, user_agent, 1, allow_modify_pipeline=False) + mock_loadapp.assert_called_once_with( + conf_path, allow_modify_pipeline=False, global_conf=None) + def test_gatekeeper_not_loaded(self): app = FakeSwift() pipeline = [app]