)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6348,"name":"xu-haiwei","email":"hai-xu@xr.jp.nec.com","username":"xu-haiwei"},"change_message_id":"7606677e6479b5b2ebe7336be0541d56dbbb8c3d","unresolved":false,"context_lines":[{"line_number":33,"context_line":"        \"deleted_at\": null,"},{"line_number":34,"context_line":"        \"id\": 1"},{"line_number":35,"context_line":"    }"},{"line_number":36,"context_line":"}"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"The response body of V3 GET keypair API is below:"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"AAAAWH%2F%2FhhM%3D","line":36,"updated":"2014-03-17 10:52:21.000000000","message":"I looked up the sample files in doc/api_samples/os-keypairs/keypairs-get-resp.json, and it\u0027s not in the format like you have written.","commit_id":"14a20b9439d97e8a46114fb85db079959ab17825"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"d13bb816474ded6416fad23f323d6abd86a46e17","unresolved":false,"context_lines":[{"line_number":33,"context_line":"        \"deleted_at\": null,"},{"line_number":34,"context_line":"        \"id\": 1"},{"line_number":35,"context_line":"    }"},{"line_number":36,"context_line":"}"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"The response body of V3 GET keypair API is below:"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"AAAAWH%2F%2FbXE%3D","line":36,"in_reply_to":"AAAAWH%2F%2FhhM%3D","updated":"2014-03-17 23:35:21.000000000","message":"Yes, there it is written for list keypairs API. This response I got by running the get API.","commit_id":"14a20b9439d97e8a46114fb85db079959ab17825"},{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"790ccb3094cb3df7be4c2f7a5679c9f6b77202ca","unresolved":false,"context_lines":[{"line_number":25,"context_line":"                      Generated by Nova\\n\","},{"line_number":26,"context_line":"        \"user_id\": \"93d29478a2454f418e0b835b8439aa90\","},{"line_number":27,"context_line":"        \"name\": \"test_key\","},{"line_number":28,"context_line":"        \"deleted\": false,"},{"line_number":29,"context_line":"        \"created_at\": \"2014-03-17T06:49:35.000000\","},{"line_number":30,"context_line":"        \"updated_at\": null,"},{"line_number":31,"context_line":"        \"fingerprint\": \"52:53:dd:89:6a:73:c6:18:87:4b:1e:c1:4c:b8:"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"AAAAWH%2F%2FbNA%3D","line":28,"updated":"2014-03-17 23:50:35.000000000","message":"The API samples for the V2 get keypairs don\u0027t have these extra fields (nor does the V3 version). Are you sure they are really produced now because the API sample tests in nova should be failing if they don\u0027t match","commit_id":"ac17660f534ce77d229c6562b4c35a1db4a76110"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"b3a67c220f5f45ce74fddbc5f5fc789254d11e45","unresolved":false,"context_lines":[{"line_number":25,"context_line":"                      Generated by Nova\\n\","},{"line_number":26,"context_line":"        \"user_id\": \"93d29478a2454f418e0b835b8439aa90\","},{"line_number":27,"context_line":"        \"name\": \"test_key\","},{"line_number":28,"context_line":"        \"deleted\": false,"},{"line_number":29,"context_line":"        \"created_at\": \"2014-03-17T06:49:35.000000\","},{"line_number":30,"context_line":"        \"updated_at\": null,"},{"line_number":31,"context_line":"        \"fingerprint\": \"52:53:dd:89:6a:73:c6:18:87:4b:1e:c1:4c:b8:"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"AAAAWH%2F%2B010%3D","line":28,"in_reply_to":"AAAAWH%2F%2FbBo%3D","updated":"2014-03-24 00:30:50.000000000","message":"I also confirmed the body with \"nova keypair-show\" command:\n\n $ nova --debug keypair-show test-key\n [..]\n REQ: curl -i \u0027http://192.168.11.100:8774/v2/ca4f3693fda94afab6f711042577f8d2/os-keypairs/test-key\u0027 -X GET [..]\n RESP BODY:\n {\n   \"keypair\": {\n     \"public_key\": \"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC[..] Generated by Nova\\n\",\n     \"user_id\": \"1b2a4047771b4503b1d2bb853577f23a\",\n     \"name\": \"test-key\",\n     \"deleted\": false,\n     \"created_at\": \"2014-03-24T00:10:00.000000\",\n     \"updated_at\": null,\n     \"fingerprint\": \"af:22:0c:7c:63:b1:89:d1:52:18:89:fe:0a:3e:b1:ab\",\n     \"deleted_at\": null,\n     \"id\": 4\n   }\n }\n\nAs you said, current v2 sample file seems wrong. or the v2 API behavior seems wrong:-(","commit_id":"ac17660f534ce77d229c6562b4c35a1db4a76110"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"7d601b61ee75096f518c15df16fe9e2c96439230","unresolved":false,"context_lines":[{"line_number":25,"context_line":"                      Generated by Nova\\n\","},{"line_number":26,"context_line":"        \"user_id\": \"93d29478a2454f418e0b835b8439aa90\","},{"line_number":27,"context_line":"        \"name\": \"test_key\","},{"line_number":28,"context_line":"        \"deleted\": false,"},{"line_number":29,"context_line":"        \"created_at\": \"2014-03-17T06:49:35.000000\","},{"line_number":30,"context_line":"        \"updated_at\": null,"},{"line_number":31,"context_line":"        \"fingerprint\": \"52:53:dd:89:6a:73:c6:18:87:4b:1e:c1:4c:b8:"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"AAAAWH%2F%2FbBo%3D","line":28,"in_reply_to":"AAAAWH%2F%2FbNA%3D","updated":"2014-03-18 00:11:54.000000000","message":"Thanks Chris for the review. Actually in the API_Sample files, \u0027keypairs-get-resp.json\u0027\ncontains the response of list keypairs not get keypair and in the API Sample test it is being tested against list not get as shown below- \n\ntest_api_samples.py -\u003e\n\n    def test_keypairs_get(self):\n        # Get api sample of key pairs get request.\n        key_name \u003d self.test_keypairs_post()\n        response \u003d self._do_get(\u0027os-keypairs\u0027)\n        subs \u003d self._get_regexes()\n        subs[\u0027keypair_name\u0027] \u003d \u0027(%s)\u0027 % key_name\n        self._verify_response(\u0027keypairs-get-resp\u0027, subs, response, 200)\n\nI think we need to add the sample file and test for get keypair also.","commit_id":"ac17660f534ce77d229c6562b4c35a1db4a76110"}],"tempest/api_schema/compute/v2/keypairs.py":[{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"064da0369960e818e2bb4b06ef5c855d09de9d78","unresolved":false,"context_lines":[{"line_number":21,"context_line":"                \u0027type\u0027: \u0027object\u0027,"},{"line_number":22,"context_line":"                \u0027properties\u0027: {"},{"line_number":23,"context_line":"                    \u0027public_key\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":24,"context_line":"                    # NOTE: Now the type of \u0027id\u0027 is integer, but here allows"},{"line_number":25,"context_line":"                    # \u0027string\u0027 also because we will be able to change it to"},{"line_number":26,"context_line":"                    # \u0027uuid\u0027 in the future."},{"line_number":27,"context_line":"                    \u0027user_id\u0027: {\u0027type\u0027: [\u0027integer\u0027, \u0027string\u0027]},"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAWH%2F%2FeMg%3D","line":24,"updated":"2014-03-17 17:47:05.000000000","message":"The comment doesn\u0027t match the code. This should be \u0027user_id\u0027 instead of \u0027id\u0027.","commit_id":"14a20b9439d97e8a46114fb85db079959ab17825"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"d13bb816474ded6416fad23f323d6abd86a46e17","unresolved":false,"context_lines":[{"line_number":21,"context_line":"                \u0027type\u0027: \u0027object\u0027,"},{"line_number":22,"context_line":"                \u0027properties\u0027: {"},{"line_number":23,"context_line":"                    \u0027public_key\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":24,"context_line":"                    # NOTE: Now the type of \u0027id\u0027 is integer, but here allows"},{"line_number":25,"context_line":"                    # \u0027string\u0027 also because we will be able to change it to"},{"line_number":26,"context_line":"                    # \u0027uuid\u0027 in the future."},{"line_number":27,"context_line":"                    \u0027user_id\u0027: {\u0027type\u0027: [\u0027integer\u0027, \u0027string\u0027]},"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAWH%2F%2FbWc%3D","line":24,"in_reply_to":"AAAAWH%2F%2FeMg%3D","updated":"2014-03-17 23:35:21.000000000","message":"Yes, Thanks Jordan for catching this. I will update in next patch.","commit_id":"14a20b9439d97e8a46114fb85db079959ab17825"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"b3a67c220f5f45ce74fddbc5f5fc789254d11e45","unresolved":false,"context_lines":[{"line_number":36,"context_line":"                },"},{"line_number":37,"context_line":"                \u0027required\u0027: [\u0027public_key\u0027, \u0027user_id\u0027, \u0027name\u0027, \u0027deleted\u0027,"},{"line_number":38,"context_line":"                             \u0027created_at\u0027, \u0027updated_at\u0027, \u0027fingerprint\u0027,"},{"line_number":39,"context_line":"                             \u0027deleted_at\u0027, \u0027id\u0027]"},{"line_number":40,"context_line":"            }"},{"line_number":41,"context_line":"        },"},{"line_number":42,"context_line":"        \u0027required\u0027: [\u0027keypair\u0027]"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F%2B01k%3D","line":39,"updated":"2014-03-24 00:30:50.000000000","message":"better to define \u0027fingerprint\u0027, \u0027name\u0027 and \u0027public_key\u0027 only as \u0027required\u0027 because of the sample file of Nova.","commit_id":"ac17660f534ce77d229c6562b4c35a1db4a76110"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"6047285f2e4f19c55017355097c8070cb0381c03","unresolved":false,"context_lines":[{"line_number":29,"context_line":"                    \u0027deleted\u0027: {\u0027type\u0027: \u0027boolean\u0027},"},{"line_number":30,"context_line":"                    \u0027created_at\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":31,"context_line":"                    \u0027updated_at\u0027: {\u0027type\u0027: [\u0027string\u0027, \u0027null\u0027]},"},{"line_number":32,"context_line":"                    \u0027fingerprint\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":33,"context_line":"                    \u0027deleted_at\u0027: {\u0027type\u0027: [\u0027string\u0027, \u0027null\u0027]},"},{"line_number":34,"context_line":"                    \u0027id\u0027: {\u0027type\u0027: \u0027integer\u0027}"},{"line_number":35,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWH%2F%2B0Og%3D","line":32,"updated":"2014-03-24 04:11:59.000000000","message":"could you move \u0027name\u0027 and \u0027fingerprint\u0027 to just after \u0027public_key\u0027 for the readability(\u0027required\u0027 first)?\n\nThe commit message also.","commit_id":"b04861cd81a4e93447456755f9ed23a926a384f8"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"0dd39454a5f203f0d3bae1a2b93c1be71951b6d6","unresolved":false,"context_lines":[{"line_number":29,"context_line":"                    \u0027deleted\u0027: {\u0027type\u0027: \u0027boolean\u0027},"},{"line_number":30,"context_line":"                    \u0027created_at\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":31,"context_line":"                    \u0027updated_at\u0027: {\u0027type\u0027: [\u0027string\u0027, \u0027null\u0027]},"},{"line_number":32,"context_line":"                    \u0027fingerprint\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":33,"context_line":"                    \u0027deleted_at\u0027: {\u0027type\u0027: [\u0027string\u0027, \u0027null\u0027]},"},{"line_number":34,"context_line":"                    \u0027id\u0027: {\u0027type\u0027: \u0027integer\u0027}"},{"line_number":35,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWH%2F%2B0Ho%3D","line":32,"in_reply_to":"AAAAWH%2F%2B0Og%3D","updated":"2014-03-24 04:46:28.000000000","message":"Done.","commit_id":"b04861cd81a4e93447456755f9ed23a926a384f8"}]}
