)]}'
{"api-ref/source/parameters.yaml":[{"author":{"_account_id":964,"name":"Anne Gentle","email":"annegentle@justwriteclick.com","username":"annegentle"},"change_message_id":"227cdc7562fd860d2660fe22f5fafed945bc57af","unresolved":false,"context_lines":[{"line_number":2871,"context_line":"    will attempt to automatically allocate a network for the project (if possible)."},{"line_number":2872,"context_line":"    *none* tells Nova to not allocate a network for the instance. The *auto*"},{"line_number":2873,"context_line":"    and *none* values cannot be used with any other network values, including"},{"line_number":2874,"context_line":"    other network uuids, ports or fixed IPs."},{"line_number":2875,"context_line":"  in: body"},{"line_number":2876,"context_line":"  required: false"},{"line_number":2877,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":31,"id":"bacf61ea_b6dffb38","line":2874,"updated":"2016-08-05 14:07:04.000000000","message":"I know I haven\u0027t reviewed for this before, but many, many readers of this document will not know what Nova is. You should say the Compute service, not Nova, throughout.","commit_id":"d57e7385c6e68b88b386286c8901814d7bcc4d24"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0a98a37e2d1c0ec61c356dd66316f24e070d4e26","unresolved":false,"context_lines":[{"line_number":2871,"context_line":"    will attempt to automatically allocate a network for the project (if possible)."},{"line_number":2872,"context_line":"    *none* tells Nova to not allocate a network for the instance. The *auto*"},{"line_number":2873,"context_line":"    and *none* values cannot be used with any other network values, including"},{"line_number":2874,"context_line":"    other network uuids, ports or fixed IPs."},{"line_number":2875,"context_line":"  in: body"},{"line_number":2876,"context_line":"  required: false"},{"line_number":2877,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":31,"id":"bacf61ea_674ac956","line":2874,"in_reply_to":"bacf61ea_b6dffb38","updated":"2016-08-05 15:49:03.000000000","message":"Done","commit_id":"d57e7385c6e68b88b386286c8901814d7bcc4d24"},{"author":{"_account_id":14819,"name":"Timofey Durakov","email":"timofei.nd@gmail.com","username":"tdurakov"},"change_message_id":"07319db32341031b17c38a90c594f3dade07ccc9","unresolved":false,"context_lines":[{"line_number":2866,"context_line":"    To provision the server instance with a NIC for a network, specify the UUID of"},{"line_number":2867,"context_line":"    the network in the ``uuid`` attribute in a ``networks`` object. Required if you"},{"line_number":2868,"context_line":"    omit the ``port`` attribute."},{"line_number":2869,"context_line":""},{"line_number":2870,"context_line":"    Starting with microversion 2.37, the special values *auto* and *none* can"},{"line_number":2871,"context_line":"    be specified for the network uuid. *auto* tells the Compute service to use"},{"line_number":2872,"context_line":"    a network that is available to the project, if one exists. If one does not"},{"line_number":2873,"context_line":"    exist, the Compute service will attempt to automatically allocate a network"},{"line_number":2874,"context_line":"    for the project (if possible). *none* tells the Compute service to not"},{"line_number":2875,"context_line":"    allocate a network for the instance. The *auto* and *none* values cannot be"},{"line_number":2876,"context_line":"    used with any other network values, including other network uuids, ports or"},{"line_number":2877,"context_line":"    fixed IPs."},{"line_number":2878,"context_line":"  in: body"},{"line_number":2879,"context_line":"  required: false"},{"line_number":2880,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":32,"id":"9ad45d7e_5e171ea3","line":2877,"range":{"start_line":2869,"start_character":0,"end_line":2877,"end_character":14},"updated":"2016-08-09 07:40:01.000000000","message":"you could possibly use min/max_version as it\u0027s proposed here instead https://review.openstack.org/#/c/345652/3/api-ref/source/parameters.yaml","commit_id":"fb45af5bed9921e07d713f423cc5f157233bbfc0"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c7633b64dfbf7b32d44abc290f2f2fa455762ba2","unresolved":false,"context_lines":[{"line_number":2866,"context_line":"    To provision the server instance with a NIC for a network, specify the UUID of"},{"line_number":2867,"context_line":"    the network in the ``uuid`` attribute in a ``networks`` object. Required if you"},{"line_number":2868,"context_line":"    omit the ``port`` attribute."},{"line_number":2869,"context_line":""},{"line_number":2870,"context_line":"    Starting with microversion 2.37, the special values *auto* and *none* can"},{"line_number":2871,"context_line":"    be specified for the network uuid. *auto* tells the Compute service to use"},{"line_number":2872,"context_line":"    a network that is available to the project, if one exists. If one does not"},{"line_number":2873,"context_line":"    exist, the Compute service will attempt to automatically allocate a network"},{"line_number":2874,"context_line":"    for the project (if possible). *none* tells the Compute service to not"},{"line_number":2875,"context_line":"    allocate a network for the instance. The *auto* and *none* values cannot be"},{"line_number":2876,"context_line":"    used with any other network values, including other network uuids, ports or"},{"line_number":2877,"context_line":"    fixed IPs."},{"line_number":2878,"context_line":"  in: body"},{"line_number":2879,"context_line":"  required: false"},{"line_number":2880,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":32,"id":"9ad45d7e_9114d744","line":2877,"range":{"start_line":2869,"start_character":0,"end_line":2877,"end_character":14},"in_reply_to":"9ad45d7e_5e171ea3","updated":"2016-08-09 13:25:27.000000000","message":"That doesn\u0027t render in the table as 2 fields though, see:\n\nhttp://docs-draft.openstack.org/52/345652/3/check/gate-nova-api-ref/248a1de//api-ref/build/html/?expanded\u003dlive-migrate-server-os-migratelive-action-detail#id115","commit_id":"fb45af5bed9921e07d713f423cc5f157233bbfc0"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"0f5f05fd8e94f6ae2af0bac05cdf882d213ce86a","unresolved":false,"context_lines":[{"line_number":3002,"context_line":"    the network in the ``uuid`` attribute in a ``networks`` object. Required if you"},{"line_number":3003,"context_line":"    omit the ``port`` attribute."},{"line_number":3004,"context_line":""},{"line_number":3005,"context_line":"    Starting with microversion 2.37, this value is stricly enforced to be in"},{"line_number":3006,"context_line":"    UUID format."},{"line_number":3007,"context_line":"  in: body"},{"line_number":3008,"context_line":"  required: false"}],"source_content_type":"text/x-yaml","patch_set":36,"id":"3ac371cc_e9929f56","line":3005,"range":{"start_line":3005,"start_character":51,"end_line":3005,"end_character":58},"updated":"2016-08-15 17:46:40.000000000","message":"\"strictly\"","commit_id":"5f67f78ecd0230f4bf13b1dfcd3bfbd9c188365b"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"f739b82e797f30b53675402bd806160c7a3a0233","unresolved":false,"context_lines":[{"line_number":3002,"context_line":"    the network in the ``uuid`` attribute in a ``networks`` object. Required if you"},{"line_number":3003,"context_line":"    omit the ``port`` attribute."},{"line_number":3004,"context_line":""},{"line_number":3005,"context_line":"    Starting with microversion 2.37, this value is stricly enforced to be in"},{"line_number":3006,"context_line":"    UUID format."},{"line_number":3007,"context_line":"  in: body"},{"line_number":3008,"context_line":"  required: false"}],"source_content_type":"text/x-yaml","patch_set":36,"id":"3ac371cc_94821e51","line":3005,"range":{"start_line":3005,"start_character":51,"end_line":3005,"end_character":58},"in_reply_to":"3ac371cc_e9929f56","updated":"2016-08-15 17:57:42.000000000","message":"Done","commit_id":"5f67f78ecd0230f4bf13b1dfcd3bfbd9c188365b"}],"api-ref/source/servers.inc":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"d8f2d1277f303acba3547483c010e41625a24f68","unresolved":false,"context_lines":[{"line_number":309,"context_line":"  - OS-DCF:diskConfig: OS-DCF:diskConfig"},{"line_number":310,"context_line":"  - description: server_description"},{"line_number":311,"context_line":""},{"line_number":312,"context_line":"**Example Create Server: JSON request**"},{"line_number":313,"context_line":""},{"line_number":314,"context_line":".. literalinclude:: ../../doc/api_samples/servers/server-create-req.json"},{"line_number":315,"context_line":"   :language: javascript"},{"line_number":316,"context_line":""},{"line_number":317,"context_line":"Response"},{"line_number":318,"context_line":"--------"}],"source_content_type":"text/x-c++src","patch_set":9,"id":"7aa08908_5dc4c43e","line":315,"range":{"start_line":312,"start_character":0,"end_line":315,"end_character":24},"updated":"2016-06-08 13:32:34.000000000","message":"We should include an example for v2.31 for get-me-a-network.","commit_id":"589576f6e5f3911249f46b5dcfad978eda1d0c5a"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"23d842e4caa3267a4dc163ff2e2452e70628b201","unresolved":false,"context_lines":[{"line_number":313,"context_line":""},{"line_number":314,"context_line":"**Example Create Server (v2.1-v2.36)**"},{"line_number":315,"context_line":""},{"line_number":316,"context_line":".. literalinclude:: ../../doc/api_samples/servers/server-create-req.json"},{"line_number":317,"context_line":"   :language: javascript"},{"line_number":318,"context_line":""},{"line_number":319,"context_line":"**Example Create Server (v2.37)**"}],"source_content_type":"text/x-c++src","patch_set":29,"id":"dada55a8_7e8ff074","line":316,"range":{"start_line":316,"start_character":0,"end_line":316,"end_character":72},"updated":"2016-07-27 09:31:42.000000000","message":"if we are mentioning the version range aboive then  we should take 2.32 sample here - servers/v2.32/server-create-req.json","commit_id":"81576e36cfda187670ddd91d026e07264f2d624d"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"4a1bfe19cc5552ecc1b48374cc77ccae0c163d91","unresolved":false,"context_lines":[{"line_number":313,"context_line":""},{"line_number":314,"context_line":"**Example Create Server (v2.1-v2.36)**"},{"line_number":315,"context_line":""},{"line_number":316,"context_line":".. literalinclude:: ../../doc/api_samples/servers/server-create-req.json"},{"line_number":317,"context_line":"   :language: javascript"},{"line_number":318,"context_line":""},{"line_number":319,"context_line":"**Example Create Server (v2.37)**"}],"source_content_type":"text/x-c++src","patch_set":29,"id":"bacf61ea_7948685c","line":316,"range":{"start_line":316,"start_character":0,"end_line":316,"end_character":72},"in_reply_to":"bacf61ea_3ed896ef","updated":"2016-07-27 18:04:04.000000000","message":"we don\u0027t need to provide an example for every possibility or change. The examples demonstrate basic structure.\n\nIf we add something with a complex structure (more than a new key/value) a new example is fine.","commit_id":"81576e36cfda187670ddd91d026e07264f2d624d"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"5e47fd0bd6736aa0489ad8e797c46f6883b3ed64","unresolved":false,"context_lines":[{"line_number":313,"context_line":""},{"line_number":314,"context_line":"**Example Create Server (v2.1-v2.36)**"},{"line_number":315,"context_line":""},{"line_number":316,"context_line":".. literalinclude:: ../../doc/api_samples/servers/server-create-req.json"},{"line_number":317,"context_line":"   :language: javascript"},{"line_number":318,"context_line":""},{"line_number":319,"context_line":"**Example Create Server (v2.37)**"}],"source_content_type":"text/x-c++src","patch_set":29,"id":"bacf61ea_75f69dd8","line":316,"range":{"start_line":316,"start_character":0,"end_line":316,"end_character":72},"in_reply_to":"bacf61ea_7948685c","updated":"2016-07-27 23:52:25.000000000","message":"Yea showing all example would not be good. I was thinking to have example of latest microversion which has all fields can be requested with latest microversion.\n\nBut anyways that\u0027s more to discuss/do on api-ref BP.","commit_id":"81576e36cfda187670ddd91d026e07264f2d624d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4bf4d55a0b5938220412c1eb3236ef00ba8092c0","unresolved":false,"context_lines":[{"line_number":313,"context_line":""},{"line_number":314,"context_line":"**Example Create Server (v2.1-v2.36)**"},{"line_number":315,"context_line":""},{"line_number":316,"context_line":".. literalinclude:: ../../doc/api_samples/servers/server-create-req.json"},{"line_number":317,"context_line":"   :language: javascript"},{"line_number":318,"context_line":""},{"line_number":319,"context_line":"**Example Create Server (v2.37)**"}],"source_content_type":"text/x-c++src","patch_set":29,"id":"bacf61ea_3ed896ef","line":316,"range":{"start_line":316,"start_character":0,"end_line":316,"end_character":72},"in_reply_to":"dada55a8_7e8ff074","updated":"2016-07-27 18:00:03.000000000","message":"Well, 2.19 adds description to create, and 2.32 adds network/bdm tags, so I guess it depends how much we want to document this. I could do:\n\n- 2.1-2.18\n- 2.19-2.31\n- 2.32-2.36\n- 2.37\n\nI\u0027m just not sure if that\u0027s excessive.","commit_id":"81576e36cfda187670ddd91d026e07264f2d624d"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"2de249a6d340fce2cdfc39bd2a0696e76e7a621d","unresolved":false,"context_lines":[{"line_number":224,"context_line":"\u003chttp://developer.openstack.org/api-ref-compute-v2.1.html#createKeypair\u003e`__"},{"line_number":225,"context_line":"request."},{"line_number":226,"context_line":""},{"line_number":227,"context_line":".. note:: Starting with microversion 2.37 the ``networks`` field is required."},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"Preconditions"},{"line_number":230,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":32,"id":"9ad45d7e_4abf5dfb","line":227,"updated":"2016-08-09 06:26:14.000000000","message":"better to have explaination for the value \u0027auto\u0027 and \u0027none\u0027","commit_id":"fb45af5bed9921e07d713f423cc5f157233bbfc0"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c7633b64dfbf7b32d44abc290f2f2fa455762ba2","unresolved":false,"context_lines":[{"line_number":224,"context_line":"\u003chttp://developer.openstack.org/api-ref-compute-v2.1.html#createKeypair\u003e`__"},{"line_number":225,"context_line":"request."},{"line_number":226,"context_line":""},{"line_number":227,"context_line":".. note:: Starting with microversion 2.37 the ``networks`` field is required."},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"Preconditions"},{"line_number":230,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":32,"id":"9ad45d7e_f129d38a","line":227,"in_reply_to":"9ad45d7e_4abf5dfb","updated":"2016-08-09 13:25:27.000000000","message":"That\u0027s in the network_uuid description.","commit_id":"fb45af5bed9921e07d713f423cc5f157233bbfc0"}],"doc/api_samples/servers/v2.37/server-create-req.json":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"24430e844d43e528a449f2dafc471c37df1ac1b9","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"    \"server\" : {"},{"line_number":3,"context_line":"        \"name\" : \"auto-allocate-network\","},{"line_number":4,"context_line":"        \"imageRef\" : \"http://glance.openstack.example.com/images/70a599e0-31e7-49b7-b260-868f441e862b\","},{"line_number":5,"context_line":"        \"flavorRef\" : \"http://openstack.example.com/flavors/1\","},{"line_number":6,"context_line":"        \"networks\" : [{"},{"line_number":7,"context_line":"            \"uuid\" : \"auto\""}],"source_content_type":"application/json","patch_set":29,"id":"dada55a8_62cf6556","line":4,"range":{"start_line":4,"start_character":22,"end_line":4,"end_character":65},"updated":"2016-07-26 23:08:01.000000000","message":"It would be nice to set an image id only without \"http://...\" as https://review.openstack.org/#/c/338802/ discussion. but it is fine to do that later with the other parts also.","commit_id":"81576e36cfda187670ddd91d026e07264f2d624d"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"e9d1fad1d590bdd464dd6fe9c4c0c8e7b239f2d5","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"    \"server\" : {"},{"line_number":3,"context_line":"        \"name\" : \"auto-allocate-network\","},{"line_number":4,"context_line":"        \"imageRef\" : \"http://glance.openstack.example.com/images/70a599e0-31e7-49b7-b260-868f441e862b\","},{"line_number":5,"context_line":"        \"flavorRef\" : \"http://openstack.example.com/flavors/1\","},{"line_number":6,"context_line":"        \"networks\" : [{"},{"line_number":7,"context_line":"            \"uuid\" : \"auto\""}],"source_content_type":"application/json","patch_set":29,"id":"bacf61ea_79e4e83a","line":4,"range":{"start_line":4,"start_character":22,"end_line":4,"end_character":65},"in_reply_to":"bacf61ea_de621a16","updated":"2016-07-27 18:05:44.000000000","message":"I think all the imageRef should get fixed at once, and probably with the change that gmann makes there.","commit_id":"81576e36cfda187670ddd91d026e07264f2d624d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4bf4d55a0b5938220412c1eb3236ef00ba8092c0","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"    \"server\" : {"},{"line_number":3,"context_line":"        \"name\" : \"auto-allocate-network\","},{"line_number":4,"context_line":"        \"imageRef\" : \"http://glance.openstack.example.com/images/70a599e0-31e7-49b7-b260-868f441e862b\","},{"line_number":5,"context_line":"        \"flavorRef\" : \"http://openstack.example.com/flavors/1\","},{"line_number":6,"context_line":"        \"networks\" : [{"},{"line_number":7,"context_line":"            \"uuid\" : \"auto\""}],"source_content_type":"application/json","patch_set":29,"id":"bacf61ea_de621a16","line":4,"range":{"start_line":4,"start_character":22,"end_line":4,"end_character":65},"in_reply_to":"dada55a8_62cf6556","updated":"2016-07-27 18:00:03.000000000","message":"I\u0027ll take a look at it, but not sure how much the functional api samples tests are stubbing out how this is handled and would require changes.","commit_id":"81576e36cfda187670ddd91d026e07264f2d624d"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"23d842e4caa3267a4dc163ff2e2452e70628b201","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"    \"server\" : {"},{"line_number":3,"context_line":"        \"name\" : \"auto-allocate-network\","},{"line_number":4,"context_line":"        \"imageRef\" : \"http://glance.openstack.example.com/images/70a599e0-31e7-49b7-b260-868f441e862b\","},{"line_number":5,"context_line":"        \"flavorRef\" : \"http://openstack.example.com/flavors/1\","},{"line_number":6,"context_line":"        \"networks\" : [{"},{"line_number":7,"context_line":"            \"uuid\" : \"auto\""},{"line_number":8,"context_line":"        }]"},{"line_number":9,"context_line":"    }"},{"line_number":10,"context_line":"}"}],"source_content_type":"application/json","patch_set":29,"id":"dada55a8_2061d705","line":10,"range":{"start_line":1,"start_character":0,"end_line":10,"end_character":1},"updated":"2016-07-27 09:31:42.000000000","message":"As we are removing the 2.32 sample from servers.inc, can we have this sample based on 2.32 one to reflect latest accepted attributes in this sample.","commit_id":"81576e36cfda187670ddd91d026e07264f2d624d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a8a59f2cc69aa2f96a032d0c43a43bce772556db","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"    \"server\" : {"},{"line_number":3,"context_line":"        \"name\" : \"auto-allocate-network\","},{"line_number":4,"context_line":"        \"imageRef\" : \"http://glance.openstack.example.com/images/70a599e0-31e7-49b7-b260-868f441e862b\","},{"line_number":5,"context_line":"        \"flavorRef\" : \"http://openstack.example.com/flavors/1\","},{"line_number":6,"context_line":"        \"networks\" : [{"},{"line_number":7,"context_line":"            \"uuid\" : \"auto\""},{"line_number":8,"context_line":"        }]"},{"line_number":9,"context_line":"    }"},{"line_number":10,"context_line":"}"}],"source_content_type":"application/json","patch_set":29,"id":"bacf61ea_5995a43e","line":10,"range":{"start_line":1,"start_character":0,"end_line":10,"end_character":1},"in_reply_to":"bacf61ea_1eb6728a","updated":"2016-07-27 18:21:21.000000000","message":"Thinking about this again, the point of 2.37 is very basic simple boot, so I don\u0027t really want to build 2.32 into this as that\u0027s a more advanced scenario with device tagging. Plus the 2.32 sample isn\u0027t getting deleted, I messed up the rebase for that.","commit_id":"81576e36cfda187670ddd91d026e07264f2d624d"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"dfb6a3e09407735e11bca5957ae312af044ab9cc","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"    \"server\" : {"},{"line_number":3,"context_line":"        \"name\" : \"auto-allocate-network\","},{"line_number":4,"context_line":"        \"imageRef\" : \"http://glance.openstack.example.com/images/70a599e0-31e7-49b7-b260-868f441e862b\","},{"line_number":5,"context_line":"        \"flavorRef\" : \"http://openstack.example.com/flavors/1\","},{"line_number":6,"context_line":"        \"networks\" : [{"},{"line_number":7,"context_line":"            \"uuid\" : \"auto\""},{"line_number":8,"context_line":"        }]"},{"line_number":9,"context_line":"    }"},{"line_number":10,"context_line":"}"}],"source_content_type":"application/json","patch_set":29,"id":"bacf61ea_865e8943","line":10,"range":{"start_line":1,"start_character":0,"end_line":10,"end_character":1},"in_reply_to":"bacf61ea_5995a43e","updated":"2016-07-28 02:06:03.000000000","message":"Actually having previous version things in this gives advantage to get to know what all things as whole can be accepted with 2.37. (instead of going through 2 sample files)\n\nWe have to build sample with previous version attributes if there are mandatory attribute. so we should have same for optional attributes also.","commit_id":"81576e36cfda187670ddd91d026e07264f2d624d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4bf4d55a0b5938220412c1eb3236ef00ba8092c0","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"    \"server\" : {"},{"line_number":3,"context_line":"        \"name\" : \"auto-allocate-network\","},{"line_number":4,"context_line":"        \"imageRef\" : \"http://glance.openstack.example.com/images/70a599e0-31e7-49b7-b260-868f441e862b\","},{"line_number":5,"context_line":"        \"flavorRef\" : \"http://openstack.example.com/flavors/1\","},{"line_number":6,"context_line":"        \"networks\" : [{"},{"line_number":7,"context_line":"            \"uuid\" : \"auto\""},{"line_number":8,"context_line":"        }]"},{"line_number":9,"context_line":"    }"},{"line_number":10,"context_line":"}"}],"source_content_type":"application/json","patch_set":29,"id":"bacf61ea_1eb6728a","line":10,"range":{"start_line":1,"start_character":0,"end_line":10,"end_character":1},"in_reply_to":"dada55a8_2061d705","updated":"2016-07-27 18:00:03.000000000","message":"Yeah I suppose making the samples cumulative is a good idea.","commit_id":"81576e36cfda187670ddd91d026e07264f2d624d"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"f4e40fb821fa734319177f3f36f388f09fc840c5","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"    \"server\" : {"},{"line_number":3,"context_line":"        \"name\" : \"auto-allocate-network\","},{"line_number":4,"context_line":"        \"imageRef\" : \"70a599e0-31e7-49b7-b260-868f441e862b\","},{"line_number":5,"context_line":"        \"flavorRef\" : \"http://openstack.example.com/flavors/1\","},{"line_number":6,"context_line":"        \"networks\" : [{"},{"line_number":7,"context_line":"            \"uuid\" : \"auto\""},{"line_number":8,"context_line":"        }]"},{"line_number":9,"context_line":"    }"},{"line_number":10,"context_line":"}"}],"source_content_type":"application/json","patch_set":30,"id":"bacf61ea_26407d56","line":10,"range":{"start_line":1,"start_character":0,"end_line":10,"end_character":1},"updated":"2016-08-02 04:59:06.000000000","message":"I still feel to build on top of 2.32 sample. But yea, this is not blocking case.","commit_id":"7bee820246e370276700cd525a8ae2090d1c0483"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"9e92e30af3d80c6b0f71e97635091c6c7540ece1","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"    \"server\" : {"},{"line_number":3,"context_line":"        \"name\" : \"auto-allocate-network\","},{"line_number":4,"context_line":"        \"imageRef\" : \"70a599e0-31e7-49b7-b260-868f441e862b\","},{"line_number":5,"context_line":"        \"flavorRef\" : \"http://openstack.example.com/flavors/1\","}],"source_content_type":"application/json","patch_set":35,"id":"9ad45d7e_d6c8ae24","line":2,"range":{"start_line":2,"start_character":12,"end_line":2,"end_character":13},"updated":"2016-08-10 19:53:44.000000000","message":"nit: unnecessary space between parameter name and :","commit_id":"ff6f2ca39903cadd33112382199fbe4d1ed8eed1"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"3545b90d11d44176dc6fe02b0caa94c170b88e78","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"    \"server\" : {"},{"line_number":3,"context_line":"        \"name\" : \"auto-allocate-network\","},{"line_number":4,"context_line":"        \"imageRef\" : \"70a599e0-31e7-49b7-b260-868f441e862b\","},{"line_number":5,"context_line":"        \"flavorRef\" : \"http://openstack.example.com/flavors/1\","}],"source_content_type":"application/json","patch_set":35,"id":"9ad45d7e_8187d2b3","line":2,"range":{"start_line":2,"start_character":12,"end_line":2,"end_character":13},"in_reply_to":"9ad45d7e_d6c8ae24","updated":"2016-08-11 19:23:09.000000000","message":"Yeah, just copied from copies of copies of samples.","commit_id":"ff6f2ca39903cadd33112382199fbe4d1ed8eed1"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"9e92e30af3d80c6b0f71e97635091c6c7540ece1","unresolved":false,"context_lines":[{"line_number":3,"context_line":"        \"name\" : \"auto-allocate-network\","},{"line_number":4,"context_line":"        \"imageRef\" : \"70a599e0-31e7-49b7-b260-868f441e862b\","},{"line_number":5,"context_line":"        \"flavorRef\" : \"http://openstack.example.com/flavors/1\","},{"line_number":6,"context_line":"        \"networks\" : [{"},{"line_number":7,"context_line":"            \"uuid\" : \"auto\""},{"line_number":8,"context_line":"        }]"},{"line_number":9,"context_line":"    }"},{"line_number":10,"context_line":"}"}],"source_content_type":"application/json","patch_set":35,"id":"9ad45d7e_56567e5c","line":8,"range":{"start_line":6,"start_character":21,"end_line":8,"end_character":10},"updated":"2016-08-10 19:53:44.000000000","message":"I guess \"auto\" case is just for requesting a single network for the server. If so, why shouldn\u0027t we request here like\n\n \"networks\": \"auto\"\n\n? and \"none\" case also can be like\n\n \"networks\": \"none\"\n\nI guess for a simple request.\n(I just feel the parameter \"uuid\" seems actually meaningless)","commit_id":"ff6f2ca39903cadd33112382199fbe4d1ed8eed1"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"3545b90d11d44176dc6fe02b0caa94c170b88e78","unresolved":false,"context_lines":[{"line_number":3,"context_line":"        \"name\" : \"auto-allocate-network\","},{"line_number":4,"context_line":"        \"imageRef\" : \"70a599e0-31e7-49b7-b260-868f441e862b\","},{"line_number":5,"context_line":"        \"flavorRef\" : \"http://openstack.example.com/flavors/1\","},{"line_number":6,"context_line":"        \"networks\" : [{"},{"line_number":7,"context_line":"            \"uuid\" : \"auto\""},{"line_number":8,"context_line":"        }]"},{"line_number":9,"context_line":"    }"},{"line_number":10,"context_line":"}"}],"source_content_type":"application/json","patch_set":35,"id":"9ad45d7e_815cf24b","line":8,"range":{"start_line":6,"start_character":21,"end_line":8,"end_character":10},"in_reply_to":"9ad45d7e_56567e5c","updated":"2016-08-11 19:23:09.000000000","message":"Good point, I never thought about doing it that way. It would make the API cleaner in the auto/none case since you can\u0027t request anything else and you can only request one, so no list confusion.\n\nIt does change the type of the parameter, which could be confusing. I\u0027m not sure how much it would mess up the API code to pull this out, but I guess we\u0027d just be checking if the networks value is a list or not.\n\nBefore changing the design of this (including the changes to the test in tempest and the changes in novaclient) I\u0027d like to get some more input from the API subteam, like gmann, alex_xu and sdague.","commit_id":"ff6f2ca39903cadd33112382199fbe4d1ed8eed1"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"ced32c8172af427fee957411ba02c00b8d60b940","unresolved":false,"context_lines":[{"line_number":3,"context_line":"        \"name\" : \"auto-allocate-network\","},{"line_number":4,"context_line":"        \"imageRef\" : \"70a599e0-31e7-49b7-b260-868f441e862b\","},{"line_number":5,"context_line":"        \"flavorRef\" : \"http://openstack.example.com/flavors/1\","},{"line_number":6,"context_line":"        \"networks\" : [{"},{"line_number":7,"context_line":"            \"uuid\" : \"auto\""},{"line_number":8,"context_line":"        }]"},{"line_number":9,"context_line":"    }"},{"line_number":10,"context_line":"}"}],"source_content_type":"application/json","patch_set":35,"id":"3ac371cc_72ca21a3","line":8,"range":{"start_line":6,"start_character":21,"end_line":8,"end_character":10},"in_reply_to":"9ad45d7e_5a949889","updated":"2016-08-15 14:38:16.000000000","message":"sdague agreed with changing this so I\u0027ll work on that this week.","commit_id":"ff6f2ca39903cadd33112382199fbe4d1ed8eed1"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"abc5dbf0d6cef10f53b6564c43b6353a49e6330d","unresolved":false,"context_lines":[{"line_number":3,"context_line":"        \"name\" : \"auto-allocate-network\","},{"line_number":4,"context_line":"        \"imageRef\" : \"70a599e0-31e7-49b7-b260-868f441e862b\","},{"line_number":5,"context_line":"        \"flavorRef\" : \"http://openstack.example.com/flavors/1\","},{"line_number":6,"context_line":"        \"networks\" : [{"},{"line_number":7,"context_line":"            \"uuid\" : \"auto\""},{"line_number":8,"context_line":"        }]"},{"line_number":9,"context_line":"    }"},{"line_number":10,"context_line":"}"}],"source_content_type":"application/json","patch_set":35,"id":"9ad45d7e_5a949889","line":8,"range":{"start_line":6,"start_character":21,"end_line":8,"end_character":10},"in_reply_to":"9ad45d7e_815cf24b","updated":"2016-08-11 21:54:26.000000000","message":"I posted to the dev ML to get some more feedback on this.","commit_id":"ff6f2ca39903cadd33112382199fbe4d1ed8eed1"}],"nova/api/openstack/compute/servers.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"eb1cff0cc5abbcc0e13b4c19775866b24f258b8d","unresolved":false,"context_lines":[{"line_number":503,"context_line":"        \"\"\"Create a list of requested networks from the networks attribute.\"\"\""},{"line_number":504,"context_line":"        networks \u003d []"},{"line_number":505,"context_line":"        network_uuids \u003d []"},{"line_number":506,"context_line":"        auto_alloc \u003d False"},{"line_number":507,"context_line":"        if req:"},{"line_number":508,"context_line":"            auto_alloc \u003d api_version_request.is_supported("},{"line_number":509,"context_line":"                req, min_version\u003d\u00272.27\u0027)"},{"line_number":510,"context_line":"        auto_or_none \u003d False"},{"line_number":511,"context_line":"        for network in requested_networks:"},{"line_number":512,"context_line":"            request \u003d objects.NetworkRequest()"}],"source_content_type":"text/x-python","patch_set":3,"id":"dab17558_394d97c4","line":509,"range":{"start_line":506,"start_character":8,"end_line":509,"end_character":40},"updated":"2016-05-17 02:28:28.000000000","message":"Maybe move this out to the caller and have auto_alloc\u003dFalse as a formal argument on the method, so unit tests don\u0027t have to change and this doesn\u0027t look so weird.","commit_id":"dbac1867960b3ab2d8369170fcc4c9570ebca239"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"82dbaa50d2da2170fd325361b72fbbe911247c9e","unresolved":false,"context_lines":[{"line_number":503,"context_line":"        \"\"\"Create a list of requested networks from the networks attribute.\"\"\""},{"line_number":504,"context_line":"        networks \u003d []"},{"line_number":505,"context_line":"        network_uuids \u003d []"},{"line_number":506,"context_line":"        auto_alloc \u003d False"},{"line_number":507,"context_line":"        if req:"},{"line_number":508,"context_line":"            auto_alloc \u003d api_version_request.is_supported("},{"line_number":509,"context_line":"                req, min_version\u003d\u00272.27\u0027)"},{"line_number":510,"context_line":"        auto_or_none \u003d False"},{"line_number":511,"context_line":"        for network in requested_networks:"},{"line_number":512,"context_line":"            request \u003d objects.NetworkRequest()"}],"source_content_type":"text/x-python","patch_set":4,"id":"bab6814e_9304e87e","line":509,"range":{"start_line":506,"start_character":8,"end_line":509,"end_character":40},"updated":"2016-05-18 19:36:32.000000000","message":"TODO: pass the boolean in with a default of False so we don\u0027t have to pass the req in - which is only done for unit tests.","commit_id":"77c98e61c12f6fe55c6dce94532dfdb2f17b8569"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"82dbaa50d2da2170fd325361b72fbbe911247c9e","unresolved":false,"context_lines":[{"line_number":550,"context_line":""},{"line_number":551,"context_line":"        req_nets \u003d objects.NetworkRequestList(objects\u003dnetworks)"},{"line_number":552,"context_line":""},{"line_number":553,"context_line":"        # If we support auto-allocating networks and anything was requested"},{"line_number":554,"context_line":"        # while requesting \u0027auto\u0027 or \u0027none\u0027, it\u0027s a failure."},{"line_number":555,"context_line":"        if auto_or_none:"},{"line_number":556,"context_line":"            for network in req_nets:"}],"source_content_type":"text/x-python","patch_set":4,"id":"bab6814e_d30cb096","line":553,"updated":"2016-05-18 19:36:32.000000000","message":"Maybe split this into it\u0027s own private validation method to keep this method smallish.","commit_id":"77c98e61c12f6fe55c6dce94532dfdb2f17b8569"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"d4efb4d3819f8be912ec873a4d553938f2feeefa","unresolved":false,"context_lines":[{"line_number":561,"context_line":"                            \"another network uuid.\")"},{"line_number":562,"context_line":"                    raise exc.HTTPConflict(explanation\u003dmsg)"},{"line_number":563,"context_line":""},{"line_number":564,"context_line":"            # Check the minimum nova-compute service version since Mitaka"},{"line_number":565,"context_line":"            # computes can\u0027t handle network IDs that aren\u0027t UUIDs."},{"line_number":566,"context_line":"            min_compute_version \u003d objects.Service.get_minimum_version(  # noqa"},{"line_number":567,"context_line":"                req.environ[\u0027nova.context\u0027], \u0027nova-compute\u0027)"},{"line_number":568,"context_line":""},{"line_number":569,"context_line":"        return req_nets"},{"line_number":570,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"bab6814e_5ee284d6","line":567,"range":{"start_line":564,"start_character":12,"end_line":567,"end_character":60},"updated":"2016-05-18 21:14:27.000000000","message":"Per the spec, if the minimum compute is not new enough, we need to change the network request to None so it behaves like before the auto-allocation on older computes.","commit_id":"77c98e61c12f6fe55c6dce94532dfdb2f17b8569"},{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"0085b61f18552a70f73281737476547fc0186acb","unresolved":false,"context_lines":[{"line_number":82,"context_line":"    schema_server_update_v219 \u003d schema_servers.base_update_v219"},{"line_number":83,"context_line":"    schema_server_rebuild_v219 \u003d schema_servers.base_rebuild_v219"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"    schema_server_create_v227 \u003d schema_servers.base_create_v227"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    @staticmethod"},{"line_number":88,"context_line":"    def _add_location(robj):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7aa08908_a3a6e550","line":85,"range":{"start_line":85,"start_character":4,"end_line":85,"end_character":29},"updated":"2016-06-06 20:11:29.000000000","message":"230 already merged ... need rebase","commit_id":"6aae1c61bbba5101f8952b147c9c82866ae83389"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"36132965b76293148e3a71aa78dc0f2731d03dab","unresolved":false,"context_lines":[{"line_number":523,"context_line":"                        \"another network uuid.\")"},{"line_number":524,"context_line":"                raise exc.HTTPConflict(explanation\u003dmsg)"},{"line_number":525,"context_line":""},{"line_number":526,"context_line":"        # Check the minimum nova-compute service version since Mitaka"},{"line_number":527,"context_line":"        # computes can\u0027t handle network IDs that aren\u0027t UUIDs."},{"line_number":528,"context_line":"        min_compute_version \u003d objects.Service.get_minimum_version("},{"line_number":529,"context_line":"            nova_context.get_admin_context(), \u0027nova-compute\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"bab6814e_51ecf58e","line":526,"updated":"2016-05-19 21:14:18.000000000","message":"Add a TODO to remove this check in Ocata.","commit_id":"6aae1c61bbba5101f8952b147c9c82866ae83389"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"6074899766676d79e2b22042ddcc66b38ce68bb0","unresolved":false,"context_lines":[{"line_number":523,"context_line":"                        \"another network uuid.\")"},{"line_number":524,"context_line":"                raise exc.HTTPConflict(explanation\u003dmsg)"},{"line_number":525,"context_line":""},{"line_number":526,"context_line":"        # Check the minimum nova-compute service version since Mitaka"},{"line_number":527,"context_line":"        # computes can\u0027t handle network IDs that aren\u0027t UUIDs."},{"line_number":528,"context_line":"        min_compute_version \u003d objects.Service.get_minimum_version("},{"line_number":529,"context_line":"            nova_context.get_admin_context(), \u0027nova-compute\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7aa08908_4dc8e322","line":526,"in_reply_to":"7aa08908_a3542521","updated":"2016-06-07 13:16:02.000000000","message":"No, mitaka computes because they don\u0027t have the network API code to handle the auto/none network_id values. The newton computes will since that will land in newton as part of this series.","commit_id":"6aae1c61bbba5101f8952b147c9c82866ae83389"},{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"0085b61f18552a70f73281737476547fc0186acb","unresolved":false,"context_lines":[{"line_number":523,"context_line":"                        \"another network uuid.\")"},{"line_number":524,"context_line":"                raise exc.HTTPConflict(explanation\u003dmsg)"},{"line_number":525,"context_line":""},{"line_number":526,"context_line":"        # Check the minimum nova-compute service version since Mitaka"},{"line_number":527,"context_line":"        # computes can\u0027t handle network IDs that aren\u0027t UUIDs."},{"line_number":528,"context_line":"        min_compute_version \u003d objects.Service.get_minimum_version("},{"line_number":529,"context_line":"            nova_context.get_admin_context(), \u0027nova-compute\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7aa08908_a3542521","line":526,"in_reply_to":"bab6814e_51ecf58e","updated":"2016-06-06 20:11:29.000000000","message":"since Newton?","commit_id":"6aae1c61bbba5101f8952b147c9c82866ae83389"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"602d76e94eae5ed959b0230dffc39e8cd56824ba","unresolved":false,"context_lines":[{"line_number":533,"context_line":"        # None so it works the same as it did in Mitaka when you don\u0027t"},{"line_number":534,"context_line":"        # request anything."},{"line_number":535,"context_line":"        if min_compute_version \u003c 12:"},{"line_number":536,"context_line":"            # TODO(mriedem): Is this ok if the user requested \u0027none\u0027? They"},{"line_number":537,"context_line":"            # might get networking, so should we fail? But they\u0027ll get the"},{"line_number":538,"context_line":"            # same with an earlier microversion too."},{"line_number":539,"context_line":"            LOG.debug(\"User requested network \u0027%s\u0027 but the minimum \""},{"line_number":540,"context_line":"                      \"nova-compute version in the deployment is not new \""},{"line_number":541,"context_line":"                      \"enough to support that request, so treating it as \""}],"source_content_type":"text/x-python","patch_set":5,"id":"bab6814e_4c13be0d","line":538,"range":{"start_line":536,"start_character":12,"end_line":538,"end_character":52},"updated":"2016-05-19 21:24:41.000000000","message":"It\u0027s OK, reset to None for auto/none. The spec was updated for this.","commit_id":"6aae1c61bbba5101f8952b147c9c82866ae83389"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"f97cc52cb407172340b1abbf91f11a49ddb435c2","unresolved":false,"context_lines":[{"line_number":638,"context_line":"    @extensions.expected_errors((400, 403, 409, 413))"},{"line_number":639,"context_line":"    @validation.schema(schema_server_create_v20, \u00272.0\u0027, \u00272.0\u0027)"},{"line_number":640,"context_line":"    @validation.schema(schema_server_create, \u00272.1\u0027, \u00272.18\u0027)"},{"line_number":641,"context_line":"    @validation.schema(schema_server_create_v219, \u00272.19\u0027, \u00272.29\u0027)"},{"line_number":642,"context_line":"    @validation.schema(schema_server_create_v231, \u00272.31\u0027)"},{"line_number":643,"context_line":"    def create(self, req, body):"},{"line_number":644,"context_line":"        \"\"\"Creates a new server for a given user.\"\"\""}],"source_content_type":"text/x-python","patch_set":10,"id":"7aa08908_c3a6c352","line":641,"range":{"start_line":641,"start_character":59,"end_line":641,"end_character":63},"updated":"2016-06-09 16:15:19.000000000","message":"This should be 2.30.","commit_id":"35e58eaa1da07eecb7e195b43409775c335fe914"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"cba85bf41c127a35e61b5b597a959e6e53909fe4","unresolved":false,"context_lines":[{"line_number":411,"context_line":"                raise exc.HTTPBadRequest(explanation\u003dexpl)"},{"line_number":412,"context_line":""},{"line_number":413,"context_line":"            # check the auto-allocation values since we can\u0027t duplicate those"},{"line_number":414,"context_line":"            # for neutron (they wouldn\u0027t make sense for multi-nic)"},{"line_number":415,"context_line":"            if supports_auto_alloc and net_id in NET_AUTO_ALLOC_IDS:"},{"line_number":416,"context_line":"                expl \u003d _(\"Duplicate networks (%s) are not allowed\") % net_id"},{"line_number":417,"context_line":"                raise exc.HTTPBadRequest(explanation\u003dexpl)"}],"source_content_type":"text/x-python","patch_set":30,"id":"bacf61ea_1f6809ba","line":414,"updated":"2016-08-03 08:37:39.000000000","message":"Why this doesn\u0027t make sense, as the comment at line 405, duplicated network is allowed.\n\nThink about this case: When the auto-allocation network already is created by previous request. Then user request with [(\u0027auto\u0027, None, None), [{uuid}, None, None)]], the uuid is the auto-allocation network\u0027s  uuid, so user still can get too nic in same auto-allocation network","commit_id":"7bee820246e370276700cd525a8ae2090d1c0483"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b0d062cd29b6a3fa8ebb55a296e2c225cae7ac41","unresolved":false,"context_lines":[{"line_number":411,"context_line":"                raise exc.HTTPBadRequest(explanation\u003dexpl)"},{"line_number":412,"context_line":""},{"line_number":413,"context_line":"            # check the auto-allocation values since we can\u0027t duplicate those"},{"line_number":414,"context_line":"            # for neutron (they wouldn\u0027t make sense for multi-nic)"},{"line_number":415,"context_line":"            if supports_auto_alloc and net_id in NET_AUTO_ALLOC_IDS:"},{"line_number":416,"context_line":"                expl \u003d _(\"Duplicate networks (%s) are not allowed\") % net_id"},{"line_number":417,"context_line":"                raise exc.HTTPBadRequest(explanation\u003dexpl)"}],"source_content_type":"text/x-python","patch_set":30,"id":"bacf61ea_2207981e","line":414,"in_reply_to":"bacf61ea_1f6809ba","updated":"2016-08-03 16:45:26.000000000","message":"No, because you can\u0027t specify \u0027auto\u0027 and any other value, because the underlying network API code won\u0027t handle that.\n\nIf you passed \u0027auto\u0027 a second time for the same tenant, then the network API code will call the auto_allocated_topology API in neutron which will see a network was already auto-allocated and return that network ID for us to use. But I don\u0027t think we want to get into the complexity of allowing \u0027auto\u0027 and other nic values, since the whole point of get-me-a-network is the dead simple case where you don\u0027t want to provide specific nics to boot a server, and you don\u0027t even want to setup your own tenant network before creating that server.\n\nAlso, the duplicate networks stuff was for duplicate specific networks which was a concept before \u0027auto\u0027 allocation, so you can get for example 2 ports allocated on the same network for your instance. That\u0027s fine, but it shouldn\u0027t be munged in with the auto case IMO.","commit_id":"7bee820246e370276700cd525a8ae2090d1c0483"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"cba85bf41c127a35e61b5b597a959e6e53909fe4","unresolved":false,"context_lines":[{"line_number":467,"context_line":"                      \"enough to support that request, so treating it as \""},{"line_number":468,"context_line":"                      \"though a specific network was not requested.\","},{"line_number":469,"context_line":"                      requested_networks[0].network_id)"},{"line_number":470,"context_line":"            return None"},{"line_number":471,"context_line":"        return requested_networks"},{"line_number":472,"context_line":""},{"line_number":473,"context_line":"    def _get_requested_networks(self, requested_networks,"}],"source_content_type":"text/x-python","patch_set":30,"id":"bacf61ea_1f3f6926","line":470,"updated":"2016-08-03 08:37:39.000000000","message":"So the user request can be [(\u0027auto\u0027, None, None), ({uuid}, None, None)], the uuid is another network the user hope the instance attached to. In this case we should return BadRequest instead of ignore it.","commit_id":"7bee820246e370276700cd525a8ae2090d1c0483"},{"author":{"_account_id":14819,"name":"Timofey Durakov","email":"timofei.nd@gmail.com","username":"tdurakov"},"change_message_id":"07319db32341031b17c38a90c594f3dade07ccc9","unresolved":false,"context_lines":[{"line_number":396,"context_line":"        :raises: webob.exc.HTTPBadRequest if validation fails"},{"line_number":397,"context_line":"        \"\"\""},{"line_number":398,"context_line":"        if not uuidutils.is_uuid_like(net_id):"},{"line_number":399,"context_line":"            # NOTE(mriedem): Neutron would allow a network id with a br- prefix"},{"line_number":400,"context_line":"            # back in Folsom. We have stopped honoring that in v2.37 though."},{"line_number":401,"context_line":"            if supports_auto_alloc:"},{"line_number":402,"context_line":"                # Check the special auto-alloc values \u0027auto\u0027 and \u0027none\u0027."},{"line_number":403,"context_line":"                if net_id not in NET_AUTO_ALLOC_IDS:"}],"source_content_type":"text/x-python","patch_set":32,"id":"9ad45d7e_61eec723","line":400,"range":{"start_line":399,"start_character":12,"end_line":400,"end_character":76},"updated":"2016-08-09 07:40:01.000000000","message":"I\u0027d prefer to split that NOTE, so the first part of a comment  is valid for \u0027else\u0027 section.","commit_id":"fb45af5bed9921e07d713f423cc5f157233bbfc0"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c7633b64dfbf7b32d44abc290f2f2fa455762ba2","unresolved":false,"context_lines":[{"line_number":396,"context_line":"        :raises: webob.exc.HTTPBadRequest if validation fails"},{"line_number":397,"context_line":"        \"\"\""},{"line_number":398,"context_line":"        if not uuidutils.is_uuid_like(net_id):"},{"line_number":399,"context_line":"            # NOTE(mriedem): Neutron would allow a network id with a br- prefix"},{"line_number":400,"context_line":"            # back in Folsom. We have stopped honoring that in v2.37 though."},{"line_number":401,"context_line":"            if supports_auto_alloc:"},{"line_number":402,"context_line":"                # Check the special auto-alloc values \u0027auto\u0027 and \u0027none\u0027."},{"line_number":403,"context_line":"                if net_id not in NET_AUTO_ALLOC_IDS:"}],"source_content_type":"text/x-python","patch_set":32,"id":"9ad45d7e_31f7ebf6","line":400,"range":{"start_line":399,"start_character":12,"end_line":400,"end_character":76},"in_reply_to":"9ad45d7e_61eec723","updated":"2016-08-09 13:25:27.000000000","message":"I don\u0027t see a great way to split this up. supports_auto_alloc\u003d\u003dTrue means we\u0027re \u003e\u003d2.37 which is the check here, which also means we don\u0027t support br-uuid type net IDs, so I have the comment here for context.","commit_id":"fb45af5bed9921e07d713f423cc5f157233bbfc0"},{"author":{"_account_id":14819,"name":"Timofey Durakov","email":"timofei.nd@gmail.com","username":"tdurakov"},"change_message_id":"07319db32341031b17c38a90c594f3dade07ccc9","unresolved":false,"context_lines":[{"line_number":422,"context_line":""},{"line_number":423,"context_line":"            # check the auto-allocation values since we can\u0027t duplicate those"},{"line_number":424,"context_line":"            # for neutron (they wouldn\u0027t make sense for multi-nic)"},{"line_number":425,"context_line":"            if supports_auto_alloc and net_id in NET_AUTO_ALLOC_IDS:"},{"line_number":426,"context_line":"                expl \u003d _(\"Duplicate networks (%s) are not allowed\") % net_id"},{"line_number":427,"context_line":"                raise exc.HTTPBadRequest(explanation\u003dexpl)"},{"line_number":428,"context_line":""}],"source_content_type":"text/x-python","patch_set":32,"id":"9ad45d7e_1453c7e2","line":425,"range":{"start_line":425,"start_character":15,"end_line":425,"end_character":67},"updated":"2016-08-09 07:40:01.000000000","message":"I wonder, do we really need both conditions here, as we already validate that on lines 401-413?\nIf we don\u0027t I\u0027d remove check for supports_auto_alloc, and merge this and if above into one, smth like:\nif not utils.is_neutron() or net_id in NET_AUTO_ALLOC_IDS:\n    raise ...","commit_id":"fb45af5bed9921e07d713f423cc5f157233bbfc0"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c7633b64dfbf7b32d44abc290f2f2fa455762ba2","unresolved":false,"context_lines":[{"line_number":422,"context_line":""},{"line_number":423,"context_line":"            # check the auto-allocation values since we can\u0027t duplicate those"},{"line_number":424,"context_line":"            # for neutron (they wouldn\u0027t make sense for multi-nic)"},{"line_number":425,"context_line":"            if supports_auto_alloc and net_id in NET_AUTO_ALLOC_IDS:"},{"line_number":426,"context_line":"                expl \u003d _(\"Duplicate networks (%s) are not allowed\") % net_id"},{"line_number":427,"context_line":"                raise exc.HTTPBadRequest(explanation\u003dexpl)"},{"line_number":428,"context_line":""}],"source_content_type":"text/x-python","patch_set":32,"id":"9ad45d7e_f12f133c","line":425,"range":{"start_line":425,"start_character":15,"end_line":425,"end_character":67},"in_reply_to":"9ad45d7e_1453c7e2","updated":"2016-08-09 13:25:27.000000000","message":"401-413 above is conditional on 398 where the net_id isn\u0027t a uuid, which is checking for the br-uuid legacy case that we no longer support. The block we\u0027re in here is checking for duplicates, which are supported when using neutron, but they must be uuids, you can\u0027t request auto/auto or none/none duplicates.","commit_id":"fb45af5bed9921e07d713f423cc5f157233bbfc0"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"ea8af7bdb460e42652686a042a1a97c320826358","unresolved":false,"context_lines":[{"line_number":422,"context_line":""},{"line_number":423,"context_line":"            # check the auto-allocation values since we can\u0027t duplicate those"},{"line_number":424,"context_line":"            # for neutron (they wouldn\u0027t make sense for multi-nic)"},{"line_number":425,"context_line":"            if supports_auto_alloc and net_id in NET_AUTO_ALLOC_IDS:"},{"line_number":426,"context_line":"                expl \u003d _(\"Duplicate networks (%s) are not allowed\") % net_id"},{"line_number":427,"context_line":"                raise exc.HTTPBadRequest(explanation\u003dexpl)"},{"line_number":428,"context_line":""}],"source_content_type":"text/x-python","patch_set":32,"id":"9ad45d7e_35034e44","line":425,"range":{"start_line":425,"start_character":15,"end_line":425,"end_character":67},"in_reply_to":"9ad45d7e_f12f133c","updated":"2016-08-09 15:16:50.000000000","message":"OK I see what you\u0027re saying now, you\u0027re saying the supports_auto_alloc flag is irrelevant here, which I could see. I think I added it to be explicit when I was thinking through this the first time. I\u0027ll look at collapsing the conditions.","commit_id":"fb45af5bed9921e07d713f423cc5f157233bbfc0"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"2de249a6d340fce2cdfc39bd2a0696e76e7a621d","unresolved":false,"context_lines":[{"line_number":443,"context_line":""},{"line_number":444,"context_line":"        auto_found \u003d False"},{"line_number":445,"context_line":"        none_found \u003d False"},{"line_number":446,"context_line":"        for network in requested_networks:"},{"line_number":447,"context_line":"            if network.port_id or network.address:"},{"line_number":448,"context_line":"                msg \u003d _(\"A network uuid of \u0027auto\u0027 or \u0027none\u0027 can only be \""},{"line_number":449,"context_line":"                        \"specified once and can not be requested with any \""}],"source_content_type":"text/x-python","patch_set":32,"id":"9ad45d7e_eaac51ef","line":446,"range":{"start_line":446,"start_character":8,"end_line":446,"end_character":42},"updated":"2016-08-09 06:26:14.000000000","message":"Matt, Maybe we can simple the logic at here, just need two checks without the loop:\n\nIf len(requested_networks) \u003e 0:\n    ....raise error....\n\n\nif requested_networks[0].port_id or requested_networks[0].address\n    .... raise error...","commit_id":"fb45af5bed9921e07d713f423cc5f157233bbfc0"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c7633b64dfbf7b32d44abc290f2f2fa455762ba2","unresolved":false,"context_lines":[{"line_number":443,"context_line":""},{"line_number":444,"context_line":"        auto_found \u003d False"},{"line_number":445,"context_line":"        none_found \u003d False"},{"line_number":446,"context_line":"        for network in requested_networks:"},{"line_number":447,"context_line":"            if network.port_id or network.address:"},{"line_number":448,"context_line":"                msg \u003d _(\"A network uuid of \u0027auto\u0027 or \u0027none\u0027 can only be \""},{"line_number":449,"context_line":"                        \"specified once and can not be requested with any \""}],"source_content_type":"text/x-python","patch_set":32,"id":"9ad45d7e_ac7d421e","line":446,"range":{"start_line":446,"start_character":8,"end_line":446,"end_character":42},"in_reply_to":"9ad45d7e_eaac51ef","updated":"2016-08-09 13:25:27.000000000","message":"Good suggestions, I\u0027ll try something out. I\u0027ll be honest that this got messier the longer I had to stare at it over several months so it\u0027s nice to have fresh eyes on the logic.","commit_id":"fb45af5bed9921e07d713f423cc5f157233bbfc0"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"2de249a6d340fce2cdfc39bd2a0696e76e7a621d","unresolved":false,"context_lines":[{"line_number":464,"context_line":""},{"line_number":465,"context_line":"        # Verify that auto and none weren\u0027t both requested."},{"line_number":466,"context_line":"        if auto_found and none_found:"},{"line_number":467,"context_line":"            msg \u003d _(\"A network uuid of \u0027auto\u0027 or \u0027none\u0027 can only be \""},{"line_number":468,"context_line":"                    \"specified once and can not be requested with any \""},{"line_number":469,"context_line":"                    \"other network value such as port, fixed_ip, or \""},{"line_number":470,"context_line":"                    \"another network uuid.\")"},{"line_number":471,"context_line":"            raise exc.HTTPBadRequest(explanation\u003dmsg)"},{"line_number":472,"context_line":""},{"line_number":473,"context_line":"        # Check the minimum nova-compute service version since Mitaka"}],"source_content_type":"text/x-python","patch_set":32,"id":"9ad45d7e_2a1b0974","line":470,"range":{"start_line":467,"start_character":20,"end_line":470,"end_character":43},"updated":"2016-08-09 06:26:14.000000000","message":"nit, we have three copies of this message, maybe can put into one variable.","commit_id":"fb45af5bed9921e07d713f423cc5f157233bbfc0"},{"author":{"_account_id":14819,"name":"Timofey Durakov","email":"timofei.nd@gmail.com","username":"tdurakov"},"change_message_id":"07319db32341031b17c38a90c594f3dade07ccc9","unresolved":false,"context_lines":[{"line_number":464,"context_line":""},{"line_number":465,"context_line":"        # Verify that auto and none weren\u0027t both requested."},{"line_number":466,"context_line":"        if auto_found and none_found:"},{"line_number":467,"context_line":"            msg \u003d _(\"A network uuid of \u0027auto\u0027 or \u0027none\u0027 can only be \""},{"line_number":468,"context_line":"                    \"specified once and can not be requested with any \""},{"line_number":469,"context_line":"                    \"other network value such as port, fixed_ip, or \""},{"line_number":470,"context_line":"                    \"another network uuid.\")"},{"line_number":471,"context_line":"            raise exc.HTTPBadRequest(explanation\u003dmsg)"},{"line_number":472,"context_line":""},{"line_number":473,"context_line":"        # Check the minimum nova-compute service version since Mitaka"}],"source_content_type":"text/x-python","patch_set":32,"id":"9ad45d7e_34040bbf","line":470,"range":{"start_line":467,"start_character":20,"end_line":470,"end_character":43},"in_reply_to":"9ad45d7e_2a1b0974","updated":"2016-08-09 07:40:01.000000000","message":"agree","commit_id":"fb45af5bed9921e07d713f423cc5f157233bbfc0"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c7633b64dfbf7b32d44abc290f2f2fa455762ba2","unresolved":false,"context_lines":[{"line_number":464,"context_line":""},{"line_number":465,"context_line":"        # Verify that auto and none weren\u0027t both requested."},{"line_number":466,"context_line":"        if auto_found and none_found:"},{"line_number":467,"context_line":"            msg \u003d _(\"A network uuid of \u0027auto\u0027 or \u0027none\u0027 can only be \""},{"line_number":468,"context_line":"                    \"specified once and can not be requested with any \""},{"line_number":469,"context_line":"                    \"other network value such as port, fixed_ip, or \""},{"line_number":470,"context_line":"                    \"another network uuid.\")"},{"line_number":471,"context_line":"            raise exc.HTTPBadRequest(explanation\u003dmsg)"},{"line_number":472,"context_line":""},{"line_number":473,"context_line":"        # Check the minimum nova-compute service version since Mitaka"}],"source_content_type":"text/x-python","patch_set":32,"id":"9ad45d7e_2c903243","line":470,"range":{"start_line":467,"start_character":20,"end_line":470,"end_character":43},"in_reply_to":"9ad45d7e_34040bbf","updated":"2016-08-09 13:25:27.000000000","message":"If I can consolidate this then I think we\u0027ll only have one message.","commit_id":"fb45af5bed9921e07d713f423cc5f157233bbfc0"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a1577f1be28f8f451ae10974595b087ff601bde7","unresolved":false,"context_lines":[{"line_number":396,"context_line":"        :raises: webob.exc.HTTPBadRequest if validation fails"},{"line_number":397,"context_line":"        \"\"\""},{"line_number":398,"context_line":"        if not uuidutils.is_uuid_like(net_id):"},{"line_number":399,"context_line":"            # NOTE(mriedem): Neutron would allow a network id with a br- prefix"},{"line_number":400,"context_line":"            # back in Folsom. We have stopped honoring that in v2.37 though."},{"line_number":401,"context_line":"            if supports_auto_alloc:"},{"line_number":402,"context_line":"                # Check the special auto-alloc values \u0027auto\u0027 and \u0027none\u0027."},{"line_number":403,"context_line":"                if net_id not in NET_AUTO_ALLOC_IDS:"}],"source_content_type":"text/x-python","patch_set":35,"id":"3ac371cc_d9ee98eb","line":400,"range":{"start_line":399,"start_character":12,"end_line":400,"end_character":76},"updated":"2016-08-15 15:48:10.000000000","message":"If I change server.networks to be a list or enum, then I don\u0027t need this change anymore. It would be nice to stop allowing this in the code, but it also crufts up this change, so I\u0027m going to remove it. We could remove it later with a different microversion if we wanted, or consider passing non-uuid network IDs as a bug and just tighten up the schema.","commit_id":"ff6f2ca39903cadd33112382199fbe4d1ed8eed1"}],"nova/api/openstack/rest_api_version_history.rst":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"cba85bf41c127a35e61b5b597a959e6e53909fe4","unresolved":false,"context_lines":[{"line_number":406,"context_line":""},{"line_number":407,"context_line":"  When using the Neutron networking service, servers can be created with"},{"line_number":408,"context_line":"  specific pre-existing ports, but one can not specify a port and *auto* or"},{"line_number":409,"context_line":"  *none* for the network uuid."}],"source_content_type":"text/x-rst","patch_set":30,"id":"bacf61ea_3f7eadae","line":409,"updated":"2016-08-03 08:37:39.000000000","message":"We better to mention \u0027br-\u0027 prefix didn\u0027t support anymore","commit_id":"7bee820246e370276700cd525a8ae2090d1c0483"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b0d062cd29b6a3fa8ebb55a296e2c225cae7ac41","unresolved":false,"context_lines":[{"line_number":406,"context_line":""},{"line_number":407,"context_line":"  When using the Neutron networking service, servers can be created with"},{"line_number":408,"context_line":"  specific pre-existing ports, but one can not specify a port and *auto* or"},{"line_number":409,"context_line":"  *none* for the network uuid."}],"source_content_type":"text/x-rst","patch_set":30,"id":"bacf61ea_65187a76","line":409,"in_reply_to":"bacf61ea_3f7eadae","updated":"2016-08-03 16:45:26.000000000","message":"I can mention that with the first bullet above about UUID.","commit_id":"7bee820246e370276700cd525a8ae2090d1c0483"}],"nova/exception.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"36132965b76293148e3a71aa78dc0f2731d03dab","unresolved":false,"context_lines":[{"line_number":817,"context_line":"    code \u003d 409"},{"line_number":818,"context_line":""},{"line_number":819,"context_line":""},{"line_number":820,"context_line":"class AutoAllocateNetworkConflict(NovaException):"},{"line_number":821,"context_line":"    msg_fmt \u003d _(\"A network uuid of \u0027auto\u0027 or \u0027none\u0027 can only be specified \""},{"line_number":822,"context_line":"                \"once and can not be requested with any other network value \""},{"line_number":823,"context_line":"                \"such as port, fixed_ip, or another network uuid.\")"}],"source_content_type":"text/x-python","patch_set":5,"id":"bab6814e_91693d28","line":820,"updated":"2016-05-19 21:14:18.000000000","message":"This is not used and can be removed.","commit_id":"6aae1c61bbba5101f8952b147c9c82866ae83389"}],"nova/tests/functional/api_sample_tests/test_servers.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"81b905891e880b88995f2dff659137e1ce0e6266","unresolved":false,"context_lines":[{"line_number":157,"context_line":"    # The API samples tests use nova-network so to process the \u0027networks\u0027 part"},{"line_number":158,"context_line":"    # of the server POST request body we have to enable the os-networks"},{"line_number":159,"context_line":"    # extension."},{"line_number":160,"context_line":"    extra_extensions_to_load \u003d [\"os-networks\"]"},{"line_number":161,"context_line":""},{"line_number":162,"context_line":"    def test_servers_post(self):"},{"line_number":163,"context_line":"        self._post_server(use_common_server_api_samples\u003dFalse)"}],"source_content_type":"text/x-python","patch_set":11,"id":"7aa08908_b9b5aa32","line":160,"range":{"start_line":160,"start_character":4,"end_line":160,"end_character":28},"updated":"2016-06-09 16:37:22.000000000","message":"This is no longer needed as the base class loads all extensions.","commit_id":"8893c67b2251e8482913235a7be61c9935ff5008"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"23d842e4caa3267a4dc163ff2e2452e70628b201","unresolved":false,"context_lines":[{"line_number":148,"context_line":"        self._verify_response(\u0027server-put-resp\u0027, subs, response, 200)"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"class ServersSampleJson237Test(ServersSampleBase):"},{"line_number":152,"context_line":"    microversion \u003d \u00272.37\u0027"},{"line_number":153,"context_line":"    sample_dir \u003d \u0027servers\u0027"},{"line_number":154,"context_line":"    scenarios \u003d [(\u0027v2_37\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"}],"source_content_type":"text/x-python","patch_set":29,"id":"dada55a8_c3a0c544","line":151,"range":{"start_line":151,"start_character":6,"end_line":151,"end_character":30},"updated":"2016-07-27 09:31:42.000000000","message":"I did not get why we are removing the 2.32 tests? we should tests both version with their separate sample files.\n\nmerge issue?","commit_id":"81576e36cfda187670ddd91d026e07264f2d624d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4bf4d55a0b5938220412c1eb3236ef00ba8092c0","unresolved":false,"context_lines":[{"line_number":148,"context_line":"        self._verify_response(\u0027server-put-resp\u0027, subs, response, 200)"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"class ServersSampleJson237Test(ServersSampleBase):"},{"line_number":152,"context_line":"    microversion \u003d \u00272.37\u0027"},{"line_number":153,"context_line":"    sample_dir \u003d \u0027servers\u0027"},{"line_number":154,"context_line":"    scenarios \u003d [(\u0027v2_37\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"}],"source_content_type":"text/x-python","patch_set":29,"id":"bacf61ea_3e7416ce","line":151,"range":{"start_line":151,"start_character":6,"end_line":151,"end_character":30},"in_reply_to":"dada55a8_c3a0c544","updated":"2016-07-27 18:00:03.000000000","message":"This is a merge failure on my part, good catch.","commit_id":"81576e36cfda187670ddd91d026e07264f2d624d"}],"releasenotes/notes/get-me-a-network-992eabc81b5e5347.yaml":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"36132965b76293148e3a71aa78dc0f2731d03dab","unresolved":false,"context_lines":[{"line_number":11,"context_line":"    See the `Additional features`_ section of the OpenStack Networking Guide"},{"line_number":12,"context_line":"    for more details for setting up this feature in Neutron."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"    .. note:: This feature is not available until all of the compute services"},{"line_number":15,"context_line":"      in the deployment are running Newton code. This is to avoid sending a"},{"line_number":16,"context_line":"      server create request to a Mitaka compute that can not understand a"},{"line_number":17,"context_line":"      network ID of \u0027auto\u0027 or \u0027none\u0027."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"bab6814e_71d2d9d3","line":14,"updated":"2016-05-19 21:14:18.000000000","message":"This needs to be updated for how we handle it.","commit_id":"6aae1c61bbba5101f8952b147c9c82866ae83389"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b0d062cd29b6a3fa8ebb55a296e2c225cae7ac41","unresolved":false,"context_lines":[{"line_number":11,"context_line":"    See the `Additional features`_ section of the OpenStack Networking Guide"},{"line_number":12,"context_line":"    for more details for setting up this feature in Neutron."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"    .. note:: With this microversion, ``networks`` is required in the server"},{"line_number":15,"context_line":"      create request body for the API. The API does not default to \u0027auto\u0027."},{"line_number":16,"context_line":"      However, python-novaclient will default to passing \u0027auto\u0027 for this"},{"line_number":17,"context_line":"      microversion if no specific network values are provided to the CLI."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"    .. note:: This feature is not available until all of the compute services"},{"line_number":20,"context_line":"      in the deployment are running Newton code. This is to avoid sending a"}],"source_content_type":"text/x-yaml","patch_set":30,"id":"bacf61ea_85b92e31","line":17,"range":{"start_line":14,"start_character":4,"end_line":17,"end_character":73},"updated":"2016-08-03 16:45:26.000000000","message":"I can also mention in here that a network UUID is strictly enforced as a UUID and that br-\u003cuuid\u003e will no longer work.","commit_id":"7bee820246e370276700cd525a8ae2090d1c0483"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"f739b82e797f30b53675402bd806160c7a3a0233","unresolved":false,"context_lines":[{"line_number":14,"context_line":"    .. note:: With this microversion, ``networks`` is required in the server"},{"line_number":15,"context_line":"      create request body for the API. The API does not default to \u0027auto\u0027."},{"line_number":16,"context_line":"      However, python-novaclient will default to passing \u0027auto\u0027 for this"},{"line_number":17,"context_line":"      microversion if no specific network values are provided to the CLI. Also,"},{"line_number":18,"context_line":"      with this change the uuid field must be a UUID, it cannot be a random"},{"line_number":19,"context_line":"      string. More specifically, the API used to support a nic uuid with a"},{"line_number":20,"context_line":"      \"br-\" prefix but that is a legacy artifact which is no longer supported."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    .. note:: This feature is not available until all of the compute services"},{"line_number":23,"context_line":"      in the deployment are running Newton code. This is to avoid sending a"}],"source_content_type":"text/x-yaml","patch_set":36,"id":"3ac371cc_54ba6624","line":20,"range":{"start_line":17,"start_character":74,"end_line":20,"end_character":78},"updated":"2016-08-15 17:57:42.000000000","message":"This should probably go in the upgrade or \u0027other\u0027 section.","commit_id":"5f67f78ecd0230f4bf13b1dfcd3bfbd9c188365b"}]}
