)]}'
{"specs/liberty/approved/add-id-to-security-groups.rst":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"0815f96f34b30267194f75c6f14442130af97b10","unresolved":false,"context_lines":[{"line_number":23,"context_line":"of each security-groups, this leads to confusions to the users, especially"},{"line_number":24,"context_line":"for the scenario of neutron using more than 2 security-groups with the same"},{"line_number":25,"context_line":"name. Neutron distinguishes security-groups with by id, while there are no"},{"line_number":26,"context_line":"\"id\" information returned by \"nova show \u003cservers-id\u003e\"."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Use Cases"},{"line_number":29,"context_line":"---------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afb71cf_05c05bdf","line":26,"updated":"2015-06-08 12:42:31.000000000","message":"I think this is almost the correct change...","commit_id":"8a095d124520dbb9725a2e737488cc422e8fdf2e"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"0815f96f34b30267194f75c6f14442130af97b10","unresolved":false,"context_lines":[{"line_number":56,"context_line":"Data model impact"},{"line_number":57,"context_line":"-----------------"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"None"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"REST API impact"},{"line_number":62,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afb71cf_855a0b4f","line":59,"updated":"2015-06-08 12:42:31.000000000","message":"So I think this is the wrong way to go about it.\n\nSo I think nova-network should add a uuid for security groups:\nhttps://github.com/openstack/nova/blob/master/nova/db/sqlalchemy/models.py#L620\n\nThe securty group object can generate a uuid, if it doesn\u0027t have one, and save that into the new column on read.\n\nOnce thats in place, we can return uuids for each security group via the API.\n\nWe need to add something to nova-manage to force the data migration for the deployer, so you don\u0027t have to wait until the next read to add the uuid.\n\nWe should only add a unique and not null constraint in the next release, once everything has been updated in the existing DB.\n\n... or something a bit like that?","commit_id":"8a095d124520dbb9725a2e737488cc422e8fdf2e"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"0815f96f34b30267194f75c6f14442130af97b10","unresolved":false,"context_lines":[{"line_number":79,"context_line":"   {\"server\":"},{"line_number":80,"context_line":"      {"},{"line_number":81,"context_line":"         ..."},{"line_number":82,"context_line":"         \"security_groups\": [{\"name\": \"default\"}, {\"id\": 2}]"},{"line_number":83,"context_line":"         ..."},{"line_number":84,"context_line":"      }"},{"line_number":85,"context_line":"   }"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afb71cf_45541320","line":82,"updated":"2015-06-08 12:42:31.000000000","message":"It should return a uuid not an id","commit_id":"8a095d124520dbb9725a2e737488cc422e8fdf2e"},{"author":{"_account_id":13663,"name":"heijlong","email":"jhei@redhat.com","username":"parklong"},"change_message_id":"966a6497980cb869aa91b185efce554c27afa44d","unresolved":false,"context_lines":[{"line_number":79,"context_line":"   {\"server\":"},{"line_number":80,"context_line":"      {"},{"line_number":81,"context_line":"         ..."},{"line_number":82,"context_line":"         \"security_groups\": [{\"name\": \"default\"}, {\"id\": 2}]"},{"line_number":83,"context_line":"         ..."},{"line_number":84,"context_line":"      }"},{"line_number":85,"context_line":"   }"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afb71cf_0a56c6cd","line":82,"in_reply_to":"3afb71cf_45541320","updated":"2015-06-10 09:52:43.000000000","message":"with nova-network, the value of \"id\" is a number, while with neutron, the value of \"id\" is an UUID, as belows\n\nnova-network: \n\"security_groups\": [{\"name\": \"default\"}, {\"id\": 2}]\n\nneutron: \n\"security_groups\": [{\"name\": \"default\"}, {\"id\": \"e20ccd4b-c316-4df9-8e4c-f003b942a90d\"}]","commit_id":"8a095d124520dbb9725a2e737488cc422e8fdf2e"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"5f4235b1ee490b3e85e29df1e233f58cbece126e","unresolved":false,"context_lines":[{"line_number":23,"context_line":"of each security-groups, this leads to confusions to the users, especially"},{"line_number":24,"context_line":"for the scenario of neutron using more than 2 security-groups with the same"},{"line_number":25,"context_line":"name. Neutron distinguishes security-groups by uuid, while there are no"},{"line_number":26,"context_line":"\"uuid\" information returned by \"nova show \u003cservers-id\u003e\"."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Use Cases"},{"line_number":29,"context_line":"---------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_4d9e2508","line":26,"updated":"2015-06-18 01:53:58.000000000","message":"+1, nice desciption","commit_id":"1c3de3cd5b557d4e0f0cd17f824c3324efb0c3be"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"7589007ab84710d7a7815592f35f5c159fca57a9","unresolved":false,"context_lines":[{"line_number":52,"context_line":"------------"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"From nova CLI, once you get the server id, you could get the security-groups"},{"line_number":55,"context_line":"details of this server via nova server-group-get \u003cserver-id\u003e API request, this"},{"line_number":56,"context_line":"could be a workaround for nova CLI, but this could not change the fact that"},{"line_number":57,"context_line":"response data from nova show \u003cserver-id\u003e does not contain the security-groups"},{"line_number":58,"context_line":"uuid information."}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_a60700c9","line":55,"updated":"2015-06-17 08:32:05.000000000","message":"you mean security-group-get I assume?\n\nit should be server-uuid I think?","commit_id":"1c3de3cd5b557d4e0f0cd17f824c3324efb0c3be"},{"author":{"_account_id":13663,"name":"heijlong","email":"jhei@redhat.com","username":"parklong"},"change_message_id":"83b6ca8f2924b9bdac00fba8ac50e0a04946a562","unresolved":false,"context_lines":[{"line_number":52,"context_line":"------------"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"From nova CLI, once you get the server id, you could get the security-groups"},{"line_number":55,"context_line":"details of this server via nova server-group-get \u003cserver-id\u003e API request, this"},{"line_number":56,"context_line":"could be a workaround for nova CLI, but this could not change the fact that"},{"line_number":57,"context_line":"response data from nova show \u003cserver-id\u003e does not contain the security-groups"},{"line_number":58,"context_line":"uuid information."}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_fefd61b1","line":55,"in_reply_to":"fa32b979_4db5c57b","updated":"2015-06-18 11:35:11.000000000","message":"thank you both John\u0026Ken\u0027ichi, you are right, once you get the server id, you could get the security-groups details from nova list-secgroup \u003cserver-id\u003e. \n\nwill update my typo in next update.","commit_id":"1c3de3cd5b557d4e0f0cd17f824c3324efb0c3be"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"5f4235b1ee490b3e85e29df1e233f58cbece126e","unresolved":false,"context_lines":[{"line_number":52,"context_line":"------------"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"From nova CLI, once you get the server id, you could get the security-groups"},{"line_number":55,"context_line":"details of this server via nova server-group-get \u003cserver-id\u003e API request, this"},{"line_number":56,"context_line":"could be a workaround for nova CLI, but this could not change the fact that"},{"line_number":57,"context_line":"response data from nova show \u003cserver-id\u003e does not contain the security-groups"},{"line_number":58,"context_line":"uuid information."}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_4db5c57b","line":55,"in_reply_to":"fa32b979_a60700c9","updated":"2015-06-18 01:53:58.000000000","message":"yeah, maybe s/server-group-get/security-group-get/","commit_id":"1c3de3cd5b557d4e0f0cd17f824c3324efb0c3be"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"7589007ab84710d7a7815592f35f5c159fca57a9","unresolved":false,"context_lines":[{"line_number":72,"context_line":""},{"line_number":73,"context_line":"The proposed change just updates the GET response data in the servers.show"},{"line_number":74,"context_line":"API to include the security-groups \u0027uuid\u0027 field. The details will be change"},{"line_number":75,"context_line":"in the os-security-groups API extension."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"* Example use case:"},{"line_number":78,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_a6a380b1","line":75,"updated":"2015-06-17 08:32:05.000000000","message":"so technically we are removing all API extensions in v2.1, but it still lives it that file for now, but I would drop that detail, thats probably easier.","commit_id":"1c3de3cd5b557d4e0f0cd17f824c3324efb0c3be"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"5f4235b1ee490b3e85e29df1e233f58cbece126e","unresolved":false,"context_lines":[{"line_number":72,"context_line":""},{"line_number":73,"context_line":"The proposed change just updates the GET response data in the servers.show"},{"line_number":74,"context_line":"API to include the security-groups \u0027uuid\u0027 field. The details will be change"},{"line_number":75,"context_line":"in the os-security-groups API extension."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"* Example use case:"},{"line_number":78,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_9050c40c","line":75,"in_reply_to":"fa32b979_a6a380b1","updated":"2015-06-18 01:53:58.000000000","message":"Yeah, the direction seems totally right.\nbut still extension code will be useful for modularity like https://review.openstack.org/#/c/162913/\n\nSo I don\u0027t -1 for this part.","commit_id":"1c3de3cd5b557d4e0f0cd17f824c3324efb0c3be"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"7589007ab84710d7a7815592f35f5c159fca57a9","unresolved":false,"context_lines":[{"line_number":78,"context_line":""},{"line_number":79,"context_line":"Request:"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"GET --header \"X-OpenStack-Nova-API-Version: 2.4\"  v2/{tenant-id}/servers/\\"},{"line_number":82,"context_line":"{server-id}"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"Response:"}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_4695d43c","line":81,"updated":"2015-06-17 08:32:05.000000000","message":"its maybe worth changing this to 2.xx to show we don\u0027t know what the number will be yet?","commit_id":"1c3de3cd5b557d4e0f0cd17f824c3324efb0c3be"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"5f4235b1ee490b3e85e29df1e233f58cbece126e","unresolved":false,"context_lines":[{"line_number":78,"context_line":""},{"line_number":79,"context_line":"Request:"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"GET --header \"X-OpenStack-Nova-API-Version: 2.4\"  v2/{tenant-id}/servers/\\"},{"line_number":82,"context_line":"{server-id}"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"Response:"}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_9077649f","line":81,"in_reply_to":"fa32b979_4695d43c","updated":"2015-06-18 01:53:58.000000000","message":"Yes, right. we cannot allocate the number in advance.\n\nhttps://github.com/openstack/nova/blob/master/doc/source/api_microversion_dev.rst#allocating-a-microversion","commit_id":"1c3de3cd5b557d4e0f0cd17f824c3324efb0c3be"},{"author":{"_account_id":13663,"name":"heijlong","email":"jhei@redhat.com","username":"parklong"},"change_message_id":"83b6ca8f2924b9bdac00fba8ac50e0a04946a562","unresolved":false,"context_lines":[{"line_number":78,"context_line":""},{"line_number":79,"context_line":"Request:"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"GET --header \"X-OpenStack-Nova-API-Version: 2.4\"  v2/{tenant-id}/servers/\\"},{"line_number":82,"context_line":"{server-id}"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"Response:"}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_5e256d59","line":81,"in_reply_to":"fa32b979_9077649f","updated":"2015-06-18 11:35:11.000000000","message":"Done","commit_id":"1c3de3cd5b557d4e0f0cd17f824c3324efb0c3be"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"7589007ab84710d7a7815592f35f5c159fca57a9","unresolved":false,"context_lines":[{"line_number":121,"context_line":"Other deployer impact"},{"line_number":122,"context_line":"---------------------"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"None; if a deployer is using the required minimum version of the API to get"},{"line_number":125,"context_line":"the \u0027uuid\u0027 data they can begin using it, otherwise they won\u0027t see a change."},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"Developer impact"}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_467cf41e","line":124,"updated":"2015-06-17 08:32:05.000000000","message":"so its not really something a deployer does, this is an end user.\n\nHowever, I think this sentence would be a great add to the end of the REST API section.","commit_id":"1c3de3cd5b557d4e0f0cd17f824c3324efb0c3be"},{"author":{"_account_id":13663,"name":"heijlong","email":"jhei@redhat.com","username":"parklong"},"change_message_id":"83b6ca8f2924b9bdac00fba8ac50e0a04946a562","unresolved":false,"context_lines":[{"line_number":121,"context_line":"Other deployer impact"},{"line_number":122,"context_line":"---------------------"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"None; if a deployer is using the required minimum version of the API to get"},{"line_number":125,"context_line":"the \u0027uuid\u0027 data they can begin using it, otherwise they won\u0027t see a change."},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"Developer impact"}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_9ef1b56d","line":124,"in_reply_to":"fa32b979_467cf41e","updated":"2015-06-18 11:35:11.000000000","message":"Done","commit_id":"1c3de3cd5b557d4e0f0cd17f824c3324efb0c3be"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"7589007ab84710d7a7815592f35f5c159fca57a9","unresolved":false,"context_lines":[{"line_number":146,"context_line":"  if not exist during the creation."},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"* Add a new microversion and change nova/api/openstack/compute/contrib/\\"},{"line_number":149,"context_line":"  security_groups.py to add the \u0027uuid\u0027 attribute to the response data."},{"line_number":150,"context_line":""},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"Dependencies"}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_a6df000c","line":149,"updated":"2015-06-17 08:32:05.000000000","message":"Are we also going to talk about making all the security group APIs accept uuids instead of ids / names? I think thats the next step once users can see the uuid, then need to be able to use it.","commit_id":"1c3de3cd5b557d4e0f0cd17f824c3324efb0c3be"},{"author":{"_account_id":13663,"name":"heijlong","email":"jhei@redhat.com","username":"parklong"},"change_message_id":"83b6ca8f2924b9bdac00fba8ac50e0a04946a562","unresolved":false,"context_lines":[{"line_number":146,"context_line":"  if not exist during the creation."},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"* Add a new microversion and change nova/api/openstack/compute/contrib/\\"},{"line_number":149,"context_line":"  security_groups.py to add the \u0027uuid\u0027 attribute to the response data."},{"line_number":150,"context_line":""},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"Dependencies"}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_9ed69526","line":149,"in_reply_to":"fa32b979_70a7400b","updated":"2015-06-18 11:35:11.000000000","message":"Done","commit_id":"1c3de3cd5b557d4e0f0cd17f824c3324efb0c3be"},{"author":{"_account_id":13663,"name":"heijlong","email":"jhei@redhat.com","username":"parklong"},"change_message_id":"83b6ca8f2924b9bdac00fba8ac50e0a04946a562","unresolved":false,"context_lines":[{"line_number":146,"context_line":"  if not exist during the creation."},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"* Add a new microversion and change nova/api/openstack/compute/contrib/\\"},{"line_number":149,"context_line":"  security_groups.py to add the \u0027uuid\u0027 attribute to the response data."},{"line_number":150,"context_line":""},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"Dependencies"}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_be1839d4","line":149,"in_reply_to":"fa32b979_a6df000c","updated":"2015-06-18 11:35:11.000000000","message":"agree that will not make uuids instead of id/name right now, currently, we wil just add uuid field into DB class and add it into response code for security groups, both \u0027name\u0027 and \u0027uuid\u0027 fields will be in response as detail above, I will clarify here detail next update.","commit_id":"1c3de3cd5b557d4e0f0cd17f824c3324efb0c3be"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"5f4235b1ee490b3e85e29df1e233f58cbece126e","unresolved":false,"context_lines":[{"line_number":146,"context_line":"  if not exist during the creation."},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"* Add a new microversion and change nova/api/openstack/compute/contrib/\\"},{"line_number":149,"context_line":"  security_groups.py to add the \u0027uuid\u0027 attribute to the response data."},{"line_number":150,"context_line":""},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"Dependencies"}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_70a7400b","line":149,"in_reply_to":"fa32b979_a6df000c","updated":"2015-06-18 01:53:58.000000000","message":"nova/api/openstack/compute/contrib/security_groups.py is for v2.0 code, not v2.1 + microversions.\n\nSo here should be \n\n./nova/api/openstack/compute/plugins/v3/security_groups.py","commit_id":"1c3de3cd5b557d4e0f0cd17f824c3324efb0c3be"},{"author":{"_account_id":1849,"name":"Joe Gordon","email":"joe.gordon0@gmail.com","username":"jogo"},"change_message_id":"18f9081934416d9f047c686623278fd2c88c6d9b","unresolved":false,"context_lines":[{"line_number":41,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"For nova-network, add \u0027uuid\u0027 column to DB class SecurityGroup, SecurityGroup"},{"line_number":44,"context_line":"object will generate and save the \u0027uuid\u0027 if not exist."},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"For nova API, change the existing os-security-groups API extension"},{"line_number":47,"context_line":"_extend_servers function with microversion, such that version on the API GET"}],"source_content_type":"text/x-rst","patch_set":5,"id":"fa32b979_3fc8a354","line":44,"updated":"2015-06-24 17:22:09.000000000","message":"This sounds like a nice painless upgrade solution","commit_id":"c4dd389e490d9e0c6db9aef72c00969dcd26975f"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"ad6bff75781f06669cfadf402f6e8c4bf735f6fc","unresolved":false,"context_lines":[{"line_number":65,"context_line":"thats in place, we can return uuids for each security group via the API."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"Once everything has been updated in the existing DB, we could add a unique"},{"line_number":68,"context_line":"and not null constraint in the next release,"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"REST API impact"},{"line_number":71,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"fa32b979_a291b39c","line":68,"updated":"2015-06-25 23:30:37.000000000","message":"I\u0027m not sure that will be sufficient (unless there is a periodic task which iterates the objects?), but we can defer that conversation until M.","commit_id":"c4dd389e490d9e0c6db9aef72c00969dcd26975f"},{"author":{"_account_id":13663,"name":"heijlong","email":"jhei@redhat.com","username":"parklong"},"change_message_id":"5b6ffb4fa09de08631978adebcd47a54c031021c","unresolved":false,"context_lines":[{"line_number":92,"context_line":"      {"},{"line_number":93,"context_line":"         ..."},{"line_number":94,"context_line":"         \"security_groups\": [{\"name\": \"default\"}, {\"uuid\": \"e20ccd4b-c316-\\"},{"line_number":95,"context_line":"               4df9-8e4c-f003b942a90d\"}]"},{"line_number":96,"context_line":"         ..."},{"line_number":97,"context_line":"      }"},{"line_number":98,"context_line":"   }"}],"source_content_type":"text/x-rst","patch_set":5,"id":"9a41bdd9_c05c134d","line":95,"updated":"2015-07-16 08:46:13.000000000","message":"I think we should change the format as \n\n\"security_groups\": [{\"name\": \"default\", \"uuid\": \"e20ccd4b-c316-4df9-8e4c-f003b942a90d\"}, {\"name\": \"test\", \"uuid\": \"c316cd4b-e987-6l9d-7u3h-f398a862f88u\"}]\n\nbecause there may be more than 1 security-groups in the response data.","commit_id":"c4dd389e490d9e0c6db9aef72c00969dcd26975f"}]}
