)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"45c74850686dbcb1ce431b51d29e6077055b58fc","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Add a nova functional test for the os-server-groups GET API with all_projects parameter"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Add a nova functional test to exercise the all_projects parameter in the index function of:"},{"line_number":10,"context_line":"https://github.com/openstack/nova/blob/master/nova/api/openstack/compute/server_groups.py"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Closes bug: 1503042"},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"fa80f949_5e1388b8","line":10,"updated":"2015-11-05 19:05:41.000000000","message":"note for future: Please keep commit summary line to 50 chars or less and the rest of the commit message wrapped at 72 chars:\n\nhttps://wiki.openstack.org/wiki/GitCommitMessages#Summary_of_Git_commit_message_structure","commit_id":"6c15c071f0abf0c8e5196c5d011249ff8db3b067"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"45c74850686dbcb1ce431b51d29e6077055b58fc","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Add a nova functional test to exercise the all_projects parameter in the index function of:"},{"line_number":10,"context_line":"https://github.com/openstack/nova/blob/master/nova/api/openstack/compute/server_groups.py"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Closes bug: 1503042"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: Ic52511a830ab27249d116e2cb14b071587c9747f"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"fa80f949_7e7d2ce6","line":12,"updated":"2015-11-05 19:05:41.000000000","message":"Should be:\n\n Closes-bug: #1503042\n\nSee: https://wiki.openstack.org/wiki/GitCommitMessages#Including_external_references","commit_id":"6c15c071f0abf0c8e5196c5d011249ff8db3b067"}],"nova/tests/functional/api/client.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"8ee6812a23b9c3a6bd99a97fdcc8d4651ea174bb","unresolved":false,"context_lines":[{"line_number":117,"context_line":"    \"\"\""},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"    def __init__(self, auth_user, auth_key, auth_uri,"},{"line_number":120,"context_line":"                 project_id_override\u003dNone):"},{"line_number":121,"context_line":"        super(TestOpenStackClient, self).__init__()"},{"line_number":122,"context_line":"        self.auth_result \u003d None"},{"line_number":123,"context_line":"        self.auth_user \u003d auth_user"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a29b11f_da9e1307","line":120,"updated":"2015-10-19 03:15:40.000000000","message":"I think we can do like this - project_id\u003d\u0027openstack\u0027\n\nself.project_id \u003dproject_id\n\nas done in OSAPIFixture","commit_id":"cc1ead371c9aa13293ceb27ef2bc4f86687e4316"},{"author":{"_account_id":17139,"name":"Chuck Carmack","email":"carmack@us.ibm.com","username":"ccarmack"},"change_message_id":"256229311e62630cf32423335101b43a12ef7647","unresolved":false,"context_lines":[{"line_number":117,"context_line":"    \"\"\""},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"    def __init__(self, auth_user, auth_key, auth_uri,"},{"line_number":120,"context_line":"                 project_id_override\u003dNone):"},{"line_number":121,"context_line":"        super(TestOpenStackClient, self).__init__()"},{"line_number":122,"context_line":"        self.auth_result \u003d None"},{"line_number":123,"context_line":"        self.auth_user \u003d auth_user"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a29b11f_fe62c3d7","line":120,"in_reply_to":"3a29b11f_da9e1307","updated":"2015-10-19 16:09:30.000000000","message":"Yes, that is better","commit_id":"cc1ead371c9aa13293ceb27ef2bc4f86687e4316"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"089a29ec88e7002d3ff38a879fcf093597f234bd","unresolved":false,"context_lines":[{"line_number":335,"context_line":"        return self.api_post(\u0027/servers/%s/metadata\u0027 % server_id,"},{"line_number":336,"context_line":"                             post_body).body[\u0027metadata\u0027]"},{"line_number":337,"context_line":""},{"line_number":338,"context_line":"    def get_server_groups(self, all_projects\u003dNone):"},{"line_number":339,"context_line":"        if all_projects:"},{"line_number":340,"context_line":"            return self.api_get("},{"line_number":341,"context_line":"                \u0027/os-server-groups?all_projects\u0027).body[\u0027server_groups\u0027]"}],"source_content_type":"text/x-python","patch_set":2,"id":"1a26ad4f_1c21a7fb","line":338,"updated":"2015-10-29 15:22:41.000000000","message":"nit: since you\u0027re not using the value, and the API doesn\u0027t care about the value, as long as it\u0027s set, you could also just make this a boolean flag value and default to False.","commit_id":"6c15c071f0abf0c8e5196c5d011249ff8db3b067"}],"nova/tests/functional/test_server_group.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"8ee6812a23b9c3a6bd99a97fdcc8d4651ea174bb","unresolved":false,"context_lines":[{"line_number":59,"context_line":"        self.useFixture(policy_fixture.RealPolicyFixture())"},{"line_number":60,"context_line":"        api_fixture \u003d self.useFixture(nova_fixtures.OSAPIFixture())"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"        self.api \u003d api_fixture.api"},{"line_number":63,"context_line":"        self.admin_api \u003d api_fixture.admin_api"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"        # the image fake backend needed for image discovery"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a29b11f_15e9bc1a","line":62,"updated":"2015-10-19 03:15:40.000000000","message":"How about creating api servers with different project_id here? \nIf some tests(in future) needs second non admin user than, that can be created within tests. \n\nSomething like below -\n\n       admin_api_fixture \u003d self.useFixture(nova_fixtures.OSAPIFixture())\n       self.admin_api \u003d admin_api_fixture.admin_api\n\n       non_admin_api_fixture \u003d self.useFixture(nova_fixtures.OSAPIFixture(\n            project_id\u003d\"non_admin_openstack\"))\n       self.api \u003d non_admin_api_fixture.api","commit_id":"cc1ead371c9aa13293ceb27ef2bc4f86687e4316"},{"author":{"_account_id":17139,"name":"Chuck Carmack","email":"carmack@us.ibm.com","username":"ccarmack"},"change_message_id":"256229311e62630cf32423335101b43a12ef7647","unresolved":false,"context_lines":[{"line_number":59,"context_line":"        self.useFixture(policy_fixture.RealPolicyFixture())"},{"line_number":60,"context_line":"        api_fixture \u003d self.useFixture(nova_fixtures.OSAPIFixture())"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"        self.api \u003d api_fixture.api"},{"line_number":63,"context_line":"        self.admin_api \u003d api_fixture.admin_api"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"        # the image fake backend needed for image discovery"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a29b11f_39fa95be","line":62,"in_reply_to":"3a29b11f_15e9bc1a","updated":"2015-10-19 16:09:30.000000000","message":"I\u0027m not sure this is a good idea.  The class was designed so that self.api and self.admin_api use the same projects.  For example, in method  _boot_a_server_to_group, the server is created with self.api but _wait_for_state_change uses self.admin_api","commit_id":"cc1ead371c9aa13293ceb27ef2bc4f86687e4316"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"da512306ba1a6415c8286f6d9a7028a221d3cea9","unresolved":false,"context_lines":[{"line_number":59,"context_line":"        self.useFixture(policy_fixture.RealPolicyFixture())"},{"line_number":60,"context_line":"        api_fixture \u003d self.useFixture(nova_fixtures.OSAPIFixture())"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"        self.api \u003d api_fixture.api"},{"line_number":63,"context_line":"        self.admin_api \u003d api_fixture.admin_api"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"        # the image fake backend needed for image discovery"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a29b11f_2f715d76","line":62,"in_reply_to":"3a29b11f_39fa95be","updated":"2015-10-22 05:04:30.000000000","message":"Yea, i think that was not intend here but anyways that\u0027s something we can cleanup later as per this patch scope. So m fine with that too","commit_id":"cc1ead371c9aa13293ceb27ef2bc4f86687e4316"},{"author":{"_account_id":18247,"name":"Mark Doffman","email":"mdoffman@linux.vnet.ibm.com","username":"doffm"},"change_message_id":"6dfc2d8dfa77cc6ee75518331ef9806f9c307ade","unresolved":false,"context_lines":[{"line_number":181,"context_line":"        # Create a non-admin API using project \u0027openstack1\u0027"},{"line_number":182,"context_line":"        api_non_admin \u003d self.useFixture(nova_fixtures.OSAPIFixture("},{"line_number":183,"context_line":"                                        project_id\u003d\u0027openstack1\u0027)).api"},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"        # Create a server group in project \u0027openstack\u0027"},{"line_number":186,"context_line":"        group1 \u003d self.anti_affinity"},{"line_number":187,"context_line":"        openstack_group \u003d self.admin_api.post_server_groups(group1)"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a2ca52d_53dc8445","line":184,"updated":"2015-10-16 19:01:22.000000000","message":"Why don\u0027t you call this api_openstack1? There is another non-admin api object. \u0027self.api\u0027","commit_id":"cc1ead371c9aa13293ceb27ef2bc4f86687e4316"},{"author":{"_account_id":17139,"name":"Chuck Carmack","email":"carmack@us.ibm.com","username":"ccarmack"},"change_message_id":"256229311e62630cf32423335101b43a12ef7647","unresolved":false,"context_lines":[{"line_number":181,"context_line":"        # Create a non-admin API using project \u0027openstack1\u0027"},{"line_number":182,"context_line":"        api_non_admin \u003d self.useFixture(nova_fixtures.OSAPIFixture("},{"line_number":183,"context_line":"                                        project_id\u003d\u0027openstack1\u0027)).api"},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"        # Create a server group in project \u0027openstack\u0027"},{"line_number":186,"context_line":"        group1 \u003d self.anti_affinity"},{"line_number":187,"context_line":"        openstack_group \u003d self.admin_api.post_server_groups(group1)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a29b11f_795a4d85","line":184,"in_reply_to":"3a29b11f_75e4b03a","updated":"2015-10-19 16:09:30.000000000","message":"Please see my reply to the above comment.  This is the only test so far that needs 2 projects, so I think creating new api\u0027s here is ok.","commit_id":"cc1ead371c9aa13293ceb27ef2bc4f86687e4316"},{"author":{"_account_id":17139,"name":"Chuck Carmack","email":"carmack@us.ibm.com","username":"ccarmack"},"change_message_id":"256229311e62630cf32423335101b43a12ef7647","unresolved":false,"context_lines":[{"line_number":181,"context_line":"        # Create a non-admin API using project \u0027openstack1\u0027"},{"line_number":182,"context_line":"        api_non_admin \u003d self.useFixture(nova_fixtures.OSAPIFixture("},{"line_number":183,"context_line":"                                        project_id\u003d\u0027openstack1\u0027)).api"},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"        # Create a server group in project \u0027openstack\u0027"},{"line_number":186,"context_line":"        group1 \u003d self.anti_affinity"},{"line_number":187,"context_line":"        openstack_group \u003d self.admin_api.post_server_groups(group1)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a29b11f_796d6d03","line":184,"in_reply_to":"5a2ca52d_53dc8445","updated":"2015-10-19 16:09:30.000000000","message":"I will fix the variable names to be clear.","commit_id":"cc1ead371c9aa13293ceb27ef2bc4f86687e4316"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"8ee6812a23b9c3a6bd99a97fdcc8d4651ea174bb","unresolved":false,"context_lines":[{"line_number":181,"context_line":"        # Create a non-admin API using project \u0027openstack1\u0027"},{"line_number":182,"context_line":"        api_non_admin \u003d self.useFixture(nova_fixtures.OSAPIFixture("},{"line_number":183,"context_line":"                                        project_id\u003d\u0027openstack1\u0027)).api"},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"        # Create a server group in project \u0027openstack\u0027"},{"line_number":186,"context_line":"        group1 \u003d self.anti_affinity"},{"line_number":187,"context_line":"        openstack_group \u003d self.admin_api.post_server_groups(group1)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a29b11f_75e4b03a","line":184,"in_reply_to":"5a2ca52d_53dc8445","updated":"2015-10-19 03:15:40.000000000","message":"Or just make self.api with different project_id then admin one. please check my above comment.","commit_id":"cc1ead371c9aa13293ceb27ef2bc4f86687e4316"},{"author":{"_account_id":18247,"name":"Mark Doffman","email":"mdoffman@linux.vnet.ibm.com","username":"doffm"},"change_message_id":"6dfc2d8dfa77cc6ee75518331ef9806f9c307ade","unresolved":false,"context_lines":[{"line_number":184,"context_line":""},{"line_number":185,"context_line":"        # Create a server group in project \u0027openstack\u0027"},{"line_number":186,"context_line":"        group1 \u003d self.anti_affinity"},{"line_number":187,"context_line":"        openstack_group \u003d self.admin_api.post_server_groups(group1)"},{"line_number":188,"context_line":"        # Create a server group in project \u0027openstack1\u0027"},{"line_number":189,"context_line":"        group2 \u003d self.affinity"},{"line_number":190,"context_line":"        openstack1_group \u003d api_non_admin.post_server_groups(group2)"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a2ca52d_93d69c26","line":187,"updated":"2015-10-16 19:01:22.000000000","message":"self.api.post_server_groups(group1) ?\n\nI was confused initially. I thought that the important bit here was that one of them was admin and the other wasn\u0027t. Whereas the important bit is actually that one of them is in one project and one in the other. Despite the comments!","commit_id":"cc1ead371c9aa13293ceb27ef2bc4f86687e4316"},{"author":{"_account_id":17139,"name":"Chuck Carmack","email":"carmack@us.ibm.com","username":"ccarmack"},"change_message_id":"256229311e62630cf32423335101b43a12ef7647","unresolved":false,"context_lines":[{"line_number":184,"context_line":""},{"line_number":185,"context_line":"        # Create a server group in project \u0027openstack\u0027"},{"line_number":186,"context_line":"        group1 \u003d self.anti_affinity"},{"line_number":187,"context_line":"        openstack_group \u003d self.admin_api.post_server_groups(group1)"},{"line_number":188,"context_line":"        # Create a server group in project \u0027openstack1\u0027"},{"line_number":189,"context_line":"        group2 \u003d self.affinity"},{"line_number":190,"context_line":"        openstack1_group \u003d api_non_admin.post_server_groups(group2)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a29b11f_d9360103","line":187,"in_reply_to":"5a2ca52d_93d69c26","updated":"2015-10-19 16:09:30.000000000","message":"See my reply above.","commit_id":"cc1ead371c9aa13293ceb27ef2bc4f86687e4316"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"089a29ec88e7002d3ff38a879fcf093597f234bd","unresolved":false,"context_lines":[{"line_number":183,"context_line":"        # Create an API using project \u0027openstack1\u0027."},{"line_number":184,"context_line":"        # This is a non-admin API."},{"line_number":185,"context_line":"        api_openstack1 \u003d self.useFixture(nova_fixtures.OSAPIFixture("},{"line_number":186,"context_line":"                                        project_id\u003d\u0027openstack1\u0027)).api"},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"        # Create a server group in project \u0027openstack\u0027"},{"line_number":189,"context_line":"        # Project \u0027openstack\u0027 is used by self.api"}],"source_content_type":"text/x-python","patch_set":2,"id":"1a26ad4f_9c5a9782","line":186,"updated":"2015-10-29 15:22:41.000000000","message":"nit: alignment here is off, project_id should be lined up with nova_fixtures above.","commit_id":"6c15c071f0abf0c8e5196c5d011249ff8db3b067"}]}
