)]}'
{"tempest/lib/api_schema/response/volume/extensions.py":[{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"bed4b6f1eecb74caa9b95688cd081ebb2bcc4454","unresolved":false,"context_lines":[{"line_number":30,"context_line":"                        \u0027name\u0027: {\u0027type\u0027: \u0027string\u0027}"},{"line_number":31,"context_line":"                    },"},{"line_number":32,"context_line":"                    \u0027additionalProperties\u0027: False,"},{"line_number":33,"context_line":"                    \u0027required\u0027: [\u0027updated\u0027, \u0027links\u0027, \u0027alias\u0027, \u0027name\u0027]"},{"line_number":34,"context_line":"                }"},{"line_number":35,"context_line":"            }"},{"line_number":36,"context_line":"        },"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_5aaf6adf","line":33,"range":{"start_line":33,"start_character":32,"end_line":33,"end_character":69},"updated":"2018-09-28 21:35:10.000000000","message":"I suspect this is not correct because of Nova: https://github.com/openstack/tempest/blob/807f0dec66689aced05c2bb970f344cbb8a3c6a3/tempest/lib/api_schema/response/compute/v2_1/extensions.py#L38\n\nCode shows that all of them are required: https://github.com/openstack/cinder/blob/7f7716d584cd955162cab988c49c6fa3ac08f2e0/cinder/api/extensions.py#L86\n\nSo missing description.","commit_id":"0e8e40356d0de19b531466c6493f3012d7a66483"},{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"61bad2cabe97f3f86a42a9497ccee3e56827a831","unresolved":false,"context_lines":[{"line_number":30,"context_line":"                        \u0027name\u0027: {\u0027type\u0027: \u0027string\u0027}"},{"line_number":31,"context_line":"                    },"},{"line_number":32,"context_line":"                    \u0027additionalProperties\u0027: False,"},{"line_number":33,"context_line":"                    \u0027required\u0027: [\u0027updated\u0027, \u0027links\u0027, \u0027alias\u0027, \u0027name\u0027]"},{"line_number":34,"context_line":"                }"},{"line_number":35,"context_line":"            }"},{"line_number":36,"context_line":"        },"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_3c2e27fa","line":33,"range":{"start_line":33,"start_character":32,"end_line":33,"end_character":69},"in_reply_to":"3f79a3b5_5aaf6adf","updated":"2018-09-29 06:07:37.000000000","message":"Thanks, done","commit_id":"0e8e40356d0de19b531466c6493f3012d7a66483"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"e251da2f506a01299afc7478ef95f5534d2059b2","unresolved":false,"context_lines":[{"line_number":22,"context_line":"                \u0027items\u0027: {"},{"line_number":23,"context_line":"                    \u0027type\u0027: \u0027object\u0027,"},{"line_number":24,"context_line":"                    \u0027properties\u0027: {"},{"line_number":25,"context_line":"                        \u0027updated\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":26,"context_line":"                        \u0027description\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":27,"context_line":"                        \u0027links\u0027: {\u0027type\u0027: \u0027array\u0027},"},{"line_number":28,"context_line":"                        \u0027namespace\u0027: {\u0027type\u0027: \u0027string\u0027},"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_8e6293ac","line":25,"range":{"start_line":25,"start_character":45,"end_line":25,"end_character":51},"updated":"2018-09-30 14:11:44.000000000","message":"I believe this is actually parameter_types.date_time and that the Cinder documentation is wrong here. \n\nIf you compare the datetime format here https://developer.openstack.org/api-ref/block-storage/v3/index.html#id6 to https://www.google.com/search?client\u003dsafari\u0026rls\u003den\u0026q\u003diso8601-date-time\u0026ie\u003dUTF-8\u0026oe\u003dUTF-8 (which is what the format for parameter_types.date_time) you\u0027ll see that it\u0027s probably not actually a string but would require pushing a patch set to Cinder to confirm with their cores.\n\nFurther, if you grep for updated_at in https://github.com/openstack/cinder/blob/7f7716d584cd955162cab988c49c6fa3ac08f2e0/cinder/db/sqlalchemy/models.py you can see that it\u0027s a DateTime everywhere.\n\nFinally, if you look at Nova extensions (https://developer.openstack.org/api-ref/compute/#list-extensions) you will see that it is format string in API docs but the description says it\u0027s (https://en.wikipedia.org/wiki/ISO_8601) format.\n\nAnd I just checked updated for Nova and it is parameter_types.date_time.","commit_id":"976dcb74f2058136a30fc34a31259770de51350b"},{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"e93cf01fe0255ac98eb08f7c0aadbfafe84552ca","unresolved":false,"context_lines":[{"line_number":22,"context_line":"                \u0027items\u0027: {"},{"line_number":23,"context_line":"                    \u0027type\u0027: \u0027object\u0027,"},{"line_number":24,"context_line":"                    \u0027properties\u0027: {"},{"line_number":25,"context_line":"                        \u0027updated\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":26,"context_line":"                        \u0027description\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":27,"context_line":"                        \u0027links\u0027: {\u0027type\u0027: \u0027array\u0027},"},{"line_number":28,"context_line":"                        \u0027namespace\u0027: {\u0027type\u0027: \u0027string\u0027},"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_7e4ab3ad","line":25,"range":{"start_line":25,"start_character":45,"end_line":25,"end_character":51},"in_reply_to":"3f79a3b5_8e6293ac","updated":"2018-10-08 07:53:26.000000000","message":"ok to set it parameter_types.date_time","commit_id":"976dcb74f2058136a30fc34a31259770de51350b"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"e251da2f506a01299afc7478ef95f5534d2059b2","unresolved":false,"context_lines":[{"line_number":25,"context_line":"                        \u0027updated\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":26,"context_line":"                        \u0027description\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":27,"context_line":"                        \u0027links\u0027: {\u0027type\u0027: \u0027array\u0027},"},{"line_number":28,"context_line":"                        \u0027namespace\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":29,"context_line":"                        \u0027alias\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":30,"context_line":"                        \u0027name\u0027: {\u0027type\u0027: \u0027string\u0027}"},{"line_number":31,"context_line":"                    },"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_0e452315","line":28,"range":{"start_line":28,"start_character":25,"end_line":28,"end_character":34},"updated":"2018-09-30 14:11:44.000000000","message":"I\u0027m not actually sure where this is set in the code but looks correct given API documentation. I guess this can be easily confirmed via a CLI command to confirm, but don\u0027t have a devstack running atm. LGTM otherwise.","commit_id":"976dcb74f2058136a30fc34a31259770de51350b"},{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"e93cf01fe0255ac98eb08f7c0aadbfafe84552ca","unresolved":false,"context_lines":[{"line_number":25,"context_line":"                        \u0027updated\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":26,"context_line":"                        \u0027description\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":27,"context_line":"                        \u0027links\u0027: {\u0027type\u0027: \u0027array\u0027},"},{"line_number":28,"context_line":"                        \u0027namespace\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":29,"context_line":"                        \u0027alias\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":30,"context_line":"                        \u0027name\u0027: {\u0027type\u0027: \u0027string\u0027}"},{"line_number":31,"context_line":"                    },"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_7e1cf3c1","line":28,"range":{"start_line":28,"start_character":25,"end_line":28,"end_character":34},"in_reply_to":"3f79a3b5_0e452315","updated":"2018-10-08 07:53:26.000000000","message":"The result of CLI seems the same as the example in doc, like\n\"namespace\": \"http://docs.openstack.org/volume/ext/services/api/v2\"","commit_id":"976dcb74f2058136a30fc34a31259770de51350b"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"559af0ffebd7ebdfe9e1abb04cb2949171a127d4","unresolved":false,"context_lines":[{"line_number":24,"context_line":"                \u0027items\u0027: {"},{"line_number":25,"context_line":"                    \u0027type\u0027: \u0027object\u0027,"},{"line_number":26,"context_line":"                    \u0027properties\u0027: {"},{"line_number":27,"context_line":"                        \u0027updated\u0027: parameter_types.date_time,"},{"line_number":28,"context_line":"                        \u0027description\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":29,"context_line":"                        \u0027links\u0027: {\u0027type\u0027: \u0027array\u0027},"},{"line_number":30,"context_line":"                        \u0027namespace\u0027: {\u0027type\u0027: \u0027string\u0027},"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_7c3ce691","line":27,"range":{"start_line":27,"start_character":35,"end_line":27,"end_character":60},"updated":"2018-10-09 03:32:06.000000000","message":"Still not 100% sure whether this really is datetime in https://developer.openstack.org/api-ref/block-storage/v3/index.html#api-extensions-extensions, but as far as I can tell it is in code it is: https://github.com/openstack/cinder/blob/79295942261b020356b65eabd4739b4f87e32fd9/cinder/tests/functional/test_extensions.py#L71\n\n(Code sample shows it being parsed as iso-8601 format which is datetime.)","commit_id":"9acabc40d57953e5635f9468a8a7394278b46286"}],"tempest/lib/services/volume/v3/extensions_client.py":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"700e2374558a697a81fad2fa57063b6486a3c40e","unresolved":false,"context_lines":[{"line_number":22,"context_line":"class ExtensionsClient(rest_client.RestClient):"},{"line_number":23,"context_line":"    \"\"\"Volume extensions client.\"\"\""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    def list_extensions(self):"},{"line_number":26,"context_line":"        url \u003d \u0027extensions\u0027"},{"line_number":27,"context_line":"        resp, body \u003d self.get(url)"},{"line_number":28,"context_line":"        body \u003d json.loads(body)"}],"source_content_type":"text/x-python","patch_set":3,"id":"7faddb67_b241c03b","line":25,"updated":"2019-08-19 18:32:26.000000000","message":"nit: better to add\n\n https://docs.openstack.org/api-ref/block-storage/v2/index.html#list-api-extensions\n\non the docstring after this patch.","commit_id":"9acabc40d57953e5635f9468a8a7394278b46286"}]}
