)]}'
{"tempest/api_schema/compute/parameter_types.py":[{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"8050586120792edc7333b78fcdac89c5a92bef7f","unresolved":false,"context_lines":[{"line_number":41,"context_line":"    \u0027type\u0027: \u0027object\u0027,"},{"line_number":42,"context_line":"    \u0027patternProperties\u0027: {"},{"line_number":43,"context_line":"        # NOTE: Here is for \u0027private\u0027 or something."},{"line_number":44,"context_line":"        \u0027^[a-zA-Z0-9-_.]{1,255}$\u0027: {"},{"line_number":45,"context_line":"            \u0027type\u0027: \u0027array\u0027,"},{"line_number":46,"context_line":"            \u0027items\u0027: {"},{"line_number":47,"context_line":"                \u0027type\u0027: \u0027object\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAWH%2F%2BQC4%3D","line":44,"updated":"2014-03-28 04:17:50.000000000","message":"I\u0027m not sure \u0027255\u0027 is good value. Do we need maximum length here?","commit_id":"f107f35d1330e72d8f853eb9f17aec78a2a2efe1"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"7a9c94f2d710260cd0964d0aeeb56a4da38eb452","unresolved":false,"context_lines":[{"line_number":41,"context_line":"    \u0027type\u0027: \u0027object\u0027,"},{"line_number":42,"context_line":"    \u0027patternProperties\u0027: {"},{"line_number":43,"context_line":"        # NOTE: Here is for \u0027private\u0027 or something."},{"line_number":44,"context_line":"        \u0027^[a-zA-Z0-9-_.]{1,255}$\u0027: {"},{"line_number":45,"context_line":"            \u0027type\u0027: \u0027array\u0027,"},{"line_number":46,"context_line":"            \u0027items\u0027: {"},{"line_number":47,"context_line":"                \u0027type\u0027: \u0027object\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAWH%2F%2BQBs%3D","line":44,"in_reply_to":"AAAAWH%2F%2BQC4%3D","updated":"2014-03-28 04:25:16.000000000","message":"You are right, max length check is unnecessary as you said.","commit_id":"f107f35d1330e72d8f853eb9f17aec78a2a2efe1"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"2b291d06c71387c389e4fad13db70a363065805f","unresolved":false,"context_lines":[{"line_number":41,"context_line":"    \u0027type\u0027: \u0027object\u0027,"},{"line_number":42,"context_line":"    \u0027patternProperties\u0027: {"},{"line_number":43,"context_line":"        # NOTE: Here is for \u0027private\u0027 or something."},{"line_number":44,"context_line":"        \u0027^[a-zA-Z0-9-_.]$\u0027: {"},{"line_number":45,"context_line":"            \u0027type\u0027: \u0027array\u0027,"},{"line_number":46,"context_line":"            \u0027items\u0027: {"},{"line_number":47,"context_line":"                \u0027type\u0027: \u0027object\u0027,"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAWn%2F%2F8V4%3D","line":44,"updated":"2014-04-08 11:05:07.000000000","message":"You need to add the \u0027+\u0027 also before \u0027$\u0027. Current reg exp will match only 1 char which match either of char inside []. So currently all the coming values (\u0027private\u0027 etc) are being ignored by this schema.\n\nSorry for the late comment. Actually i was doing the same in my patch and notice this- https://review.openstack.org/#/c/82718/4/tempest/api_schema/compute/flavors_extra_specs.py","commit_id":"82e321e4030f661185118cbb569eb95b93c4388b"}],"tempest/api_schema/compute/servers.py":[{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"8050586120792edc7333b78fcdac89c5a92bef7f","unresolved":false,"context_lines":[{"line_number":28,"context_line":"                    \u0027image\u0027: {"},{"line_number":29,"context_line":"                        \u0027type\u0027: \u0027object\u0027,"},{"line_number":30,"context_line":"                        \u0027properties\u0027: {"},{"line_number":31,"context_line":"                            \u0027id\u0027: {\u0027type\u0027: [\u0027integer\u0027, \u0027string\u0027]}"},{"line_number":32,"context_line":"                        }"},{"line_number":33,"context_line":"                    },"},{"line_number":34,"context_line":"                    \u0027flavor\u0027: {"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAWH%2F%2BQDU%3D","line":31,"updated":"2014-03-28 04:17:50.000000000","message":"I think \u0027links\u0027 is needed here.","commit_id":"f107f35d1330e72d8f853eb9f17aec78a2a2efe1"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"7a9c94f2d710260cd0964d0aeeb56a4da38eb452","unresolved":false,"context_lines":[{"line_number":28,"context_line":"                    \u0027image\u0027: {"},{"line_number":29,"context_line":"                        \u0027type\u0027: \u0027object\u0027,"},{"line_number":30,"context_line":"                        \u0027properties\u0027: {"},{"line_number":31,"context_line":"                            \u0027id\u0027: {\u0027type\u0027: [\u0027integer\u0027, \u0027string\u0027]}"},{"line_number":32,"context_line":"                        }"},{"line_number":33,"context_line":"                    },"},{"line_number":34,"context_line":"                    \u0027flavor\u0027: {"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAWH%2F%2BQBo%3D","line":31,"in_reply_to":"AAAAWH%2F%2BQDU%3D","updated":"2014-03-28 04:25:16.000000000","message":"oops, thanks!","commit_id":"f107f35d1330e72d8f853eb9f17aec78a2a2efe1"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"8050586120792edc7333b78fcdac89c5a92bef7f","unresolved":false,"context_lines":[{"line_number":34,"context_line":"                    \u0027flavor\u0027: {"},{"line_number":35,"context_line":"                        \u0027type\u0027: \u0027object\u0027,"},{"line_number":36,"context_line":"                        \u0027properties\u0027: {"},{"line_number":37,"context_line":"                            \u0027id\u0027: {\u0027type\u0027: [\u0027integer\u0027, \u0027string\u0027]}"},{"line_number":38,"context_line":"                        }"},{"line_number":39,"context_line":"                    },"},{"line_number":40,"context_line":"                    \u0027user_id\u0027: {\u0027type\u0027: \u0027string\u0027},"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAWH%2F%2BQDQ%3D","line":37,"updated":"2014-03-28 04:17:50.000000000","message":"ditto","commit_id":"f107f35d1330e72d8f853eb9f17aec78a2a2efe1"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"2bb763c5fadddc3ea93efce45262d07d8a4fbf74","unresolved":false,"context_lines":[{"line_number":33,"context_line":"            \u0027server\u0027: {"},{"line_number":34,"context_line":"                \u0027type\u0027: \u0027object\u0027,"},{"line_number":35,"context_line":"                \u0027properties\u0027: {"},{"line_number":36,"context_line":"                    \u0027id\u0027: {\u0027type\u0027: [\u0027integer\u0027, \u0027string\u0027]},"},{"line_number":37,"context_line":"                    \u0027name\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":38,"context_line":"                    \u0027status\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":39,"context_line":"                    \u0027image\u0027: {"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAW3%2F%2Fi1g%3D","line":36,"updated":"2014-04-14 01:27:47.000000000","message":"just question: we needn\u0027t more strict type checking? For example, id should be uuid format.","commit_id":"cdc62bb549af12c4627d86fb7a18b4304cee551d"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"7251dd6e1289ae099f4993ff139a7d94a46f99a2","unresolved":false,"context_lines":[{"line_number":33,"context_line":"            \u0027server\u0027: {"},{"line_number":34,"context_line":"                \u0027type\u0027: \u0027object\u0027,"},{"line_number":35,"context_line":"                \u0027properties\u0027: {"},{"line_number":36,"context_line":"                    \u0027id\u0027: {\u0027type\u0027: [\u0027integer\u0027, \u0027string\u0027]},"},{"line_number":37,"context_line":"                    \u0027name\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":38,"context_line":"                    \u0027status\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":39,"context_line":"                    \u0027image\u0027: {"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAW3%2F%2FhMo%3D","line":36,"in_reply_to":"AAAAW3%2F%2Fi1g%3D","updated":"2014-04-14 01:35:47.000000000","message":"Hi Alex\n\nYes, right. Id which is generated with current implementation should be uuid as you said. but the old implementation generated id as integer. So if making the check strict here, I am afraid that affects CD users.\n\nFor example, https://github.com/openstack/nova/blob/master/nova/compute/api.py#L1798 expects ID as an integer.","commit_id":"cdc62bb549af12c4627d86fb7a18b4304cee551d"}],"tempest/api_schema/compute/v2/servers.py":[{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"1a017fadb914995aaff6358e273c535f6241efc7","unresolved":false,"context_lines":[{"line_number":82,"context_line":"                    \u0027progress\u0027: {\u0027type\u0027: \u0027integer\u0027},"},{"line_number":83,"context_line":"                    \u0027metadata\u0027: {\u0027type\u0027: \u0027object\u0027},"},{"line_number":84,"context_line":"                    \u0027links\u0027: {\u0027type\u0027: \u0027array\u0027},"},{"line_number":85,"context_line":"                    \u0027addresses\u0027: {\u0027type\u0027: \u0027object\u0027},"},{"line_number":86,"context_line":"                    \u0027hostId\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":87,"context_line":"                    \u0027OS-DCF:diskConfig\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":88,"context_line":"                    \u0027accessIPv4\u0027: {\u0027type\u0027: \u0027string\u0027},"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAWH%2F%2BorE%3D","line":85,"updated":"2014-03-25 12:15:05.000000000","message":"should we be checking the structure within addresses?","commit_id":"01cd78172a7e837667f492b8d42308b1afa59fbc"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"f6d320ac519f2a458116666ddf98d2f379e8e342","unresolved":false,"context_lines":[{"line_number":82,"context_line":"                    \u0027progress\u0027: {\u0027type\u0027: \u0027integer\u0027},"},{"line_number":83,"context_line":"                    \u0027metadata\u0027: {\u0027type\u0027: \u0027object\u0027},"},{"line_number":84,"context_line":"                    \u0027links\u0027: {\u0027type\u0027: \u0027array\u0027},"},{"line_number":85,"context_line":"                    \u0027addresses\u0027: {\u0027type\u0027: \u0027object\u0027},"},{"line_number":86,"context_line":"                    \u0027hostId\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":87,"context_line":"                    \u0027OS-DCF:diskConfig\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":88,"context_line":"                    \u0027accessIPv4\u0027: {\u0027type\u0027: \u0027string\u0027},"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAWH%2F%2Boas%3D","line":85,"in_reply_to":"AAAAWH%2F%2BorE%3D","updated":"2014-03-25 13:02:44.000000000","message":"OK, I will do it.\n\nThanks for your review:-)","commit_id":"01cd78172a7e837667f492b8d42308b1afa59fbc"},{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"1a017fadb914995aaff6358e273c535f6241efc7","unresolved":false,"context_lines":[{"line_number":85,"context_line":"                    \u0027addresses\u0027: {\u0027type\u0027: \u0027object\u0027},"},{"line_number":86,"context_line":"                    \u0027hostId\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":87,"context_line":"                    \u0027OS-DCF:diskConfig\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":88,"context_line":"                    \u0027accessIPv4\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":89,"context_line":"                    \u0027accessIPv6\u0027: {\u0027type\u0027: \u0027string\u0027}"},{"line_number":90,"context_line":"                },"},{"line_number":91,"context_line":"                # NOTE: OS-DCF:diskConfig and accessIPv4/v6 are API"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAWH%2F%2BorM%3D","line":88,"updated":"2014-03-25 12:15:05.000000000","message":"should we be checking that these are of the right format as well? Eg valid ipv4 or ipv6 addresses (or blank)","commit_id":"01cd78172a7e837667f492b8d42308b1afa59fbc"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"f6d320ac519f2a458116666ddf98d2f379e8e342","unresolved":false,"context_lines":[{"line_number":85,"context_line":"                    \u0027addresses\u0027: {\u0027type\u0027: \u0027object\u0027},"},{"line_number":86,"context_line":"                    \u0027hostId\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":87,"context_line":"                    \u0027OS-DCF:diskConfig\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":88,"context_line":"                    \u0027accessIPv4\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":89,"context_line":"                    \u0027accessIPv6\u0027: {\u0027type\u0027: \u0027string\u0027}"},{"line_number":90,"context_line":"                },"},{"line_number":91,"context_line":"                # NOTE: OS-DCF:diskConfig and accessIPv4/v6 are API"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAWH%2F%2Bogg%3D","line":88,"in_reply_to":"AAAAWH%2F%2BorM%3D","updated":"2014-03-25 13:02:44.000000000","message":"Nice point, we could check it with the combination of \u0027format\u0027 and \u0027enum\u0027. To avoid copy\u0026paste code, I\u0027d like to define them as common types and use it for many places. To do this, now I am waiting for merger of https://review.openstack.org/#/c/82400/","commit_id":"01cd78172a7e837667f492b8d42308b1afa59fbc"}]}
