)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":23081,"name":"Jeremy Zhang","email":"zhangjun_inspur@163.com","username":"jeremy.zhang"},"change_message_id":"db82358267b8e0b538f876bde7808e369bcf615c","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Support multiple backends in keystone v3 admin test"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The tests for list users and groups in the Keystone v3 admin tests fail when Keystone is configured to use domain-specific identity drivers. When \"domain_specific_drivers_enabled\" is set true. The list_groups,list_groups,list_users_with_name operations in tempest will get the groups,users scoped the domain owned the current user, so we can\u0027t get other domain\u0027s groups,users. This patch fix this bug."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Co-Authored-By: ZhangHongtao\u003czhanghongtao0826@126.com\u003e"},{"line_number":12,"context_line":"Change-Id: I2abada9bab705a0f2bfb0b6e210dd5d3ca3c70e8"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"1f013ff3_912b1e93","line":9,"range":{"start_line":9,"start_character":0,"end_line":9,"end_character":401},"updated":"2017-05-16 00:54:08.000000000","message":"The content of commit message is too long in one line.","commit_id":"0206b75658af6e24ee28e83150e37b218f459c6f"}],"tempest/api/identity/admin/v3/test_groups.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"f4dffab86b626ffed92dadc9b8ca638456125d4b","unresolved":false,"context_lines":[{"line_number":140,"context_line":"            self.addCleanup(self.groups_client.delete_group, group[\u0027id\u0027])"},{"line_number":141,"context_line":"            group_ids.append(group[\u0027id\u0027])"},{"line_number":142,"context_line":"        # List and Verify Groups w/ domain_id parameter"},{"line_number":143,"context_line":"        body \u003d self.groups_client.list_groups(domain_id\u003dself.domain[\u0027id\u0027])[\u0027groups\u0027]"},{"line_number":144,"context_line":"        for g in body:"},{"line_number":145,"context_line":"            fetched_ids.append(g[\u0027id\u0027])"},{"line_number":146,"context_line":"        missing_groups \u003d [g for g in group_ids if g not in fetched_ids]"}],"source_content_type":"text/x-python","patch_set":1,"id":"3ac371cc_0a48ed86","line":143,"updated":"2016-08-19 00:45:08.000000000","message":"Is there a reason not to just add this to the existing test? Do we gain any value by duplicating the test case one with a domain filter and one without?","commit_id":"3978e4c2c617305c73dee127dcab2e6ef72f9c98"},{"author":{"_account_id":23164,"name":"Adam Wayne","email":"awayne@waynedigital.com","username":"awayne"},"change_message_id":"cacf3ce85a3d4919bd4d71d5d95680e6a2cda105","unresolved":false,"context_lines":[{"line_number":140,"context_line":"            self.addCleanup(self.groups_client.delete_group, group[\u0027id\u0027])"},{"line_number":141,"context_line":"            group_ids.append(group[\u0027id\u0027])"},{"line_number":142,"context_line":"        # List and Verify Groups w/ domain_id parameter"},{"line_number":143,"context_line":"        body \u003d self.groups_client.list_groups(domain_id\u003dself.domain[\u0027id\u0027])[\u0027groups\u0027]"},{"line_number":144,"context_line":"        for g in body:"},{"line_number":145,"context_line":"            fetched_ids.append(g[\u0027id\u0027])"},{"line_number":146,"context_line":"        missing_groups \u003d [g for g in group_ids if g not in fetched_ids]"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ac06dbe_cfed4327","line":143,"in_reply_to":"3ac371cc_0a48ed86","updated":"2016-08-19 15:07:49.000000000","message":"I tried to stay consistent with test_list_users which had a separate test with and without the domain filter. There is probably some code dedupe that can happen as I just brute-force copied the existing test.","commit_id":"3978e4c2c617305c73dee127dcab2e6ef72f9c98"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"fe5585e57ae7076bd05072a8d7eb9620ad89e996","unresolved":false,"context_lines":[{"line_number":135,"context_line":"        body \u003d self.groups_client.list_groups("},{"line_number":136,"context_line":"            domain_id\u003dself.domain[\u0027id\u0027])[\u0027groups\u0027]"},{"line_number":137,"context_line":"        for g in body:"},{"line_number":138,"context_line":"            fetched_ids.append(g[\u0027id\u0027])"},{"line_number":139,"context_line":"        missing_groups \u003d [g for g in group_ids if g not in fetched_ids]"},{"line_number":140,"context_line":"        self.assertEqual([], missing_groups)"},{"line_number":141,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"fa7ab95a_1227dcb6","line":138,"updated":"2016-09-01 16:12:41.000000000","message":"Define fetched_ids in one line like this:\n  fetched_ids \u003d [g[\u0027id\u0027] for g in body]","commit_id":"91ce1e631009e46e63a0eebb8de3f34905505204"},{"author":{"_account_id":7020,"name":"Joe Hakim Rahme","email":"jhakimra@redhat.com","username":"rahmu"},"change_message_id":"08d7ca5055e305e39cf8ca4c5905a80d72923719","unresolved":false,"context_lines":[{"line_number":137,"context_line":"        for g in body:"},{"line_number":138,"context_line":"            fetched_ids.append(g[\u0027id\u0027])"},{"line_number":139,"context_line":"        missing_groups \u003d [g for g in group_ids if g not in fetched_ids]"},{"line_number":140,"context_line":"        self.assertEqual([], missing_groups)"},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"    @testtools.skipIf(CONF.identity_feature_enabled.multiple_backends,"},{"line_number":143,"context_line":"                      \u0027Multiple domain backends\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa7ab95a_d269f48d","line":140,"updated":"2016-09-01 16:16:29.000000000","message":"Suggestion: how about using assertEmpty() as defined in `test.py`? https://git.openstack.org/cgit/openstack/tempest/tree/tempest/test.py?h\u003dmaster#n644","commit_id":"91ce1e631009e46e63a0eebb8de3f34905505204"},{"author":{"_account_id":7020,"name":"Joe Hakim Rahme","email":"jhakimra@redhat.com","username":"rahmu"},"change_message_id":"08d7ca5055e305e39cf8ca4c5905a80d72923719","unresolved":false,"context_lines":[{"line_number":151,"context_line":"        for g in body:"},{"line_number":152,"context_line":"            fetched_ids.append(g[\u0027id\u0027])"},{"line_number":153,"context_line":"        missing_groups \u003d [g for g in group_ids if g not in fetched_ids]"},{"line_number":154,"context_line":"        self.assertEqual([], missing_groups)"},{"line_number":155,"context_line":""},{"line_number":156,"context_line":"    def _create_test_groups(self):"},{"line_number":157,"context_line":"        group_ids \u003d list()"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa7ab95a_f2fd18b2","line":154,"updated":"2016-09-01 16:16:29.000000000","message":"same as line 140.","commit_id":"91ce1e631009e46e63a0eebb8de3f34905505204"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"652fc34885f52bb27e769c5c15ec4776833fdf8c","unresolved":false,"context_lines":[{"line_number":127,"context_line":"        self.assertEqual(2, len(user_groups))"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"    @test.idempotent_id(\u0027e235cadd-6156-4bb0-9eb3-eac7587356e7\u0027)"},{"line_number":130,"context_line":"    def test_list_groups_with_domains(self):"},{"line_number":131,"context_line":"        # Test to list groups"},{"line_number":132,"context_line":"        group_ids \u003d self._create_test_groups()"},{"line_number":133,"context_line":"        # List and Verify Groups w/ domain_id query param"}],"source_content_type":"text/x-python","patch_set":5,"id":"fa7ab95a_c4bbc3c2","line":130,"updated":"2016-09-02 11:58:05.000000000","message":"I don\"t see the difference between this test and test_list_groups. The exact same set of groups is returned by the call to list_groups. So if their is a bug in Keystone (like the domain_id being completely ignored) this test won\u0027t catch it.","commit_id":"586d5b5de8a5b1076375904c0eff438532fb7316"},{"author":{"_account_id":23164,"name":"Adam Wayne","email":"awayne@waynedigital.com","username":"awayne"},"change_message_id":"56805235574cc9d981e3be9461484d3c028ca8a0","unresolved":false,"context_lines":[{"line_number":127,"context_line":"        self.assertEqual(2, len(user_groups))"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"    @test.idempotent_id(\u0027e235cadd-6156-4bb0-9eb3-eac7587356e7\u0027)"},{"line_number":130,"context_line":"    def test_list_groups_with_domains(self):"},{"line_number":131,"context_line":"        # Test to list groups"},{"line_number":132,"context_line":"        group_ids \u003d self._create_test_groups()"},{"line_number":133,"context_line":"        # List and Verify Groups w/ domain_id query param"}],"source_content_type":"text/x-python","patch_set":5,"id":"da7fb54a_aab9d3ee","line":130,"in_reply_to":"fa7ab95a_1a6986be","updated":"2016-09-02 16:08:45.000000000","message":"There is a similar test in list_users that was pre-existing. I added this test and did not conditionally enable it to be consistent with the test in list_users.\n\nI left the duplicate code as to not make the tests more abstract than necessary.","commit_id":"586d5b5de8a5b1076375904c0eff438532fb7316"},{"author":{"_account_id":7020,"name":"Joe Hakim Rahme","email":"jhakimra@redhat.com","username":"rahmu"},"change_message_id":"b82e41aef785c3689a607f9701d2ae82ce16d483","unresolved":false,"context_lines":[{"line_number":127,"context_line":"        self.assertEqual(2, len(user_groups))"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"    @test.idempotent_id(\u0027e235cadd-6156-4bb0-9eb3-eac7587356e7\u0027)"},{"line_number":130,"context_line":"    def test_list_groups_with_domains(self):"},{"line_number":131,"context_line":"        # Test to list groups"},{"line_number":132,"context_line":"        group_ids \u003d self._create_test_groups()"},{"line_number":133,"context_line":"        # List and Verify Groups w/ domain_id query param"}],"source_content_type":"text/x-python","patch_set":5,"id":"fa7ab95a_1a6986be","line":130,"in_reply_to":"fa7ab95a_c4bbc3c2","updated":"2016-09-02 12:33:23.000000000","message":"Maybe this test could get a `skip.Unless(CONF.identity_feature_enabled.multiple_backends)` decorator? This way only one of the tests will be executed.\n\nAlso the common lines of code between `test_list_group_with_domains` and `test_list_groups` could be abstracted into a single private function.","commit_id":"586d5b5de8a5b1076375904c0eff438532fb7316"},{"author":{"_account_id":23164,"name":"Adam Wayne","email":"awayne@waynedigital.com","username":"awayne"},"change_message_id":"56805235574cc9d981e3be9461484d3c028ca8a0","unresolved":false,"context_lines":[{"line_number":127,"context_line":"        self.assertEqual(2, len(user_groups))"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"    @test.idempotent_id(\u0027e235cadd-6156-4bb0-9eb3-eac7587356e7\u0027)"},{"line_number":130,"context_line":"    def test_list_groups_with_domains(self):"},{"line_number":131,"context_line":"        # Test to list groups"},{"line_number":132,"context_line":"        group_ids \u003d self._create_test_groups()"},{"line_number":133,"context_line":"        # List and Verify Groups w/ domain_id query param"}],"source_content_type":"text/x-python","patch_set":5,"id":"da7fb54a_e71f9659","line":130,"in_reply_to":"fa7ab95a_c4bbc3c2","updated":"2016-09-02 16:08:45.000000000","message":"When domain_specific_drivers\u003dTrue, Keystone list_groups would return the groups for the current token\u0027s domain, not the domain we created above. However, if domain_specific_drivers\u003dFalse, list_groups will return all groups from all domains without any filtering (there are some fringe cases where this may also occur with multiple_backends enabled).","commit_id":"586d5b5de8a5b1076375904c0eff438532fb7316"}],"tempest/api/identity/admin/v3/test_list_users.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"f4dffab86b626ffed92dadc9b8ca638456125d4b","unresolved":false,"context_lines":[{"line_number":96,"context_line":"    @testtools.skipIf(CONF.identity_feature_enabled.multiple_backends,"},{"line_number":97,"context_line":"                      \u0027Multiple domain backends\u0027)"},{"line_number":98,"context_line":"    @test.idempotent_id(\u0027b30d4651-a2ea-4666-8551-0c0e49692635\u0027)"},{"line_number":99,"context_line":"    def test_list_users(self):"},{"line_number":100,"context_line":"        # List users"},{"line_number":101,"context_line":"        body \u003d self.users_client.list_users()[\u0027users\u0027]"},{"line_number":102,"context_line":"        fetched_ids \u003d [u[\u0027id\u0027] for u in body]"}],"source_content_type":"text/x-python","patch_set":1,"id":"3ac371cc_25a4fa06","line":99,"updated":"2016-08-19 00:45:08.000000000","message":"Is there a reason we can\u0027t filter the user list in this test on domains too?","commit_id":"3978e4c2c617305c73dee127dcab2e6ef72f9c98"},{"author":{"_account_id":23164,"name":"Adam Wayne","email":"awayne@waynedigital.com","username":"awayne"},"change_message_id":"cacf3ce85a3d4919bd4d71d5d95680e6a2cda105","unresolved":false,"context_lines":[{"line_number":96,"context_line":"    @testtools.skipIf(CONF.identity_feature_enabled.multiple_backends,"},{"line_number":97,"context_line":"                      \u0027Multiple domain backends\u0027)"},{"line_number":98,"context_line":"    @test.idempotent_id(\u0027b30d4651-a2ea-4666-8551-0c0e49692635\u0027)"},{"line_number":99,"context_line":"    def test_list_users(self):"},{"line_number":100,"context_line":"        # List users"},{"line_number":101,"context_line":"        body \u003d self.users_client.list_users()[\u0027users\u0027]"},{"line_number":102,"context_line":"        fetched_ids \u003d [u[\u0027id\u0027] for u in body]"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ac06dbe_8f5fcb0d","line":99,"in_reply_to":"3ac371cc_25a4fa06","updated":"2016-08-19 15:07:49.000000000","message":"There is another test (test_list_user_domains) above that already does this, so I assumed this was a specific use case that was intentionally tested. However, this test will never succeed with domain-specific drivers enabled.","commit_id":"3978e4c2c617305c73dee127dcab2e6ef72f9c98"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"d9aef6aceb5bb66950ddaa333a761f2d636cc3da","unresolved":false,"context_lines":[{"line_number":96,"context_line":"    @testtools.skipIf(CONF.identity_feature_enabled.multiple_backends,"},{"line_number":97,"context_line":"                      \u0027Multiple domain backends\u0027)"},{"line_number":98,"context_line":"    @test.idempotent_id(\u0027b30d4651-a2ea-4666-8551-0c0e49692635\u0027)"},{"line_number":99,"context_line":"    def test_list_users(self):"},{"line_number":100,"context_line":"        # List users"},{"line_number":101,"context_line":"        body \u003d self.users_client.list_users()[\u0027users\u0027]"},{"line_number":102,"context_line":"        fetched_ids \u003d [u[\u0027id\u0027] for u in body]"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa7ab95a_4a89b925","line":99,"range":{"start_line":99,"start_character":4,"end_line":99,"end_character":30},"updated":"2016-08-29 04:56:31.000000000","message":"you should be able to still list users, but you\u0027ll need to pass in the domain_id explicitly, check the code out: https://github.com/openstack/keystone/blob/e755970bfefc3ff6e0fc37cf70b2205d0eff97b5/keystone/identity/core.py#L915-L922\n\nand a related bug: https://bugs.launchpad.net/keystone/+bug/1555629\n\nso i think you can treat this like you do test_list_users_with_name\n\nalso, a general comment, add inline comments to the code that describe why the behaviour changes, something like:\n\n\"If multiple backends are enabled (meaning a mix of SQL and LDAP), then keystone expects a domain_id to be passed in. Otherwise, it would list users from all domains\"","commit_id":"e7515a23b2c423144e2dbe5610e4941ef506d58f"},{"author":{"_account_id":23164,"name":"Adam Wayne","email":"awayne@waynedigital.com","username":"awayne"},"change_message_id":"e271460a5f83c57b94201a7db250f6444a85db4d","unresolved":false,"context_lines":[{"line_number":99,"context_line":"    @testtools.skipIf(CONF.identity_feature_enabled.multiple_backends,"},{"line_number":100,"context_line":"                      \u0027Multiple domain backends\u0027)"},{"line_number":101,"context_line":"    @test.idempotent_id(\u0027b30d4651-a2ea-4666-8551-0c0e49692635\u0027)"},{"line_number":102,"context_line":"    def test_list_users(self):"},{"line_number":103,"context_line":"        # List users"},{"line_number":104,"context_line":"        body \u003d self.users_client.list_users()[\u0027users\u0027]"},{"line_number":105,"context_line":"        fetched_ids \u003d [u[\u0027id\u0027] for u in body]"}],"source_content_type":"text/x-python","patch_set":3,"id":"fa7ab95a_38257a08","line":102,"range":{"start_line":102,"start_character":8,"end_line":102,"end_character":23},"updated":"2016-08-29 20:03:54.000000000","message":"There is an existing test (test_list_user_domains) above that already covers this case. I figured it was better to skip this test and leave the existing than have both perform the same test when the flag is enabled. Thoughts?","commit_id":"f40e89419e5a0ceecbf9250f8ea9f5e16f04b98d"},{"author":{"_account_id":23164,"name":"Adam Wayne","email":"awayne@waynedigital.com","username":"awayne"},"change_message_id":"35287801f7844c81e7cb4f918a11cc26a02f2036","unresolved":false,"context_lines":[{"line_number":100,"context_line":"    @testtools.skipIf(CONF.identity_feature_enabled.multiple_backends,"},{"line_number":101,"context_line":"                      \u0027Multiple domain backends\u0027)"},{"line_number":102,"context_line":"    @test.idempotent_id(\u0027b30d4651-a2ea-4666-8551-0c0e49692635\u0027)"},{"line_number":103,"context_line":"    def test_list_users(self):"},{"line_number":104,"context_line":"        # List users"},{"line_number":105,"context_line":"        body \u003d self.users_client.list_users()[\u0027users\u0027]"},{"line_number":106,"context_line":"        fetched_ids \u003d [u[\u0027id\u0027] for u in body]"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa7ab95a_dfa8f08e","line":103,"range":{"start_line":103,"start_character":8,"end_line":103,"end_character":23},"updated":"2016-08-29 21:26:40.000000000","message":"There is an existing test (test_list_user_domains) above that already covers this case. I figured it was better to skip this test and leave the existing than have both perform the same test when the flag is enabled. Thoughts?","commit_id":"91ce1e631009e46e63a0eebb8de3f34905505204"},{"author":{"_account_id":23164,"name":"Adam Wayne","email":"awayne@waynedigital.com","username":"awayne"},"change_message_id":"c97a0305ba8cd958565521cc1bc91231a047a628","unresolved":false,"context_lines":[{"line_number":100,"context_line":"    @testtools.skipIf(CONF.identity_feature_enabled.multiple_backends,"},{"line_number":101,"context_line":"                      \u0027Multiple domain backends\u0027)"},{"line_number":102,"context_line":"    @test.idempotent_id(\u0027b30d4651-a2ea-4666-8551-0c0e49692635\u0027)"},{"line_number":103,"context_line":"    def test_list_users(self):"},{"line_number":104,"context_line":"        # List users"},{"line_number":105,"context_line":"        body \u003d self.users_client.list_users()[\u0027users\u0027]"},{"line_number":106,"context_line":"        fetched_ids \u003d [u[\u0027id\u0027] for u in body]"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa7ab95a_523239a8","line":103,"range":{"start_line":103,"start_character":8,"end_line":103,"end_character":23},"in_reply_to":"fa7ab95a_943d5191","updated":"2016-09-01 19:46:21.000000000","message":"Would \u0027test_list_user_domains\u0027 also be skipped? I believe a new \u0027test_list_users_mulitple_backends\u0027 would be identical to this test. I do see perhaps \u0027*_with_name\u0027 could be skipped in lieu of a new \u0027_with_name_and_domain\u0027.","commit_id":"91ce1e631009e46e63a0eebb8de3f34905505204"},{"author":{"_account_id":7020,"name":"Joe Hakim Rahme","email":"jhakimra@redhat.com","username":"rahmu"},"change_message_id":"08d7ca5055e305e39cf8ca4c5905a80d72923719","unresolved":false,"context_lines":[{"line_number":100,"context_line":"    @testtools.skipIf(CONF.identity_feature_enabled.multiple_backends,"},{"line_number":101,"context_line":"                      \u0027Multiple domain backends\u0027)"},{"line_number":102,"context_line":"    @test.idempotent_id(\u0027b30d4651-a2ea-4666-8551-0c0e49692635\u0027)"},{"line_number":103,"context_line":"    def test_list_users(self):"},{"line_number":104,"context_line":"        # List users"},{"line_number":105,"context_line":"        body \u003d self.users_client.list_users()[\u0027users\u0027]"},{"line_number":106,"context_line":"        fetched_ids \u003d [u[\u0027id\u0027] for u in body]"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa7ab95a_943d5191","line":103,"range":{"start_line":103,"start_character":8,"end_line":103,"end_character":23},"in_reply_to":"fa7ab95a_dfa8f08e","updated":"2016-09-01 16:16:29.000000000","message":"How about skipping both `test_list_users_with_name` and `test_list_users` and write a third new `test_list_users_mulitple_backends` with `skipUnless(CONF.identity_feature_enabled.multiple_backends)`? It could be something similar to what\u0027s done in `test_list_groups`. This way an operator will know more precisely what\u0027s currently being tested.","commit_id":"91ce1e631009e46e63a0eebb8de3f34905505204"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"26d9092fa4efbf521a79b22619fecb360eb0d65e","unresolved":false,"context_lines":[{"line_number":100,"context_line":"    @testtools.skipIf(CONF.identity_feature_enabled.multiple_backends,"},{"line_number":101,"context_line":"                      \u0027Multiple domain backends\u0027)"},{"line_number":102,"context_line":"    @test.idempotent_id(\u0027b30d4651-a2ea-4666-8551-0c0e49692635\u0027)"},{"line_number":103,"context_line":"    def test_list_users(self):"},{"line_number":104,"context_line":"        # List users"},{"line_number":105,"context_line":"        body \u003d self.users_client.list_users()[\u0027users\u0027]"},{"line_number":106,"context_line":"        fetched_ids \u003d [u[\u0027id\u0027] for u in body]"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa7ab95a_3c852ace","line":103,"range":{"start_line":103,"start_character":8,"end_line":103,"end_character":23},"in_reply_to":"fa7ab95a_dfa8f08e","updated":"2016-08-30 17:04:47.000000000","message":"ehh, okay","commit_id":"91ce1e631009e46e63a0eebb8de3f34905505204"}],"tempest/config.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"d9aef6aceb5bb66950ddaa333a761f2d636cc3da","unresolved":false,"context_lines":[{"line_number":215,"context_line":""},{"line_number":216,"context_line":"    cfg.BoolOpt(\u0027multiple_backends\u0027,"},{"line_number":217,"context_line":"                default\u003dFalse,"},{"line_number":218,"context_line":"                help\u003d\u0027Are multiple domain backends enabled?\u0027)"},{"line_number":219,"context_line":"]"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":"compute_group \u003d cfg.OptGroup(name\u003d\u0027compute\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa7ab95a_8a890f29","line":218,"range":{"start_line":218,"start_character":22,"end_line":218,"end_character":61},"updated":"2016-08-29 04:56:31.000000000","message":"it\u0027ll be worth noting what differences this will cause if enabled in keystone. for starters, we should mention the config option \"[identity] domain_specific_drivers_enabled\".","commit_id":"e7515a23b2c423144e2dbe5610e4941ef506d58f"}]}
