)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"56dd2a7a06a37a07051166a4e324c7bd8642dfd8","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Add host/hostId to instance action events API"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch add a new microversion to"},{"line_number":10,"context_line":"``GET /servers/{server_id}/os\u003dinstance-actions/{req_id}`` API to"},{"line_number":11,"context_line":"include the ``host`` field for admin and an ``hostId`` for all user"},{"line_number":12,"context_line":"by default. And The display of newly added ``host`` field will be"},{"line_number":13,"context_line":"controlled by the same policy of ``traceback`` field."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"bf659307_1c6c439a","line":10,"range":{"start_line":10,"start_character":29,"end_line":10,"end_character":30},"updated":"2018-04-03 06:35:14.000000000","message":"-","commit_id":"ee51845ffcf194a088c899f744461ac41422627a"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"baba623a5847190cca301b1f39b228277d4226a3","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Add host/hostId to instance action events API"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch add a new microversion to"},{"line_number":10,"context_line":"``GET /servers/{server_id}/os\u003dinstance-actions/{req_id}`` API to"},{"line_number":11,"context_line":"include the ``host`` field for admin and an ``hostId`` for all user"},{"line_number":12,"context_line":"by default. And The display of newly added ``host`` field will be"},{"line_number":13,"context_line":"controlled by the same policy of ``traceback`` field."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"bf659307_baa049a7","line":10,"range":{"start_line":10,"start_character":29,"end_line":10,"end_character":30},"in_reply_to":"bf659307_1c6c439a","updated":"2018-04-10 06:51:51.000000000","message":"Done","commit_id":"ee51845ffcf194a088c899f744461ac41422627a"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"3102fa9b0eb881dca1ea30c4b7d224fbaf7fe35a","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add host/hostId to instance action events API"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch add a new microversion to"},{"line_number":10,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API to"},{"line_number":11,"context_line":"include the ``host`` field for admin and an ``hostId`` for all user"},{"line_number":12,"context_line":"by default. And The display of newly added ``host`` field will be"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"9f6a8fd7_974a257e","line":9,"range":{"start_line":9,"start_character":11,"end_line":9,"end_character":14},"updated":"2018-04-16 21:26:16.000000000","message":"adds","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"3c258a1addee5e0447b973c76f100bf2931a7644","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add host/hostId to instance action events API"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch add a new microversion to"},{"line_number":10,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API to"},{"line_number":11,"context_line":"include the ``host`` field for admin and an ``hostId`` for all user"},{"line_number":12,"context_line":"by default. And The display of newly added ``host`` field will be"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"9f6a8fd7_077902fb","line":9,"range":{"start_line":9,"start_character":11,"end_line":9,"end_character":14},"in_reply_to":"9f6a8fd7_974a257e","updated":"2018-04-17 03:13:58.000000000","message":"Done","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"3102fa9b0eb881dca1ea30c4b7d224fbaf7fe35a","unresolved":false,"context_lines":[{"line_number":9,"context_line":"This patch add a new microversion to"},{"line_number":10,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API to"},{"line_number":11,"context_line":"include the ``host`` field for admin and an ``hostId`` for all user"},{"line_number":12,"context_line":"by default. And The display of newly added ``host`` field will be"},{"line_number":13,"context_line":"controlled by the same policy of ``traceback`` field."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The newly field would be used by user to get the host info of the"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"9f6a8fd7_f7584157","line":12,"range":{"start_line":12,"start_character":16,"end_line":12,"end_character":19},"updated":"2018-04-16 21:26:16.000000000","message":"the","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"3c258a1addee5e0447b973c76f100bf2931a7644","unresolved":false,"context_lines":[{"line_number":9,"context_line":"This patch add a new microversion to"},{"line_number":10,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API to"},{"line_number":11,"context_line":"include the ``host`` field for admin and an ``hostId`` for all user"},{"line_number":12,"context_line":"by default. And The display of newly added ``host`` field will be"},{"line_number":13,"context_line":"controlled by the same policy of ``traceback`` field."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The newly field would be used by user to get the host info of the"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"9f6a8fd7_277e86e4","line":12,"range":{"start_line":12,"start_character":16,"end_line":12,"end_character":19},"in_reply_to":"9f6a8fd7_f7584157","updated":"2018-04-17 03:13:58.000000000","message":"Done","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"3102fa9b0eb881dca1ea30c4b7d224fbaf7fe35a","unresolved":false,"context_lines":[{"line_number":12,"context_line":"by default. And The display of newly added ``host`` field will be"},{"line_number":13,"context_line":"controlled by the same policy of ``traceback`` field."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The newly field would be used by user to get the host info of the"},{"line_number":16,"context_line":"action event occurs."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Part of blueprint: add-host-to-instance-action-events"},{"line_number":19,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"9f6a8fd7_973f85d5","line":16,"range":{"start_line":15,"start_character":0,"end_line":16,"end_character":20},"updated":"2018-04-16 21:26:16.000000000","message":"Suggest re-wording this to: \"The newly added fields can be used to determine on which host a given action event occurred.\"","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"3c258a1addee5e0447b973c76f100bf2931a7644","unresolved":false,"context_lines":[{"line_number":12,"context_line":"by default. And The display of newly added ``host`` field will be"},{"line_number":13,"context_line":"controlled by the same policy of ``traceback`` field."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The newly field would be used by user to get the host info of the"},{"line_number":16,"context_line":"action event occurs."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Part of blueprint: add-host-to-instance-action-events"},{"line_number":19,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"9f6a8fd7_c7822ac9","line":16,"range":{"start_line":15,"start_character":0,"end_line":16,"end_character":20},"in_reply_to":"9f6a8fd7_973f85d5","updated":"2018-04-17 03:13:58.000000000","message":"Done","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"86b7c5e16df0862dbd4445efd752d90cdd50d4a8","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch adds a new microversion to"},{"line_number":10,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API to"},{"line_number":11,"context_line":"include the ``host`` field for admin and an ``hostId`` for all user"},{"line_number":12,"context_line":"by default. And the display of newly added ``host`` field will be"},{"line_number":13,"context_line":"controlled by the same policy of ``traceback`` field."},{"line_number":14,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"9f6a8fd7_bddf27d5","line":11,"range":{"start_line":11,"start_character":63,"end_line":11,"end_character":67},"updated":"2018-04-26 12:42:21.000000000","message":"users","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"bb9babefd96996ae39d29330d5737d9c3929dcf9","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch adds a new microversion to"},{"line_number":10,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API to"},{"line_number":11,"context_line":"include the ``host`` field for admin and an ``hostId`` for all user"},{"line_number":12,"context_line":"by default. And the display of newly added ``host`` field will be"},{"line_number":13,"context_line":"controlled by the same policy of ``traceback`` field."},{"line_number":14,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"9f6a8fd7_405f0472","line":11,"range":{"start_line":11,"start_character":63,"end_line":11,"end_character":67},"in_reply_to":"9f6a8fd7_bddf27d5","updated":"2018-04-26 13:34:35.000000000","message":"Done","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"86b7c5e16df0862dbd4445efd752d90cdd50d4a8","unresolved":false,"context_lines":[{"line_number":10,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API to"},{"line_number":11,"context_line":"include the ``host`` field for admin and an ``hostId`` for all user"},{"line_number":12,"context_line":"by default. And the display of newly added ``host`` field will be"},{"line_number":13,"context_line":"controlled by the same policy of ``traceback`` field."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The newly added fields can be used to determine on which host a"},{"line_number":16,"context_line":"given action event occurred."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"9f6a8fd7_1de8937a","line":13,"range":{"start_line":13,"start_character":30,"end_line":13,"end_character":32},"updated":"2018-04-26 12:42:21.000000000","message":"as the","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"bb9babefd96996ae39d29330d5737d9c3929dcf9","unresolved":false,"context_lines":[{"line_number":10,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API to"},{"line_number":11,"context_line":"include the ``host`` field for admin and an ``hostId`` for all user"},{"line_number":12,"context_line":"by default. And the display of newly added ``host`` field will be"},{"line_number":13,"context_line":"controlled by the same policy of ``traceback`` field."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The newly added fields can be used to determine on which host a"},{"line_number":16,"context_line":"given action event occurred."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"9f6a8fd7_e053b86b","line":13,"range":{"start_line":13,"start_character":30,"end_line":13,"end_character":32},"in_reply_to":"9f6a8fd7_1de8937a","updated":"2018-04-26 13:34:35.000000000","message":"Done","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"}],"api-ref/source/os-instance-actions.inc":[{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"d8c5d36047ed6a22751fa7bc56e4a57667b33763","unresolved":false,"context_lines":[{"line_number":111,"context_line":"  - events.finish_time: event_finish_time"},{"line_number":112,"context_line":"  - events.result: event_result"},{"line_number":113,"context_line":"  - events.traceback: event_traceback"},{"line_number":114,"context_line":"  - events.host: event_host"},{"line_number":115,"context_line":"  - events.hostId: event_hostId"},{"line_number":116,"context_line":"  - updated_at: updated_instance_action"},{"line_number":117,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":6,"id":"bf659307_5f1b8ac8","line":114,"range":{"start_line":114,"start_character":4,"end_line":114,"end_character":27},"updated":"2018-04-03 09:42:27.000000000","message":"It should be just after \"events.hostId\" because it is optional.","commit_id":"ee51845ffcf194a088c899f744461ac41422627a"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"baba623a5847190cca301b1f39b228277d4226a3","unresolved":false,"context_lines":[{"line_number":111,"context_line":"  - events.finish_time: event_finish_time"},{"line_number":112,"context_line":"  - events.result: event_result"},{"line_number":113,"context_line":"  - events.traceback: event_traceback"},{"line_number":114,"context_line":"  - events.host: event_host"},{"line_number":115,"context_line":"  - events.hostId: event_hostId"},{"line_number":116,"context_line":"  - updated_at: updated_instance_action"},{"line_number":117,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":6,"id":"bf659307_5a8fad2d","line":114,"range":{"start_line":114,"start_character":4,"end_line":114,"end_character":27},"in_reply_to":"bf659307_5f1b8ac8","updated":"2018-04-10 06:51:51.000000000","message":"Done","commit_id":"ee51845ffcf194a088c899f744461ac41422627a"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"3e982af9c74e3b50d39fe1b6dec50715c5dfc7c3","unresolved":false,"context_lines":[{"line_number":112,"context_line":"  - events.result: event_result"},{"line_number":113,"context_line":"  - events.traceback: event_traceback"},{"line_number":114,"context_line":"  - updated_at: updated_instance_action"},{"line_number":115,"context_line":"  - events.hostId: event_hostId"},{"line_number":116,"context_line":"  - events.host: event_host"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"**Example Show Server Action Details For Admin (v2.61)**"},{"line_number":119,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":7,"id":"bf659307_2ededc3d","line":116,"range":{"start_line":115,"start_character":0,"end_line":116,"end_character":27},"updated":"2018-04-13 00:34:46.000000000","message":"please keep it together with other \u0027events\u0027 field just after @L113","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"4dc87fb415434e1eeb9ca4af51c17b37cb21ac21","unresolved":false,"context_lines":[{"line_number":112,"context_line":"  - events.result: event_result"},{"line_number":113,"context_line":"  - events.traceback: event_traceback"},{"line_number":114,"context_line":"  - updated_at: updated_instance_action"},{"line_number":115,"context_line":"  - events.hostId: event_hostId"},{"line_number":116,"context_line":"  - events.host: event_host"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"**Example Show Server Action Details For Admin (v2.61)**"},{"line_number":119,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":7,"id":"bf659307_edda0a49","line":116,"range":{"start_line":115,"start_character":0,"end_line":116,"end_character":27},"in_reply_to":"bf659307_2ededc3d","updated":"2018-04-13 02:55:29.000000000","message":"++ this will be shown in the webpage form, looks better with other event fields.","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"9304d9b57eba9b58bcd945111e8d6b015dfbe00d","unresolved":false,"context_lines":[{"line_number":112,"context_line":"  - events.result: event_result"},{"line_number":113,"context_line":"  - events.traceback: event_traceback"},{"line_number":114,"context_line":"  - updated_at: updated_instance_action"},{"line_number":115,"context_line":"  - events.hostId: event_hostId"},{"line_number":116,"context_line":"  - events.host: event_host"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"**Example Show Server Action Details For Admin (v2.61)**"},{"line_number":119,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":7,"id":"bf659307_cb3b67e7","line":116,"range":{"start_line":115,"start_character":0,"end_line":116,"end_character":27},"in_reply_to":"bf659307_edda0a49","updated":"2018-04-13 11:41:10.000000000","message":"Done","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"86b7c5e16df0862dbd4445efd752d90cdd50d4a8","unresolved":false,"context_lines":[{"line_number":111,"context_line":"  - events.finish_time: event_finish_time"},{"line_number":112,"context_line":"  - events.result: event_result"},{"line_number":113,"context_line":"  - events.traceback: event_traceback"},{"line_number":114,"context_line":"  - events.hostId: event_hostId"},{"line_number":115,"context_line":"  - events.host: event_host"},{"line_number":116,"context_line":"  - updated_at: updated_instance_action"},{"line_number":117,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":14,"id":"9f6a8fd7_3d49d78a","line":114,"range":{"start_line":114,"start_character":11,"end_line":114,"end_character":17},"updated":"2018-04-26 12:42:21.000000000","message":"Calling it an ID is confusing given that it\u0027s a hash.  The reader might reasonably expect it to bear some relation to the host\u0027s UUID.  If they\u0027re not reading this doc, that is.\n\nI\u0027m coming late to this party, so forgive me if this was discussed, but have we considered calling it hostHash?","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"bb9babefd96996ae39d29330d5737d9c3929dcf9","unresolved":false,"context_lines":[{"line_number":111,"context_line":"  - events.finish_time: event_finish_time"},{"line_number":112,"context_line":"  - events.result: event_result"},{"line_number":113,"context_line":"  - events.traceback: event_traceback"},{"line_number":114,"context_line":"  - events.hostId: event_hostId"},{"line_number":115,"context_line":"  - events.host: event_host"},{"line_number":116,"context_line":"  - updated_at: updated_instance_action"},{"line_number":117,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":14,"id":"9f6a8fd7_6061e811","line":114,"range":{"start_line":114,"start_character":11,"end_line":114,"end_character":17},"in_reply_to":"9f6a8fd7_3d49d78a","updated":"2018-04-26 13:34:35.000000000","message":"The hostId idea is come from server hostId. :)\n\n[1] https://review.openstack.org/#/c/555282/5/nova/api/openstack/compute/views/servers.py","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"3490e9381f28518ae47add5a7a0f5f4217798490","unresolved":false,"context_lines":[{"line_number":111,"context_line":"  - events.finish_time: event_finish_time"},{"line_number":112,"context_line":"  - events.result: event_result"},{"line_number":113,"context_line":"  - events.traceback: event_traceback"},{"line_number":114,"context_line":"  - events.hostId: event_hostId"},{"line_number":115,"context_line":"  - events.host: event_host"},{"line_number":116,"context_line":"  - updated_at: updated_instance_action"},{"line_number":117,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":14,"id":"9f6a8fd7_a67e38ad","line":114,"range":{"start_line":114,"start_character":11,"end_line":114,"end_character":17},"in_reply_to":"9f6a8fd7_6061e811","updated":"2018-04-26 14:15:20.000000000","message":"Ah, I see, there\u0027s already an entry with this name and value in a different API, so it makes sense to match it up.","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"}],"api-ref/source/parameters.yaml":[{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"f05a08c15644ae4f14814ef9e848a3442a2c965d","unresolved":false,"context_lines":[{"line_number":2226,"context_line":"  in: body"},{"line_number":2227,"context_line":"  required: true"},{"line_number":2228,"context_line":"  type: string"},{"line_number":2229,"context_line":"event_host:"},{"line_number":2230,"context_line":"  description: |"},{"line_number":2231,"context_line":"    The host name of the event occuring."},{"line_number":2232,"context_line":""},{"line_number":2233,"context_line":"    Policy defaults enable only users with the administrative role to see"},{"line_number":2234,"context_line":"    an instance action event host. Cloud providers can change these"},{"line_number":2235,"context_line":"    permissions through the ``policy.json`` file."},{"line_number":2236,"context_line":"  in: body"},{"line_number":2237,"context_line":"  required: true"},{"line_number":2238,"context_line":"  type: string"},{"line_number":2239,"context_line":"event_hostId:"},{"line_number":2240,"context_line":"  description: |"},{"line_number":2241,"context_line":"    An obfuscated hashed host id string, return \"\" if the event host is empty."},{"line_number":2242,"context_line":"    This is a hashed value so will not actually look like a hostname, and is"},{"line_number":2243,"context_line":"    hashed with data from the project_id, so the same physical host as seen"},{"line_number":2244,"context_line":"    by two different project_ids, will be different. It is useful when within"},{"line_number":2245,"context_line":"    the same project you need to determine if two events are occured on the"},{"line_number":2246,"context_line":"    same or different physical hosts."},{"line_number":2247,"context_line":"  in: body"},{"line_number":2248,"context_line":"  required: true"},{"line_number":2249,"context_line":"  type: string"},{"line_number":2250,"context_line":"event_name:"},{"line_number":2251,"context_line":"  description: |"},{"line_number":2252,"context_line":"    The event name. A valid value is ``network-changed``, ``network-vif-plugged``,"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"bf659307_deba8a6c","line":2249,"range":{"start_line":2229,"start_character":0,"end_line":2249,"end_character":14},"updated":"2018-03-29 06:25:47.000000000","message":"should mention min version info, like in line 2348","commit_id":"7e6bd1d9577cea54cb392070ec03b8bc79a3f25d"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"6fe56866abf019b132a515a4aebfc2f68570084a","unresolved":false,"context_lines":[{"line_number":2226,"context_line":"  in: body"},{"line_number":2227,"context_line":"  required: true"},{"line_number":2228,"context_line":"  type: string"},{"line_number":2229,"context_line":"event_host:"},{"line_number":2230,"context_line":"  description: |"},{"line_number":2231,"context_line":"    The host name of the event occuring."},{"line_number":2232,"context_line":""},{"line_number":2233,"context_line":"    Policy defaults enable only users with the administrative role to see"},{"line_number":2234,"context_line":"    an instance action event host. Cloud providers can change these"},{"line_number":2235,"context_line":"    permissions through the ``policy.json`` file."},{"line_number":2236,"context_line":"  in: body"},{"line_number":2237,"context_line":"  required: true"},{"line_number":2238,"context_line":"  type: string"},{"line_number":2239,"context_line":"event_hostId:"},{"line_number":2240,"context_line":"  description: |"},{"line_number":2241,"context_line":"    An obfuscated hashed host id string, return \"\" if the event host is empty."},{"line_number":2242,"context_line":"    This is a hashed value so will not actually look like a hostname, and is"},{"line_number":2243,"context_line":"    hashed with data from the project_id, so the same physical host as seen"},{"line_number":2244,"context_line":"    by two different project_ids, will be different. It is useful when within"},{"line_number":2245,"context_line":"    the same project you need to determine if two events are occured on the"},{"line_number":2246,"context_line":"    same or different physical hosts."},{"line_number":2247,"context_line":"  in: body"},{"line_number":2248,"context_line":"  required: true"},{"line_number":2249,"context_line":"  type: string"},{"line_number":2250,"context_line":"event_name:"},{"line_number":2251,"context_line":"  description: |"},{"line_number":2252,"context_line":"    The event name. A valid value is ``network-changed``, ``network-vif-plugged``,"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"bf659307_80800548","line":2249,"range":{"start_line":2229,"start_character":0,"end_line":2249,"end_character":14},"in_reply_to":"bf659307_deba8a6c","updated":"2018-03-31 07:27:10.000000000","message":"Done","commit_id":"7e6bd1d9577cea54cb392070ec03b8bc79a3f25d"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"d8c5d36047ed6a22751fa7bc56e4a57667b33763","unresolved":false,"context_lines":[{"line_number":2235,"context_line":"    an instance action event host. Cloud providers can change these"},{"line_number":2236,"context_line":"    permissions through the ``policy.json`` file."},{"line_number":2237,"context_line":"  in: body"},{"line_number":2238,"context_line":"  required: true"},{"line_number":2239,"context_line":"  type: string"},{"line_number":2240,"context_line":"event_hostId:"},{"line_number":2241,"context_line":"  min_version: 2.61"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"bf659307_5f42aaac","line":2238,"range":{"start_line":2238,"start_character":12,"end_line":2238,"end_character":16},"updated":"2018-04-03 09:42:27.000000000","message":"By default, only users with the administrative role to get this parameter. Then it should be \u0027false\u0027 (optional).","commit_id":"ee51845ffcf194a088c899f744461ac41422627a"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"baba623a5847190cca301b1f39b228277d4226a3","unresolved":false,"context_lines":[{"line_number":2235,"context_line":"    an instance action event host. Cloud providers can change these"},{"line_number":2236,"context_line":"    permissions through the ``policy.json`` file."},{"line_number":2237,"context_line":"  in: body"},{"line_number":2238,"context_line":"  required: true"},{"line_number":2239,"context_line":"  type: string"},{"line_number":2240,"context_line":"event_hostId:"},{"line_number":2241,"context_line":"  min_version: 2.61"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"bf659307_3a943944","line":2238,"range":{"start_line":2238,"start_character":12,"end_line":2238,"end_character":16},"in_reply_to":"bf659307_5f42aaac","updated":"2018-04-10 06:51:51.000000000","message":"Done","commit_id":"ee51845ffcf194a088c899f744461ac41422627a"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"3102fa9b0eb881dca1ea30c4b7d224fbaf7fe35a","unresolved":false,"context_lines":[{"line_number":2360,"context_line":"event_host:"},{"line_number":2361,"context_line":"  min_version: 2.62"},{"line_number":2362,"context_line":"  description: |"},{"line_number":2363,"context_line":"    The host name of the event occuring."},{"line_number":2364,"context_line":""},{"line_number":2365,"context_line":"    Policy defaults enable only users with the administrative role to see"},{"line_number":2366,"context_line":"    an instance action event host. Cloud providers can change these"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"9f6a8fd7_172b7594","line":2363,"range":{"start_line":2363,"start_character":4,"end_line":2363,"end_character":40},"updated":"2018-04-16 21:26:16.000000000","message":"The name of the host on which the event occurred.","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"3c258a1addee5e0447b973c76f100bf2931a7644","unresolved":false,"context_lines":[{"line_number":2360,"context_line":"event_host:"},{"line_number":2361,"context_line":"  min_version: 2.62"},{"line_number":2362,"context_line":"  description: |"},{"line_number":2363,"context_line":"    The host name of the event occuring."},{"line_number":2364,"context_line":""},{"line_number":2365,"context_line":"    Policy defaults enable only users with the administrative role to see"},{"line_number":2366,"context_line":"    an instance action event host. Cloud providers can change these"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"9f6a8fd7_474ffabc","line":2363,"range":{"start_line":2363,"start_character":4,"end_line":2363,"end_character":40},"in_reply_to":"9f6a8fd7_172b7594","updated":"2018-04-17 03:13:58.000000000","message":"Done","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"3102fa9b0eb881dca1ea30c4b7d224fbaf7fe35a","unresolved":false,"context_lines":[{"line_number":2362,"context_line":"  description: |"},{"line_number":2363,"context_line":"    The host name of the event occuring."},{"line_number":2364,"context_line":""},{"line_number":2365,"context_line":"    Policy defaults enable only users with the administrative role to see"},{"line_number":2366,"context_line":"    an instance action event host. Cloud providers can change these"},{"line_number":2367,"context_line":"    permissions through the ``policy.json`` file."},{"line_number":2368,"context_line":"  in: body"},{"line_number":2369,"context_line":"  required: false"},{"line_number":2370,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"9f6a8fd7_f3e85417","line":2367,"range":{"start_line":2365,"start_character":4,"end_line":2367,"end_character":49},"updated":"2018-04-16 21:26:16.000000000","message":"The policy doc should also be updated for the new microversion and it\u0027s impact on that policy rule, like for \"traceback\":\n\nhttps://github.com/openstack/nova/blob/e388109c4844695e9ac37ea6950549bf1add4561/nova/policies/instance_actions.py#L33","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"3c258a1addee5e0447b973c76f100bf2931a7644","unresolved":false,"context_lines":[{"line_number":2362,"context_line":"  description: |"},{"line_number":2363,"context_line":"    The host name of the event occuring."},{"line_number":2364,"context_line":""},{"line_number":2365,"context_line":"    Policy defaults enable only users with the administrative role to see"},{"line_number":2366,"context_line":"    an instance action event host. Cloud providers can change these"},{"line_number":2367,"context_line":"    permissions through the ``policy.json`` file."},{"line_number":2368,"context_line":"  in: body"},{"line_number":2369,"context_line":"  required: false"},{"line_number":2370,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"9f6a8fd7_27368605","line":2367,"range":{"start_line":2365,"start_character":4,"end_line":2367,"end_character":49},"in_reply_to":"9f6a8fd7_f3e85417","updated":"2018-04-17 03:13:58.000000000","message":"Done","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"3102fa9b0eb881dca1ea30c4b7d224fbaf7fe35a","unresolved":false,"context_lines":[{"line_number":2371,"context_line":"event_hostId:"},{"line_number":2372,"context_line":"  min_version: 2.62"},{"line_number":2373,"context_line":"  description: |"},{"line_number":2374,"context_line":"    An obfuscated hashed host id string, return \"\" if the event host is empty."},{"line_number":2375,"context_line":"    This is a hashed value so will not actually look like a hostname, and is"},{"line_number":2376,"context_line":"    hashed with data from the project_id, so the same physical host as seen"},{"line_number":2377,"context_line":"    by two different project_ids, will be different. It is useful when within"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"9f6a8fd7_930f982d","line":2374,"range":{"start_line":2374,"start_character":41,"end_line":2374,"end_character":50},"updated":"2018-04-16 21:26:16.000000000","message":"Looks like this was copied from the utility method docstring. I\u0027d re-word this as:\n\n\"An obfuscated hashed host ID string, or the empty string if there is no host for the event.\"","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"3c258a1addee5e0447b973c76f100bf2931a7644","unresolved":false,"context_lines":[{"line_number":2371,"context_line":"event_hostId:"},{"line_number":2372,"context_line":"  min_version: 2.62"},{"line_number":2373,"context_line":"  description: |"},{"line_number":2374,"context_line":"    An obfuscated hashed host id string, return \"\" if the event host is empty."},{"line_number":2375,"context_line":"    This is a hashed value so will not actually look like a hostname, and is"},{"line_number":2376,"context_line":"    hashed with data from the project_id, so the same physical host as seen"},{"line_number":2377,"context_line":"    by two different project_ids, will be different. It is useful when within"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"9f6a8fd7_674c7ec7","line":2374,"range":{"start_line":2374,"start_character":41,"end_line":2374,"end_character":50},"in_reply_to":"9f6a8fd7_930f982d","updated":"2018-04-17 03:13:58.000000000","message":"Done","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"3102fa9b0eb881dca1ea30c4b7d224fbaf7fe35a","unresolved":false,"context_lines":[{"line_number":2375,"context_line":"    This is a hashed value so will not actually look like a hostname, and is"},{"line_number":2376,"context_line":"    hashed with data from the project_id, so the same physical host as seen"},{"line_number":2377,"context_line":"    by two different project_ids, will be different. It is useful when within"},{"line_number":2378,"context_line":"    the same project you need to determine if two events are occured on the"},{"line_number":2379,"context_line":"    same or different physical hosts."},{"line_number":2380,"context_line":"  in: body"},{"line_number":2381,"context_line":"  required: true"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"9f6a8fd7_d32670b8","line":2378,"range":{"start_line":2378,"start_character":57,"end_line":2378,"end_character":69},"updated":"2018-04-16 21:26:16.000000000","message":"s/are occured/occurred/","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"3c258a1addee5e0447b973c76f100bf2931a7644","unresolved":false,"context_lines":[{"line_number":2375,"context_line":"    This is a hashed value so will not actually look like a hostname, and is"},{"line_number":2376,"context_line":"    hashed with data from the project_id, so the same physical host as seen"},{"line_number":2377,"context_line":"    by two different project_ids, will be different. It is useful when within"},{"line_number":2378,"context_line":"    the same project you need to determine if two events are occured on the"},{"line_number":2379,"context_line":"    same or different physical hosts."},{"line_number":2380,"context_line":"  in: body"},{"line_number":2381,"context_line":"  required: true"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"9f6a8fd7_07c7c214","line":2378,"range":{"start_line":2378,"start_character":57,"end_line":2378,"end_character":69},"in_reply_to":"9f6a8fd7_d32670b8","updated":"2018-04-17 03:13:58.000000000","message":"Done","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"3102fa9b0eb881dca1ea30c4b7d224fbaf7fe35a","unresolved":false,"context_lines":[{"line_number":2430,"context_line":"    an instance action event traceback. Cloud providers can change these"},{"line_number":2431,"context_line":"    permissions through the ``policy.json`` file."},{"line_number":2432,"context_line":"  in: body"},{"line_number":2433,"context_line":"  required: true"},{"line_number":2434,"context_line":"  type: string"},{"line_number":2435,"context_line":"events:"},{"line_number":2436,"context_line":"  description: |"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"9f6a8fd7_1704d516","line":2433,"range":{"start_line":2433,"start_character":12,"end_line":2433,"end_character":16},"updated":"2018-04-16 21:26:16.000000000","message":"Huh, I didn\u0027t realize this was marked as required, which I guess it is based on policy and user token. A bit confusing though.","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"eb3c01d56fc006ba312c3305e33a1fe1e737f047","unresolved":false,"context_lines":[{"line_number":2376,"context_line":"    a hostname, and is hashed with data from the project_id, so the same"},{"line_number":2377,"context_line":"    physical host as seen by two different project_ids, will be different."},{"line_number":2378,"context_line":"    It is useful when within the same project you need to determine if two"},{"line_number":2379,"context_line":"    events occured on the same or different physical hosts."},{"line_number":2380,"context_line":"  in: body"},{"line_number":2381,"context_line":"  required: true"},{"line_number":2382,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":12,"id":"9f6a8fd7_90b8b3c8","line":2379,"range":{"start_line":2379,"start_character":11,"end_line":2379,"end_character":18},"updated":"2018-04-18 19:10:58.000000000","message":"occurred","commit_id":"3b59df23f859e03a8eb002bb6651e7626e8a26d7"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"7beb6561420e8fb3b10678f93cc88fec681d6585","unresolved":false,"context_lines":[{"line_number":2376,"context_line":"    a hostname, and is hashed with data from the project_id, so the same"},{"line_number":2377,"context_line":"    physical host as seen by two different project_ids, will be different."},{"line_number":2378,"context_line":"    It is useful when within the same project you need to determine if two"},{"line_number":2379,"context_line":"    events occured on the same or different physical hosts."},{"line_number":2380,"context_line":"  in: body"},{"line_number":2381,"context_line":"  required: true"},{"line_number":2382,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":12,"id":"9f6a8fd7_4ac81f21","line":2379,"range":{"start_line":2379,"start_character":11,"end_line":2379,"end_character":18},"in_reply_to":"9f6a8fd7_90b8b3c8","updated":"2018-04-19 07:17:57.000000000","message":"Done","commit_id":"3b59df23f859e03a8eb002bb6651e7626e8a26d7"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"86b7c5e16df0862dbd4445efd752d90cdd50d4a8","unresolved":false,"context_lines":[{"line_number":2374,"context_line":"    An obfuscated hashed host ID string, or the empty string if there is no"},{"line_number":2375,"context_line":"    host for the event. This is a hashed value so will not actually look like"},{"line_number":2376,"context_line":"    a hostname, and is hashed with data from the project_id, so the same"},{"line_number":2377,"context_line":"    physical host as seen by two different project_ids, will be different."},{"line_number":2378,"context_line":"    It is useful when within the same project you need to determine if two"},{"line_number":2379,"context_line":"    events occurred on the same or different physical hosts."},{"line_number":2380,"context_line":"  in: body"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"9f6a8fd7_3da2374d","line":2377,"range":{"start_line":2377,"start_character":54,"end_line":2377,"end_character":55},"updated":"2018-04-26 12:42:21.000000000","message":"strike","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"bb9babefd96996ae39d29330d5737d9c3929dcf9","unresolved":false,"context_lines":[{"line_number":2374,"context_line":"    An obfuscated hashed host ID string, or the empty string if there is no"},{"line_number":2375,"context_line":"    host for the event. This is a hashed value so will not actually look like"},{"line_number":2376,"context_line":"    a hostname, and is hashed with data from the project_id, so the same"},{"line_number":2377,"context_line":"    physical host as seen by two different project_ids, will be different."},{"line_number":2378,"context_line":"    It is useful when within the same project you need to determine if two"},{"line_number":2379,"context_line":"    events occurred on the same or different physical hosts."},{"line_number":2380,"context_line":"  in: body"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"9f6a8fd7_40170453","line":2377,"range":{"start_line":2377,"start_character":54,"end_line":2377,"end_character":55},"in_reply_to":"9f6a8fd7_3da2374d","updated":"2018-04-26 13:34:35.000000000","message":"Done","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"86b7c5e16df0862dbd4445efd752d90cdd50d4a8","unresolved":false,"context_lines":[{"line_number":2375,"context_line":"    host for the event. This is a hashed value so will not actually look like"},{"line_number":2376,"context_line":"    a hostname, and is hashed with data from the project_id, so the same"},{"line_number":2377,"context_line":"    physical host as seen by two different project_ids, will be different."},{"line_number":2378,"context_line":"    It is useful when within the same project you need to determine if two"},{"line_number":2379,"context_line":"    events occurred on the same or different physical hosts."},{"line_number":2380,"context_line":"  in: body"},{"line_number":2381,"context_line":"  required: true"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"9f6a8fd7_7dc18fe4","line":2378,"range":{"start_line":2378,"start_character":4,"end_line":2378,"end_character":6},"updated":"2018-04-26 12:42:21.000000000","message":"This","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"bb9babefd96996ae39d29330d5737d9c3929dcf9","unresolved":false,"context_lines":[{"line_number":2375,"context_line":"    host for the event. This is a hashed value so will not actually look like"},{"line_number":2376,"context_line":"    a hostname, and is hashed with data from the project_id, so the same"},{"line_number":2377,"context_line":"    physical host as seen by two different project_ids, will be different."},{"line_number":2378,"context_line":"    It is useful when within the same project you need to determine if two"},{"line_number":2379,"context_line":"    events occurred on the same or different physical hosts."},{"line_number":2380,"context_line":"  in: body"},{"line_number":2381,"context_line":"  required: true"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"9f6a8fd7_e00bb828","line":2378,"range":{"start_line":2378,"start_character":4,"end_line":2378,"end_character":6},"in_reply_to":"9f6a8fd7_7dc18fe4","updated":"2018-04-26 13:34:35.000000000","message":"Done","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"}],"nova/api/openstack/api_version_request.py":[{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"f05a08c15644ae4f14814ef9e848a3442a2c965d","unresolved":false,"context_lines":[{"line_number":143,"context_line":"             API. And the os-migrations API now returns both the id and the"},{"line_number":144,"context_line":"             uuid in response."},{"line_number":145,"context_line":"    * 2.60 - Add support for attaching a single volume to multiple instances."},{"line_number":146,"context_line":"    * 2.61 - Add host/hostId to show instance action event API."},{"line_number":147,"context_line":"\"\"\""},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"# The minimum and maximum versions of the API supported"}],"source_content_type":"text/x-python","patch_set":4,"id":"bf659307_5e543a21","line":146,"range":{"start_line":146,"start_character":17,"end_line":146,"end_character":28},"updated":"2018-03-29 06:25:47.000000000","message":"maybe should remove \"/\"","commit_id":"7e6bd1d9577cea54cb392070ec03b8bc79a3f25d"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"6fe56866abf019b132a515a4aebfc2f68570084a","unresolved":false,"context_lines":[{"line_number":143,"context_line":"             API. And the os-migrations API now returns both the id and the"},{"line_number":144,"context_line":"             uuid in response."},{"line_number":145,"context_line":"    * 2.60 - Add support for attaching a single volume to multiple instances."},{"line_number":146,"context_line":"    * 2.61 - Add host/hostId to show instance action event API."},{"line_number":147,"context_line":"\"\"\""},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"# The minimum and maximum versions of the API supported"}],"source_content_type":"text/x-python","patch_set":4,"id":"bf659307_607b717a","line":146,"range":{"start_line":146,"start_character":17,"end_line":146,"end_character":28},"in_reply_to":"bf659307_5e543a21","updated":"2018-03-31 07:27:10.000000000","message":"Done","commit_id":"7e6bd1d9577cea54cb392070ec03b8bc79a3f25d"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"60bc2dbad3ed8503840b658d819ec66b3839edf4","unresolved":false,"context_lines":[{"line_number":143,"context_line":"             API. And the os-migrations API now returns both the id and the"},{"line_number":144,"context_line":"             uuid in response."},{"line_number":145,"context_line":"    * 2.60 - Add support for attaching a single volume to multiple instances."},{"line_number":146,"context_line":"    * 2.61 - Add ``host`` and ``hostId`` to show instance action event API."},{"line_number":147,"context_line":"\"\"\""},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"# The minimum and maximum versions of the API supported"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf659307_446996f6","line":146,"range":{"start_line":146,"start_character":12,"end_line":146,"end_character":75},"updated":"2018-04-02 08:36:37.000000000","message":"how about: Add ``host`` and ``hostId`` to instance action detail API responses","commit_id":"ffb07ad1195ec02bad17442035e5a2a351af0e71"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"a974c3c433df07b016ef682d63918051574c53e4","unresolved":false,"context_lines":[{"line_number":143,"context_line":"             API. And the os-migrations API now returns both the id and the"},{"line_number":144,"context_line":"             uuid in response."},{"line_number":145,"context_line":"    * 2.60 - Add support for attaching a single volume to multiple instances."},{"line_number":146,"context_line":"    * 2.61 - Add ``host`` and ``hostId`` to show instance action event API."},{"line_number":147,"context_line":"\"\"\""},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"# The minimum and maximum versions of the API supported"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf659307_f652ce12","line":146,"range":{"start_line":146,"start_character":12,"end_line":146,"end_character":75},"in_reply_to":"bf659307_446996f6","updated":"2018-04-03 03:53:15.000000000","message":"Done","commit_id":"ffb07ad1195ec02bad17442035e5a2a351af0e71"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"3e982af9c74e3b50d39fe1b6dec50715c5dfc7c3","unresolved":false,"context_lines":[{"line_number":143,"context_line":"             API. And the os-migrations API now returns both the id and the"},{"line_number":144,"context_line":"             uuid in response."},{"line_number":145,"context_line":"    * 2.60 - Add support for attaching a single volume to multiple instances."},{"line_number":146,"context_line":"    * 2.61 - Add ``host`` and ``hostId`` to instance action detail API"},{"line_number":147,"context_line":"             responses."},{"line_number":148,"context_line":"\"\"\""},{"line_number":149,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"bf659307_e1d9d582","line":146,"range":{"start_line":146,"start_character":17,"end_line":146,"end_character":40},"updated":"2018-04-13 00:34:46.000000000","message":"``host`` and ``hostId`` fields","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"9304d9b57eba9b58bcd945111e8d6b015dfbe00d","unresolved":false,"context_lines":[{"line_number":143,"context_line":"             API. And the os-migrations API now returns both the id and the"},{"line_number":144,"context_line":"             uuid in response."},{"line_number":145,"context_line":"    * 2.60 - Add support for attaching a single volume to multiple instances."},{"line_number":146,"context_line":"    * 2.61 - Add ``host`` and ``hostId`` to instance action detail API"},{"line_number":147,"context_line":"             responses."},{"line_number":148,"context_line":"\"\"\""},{"line_number":149,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"bf659307_2bfb0347","line":146,"range":{"start_line":146,"start_character":17,"end_line":146,"end_character":40},"in_reply_to":"bf659307_e1d9d582","updated":"2018-04-13 11:41:10.000000000","message":"Done","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"3e982af9c74e3b50d39fe1b6dec50715c5dfc7c3","unresolved":false,"context_lines":[{"line_number":153,"context_line":"# Note(cyeoh): This only applies for the v2.1 API once microversions"},{"line_number":154,"context_line":"# support is fully merged. It does not affect the V2 API."},{"line_number":155,"context_line":"_MIN_API_VERSION \u003d \"2.1\""},{"line_number":156,"context_line":"_MAX_API_VERSION \u003d \"2.61\""},{"line_number":157,"context_line":"DEFAULT_API_VERSION \u003d _MIN_API_VERSION"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"# Almost all proxy APIs which are related to network, images and baremetal"}],"source_content_type":"text/x-python","patch_set":7,"id":"bf659307_4eb8f0c6","line":156,"range":{"start_line":156,"start_character":19,"end_line":156,"end_character":25},"updated":"2018-04-13 00:34:46.000000000","message":"you might need to update this as other microversion patch (one of them is yours) can be merged before this but let\u0027s see which one goes first.","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"3c258a1addee5e0447b973c76f100bf2931a7644","unresolved":false,"context_lines":[{"line_number":153,"context_line":"# Note(cyeoh): This only applies for the v2.1 API once microversions"},{"line_number":154,"context_line":"# support is fully merged. It does not affect the V2 API."},{"line_number":155,"context_line":"_MIN_API_VERSION \u003d \"2.1\""},{"line_number":156,"context_line":"_MAX_API_VERSION \u003d \"2.61\""},{"line_number":157,"context_line":"DEFAULT_API_VERSION \u003d _MIN_API_VERSION"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"# Almost all proxy APIs which are related to network, images and baremetal"}],"source_content_type":"text/x-python","patch_set":7,"id":"9f6a8fd7_c298d86b","line":156,"range":{"start_line":156,"start_character":19,"end_line":156,"end_character":25},"in_reply_to":"9f6a8fd7_66c80955","updated":"2018-04-17 03:13:58.000000000","message":"LOL, :D","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"989950eb912603e5898249864138050082f85b91","unresolved":false,"context_lines":[{"line_number":153,"context_line":"# Note(cyeoh): This only applies for the v2.1 API once microversions"},{"line_number":154,"context_line":"# support is fully merged. It does not affect the V2 API."},{"line_number":155,"context_line":"_MIN_API_VERSION \u003d \"2.1\""},{"line_number":156,"context_line":"_MAX_API_VERSION \u003d \"2.61\""},{"line_number":157,"context_line":"DEFAULT_API_VERSION \u003d _MIN_API_VERSION"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"# Almost all proxy APIs which are related to network, images and baremetal"}],"source_content_type":"text/x-python","patch_set":7,"id":"9f6a8fd7_66c80955","line":156,"range":{"start_line":156,"start_character":19,"end_line":156,"end_character":25},"in_reply_to":"bf659307_4bf6775f","updated":"2018-04-16 18:42:29.000000000","message":"\u003e Yes, : ), API merge road is tooooo long.\n\nDon\u0027t forget your Huawei training: the long road to customer satisfaction is paved with many trials of endurance.","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"9304d9b57eba9b58bcd945111e8d6b015dfbe00d","unresolved":false,"context_lines":[{"line_number":153,"context_line":"# Note(cyeoh): This only applies for the v2.1 API once microversions"},{"line_number":154,"context_line":"# support is fully merged. It does not affect the V2 API."},{"line_number":155,"context_line":"_MIN_API_VERSION \u003d \"2.1\""},{"line_number":156,"context_line":"_MAX_API_VERSION \u003d \"2.61\""},{"line_number":157,"context_line":"DEFAULT_API_VERSION \u003d _MIN_API_VERSION"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"# Almost all proxy APIs which are related to network, images and baremetal"}],"source_content_type":"text/x-python","patch_set":7,"id":"bf659307_4bf6775f","line":156,"range":{"start_line":156,"start_character":19,"end_line":156,"end_character":25},"in_reply_to":"bf659307_4eb8f0c6","updated":"2018-04-13 11:41:10.000000000","message":"Yes, : ), API merge road is tooooo long.","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"}],"nova/api/openstack/compute/instance_actions.py":[{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"f05a08c15644ae4f14814ef9e848a3442a2c965d","unresolved":false,"context_lines":[{"line_number":61,"context_line":"            if key \u003d\u003d \u0027traceback\u0027 and not show_traceback:"},{"line_number":62,"context_line":"                continue"},{"line_number":63,"context_line":"            event[key] \u003d event_raw.get(key)"},{"line_number":64,"context_line":"        # By default, non-admins are not allowed to see host."},{"line_number":65,"context_line":"        if show_host:"},{"line_number":66,"context_line":"            event[\u0027host\u0027] \u003d event_raw.get(\u0027host\u0027)"},{"line_number":67,"context_line":"        if show_hostid:"},{"line_number":68,"context_line":"            event[\u0027hostId\u0027] \u003d utils.generate_hostid(event_raw.get(\u0027host\u0027),"},{"line_number":69,"context_line":"                                                    project_id)"},{"line_number":70,"context_line":"        return event"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    @wsgi.Controller.api_version(\"2.1\", \"2.20\")"}],"source_content_type":"text/x-python","patch_set":4,"id":"bf659307_7914b844","line":69,"range":{"start_line":64,"start_character":0,"end_line":69,"end_character":63},"updated":"2018-03-29 06:25:47.000000000","message":"put these in the above loop to improve performance a little?(avoid useless loop for these keys)","commit_id":"7e6bd1d9577cea54cb392070ec03b8bc79a3f25d"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"3b0816f5266256965eaedfcec2ac37e76e10d88b","unresolved":false,"context_lines":[{"line_number":61,"context_line":"            if key \u003d\u003d \u0027traceback\u0027 and not show_traceback:"},{"line_number":62,"context_line":"                continue"},{"line_number":63,"context_line":"            event[key] \u003d event_raw.get(key)"},{"line_number":64,"context_line":"        # By default, non-admins are not allowed to see host."},{"line_number":65,"context_line":"        if show_host:"},{"line_number":66,"context_line":"            event[\u0027host\u0027] \u003d event_raw.get(\u0027host\u0027)"},{"line_number":67,"context_line":"        if show_hostid:"},{"line_number":68,"context_line":"            event[\u0027hostId\u0027] \u003d utils.generate_hostid(event_raw.get(\u0027host\u0027),"},{"line_number":69,"context_line":"                                                    project_id)"},{"line_number":70,"context_line":"        return event"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    @wsgi.Controller.api_version(\"2.1\", \"2.20\")"}],"source_content_type":"text/x-python","patch_set":4,"id":"bf659307_99f8ac7b","line":69,"range":{"start_line":64,"start_character":0,"end_line":69,"end_character":63},"in_reply_to":"bf659307_7914b844","updated":"2018-03-29 06:52:37.000000000","message":"Sorry, I mis-read the above loop","commit_id":"7e6bd1d9577cea54cb392070ec03b8bc79a3f25d"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"d8c5d36047ed6a22751fa7bc56e4a57667b33763","unresolved":false,"context_lines":[{"line_number":151,"context_line":"            # For all microversions, the user can see all event details"},{"line_number":152,"context_line":"            # including the traceback."},{"line_number":153,"context_line":"            show_events \u003d show_traceback \u003d True"},{"line_number":154,"context_line":"            if api_version_request.is_supported(req, \u00272.61\u0027):"},{"line_number":155,"context_line":"                show_host \u003d True"},{"line_number":156,"context_line":"        elif api_version_request.is_supported(req, \u00272.51\u0027):"},{"line_number":157,"context_line":"            # The user is not able to see all event details, but they can at"},{"line_number":158,"context_line":"            # least see the non-traceback event details."}],"source_content_type":"text/x-python","patch_set":6,"id":"bf659307_5f714a43","line":155,"range":{"start_line":154,"start_character":12,"end_line":155,"end_character":32},"updated":"2018-04-03 09:42:27.000000000","message":"It is redundant. It could be:\n\n    show_host \u003d api_version_request.is_supported(req, \u00272.61\u0027)\n\ne.g.\nhttps://github.com/openstack/nova/blob/98b505dd112b835bbb0fd59d962e913814a6f517/nova/api/openstack/compute/flavor_manage.py#L95-L96","commit_id":"ee51845ffcf194a088c899f744461ac41422627a"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"baba623a5847190cca301b1f39b228277d4226a3","unresolved":false,"context_lines":[{"line_number":151,"context_line":"            # For all microversions, the user can see all event details"},{"line_number":152,"context_line":"            # including the traceback."},{"line_number":153,"context_line":"            show_events \u003d show_traceback \u003d True"},{"line_number":154,"context_line":"            if api_version_request.is_supported(req, \u00272.61\u0027):"},{"line_number":155,"context_line":"                show_host \u003d True"},{"line_number":156,"context_line":"        elif api_version_request.is_supported(req, \u00272.51\u0027):"},{"line_number":157,"context_line":"            # The user is not able to see all event details, but they can at"},{"line_number":158,"context_line":"            # least see the non-traceback event details."}],"source_content_type":"text/x-python","patch_set":6,"id":"bf659307_1a993578","line":155,"range":{"start_line":154,"start_character":12,"end_line":155,"end_character":32},"in_reply_to":"bf659307_5f714a43","updated":"2018-04-10 06:51:51.000000000","message":"Done","commit_id":"ee51845ffcf194a088c899f744461ac41422627a"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"d8c5d36047ed6a22751fa7bc56e4a57667b33763","unresolved":false,"context_lines":[{"line_number":153,"context_line":"            show_events \u003d show_traceback \u003d True"},{"line_number":154,"context_line":"            if api_version_request.is_supported(req, \u00272.61\u0027):"},{"line_number":155,"context_line":"                show_host \u003d True"},{"line_number":156,"context_line":"        elif api_version_request.is_supported(req, \u00272.51\u0027):"},{"line_number":157,"context_line":"            # The user is not able to see all event details, but they can at"},{"line_number":158,"context_line":"            # least see the non-traceback event details."},{"line_number":159,"context_line":"            show_events \u003d True"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"        # An obfuscated hashed host id are returned since microversion 2.61"},{"line_number":162,"context_line":"        # for all users."}],"source_content_type":"text/x-python","patch_set":6,"id":"bf659307_7fa52ea1","line":159,"range":{"start_line":156,"start_character":7,"end_line":159,"end_character":30},"updated":"2018-04-03 09:42:27.000000000","message":"ditto","commit_id":"ee51845ffcf194a088c899f744461ac41422627a"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"baba623a5847190cca301b1f39b228277d4226a3","unresolved":false,"context_lines":[{"line_number":153,"context_line":"            show_events \u003d show_traceback \u003d True"},{"line_number":154,"context_line":"            if api_version_request.is_supported(req, \u00272.61\u0027):"},{"line_number":155,"context_line":"                show_host \u003d True"},{"line_number":156,"context_line":"        elif api_version_request.is_supported(req, \u00272.51\u0027):"},{"line_number":157,"context_line":"            # The user is not able to see all event details, but they can at"},{"line_number":158,"context_line":"            # least see the non-traceback event details."},{"line_number":159,"context_line":"            show_events \u003d True"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"        # An obfuscated hashed host id are returned since microversion 2.61"},{"line_number":162,"context_line":"        # for all users."}],"source_content_type":"text/x-python","patch_set":6,"id":"bf659307_ba8e0925","line":159,"range":{"start_line":156,"start_character":7,"end_line":159,"end_character":30},"in_reply_to":"bf659307_7fa52ea1","updated":"2018-04-10 06:51:51.000000000","message":"This is original code and in the elif branch, so, I prefer to keep this.","commit_id":"ee51845ffcf194a088c899f744461ac41422627a"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"d8c5d36047ed6a22751fa7bc56e4a57667b33763","unresolved":false,"context_lines":[{"line_number":160,"context_line":""},{"line_number":161,"context_line":"        # An obfuscated hashed host id are returned since microversion 2.61"},{"line_number":162,"context_line":"        # for all users."},{"line_number":163,"context_line":"        if api_version_request.is_supported(req, \u00272.61\u0027):"},{"line_number":164,"context_line":"            show_hostid \u003d True"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"        if show_events:"},{"line_number":167,"context_line":"            events_raw \u003d self.action_api.action_events_get(context, instance,"}],"source_content_type":"text/x-python","patch_set":6,"id":"bf659307_3fab3675","line":164,"range":{"start_line":163,"start_character":8,"end_line":164,"end_character":30},"updated":"2018-04-03 09:42:27.000000000","message":"ditto","commit_id":"ee51845ffcf194a088c899f744461ac41422627a"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"baba623a5847190cca301b1f39b228277d4226a3","unresolved":false,"context_lines":[{"line_number":160,"context_line":""},{"line_number":161,"context_line":"        # An obfuscated hashed host id are returned since microversion 2.61"},{"line_number":162,"context_line":"        # for all users."},{"line_number":163,"context_line":"        if api_version_request.is_supported(req, \u00272.61\u0027):"},{"line_number":164,"context_line":"            show_hostid \u003d True"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"        if show_events:"},{"line_number":167,"context_line":"            events_raw \u003d self.action_api.action_events_get(context, instance,"}],"source_content_type":"text/x-python","patch_set":6,"id":"bf659307_5a780d2a","line":164,"range":{"start_line":163,"start_character":8,"end_line":164,"end_character":30},"in_reply_to":"bf659307_3fab3675","updated":"2018-04-10 06:51:51.000000000","message":"Done","commit_id":"ee51845ffcf194a088c899f744461ac41422627a"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"3102fa9b0eb881dca1ea30c4b7d224fbaf7fe35a","unresolved":false,"context_lines":[{"line_number":156,"context_line":"            # least see the non-traceback event details."},{"line_number":157,"context_line":"            show_events \u003d True"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"        # An obfuscated hashed host id are returned since microversion 2.62"},{"line_number":160,"context_line":"        # for all users."},{"line_number":161,"context_line":"        show_hostid \u003d api_version_request.is_supported(req, \u00272.62\u0027)"},{"line_number":162,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"9f6a8fd7_f39a94c3","line":159,"range":{"start_line":159,"start_character":39,"end_line":159,"end_character":42},"updated":"2018-04-16 21:26:16.000000000","message":"is","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"3c258a1addee5e0447b973c76f100bf2931a7644","unresolved":false,"context_lines":[{"line_number":156,"context_line":"            # least see the non-traceback event details."},{"line_number":157,"context_line":"            show_events \u003d True"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"        # An obfuscated hashed host id are returned since microversion 2.62"},{"line_number":160,"context_line":"        # for all users."},{"line_number":161,"context_line":"        show_hostid \u003d api_version_request.is_supported(req, \u00272.62\u0027)"},{"line_number":162,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"9f6a8fd7_67047e18","line":159,"range":{"start_line":159,"start_character":39,"end_line":159,"end_character":42},"in_reply_to":"9f6a8fd7_f39a94c3","updated":"2018-04-17 03:13:58.000000000","message":"Done","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"3102fa9b0eb881dca1ea30c4b7d224fbaf7fe35a","unresolved":false,"context_lines":[{"line_number":163,"context_line":"        if show_events:"},{"line_number":164,"context_line":"            events_raw \u003d self.action_api.action_events_get(context, instance,"},{"line_number":165,"context_line":"                                                           action_id)"},{"line_number":166,"context_line":"            action[\u0027events\u0027] \u003d [self._format_event(evt, action[\u0027project_id\u0027],"},{"line_number":167,"context_line":"                                                   show_traceback, show_host,"},{"line_number":168,"context_line":"                                                   show_hostid)"},{"line_number":169,"context_line":"                                for evt in events_raw]"}],"source_content_type":"text/x-python","patch_set":9,"id":"9f6a8fd7_73976492","line":166,"range":{"start_line":166,"start_character":56,"end_line":166,"end_character":76},"updated":"2018-04-16 21:26:16.000000000","message":"Just to be clear, this might not be the same project_id as the instance.project_id in case an admin performed the action on the instance and the admin is in a different project. I think it\u0027s OK, just not something I thought about until now.","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"3205b8504e42a66d571c1eadf7dee025e706264b","unresolved":false,"context_lines":[{"line_number":146,"context_line":"        show_events \u003d False"},{"line_number":147,"context_line":"        show_traceback \u003d False"},{"line_number":148,"context_line":"        show_host \u003d False"},{"line_number":149,"context_line":"        if context.can(ia_policies.POLICY_ROOT % \u0027events\u0027, fatal\u003dFalse):"},{"line_number":150,"context_line":"            # For all microversions, the user can see all event details"},{"line_number":151,"context_line":"            # including the traceback."},{"line_number":152,"context_line":"            show_events \u003d show_traceback \u003d True"}],"source_content_type":"text/x-python","patch_set":13,"id":"9f6a8fd7_326626c3","line":149,"updated":"2018-04-24 00:05:58.000000000","message":"Note to self: context.can(POLICY_ROOT % \u0027events\u0027) implies the admin api by default (see nova/policies/instance_actions.py).","commit_id":"1ce7d07fe0527e0dd41eb78264a37acb3f5c6623"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"86b7c5e16df0862dbd4445efd752d90cdd50d4a8","unresolved":false,"context_lines":[{"line_number":63,"context_line":"            event[key] \u003d event_raw.get(key)"},{"line_number":64,"context_line":"        # By default, non-admins are not allowed to see host."},{"line_number":65,"context_line":"        if show_host:"},{"line_number":66,"context_line":"            event[\u0027host\u0027] \u003d event_raw.get(\u0027host\u0027)"},{"line_number":67,"context_line":"        if show_hostid:"},{"line_number":68,"context_line":"            event[\u0027hostId\u0027] \u003d utils.generate_hostid(event_raw.get(\u0027host\u0027),"},{"line_number":69,"context_line":"                                                    project_id)"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f6a8fd7_a0194023","line":66,"range":{"start_line":66,"start_character":28,"end_line":66,"end_character":49},"updated":"2018-04-26 12:42:21.000000000","message":"Is it actually possible for the \u0027host\u0027 field to be absent?  If so, there should be tests to cover that.  If not... can we say event_raw[\u0027host\u0027] here?","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"bb9babefd96996ae39d29330d5737d9c3929dcf9","unresolved":false,"context_lines":[{"line_number":63,"context_line":"            event[key] \u003d event_raw.get(key)"},{"line_number":64,"context_line":"        # By default, non-admins are not allowed to see host."},{"line_number":65,"context_line":"        if show_host:"},{"line_number":66,"context_line":"            event[\u0027host\u0027] \u003d event_raw.get(\u0027host\u0027)"},{"line_number":67,"context_line":"        if show_hostid:"},{"line_number":68,"context_line":"            event[\u0027hostId\u0027] \u003d utils.generate_hostid(event_raw.get(\u0027host\u0027),"},{"line_number":69,"context_line":"                                                    project_id)"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f6a8fd7_6b60e936","line":66,"range":{"start_line":66,"start_character":28,"end_line":66,"end_character":49},"in_reply_to":"9f6a8fd7_a0194023","updated":"2018-04-26 13:34:35.000000000","message":"Done, I\u0027m okay with event_raw[\u0027host\u0027]","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"86b7c5e16df0862dbd4445efd752d90cdd50d4a8","unresolved":false,"context_lines":[{"line_number":164,"context_line":"            events_raw \u003d self.action_api.action_events_get(context, instance,"},{"line_number":165,"context_line":"                                                           action_id)"},{"line_number":166,"context_line":"            action[\u0027events\u0027] \u003d [self._format_event(evt, action[\u0027project_id\u0027],"},{"line_number":167,"context_line":"                                                   show_traceback, show_host,"},{"line_number":168,"context_line":"                                                   show_hostid)"},{"line_number":169,"context_line":"                                for evt in events_raw]"},{"line_number":170,"context_line":"        return {\u0027instanceAction\u0027: action}"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f6a8fd7_6099e8ce","line":168,"range":{"start_line":167,"start_character":51,"end_line":168,"end_character":62},"updated":"2018-04-26 12:42:21.000000000","message":"name kwargs","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"bb9babefd96996ae39d29330d5737d9c3929dcf9","unresolved":false,"context_lines":[{"line_number":164,"context_line":"            events_raw \u003d self.action_api.action_events_get(context, instance,"},{"line_number":165,"context_line":"                                                           action_id)"},{"line_number":166,"context_line":"            action[\u0027events\u0027] \u003d [self._format_event(evt, action[\u0027project_id\u0027],"},{"line_number":167,"context_line":"                                                   show_traceback, show_host,"},{"line_number":168,"context_line":"                                                   show_hostid)"},{"line_number":169,"context_line":"                                for evt in events_raw]"},{"line_number":170,"context_line":"        return {\u0027instanceAction\u0027: action}"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f6a8fd7_ab192123","line":168,"range":{"start_line":167,"start_character":51,"end_line":168,"end_character":62},"in_reply_to":"9f6a8fd7_6099e8ce","updated":"2018-04-26 13:34:35.000000000","message":"Done","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"6d2c82b897581ce7ec81bf0a023d4fcd550a57d0","unresolved":false,"context_lines":[{"line_number":164,"context_line":"            events_raw \u003d self.action_api.action_events_get(context, instance,"},{"line_number":165,"context_line":"                                                           action_id)"},{"line_number":166,"context_line":"            action[\u0027events\u0027] \u003d [self._format_event(evt, action[\u0027project_id\u0027],"},{"line_number":167,"context_line":"                                                   show_traceback, show_host,"},{"line_number":168,"context_line":"                                                   show_hostid)"},{"line_number":169,"context_line":"                                for evt in events_raw]"},{"line_number":170,"context_line":"        return {\u0027instanceAction\u0027: action}"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f6a8fd7_d1452445","line":168,"range":{"start_line":167,"start_character":51,"end_line":168,"end_character":62},"in_reply_to":"9f6a8fd7_ab192123","updated":"2018-04-26 14:28:10.000000000","message":"Ha, I think I called this one the flavor extra specs 2.61 review. :)","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"}],"nova/api/openstack/compute/rest_api_version_history.rst":[{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"60bc2dbad3ed8503840b658d819ec66b3839edf4","unresolved":false,"context_lines":[{"line_number":769,"context_line":"2.61"},{"line_number":770,"context_line":"------------------------"},{"line_number":771,"context_line":""},{"line_number":772,"context_line":"Adds ``host`` and ``hostId`` fields to the flavor"},{"line_number":773,"context_line":"``GET /servers/{server_id}/os\u003dinstance-actions/{req_id}`` API. The display of"},{"line_number":774,"context_line":"newly added ``host`` field will be controlled by the same policy of"},{"line_number":775,"context_line":"``event.traceback`` field, if the user is prevented by policy, only an"}],"source_content_type":"text/x-rst","patch_set":5,"id":"bf659307_44375600","line":772,"range":{"start_line":772,"start_character":43,"end_line":772,"end_character":49},"updated":"2018-04-02 08:36:37.000000000","message":"wrong copy?","commit_id":"ffb07ad1195ec02bad17442035e5a2a351af0e71"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"a974c3c433df07b016ef682d63918051574c53e4","unresolved":false,"context_lines":[{"line_number":769,"context_line":"2.61"},{"line_number":770,"context_line":"------------------------"},{"line_number":771,"context_line":""},{"line_number":772,"context_line":"Adds ``host`` and ``hostId`` fields to the flavor"},{"line_number":773,"context_line":"``GET /servers/{server_id}/os\u003dinstance-actions/{req_id}`` API. The display of"},{"line_number":774,"context_line":"newly added ``host`` field will be controlled by the same policy of"},{"line_number":775,"context_line":"``event.traceback`` field, if the user is prevented by policy, only an"}],"source_content_type":"text/x-rst","patch_set":5,"id":"bf659307_965592fc","line":772,"range":{"start_line":772,"start_character":43,"end_line":772,"end_character":49},"in_reply_to":"bf659307_44375600","updated":"2018-04-03 03:53:15.000000000","message":"Done","commit_id":"ffb07ad1195ec02bad17442035e5a2a351af0e71"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"3e982af9c74e3b50d39fe1b6dec50715c5dfc7c3","unresolved":false,"context_lines":[{"line_number":769,"context_line":"2.61"},{"line_number":770,"context_line":"----"},{"line_number":771,"context_line":""},{"line_number":772,"context_line":"Adds ``host`` and ``hostId`` fields to the instance action"},{"line_number":773,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display of"},{"line_number":774,"context_line":"newly added ``host`` field will be controlled by the same policy of"},{"line_number":775,"context_line":"``event.traceback`` field, if the user is prevented by policy, only an"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bf659307_c1c5b18f","line":772,"range":{"start_line":772,"start_character":5,"end_line":772,"end_character":28},"updated":"2018-04-13 00:34:46.000000000","message":"it is better to explain these little bit what are these fileds, like ``host`` (host_name) etc","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"9304d9b57eba9b58bcd945111e8d6b015dfbe00d","unresolved":false,"context_lines":[{"line_number":769,"context_line":"2.61"},{"line_number":770,"context_line":"----"},{"line_number":771,"context_line":""},{"line_number":772,"context_line":"Adds ``host`` and ``hostId`` fields to the instance action"},{"line_number":773,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display of"},{"line_number":774,"context_line":"newly added ``host`` field will be controlled by the same policy of"},{"line_number":775,"context_line":"``event.traceback`` field, if the user is prevented by policy, only an"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bf659307_8baecf2b","line":772,"range":{"start_line":772,"start_character":5,"end_line":772,"end_character":28},"in_reply_to":"bf659307_c1c5b18f","updated":"2018-04-13 11:41:10.000000000","message":"Done","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"3102fa9b0eb881dca1ea30c4b7d224fbaf7fe35a","unresolved":false,"context_lines":[{"line_number":788,"context_line":"fields to the instance action"},{"line_number":789,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display of"},{"line_number":790,"context_line":"newly added ``host`` field will be controlled by the same policy of"},{"line_number":791,"context_line":"``event.traceback`` field, if the user is prevented by policy, only an"},{"line_number":792,"context_line":"``hostId`` will be displayed."},{"line_number":793,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"9f6a8fd7_93d9d884","line":791,"range":{"start_line":791,"start_character":2,"end_line":791,"end_character":17},"updated":"2018-04-16 21:26:16.000000000","message":"events.traceback","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"3c258a1addee5e0447b973c76f100bf2931a7644","unresolved":false,"context_lines":[{"line_number":788,"context_line":"fields to the instance action"},{"line_number":789,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display of"},{"line_number":790,"context_line":"newly added ``host`` field will be controlled by the same policy of"},{"line_number":791,"context_line":"``event.traceback`` field, if the user is prevented by policy, only an"},{"line_number":792,"context_line":"``hostId`` will be displayed."},{"line_number":793,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"9f6a8fd7_872432c8","line":791,"range":{"start_line":791,"start_character":2,"end_line":791,"end_character":17},"in_reply_to":"9f6a8fd7_93d9d884","updated":"2018-04-17 03:13:58.000000000","message":"Done","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"3102fa9b0eb881dca1ea30c4b7d224fbaf7fe35a","unresolved":false,"context_lines":[{"line_number":789,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display of"},{"line_number":790,"context_line":"newly added ``host`` field will be controlled by the same policy of"},{"line_number":791,"context_line":"``event.traceback`` field, if the user is prevented by policy, only an"},{"line_number":792,"context_line":"``hostId`` will be displayed."},{"line_number":793,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"9f6a8fd7_d3d0b053","line":792,"updated":"2018-04-16 21:26:16.000000000","message":"It\u0027s probably worth mentioning that viewing ``host`` is controlled via policy rule ``os_compute_api:os-instance-actions:events`` specifically.","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"3c258a1addee5e0447b973c76f100bf2931a7644","unresolved":false,"context_lines":[{"line_number":789,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display of"},{"line_number":790,"context_line":"newly added ``host`` field will be controlled by the same policy of"},{"line_number":791,"context_line":"``event.traceback`` field, if the user is prevented by policy, only an"},{"line_number":792,"context_line":"``hostId`` will be displayed."},{"line_number":793,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"9f6a8fd7_a72136b7","line":792,"in_reply_to":"9f6a8fd7_d3d0b053","updated":"2018-04-17 03:13:58.000000000","message":"Done","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"eb3c01d56fc006ba312c3305e33a1fe1e737f047","unresolved":false,"context_lines":[{"line_number":789,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display of"},{"line_number":790,"context_line":"newly added ``host`` field will be controlled via policy rule"},{"line_number":791,"context_line":"``os_compute_api:os-instance-actions:events``, which is the same policy of"},{"line_number":792,"context_line":"``events.traceback`` field, if the user is prevented by policy, only an"},{"line_number":793,"context_line":"``hostId`` will be displayed."}],"source_content_type":"text/x-rst","patch_set":12,"id":"9f6a8fd7_10cca368","line":792,"range":{"start_line":792,"start_character":26,"end_line":792,"end_character":30},"updated":"2018-04-18 19:10:58.000000000","message":"nit: s/, if/. If/","commit_id":"3b59df23f859e03a8eb002bb6651e7626e8a26d7"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"eb3c01d56fc006ba312c3305e33a1fe1e737f047","unresolved":false,"context_lines":[{"line_number":789,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display of"},{"line_number":790,"context_line":"newly added ``host`` field will be controlled via policy rule"},{"line_number":791,"context_line":"``os_compute_api:os-instance-actions:events``, which is the same policy of"},{"line_number":792,"context_line":"``events.traceback`` field, if the user is prevented by policy, only an"},{"line_number":793,"context_line":"``hostId`` will be displayed."}],"source_content_type":"text/x-rst","patch_set":12,"id":"9f6a8fd7_10fa6374","line":792,"range":{"start_line":792,"start_character":69,"end_line":792,"end_character":71},"updated":"2018-04-18 19:10:58.000000000","message":"s/an//","commit_id":"3b59df23f859e03a8eb002bb6651e7626e8a26d7"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"7beb6561420e8fb3b10678f93cc88fec681d6585","unresolved":false,"context_lines":[{"line_number":789,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display of"},{"line_number":790,"context_line":"newly added ``host`` field will be controlled via policy rule"},{"line_number":791,"context_line":"``os_compute_api:os-instance-actions:events``, which is the same policy of"},{"line_number":792,"context_line":"``events.traceback`` field, if the user is prevented by policy, only an"},{"line_number":793,"context_line":"``hostId`` will be displayed."}],"source_content_type":"text/x-rst","patch_set":12,"id":"9f6a8fd7_ead6d3c3","line":792,"range":{"start_line":792,"start_character":26,"end_line":792,"end_character":30},"in_reply_to":"9f6a8fd7_10cca368","updated":"2018-04-19 07:17:57.000000000","message":"Done","commit_id":"3b59df23f859e03a8eb002bb6651e7626e8a26d7"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"7beb6561420e8fb3b10678f93cc88fec681d6585","unresolved":false,"context_lines":[{"line_number":789,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display of"},{"line_number":790,"context_line":"newly added ``host`` field will be controlled via policy rule"},{"line_number":791,"context_line":"``os_compute_api:os-instance-actions:events``, which is the same policy of"},{"line_number":792,"context_line":"``events.traceback`` field, if the user is prevented by policy, only an"},{"line_number":793,"context_line":"``hostId`` will be displayed."}],"source_content_type":"text/x-rst","patch_set":12,"id":"9f6a8fd7_cadbcfea","line":792,"range":{"start_line":792,"start_character":69,"end_line":792,"end_character":71},"in_reply_to":"9f6a8fd7_10fa6374","updated":"2018-04-19 07:17:57.000000000","message":"Done","commit_id":"3b59df23f859e03a8eb002bb6651e7626e8a26d7"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"86b7c5e16df0862dbd4445efd752d90cdd50d4a8","unresolved":false,"context_lines":[{"line_number":786,"context_line":""},{"line_number":787,"context_line":"Adds ``host`` (hostname) and ``hostId`` (an obfuscated hashed host id string)"},{"line_number":788,"context_line":"fields to the instance action"},{"line_number":789,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display of"},{"line_number":790,"context_line":"newly added ``host`` field will be controlled via policy rule"},{"line_number":791,"context_line":"``os_compute_api:os-instance-actions:events``, which is the same policy of"},{"line_number":792,"context_line":"``events.traceback`` field. If the user is prevented by policy, only"}],"source_content_type":"text/x-rst","patch_set":14,"id":"9f6a8fd7_c0b3144d","line":789,"range":{"start_line":789,"start_character":75,"end_line":789,"end_character":77},"updated":"2018-04-26 12:42:21.000000000","message":"of the","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"bb9babefd96996ae39d29330d5737d9c3929dcf9","unresolved":false,"context_lines":[{"line_number":786,"context_line":""},{"line_number":787,"context_line":"Adds ``host`` (hostname) and ``hostId`` (an obfuscated hashed host id string)"},{"line_number":788,"context_line":"fields to the instance action"},{"line_number":789,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display of"},{"line_number":790,"context_line":"newly added ``host`` field will be controlled via policy rule"},{"line_number":791,"context_line":"``os_compute_api:os-instance-actions:events``, which is the same policy of"},{"line_number":792,"context_line":"``events.traceback`` field. If the user is prevented by policy, only"}],"source_content_type":"text/x-rst","patch_set":14,"id":"9f6a8fd7_cb5ed511","line":789,"range":{"start_line":789,"start_character":75,"end_line":789,"end_character":77},"in_reply_to":"9f6a8fd7_c0b3144d","updated":"2018-04-26 13:34:35.000000000","message":"Done","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"86b7c5e16df0862dbd4445efd752d90cdd50d4a8","unresolved":false,"context_lines":[{"line_number":788,"context_line":"fields to the instance action"},{"line_number":789,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display of"},{"line_number":790,"context_line":"newly added ``host`` field will be controlled via policy rule"},{"line_number":791,"context_line":"``os_compute_api:os-instance-actions:events``, which is the same policy of"},{"line_number":792,"context_line":"``events.traceback`` field. If the user is prevented by policy, only"},{"line_number":793,"context_line":"``hostId`` will be displayed."}],"source_content_type":"text/x-rst","patch_set":14,"id":"9f6a8fd7_207c5071","line":791,"range":{"start_line":791,"start_character":72,"end_line":791,"end_character":74},"updated":"2018-04-26 12:42:21.000000000","message":"used for the","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"bb9babefd96996ae39d29330d5737d9c3929dcf9","unresolved":false,"context_lines":[{"line_number":788,"context_line":"fields to the instance action"},{"line_number":789,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display of"},{"line_number":790,"context_line":"newly added ``host`` field will be controlled via policy rule"},{"line_number":791,"context_line":"``os_compute_api:os-instance-actions:events``, which is the same policy of"},{"line_number":792,"context_line":"``events.traceback`` field. If the user is prevented by policy, only"},{"line_number":793,"context_line":"``hostId`` will be displayed."}],"source_content_type":"text/x-rst","patch_set":14,"id":"9f6a8fd7_0baa8dd1","line":791,"range":{"start_line":791,"start_character":72,"end_line":791,"end_character":74},"in_reply_to":"9f6a8fd7_207c5071","updated":"2018-04-26 13:34:35.000000000","message":"Done","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"3490e9381f28518ae47add5a7a0f5f4217798490","unresolved":false,"context_lines":[{"line_number":788,"context_line":"fields to the instance action"},{"line_number":789,"context_line":"``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display of"},{"line_number":790,"context_line":"the newly added ``host`` field will be controlled via policy rule"},{"line_number":791,"context_line":"``os_compute_api:os-instance-actions:events``, which is the same policy uesed"},{"line_number":792,"context_line":"for the ``events.traceback`` field. If the user is prevented by policy, only"},{"line_number":793,"context_line":"``hostId`` will be displayed."}],"source_content_type":"text/x-rst","patch_set":15,"id":"9f6a8fd7_46bb9c71","line":791,"range":{"start_line":791,"start_character":72,"end_line":791,"end_character":77},"updated":"2018-04-26 14:15:20.000000000","message":"used","commit_id":"a833b7bb0542a360f49971f940ee2e04459c2f42"}],"nova/policies/instance_actions.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"86b7c5e16df0862dbd4445efd752d90cdd50d4a8","unresolved":false,"context_lines":[{"line_number":32,"context_line":"os_compute_api:os-instance-actions passes. Beginning with"},{"line_number":33,"context_line":"Microversion 2.51, events details are always included; traceback"},{"line_number":34,"context_line":"information is provided per event if policy enforcement passes."},{"line_number":35,"context_line":"Beginning with Microversion 2.62, events host information is provided"},{"line_number":36,"context_line":"per event if policy enforcement passes.\"\"\","},{"line_number":37,"context_line":"        ["},{"line_number":38,"context_line":"            {"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f6a8fd7_00d82c7d","line":35,"range":{"start_line":35,"start_character":34,"end_line":35,"end_character":40},"updated":"2018-04-26 12:42:21.000000000","message":"event","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"bb9babefd96996ae39d29330d5737d9c3929dcf9","unresolved":false,"context_lines":[{"line_number":32,"context_line":"os_compute_api:os-instance-actions passes. Beginning with"},{"line_number":33,"context_line":"Microversion 2.51, events details are always included; traceback"},{"line_number":34,"context_line":"information is provided per event if policy enforcement passes."},{"line_number":35,"context_line":"Beginning with Microversion 2.62, events host information is provided"},{"line_number":36,"context_line":"per event if policy enforcement passes.\"\"\","},{"line_number":37,"context_line":"        ["},{"line_number":38,"context_line":"            {"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f6a8fd7_cbb3354d","line":35,"range":{"start_line":35,"start_character":34,"end_line":35,"end_character":40},"in_reply_to":"9f6a8fd7_00d82c7d","updated":"2018-04-26 13:34:35.000000000","message":"Done","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"86b7c5e16df0862dbd4445efd752d90cdd50d4a8","unresolved":false,"context_lines":[{"line_number":33,"context_line":"Microversion 2.51, events details are always included; traceback"},{"line_number":34,"context_line":"information is provided per event if policy enforcement passes."},{"line_number":35,"context_line":"Beginning with Microversion 2.62, events host information is provided"},{"line_number":36,"context_line":"per event if policy enforcement passes.\"\"\","},{"line_number":37,"context_line":"        ["},{"line_number":38,"context_line":"            {"},{"line_number":39,"context_line":"                \u0027method\u0027: \u0027GET\u0027,"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f6a8fd7_00c10c81","line":36,"range":{"start_line":36,"start_character":10,"end_line":36,"end_character":38},"updated":"2018-04-26 12:42:21.000000000","message":"Except that hostId is always shown.  Perhaps:\n\nBeginning with Microversion 2.62, each event includes a hashed host identifier and, if policy enforcement passes, the name of the host.","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"bb9babefd96996ae39d29330d5737d9c3929dcf9","unresolved":false,"context_lines":[{"line_number":33,"context_line":"Microversion 2.51, events details are always included; traceback"},{"line_number":34,"context_line":"information is provided per event if policy enforcement passes."},{"line_number":35,"context_line":"Beginning with Microversion 2.62, events host information is provided"},{"line_number":36,"context_line":"per event if policy enforcement passes.\"\"\","},{"line_number":37,"context_line":"        ["},{"line_number":38,"context_line":"            {"},{"line_number":39,"context_line":"                \u0027method\u0027: \u0027GET\u0027,"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f6a8fd7_cb8c9581","line":36,"range":{"start_line":36,"start_character":10,"end_line":36,"end_character":38},"in_reply_to":"9f6a8fd7_00c10c81","updated":"2018-04-26 13:34:35.000000000","message":"Done","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"}],"nova/tests/functional/api_sample_tests/api_samples/os-instance-actions/v2.61/instance-action-get-resp.json.tpl":[{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"6fe56866abf019b132a515a4aebfc2f68570084a","unresolved":false,"context_lines":[{"line_number":16,"context_line":"                \"result\": \"Success\","},{"line_number":17,"context_line":"                \"traceback\": \"\","},{"line_number":18,"context_line":"                \"host\": \"%(host)s\","},{"line_number":19,"context_line":"                \"hostId\": \"%(hostId)s\","},{"line_number":20,"context_line":"            }"},{"line_number":21,"context_line":"        ]"},{"line_number":22,"context_line":"    }"}],"source_content_type":"text/x-smarty","patch_set":2,"id":"bf659307_2ebcd5b9","line":19,"range":{"start_line":19,"start_character":38,"end_line":19,"end_character":39},"updated":"2018-03-31 07:27:10.000000000","message":"oops","commit_id":"e9c97d8194b21777ebbc13f5cc89a6eccefe88c8"}],"nova/tests/functional/api_sample_tests/test_instance_actions.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"3e982af9c74e3b50d39fe1b6dec50715c5dfc7c3","unresolved":false,"context_lines":[{"line_number":202,"context_line":"    ADMIN_API \u003d False"},{"line_number":203,"context_line":""},{"line_number":204,"context_line":""},{"line_number":205,"context_line":"class ServerActionsV261SampleJsonTest(ServerActionsV258SampleJsonTest):"},{"line_number":206,"context_line":"    microversion \u003d \u00272.61\u0027"},{"line_number":207,"context_line":"    scenarios \u003d [(\u0027v2_61\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"},{"line_number":208,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"bf659307_ee8544ae","line":205,"range":{"start_line":205,"start_character":38,"end_line":205,"end_character":69},"updated":"2018-04-13 00:34:46.000000000","message":"you should drive this from ServerActionsV251NonAdminSampleJsonTest to avoid having the 2.58 tests sample files in this microversion which are not needed actually.","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"59cd0288efd62de9792656e01cd24e0096947c5b","unresolved":false,"context_lines":[{"line_number":202,"context_line":"    ADMIN_API \u003d False"},{"line_number":203,"context_line":""},{"line_number":204,"context_line":""},{"line_number":205,"context_line":"class ServerActionsV261SampleJsonTest(ServerActionsV258SampleJsonTest):"},{"line_number":206,"context_line":"    microversion \u003d \u00272.61\u0027"},{"line_number":207,"context_line":"    scenarios \u003d [(\u0027v2_61\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"},{"line_number":208,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"9f6a8fd7_df050a7c","line":205,"range":{"start_line":205,"start_character":38,"end_line":205,"end_character":69},"in_reply_to":"9f6a8fd7_a847c31d","updated":"2018-04-17 07:50:35.000000000","message":"OK, make sense : ) And I am trying to do some refactor on above case in a separate patch, and then we can drive this from the new 251.","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"571c115523f25d37f21b76104e12b4fdffff0799","unresolved":false,"context_lines":[{"line_number":202,"context_line":"    ADMIN_API \u003d False"},{"line_number":203,"context_line":""},{"line_number":204,"context_line":""},{"line_number":205,"context_line":"class ServerActionsV261SampleJsonTest(ServerActionsV258SampleJsonTest):"},{"line_number":206,"context_line":"    microversion \u003d \u00272.61\u0027"},{"line_number":207,"context_line":"    scenarios \u003d [(\u0027v2_61\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"},{"line_number":208,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"9f6a8fd7_a847c31d","line":205,"range":{"start_line":205,"start_character":38,"end_line":205,"end_character":69},"in_reply_to":"bf659307_76c8fe53","updated":"2018-04-17 05:45:52.000000000","message":"refactoring is good there but if you are taking ServerActionsV258SampleJsonTest as base you need to add below sample files unnecessary \n\n- doc/api_samples/os-instance-actions/v2.61/instance-actions-list-with-limit-resp.json\t\t\t\t\n- doc/api_samples/os-instance-actions/v2.61/instance-actions-list-with-marker-resp.json\t\\\n- doc/api_samples/os-instance-actions/v2.61/instance-actions-list-with-timestamp-filter.json\n\nwe should avoid to add duplicate sample files in each microversion and keep it as required only. We have done such cleanup during newton or ocata i think.","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"9304d9b57eba9b58bcd945111e8d6b015dfbe00d","unresolved":false,"context_lines":[{"line_number":202,"context_line":"    ADMIN_API \u003d False"},{"line_number":203,"context_line":""},{"line_number":204,"context_line":""},{"line_number":205,"context_line":"class ServerActionsV261SampleJsonTest(ServerActionsV258SampleJsonTest):"},{"line_number":206,"context_line":"    microversion \u003d \u00272.61\u0027"},{"line_number":207,"context_line":"    scenarios \u003d [(\u0027v2_61\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"},{"line_number":208,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"bf659307_76c8fe53","line":205,"range":{"start_line":205,"start_character":38,"end_line":205,"end_character":69},"in_reply_to":"bf659307_ee8544ae","updated":"2018-04-13 11:41:10.000000000","message":"I think you mean ServerActionsV251AdminSampleJsonTest?\n\nand we have some refactoring in Queens, and remove lots of stub code, see below link:\nhttps://review.openstack.org/#/c/326326/35/nova/tests/functional/api_sample_tests/test_instance_actions.py@77\n\nSo, I choose 2.58 as the base class in here.","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"eb3c01d56fc006ba312c3305e33a1fe1e737f047","unresolved":false,"context_lines":[{"line_number":124,"context_line":"    ADMIN_API \u003d False"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"class ServerActionsV262SampleJsonTest(ServerActionsV251AdminSampleJsonTest):"},{"line_number":128,"context_line":"    microversion \u003d \u00272.62\u0027"},{"line_number":129,"context_line":"    scenarios \u003d [(\u0027v2_62\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"},{"line_number":130,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"9f6a8fd7_d0486bcd","line":127,"range":{"start_line":127,"start_character":38,"end_line":127,"end_character":74},"updated":"2018-04-18 19:10:58.000000000","message":"I\u0027m not sure why this doesn\u0027t extend ServerActionsV258SampleJsonTest to make sure that the limit/marker/filter stuff still works properly in 2.62.","commit_id":"3b59df23f859e03a8eb002bb6651e7626e8a26d7"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"05b2eea0f769a90a7d140c72d11a0b4f1a31696a","unresolved":false,"context_lines":[{"line_number":124,"context_line":"    ADMIN_API \u003d False"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"class ServerActionsV262SampleJsonTest(ServerActionsV251AdminSampleJsonTest):"},{"line_number":128,"context_line":"    microversion \u003d \u00272.62\u0027"},{"line_number":129,"context_line":"    scenarios \u003d [(\u0027v2_62\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"},{"line_number":130,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"9f6a8fd7_812f02a0","line":127,"range":{"start_line":127,"start_character":38,"end_line":127,"end_character":74},"in_reply_to":"9f6a8fd7_7bca9b6d","updated":"2018-04-19 04:19:04.000000000","message":"emm, and it seems just a lucky coincidence that the ServerActionsV251AdminSampleJsonTest contains the api of we change in 2.62, and doesn\u0027t contains the api of we don\u0027t need in 2.62.\n\nIf other tests contain a base test case which we don\u0027t need, we have to put redundant sample files in new micro version directory.\n\nSo, I think maybe we need some mechanism like: if we can\u0027t find this file in 2.62, we will lookup it in 2.58, then 2.51, then 2.21?","commit_id":"3b59df23f859e03a8eb002bb6651e7626e8a26d7"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"4f22e33eb71cbaa5e7afa4ac43ecff886d364c84","unresolved":false,"context_lines":[{"line_number":124,"context_line":"    ADMIN_API \u003d False"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"class ServerActionsV262SampleJsonTest(ServerActionsV251AdminSampleJsonTest):"},{"line_number":128,"context_line":"    microversion \u003d \u00272.62\u0027"},{"line_number":129,"context_line":"    scenarios \u003d [(\u0027v2_62\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"},{"line_number":130,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"9f6a8fd7_44ea580f","line":127,"range":{"start_line":127,"start_character":38,"end_line":127,"end_character":74},"in_reply_to":"9f6a8fd7_812f02a0","updated":"2018-04-19 04:26:36.000000000","message":"we have that mechanism supported but for only server sample files [1] and same we can do for other.\n\nI can do that later so i should not hold this change for sample file optimization. as Matt mentioned let\u0027s go with ServerActionsV258SampleJsonTest as base. \n\n..1 https://github.com/openstack/nova/blob/324899c621ee02d877122ba3412712ebb92831f2/nova/tests/functional/api_sample_tests/test_servers.py#L50","commit_id":"3b59df23f859e03a8eb002bb6651e7626e8a26d7"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"4083da82b584a64bcb7bc74b6e9a3f17c1e92e3c","unresolved":false,"context_lines":[{"line_number":124,"context_line":"    ADMIN_API \u003d False"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"class ServerActionsV262SampleJsonTest(ServerActionsV251AdminSampleJsonTest):"},{"line_number":128,"context_line":"    microversion \u003d \u00272.62\u0027"},{"line_number":129,"context_line":"    scenarios \u003d [(\u0027v2_62\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"},{"line_number":130,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"9f6a8fd7_7bca9b6d","line":127,"range":{"start_line":127,"start_character":38,"end_line":127,"end_character":74},"in_reply_to":"9f6a8fd7_d0486bcd","updated":"2018-04-19 00:54:10.000000000","message":"we can do that but i asked this to change actually. This adds all the samples files of 2.58 into 2.62 functional test also. \n\nI am ok with approach of testing new microversion sample tests on top of changed API\u0027s latest microversion tests always, only trade-off is too many duplicate sample files. But as per coverage point of view that looks ok.","commit_id":"3b59df23f859e03a8eb002bb6651e7626e8a26d7"}],"nova/tests/unit/api/openstack/compute/test_instance_actions.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"3e982af9c74e3b50d39fe1b6dec50715c5dfc7c3","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        to_delete.append(\u0027traceback\u0027)"},{"line_number":66,"context_line":"    if not expect_host:"},{"line_number":67,"context_line":"        to_delete.append(\u0027host\u0027)"},{"line_number":68,"context_line":"    if not event.get(\u0027hostId\u0027) and expect_hostId:"},{"line_number":69,"context_line":"        event[\u0027hostId\u0027] \u003d utils.generate_hostid(event.get(\u0027host\u0027), project_id)"},{"line_number":70,"context_line":"    for key in to_delete:"},{"line_number":71,"context_line":"        if key in event:"}],"source_content_type":"text/x-python","patch_set":7,"id":"bf659307_419be1c7","line":68,"range":{"start_line":68,"start_character":11,"end_line":68,"end_character":34},"updated":"2018-04-13 00:34:46.000000000","message":"this should not be needed to check as if expect_hostId\u003dFalse \u003c 2.61 then, hostId should not be apreas in \u0027events\u0027","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"59cd0288efd62de9792656e01cd24e0096947c5b","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        to_delete.append(\u0027traceback\u0027)"},{"line_number":66,"context_line":"    if not expect_host:"},{"line_number":67,"context_line":"        to_delete.append(\u0027host\u0027)"},{"line_number":68,"context_line":"    if not event.get(\u0027hostId\u0027) and expect_hostId:"},{"line_number":69,"context_line":"        event[\u0027hostId\u0027] \u003d utils.generate_hostid(event.get(\u0027host\u0027), project_id)"},{"line_number":70,"context_line":"    for key in to_delete:"},{"line_number":71,"context_line":"        if key in event:"}],"source_content_type":"text/x-python","patch_set":7,"id":"9f6a8fd7_9f34724c","line":68,"range":{"start_line":68,"start_character":11,"end_line":68,"end_character":34},"in_reply_to":"9f6a8fd7_4d07191e","updated":"2018-04-17 07:50:35.000000000","message":"OK~ I will update it.","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"9304d9b57eba9b58bcd945111e8d6b015dfbe00d","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        to_delete.append(\u0027traceback\u0027)"},{"line_number":66,"context_line":"    if not expect_host:"},{"line_number":67,"context_line":"        to_delete.append(\u0027host\u0027)"},{"line_number":68,"context_line":"    if not event.get(\u0027hostId\u0027) and expect_hostId:"},{"line_number":69,"context_line":"        event[\u0027hostId\u0027] \u003d utils.generate_hostid(event.get(\u0027host\u0027), project_id)"},{"line_number":70,"context_line":"    for key in to_delete:"},{"line_number":71,"context_line":"        if key in event:"}],"source_content_type":"text/x-python","patch_set":7,"id":"bf659307_d14eb46d","line":68,"range":{"start_line":68,"start_character":11,"end_line":68,"end_character":34},"in_reply_to":"bf659307_419be1c7","updated":"2018-04-13 11:41:10.000000000","message":"Actually, It\u0027s just for fake_action[1] format which doesn\u0027t contain the hostId, and if expect_hostId is true we just generate new one. and if it\u0027s not a fake one, we will do NOTHING and just keep the response.\n\n[1] https://review.openstack.org/#/c/555146/4/nova/tests/unit/fake_server_actions.py@73\n\nAnd I think I can add a note for it.","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"571c115523f25d37f21b76104e12b4fdffff0799","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        to_delete.append(\u0027traceback\u0027)"},{"line_number":66,"context_line":"    if not expect_host:"},{"line_number":67,"context_line":"        to_delete.append(\u0027host\u0027)"},{"line_number":68,"context_line":"    if not event.get(\u0027hostId\u0027) and expect_hostId:"},{"line_number":69,"context_line":"        event[\u0027hostId\u0027] \u003d utils.generate_hostid(event.get(\u0027host\u0027), project_id)"},{"line_number":70,"context_line":"    for key in to_delete:"},{"line_number":71,"context_line":"        if key in event:"}],"source_content_type":"text/x-python","patch_set":7,"id":"9f6a8fd7_4d07191e","line":68,"range":{"start_line":68,"start_character":11,"end_line":68,"end_character":34},"in_reply_to":"bf659307_d14eb46d","updated":"2018-04-17 05:45:52.000000000","message":"in that case you should add hostId in fake_server_actions.py@73 so that we can exactly match the expected response with predefined events like expect_host and expect_traceback.","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"3e982af9c74e3b50d39fe1b6dec50715c5dfc7c3","unresolved":false,"context_lines":[{"line_number":309,"context_line":"                      six.text_type(ex))"},{"line_number":310,"context_line":""},{"line_number":311,"context_line":""},{"line_number":312,"context_line":"class InstanceActionsTestV261(InstanceActionsTestV251):"},{"line_number":313,"context_line":"    wsgi_api_version \u003d \"2.61\""},{"line_number":314,"context_line":"    expect_event_hostId \u003d True"},{"line_number":315,"context_line":"    expect_event_host \u003d True"}],"source_content_type":"text/x-python","patch_set":7,"id":"bf659307_21582d2f","line":315,"range":{"start_line":312,"start_character":0,"end_line":315,"end_character":28},"updated":"2018-04-13 00:34:46.000000000","message":"can you make test for non-admin also where expect_event_host will be false.","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"9304d9b57eba9b58bcd945111e8d6b015dfbe00d","unresolved":false,"context_lines":[{"line_number":309,"context_line":"                      six.text_type(ex))"},{"line_number":310,"context_line":""},{"line_number":311,"context_line":""},{"line_number":312,"context_line":"class InstanceActionsTestV261(InstanceActionsTestV251):"},{"line_number":313,"context_line":"    wsgi_api_version \u003d \"2.61\""},{"line_number":314,"context_line":"    expect_event_hostId \u003d True"},{"line_number":315,"context_line":"    expect_event_host \u003d True"}],"source_content_type":"text/x-python","patch_set":7,"id":"bf659307_d1d3145f","line":315,"range":{"start_line":312,"start_character":0,"end_line":315,"end_character":28},"in_reply_to":"bf659307_21582d2f","updated":"2018-04-13 11:41:10.000000000","message":"https://review.openstack.org/#/c/557145/7/nova/tests/unit/api/openstack/compute/test_instance_actions.py@217\n\nThe case for non-admin is hide in above cases. :)","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"86b7c5e16df0862dbd4445efd752d90cdd50d4a8","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        action[\u0027start_time\u0027] \u003d str(action[\u0027start_time\u0027].replace(tzinfo\u003dNone))"},{"line_number":52,"context_line":"    for event in action.get(\u0027events\u0027, []):"},{"line_number":53,"context_line":"        format_event(event, action.get(\u0027project_id\u0027),"},{"line_number":54,"context_line":"                     expect_traceback, expect_host, expect_hostId)"},{"line_number":55,"context_line":"    return action"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"9f6a8fd7_c04f9432","line":54,"range":{"start_line":54,"start_character":21,"end_line":54,"end_character":65},"updated":"2018-04-26 12:42:21.000000000","message":"name kwargs","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"bb9babefd96996ae39d29330d5737d9c3929dcf9","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        action[\u0027start_time\u0027] \u003d str(action[\u0027start_time\u0027].replace(tzinfo\u003dNone))"},{"line_number":52,"context_line":"    for event in action.get(\u0027events\u0027, []):"},{"line_number":53,"context_line":"        format_event(event, action.get(\u0027project_id\u0027),"},{"line_number":54,"context_line":"                     expect_traceback, expect_host, expect_hostId)"},{"line_number":55,"context_line":"    return action"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"9f6a8fd7_4bcf25b0","line":54,"range":{"start_line":54,"start_character":21,"end_line":54,"end_character":65},"in_reply_to":"9f6a8fd7_c04f9432","updated":"2018-04-26 13:34:35.000000000","message":"Done","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"}],"releasenotes/notes/add-host-to-instance-action-events-aad2cc18fe191afa.yaml":[{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"8d8fec8f601a08f2401597992e68b1daf395c2e2","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"prelude: \u003e"},{"line_number":3,"context_line":"    Replace this text with content to appear at the top of the section for this"},{"line_number":4,"context_line":"    release. All of the prelude content is merged together and then rendered"},{"line_number":5,"context_line":"    separately from the items listed in other parts of the file, so the text"},{"line_number":6,"context_line":"    needs to be worded so that both the prelude and the other items make sense"},{"line_number":7,"context_line":"    when read independently. This may mean repeating some details. Not every"},{"line_number":8,"context_line":"    release note requires a prelude. Usually only notes describing major"},{"line_number":9,"context_line":"    features or adding release theme details should have a prelude."},{"line_number":10,"context_line":"features:"},{"line_number":11,"context_line":"  - |"},{"line_number":12,"context_line":"    List new features here, or remove this section.  All of the list items in"},{"line_number":13,"context_line":"    this section are combined when the release notes are rendered, so the text"},{"line_number":14,"context_line":"    needs to be worded so that it does not depend on any information only"},{"line_number":15,"context_line":"    available in another section, such as the prelude. This may mean repeating"},{"line_number":16,"context_line":"    some details."},{"line_number":17,"context_line":"issues:"},{"line_number":18,"context_line":"  - |"},{"line_number":19,"context_line":"    List known issues here, or remove this section.  All of the list items in"},{"line_number":20,"context_line":"    this section are combined when the release notes are rendered, so the text"},{"line_number":21,"context_line":"    needs to be worded so that it does not depend on any information only"},{"line_number":22,"context_line":"    available in another section, such as the prelude. This may mean repeating"},{"line_number":23,"context_line":"    some details."},{"line_number":24,"context_line":"upgrade:"},{"line_number":25,"context_line":"  - |"},{"line_number":26,"context_line":"    List upgrade notes here, or remove this section.  All of the list items in"},{"line_number":27,"context_line":"    this section are combined when the release notes are rendered, so the text"},{"line_number":28,"context_line":"    needs to be worded so that it does not depend on any information only"},{"line_number":29,"context_line":"    available in another section, such as the prelude. This may mean repeating"},{"line_number":30,"context_line":"    some details."},{"line_number":31,"context_line":"deprecations:"},{"line_number":32,"context_line":"  - |"},{"line_number":33,"context_line":"    List deprecations notes here, or remove this section.  All of the list"},{"line_number":34,"context_line":"    items in this section are combined when the release notes are rendered, so"},{"line_number":35,"context_line":"    the text needs to be worded so that it does not depend on any information"},{"line_number":36,"context_line":"    only available in another section, such as the prelude. This may mean"},{"line_number":37,"context_line":"    repeating some details."},{"line_number":38,"context_line":"critical:"},{"line_number":39,"context_line":"  - |"},{"line_number":40,"context_line":"    Add critical notes here, or remove this section.  All of the list items in"},{"line_number":41,"context_line":"    this section are combined when the release notes are rendered, so the text"},{"line_number":42,"context_line":"    needs to be worded so that it does not depend on any information only"},{"line_number":43,"context_line":"    available in another section, such as the prelude. This may mean repeating"},{"line_number":44,"context_line":"    some details."},{"line_number":45,"context_line":"security:"},{"line_number":46,"context_line":"  - |"},{"line_number":47,"context_line":"    Add security notes here, or remove this section.  All of the list items in"},{"line_number":48,"context_line":"    this section are combined when the release notes are rendered, so the text"},{"line_number":49,"context_line":"    needs to be worded so that it does not depend on any information only"},{"line_number":50,"context_line":"    available in another section, such as the prelude. This may mean repeating"},{"line_number":51,"context_line":"    some details."},{"line_number":52,"context_line":"fixes:"},{"line_number":53,"context_line":"  - |"},{"line_number":54,"context_line":"    Add normal bug fixes here, or remove this section.  All of the list items"},{"line_number":55,"context_line":"    in this section are combined when the release notes are rendered, so the"},{"line_number":56,"context_line":"    text needs to be worded so that it does not depend on any information only"},{"line_number":57,"context_line":"    available in another section, such as the prelude. This may mean repeating"},{"line_number":58,"context_line":"    some details."},{"line_number":59,"context_line":"other:"},{"line_number":60,"context_line":"  - |"},{"line_number":61,"context_line":"    Add other notes here, or remove this section.  All of the list items in"},{"line_number":62,"context_line":"    this section are combined when the release notes are rendered, so the text"},{"line_number":63,"context_line":"    needs to be worded so that it does not depend on any information only"},{"line_number":64,"context_line":"    available in another section, such as the prelude. This may mean repeating"},{"line_number":65,"context_line":"    some details."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"bf659307_88a13c97","line":65,"range":{"start_line":1,"start_character":0,"end_line":65,"end_character":17},"updated":"2018-03-29 06:13:38.000000000","message":"forgot to update these?","commit_id":"7e6bd1d9577cea54cb392070ec03b8bc79a3f25d"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"6fe56866abf019b132a515a4aebfc2f68570084a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"prelude: \u003e"},{"line_number":3,"context_line":"    Replace this text with content to appear at the top of the section for this"},{"line_number":4,"context_line":"    release. All of the prelude content is merged together and then rendered"},{"line_number":5,"context_line":"    separately from the items listed in other parts of the file, so the text"},{"line_number":6,"context_line":"    needs to be worded so that both the prelude and the other items make sense"},{"line_number":7,"context_line":"    when read independently. This may mean repeating some details. Not every"},{"line_number":8,"context_line":"    release note requires a prelude. Usually only notes describing major"},{"line_number":9,"context_line":"    features or adding release theme details should have a prelude."},{"line_number":10,"context_line":"features:"},{"line_number":11,"context_line":"  - |"},{"line_number":12,"context_line":"    List new features here, or remove this section.  All of the list items in"},{"line_number":13,"context_line":"    this section are combined when the release notes are rendered, so the text"},{"line_number":14,"context_line":"    needs to be worded so that it does not depend on any information only"},{"line_number":15,"context_line":"    available in another section, such as the prelude. This may mean repeating"},{"line_number":16,"context_line":"    some details."},{"line_number":17,"context_line":"issues:"},{"line_number":18,"context_line":"  - |"},{"line_number":19,"context_line":"    List known issues here, or remove this section.  All of the list items in"},{"line_number":20,"context_line":"    this section are combined when the release notes are rendered, so the text"},{"line_number":21,"context_line":"    needs to be worded so that it does not depend on any information only"},{"line_number":22,"context_line":"    available in another section, such as the prelude. This may mean repeating"},{"line_number":23,"context_line":"    some details."},{"line_number":24,"context_line":"upgrade:"},{"line_number":25,"context_line":"  - |"},{"line_number":26,"context_line":"    List upgrade notes here, or remove this section.  All of the list items in"},{"line_number":27,"context_line":"    this section are combined when the release notes are rendered, so the text"},{"line_number":28,"context_line":"    needs to be worded so that it does not depend on any information only"},{"line_number":29,"context_line":"    available in another section, such as the prelude. This may mean repeating"},{"line_number":30,"context_line":"    some details."},{"line_number":31,"context_line":"deprecations:"},{"line_number":32,"context_line":"  - |"},{"line_number":33,"context_line":"    List deprecations notes here, or remove this section.  All of the list"},{"line_number":34,"context_line":"    items in this section are combined when the release notes are rendered, so"},{"line_number":35,"context_line":"    the text needs to be worded so that it does not depend on any information"},{"line_number":36,"context_line":"    only available in another section, such as the prelude. This may mean"},{"line_number":37,"context_line":"    repeating some details."},{"line_number":38,"context_line":"critical:"},{"line_number":39,"context_line":"  - |"},{"line_number":40,"context_line":"    Add critical notes here, or remove this section.  All of the list items in"},{"line_number":41,"context_line":"    this section are combined when the release notes are rendered, so the text"},{"line_number":42,"context_line":"    needs to be worded so that it does not depend on any information only"},{"line_number":43,"context_line":"    available in another section, such as the prelude. This may mean repeating"},{"line_number":44,"context_line":"    some details."},{"line_number":45,"context_line":"security:"},{"line_number":46,"context_line":"  - |"},{"line_number":47,"context_line":"    Add security notes here, or remove this section.  All of the list items in"},{"line_number":48,"context_line":"    this section are combined when the release notes are rendered, so the text"},{"line_number":49,"context_line":"    needs to be worded so that it does not depend on any information only"},{"line_number":50,"context_line":"    available in another section, such as the prelude. This may mean repeating"},{"line_number":51,"context_line":"    some details."},{"line_number":52,"context_line":"fixes:"},{"line_number":53,"context_line":"  - |"},{"line_number":54,"context_line":"    Add normal bug fixes here, or remove this section.  All of the list items"},{"line_number":55,"context_line":"    in this section are combined when the release notes are rendered, so the"},{"line_number":56,"context_line":"    text needs to be worded so that it does not depend on any information only"},{"line_number":57,"context_line":"    available in another section, such as the prelude. This may mean repeating"},{"line_number":58,"context_line":"    some details."},{"line_number":59,"context_line":"other:"},{"line_number":60,"context_line":"  - |"},{"line_number":61,"context_line":"    Add other notes here, or remove this section.  All of the list items in"},{"line_number":62,"context_line":"    this section are combined when the release notes are rendered, so the text"},{"line_number":63,"context_line":"    needs to be worded so that it does not depend on any information only"},{"line_number":64,"context_line":"    available in another section, such as the prelude. This may mean repeating"},{"line_number":65,"context_line":"    some details."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"bf659307_c08a7d68","line":65,"range":{"start_line":1,"start_character":0,"end_line":65,"end_character":17},"in_reply_to":"bf659307_88a13c97","updated":"2018-03-31 07:27:10.000000000","message":"oops, forgot to save.","commit_id":"7e6bd1d9577cea54cb392070ec03b8bc79a3f25d"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"60bc2dbad3ed8503840b658d819ec66b3839edf4","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds ``host`` and ``hostId`` fields to the flavor"},{"line_number":5,"context_line":"    ``GET /servers/{server_id}/os\u003dinstance-actions/{req_id}`` API. The display"},{"line_number":6,"context_line":"    of newly added ``host`` field will be controlled by the same policy of"},{"line_number":7,"context_line":"    ``event.traceback`` field, if the user is prevented by policy, only an"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"bf659307_043ddedb","line":4,"range":{"start_line":4,"start_character":47,"end_line":4,"end_character":53},"updated":"2018-04-02 08:36:37.000000000","message":"wrong copy?","commit_id":"ffb07ad1195ec02bad17442035e5a2a351af0e71"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"a974c3c433df07b016ef682d63918051574c53e4","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds ``host`` and ``hostId`` fields to the flavor"},{"line_number":5,"context_line":"    ``GET /servers/{server_id}/os\u003dinstance-actions/{req_id}`` API. The display"},{"line_number":6,"context_line":"    of newly added ``host`` field will be controlled by the same policy of"},{"line_number":7,"context_line":"    ``event.traceback`` field, if the user is prevented by policy, only an"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"bf659307_b658d630","line":4,"range":{"start_line":4,"start_character":47,"end_line":4,"end_character":53},"in_reply_to":"bf659307_043ddedb","updated":"2018-04-03 03:53:15.000000000","message":"Done","commit_id":"ffb07ad1195ec02bad17442035e5a2a351af0e71"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"4dc87fb415434e1eeb9ca4af51c17b37cb21ac21","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds ``host`` and ``hostId`` fields to the instance action"},{"line_number":5,"context_line":"    ``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display"},{"line_number":6,"context_line":"    of newly added ``host`` field will be controlled by the same policy of"},{"line_number":7,"context_line":"    ``event.traceback`` field, if the user is prevented by policy, only an"},{"line_number":8,"context_line":"    ``hostId`` will be displayed."}],"source_content_type":"text/x-yaml","patch_set":7,"id":"bf659307_6daa7a71","line":8,"range":{"start_line":4,"start_character":0,"end_line":8,"end_character":33},"updated":"2018-04-13 02:55:29.000000000","message":"Should also update the meaning of host and hostId here as Gmann suggested.","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"9304d9b57eba9b58bcd945111e8d6b015dfbe00d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds ``host`` and ``hostId`` fields to the instance action"},{"line_number":5,"context_line":"    ``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display"},{"line_number":6,"context_line":"    of newly added ``host`` field will be controlled by the same policy of"},{"line_number":7,"context_line":"    ``event.traceback`` field, if the user is prevented by policy, only an"},{"line_number":8,"context_line":"    ``hostId`` will be displayed."}],"source_content_type":"text/x-yaml","patch_set":7,"id":"bf659307_f1d6584f","line":8,"range":{"start_line":4,"start_character":0,"end_line":8,"end_character":33},"in_reply_to":"bf659307_6daa7a71","updated":"2018-04-13 11:41:10.000000000","message":"Done","commit_id":"58132bf1b517d03c7c8886c98c6e27b0a5da66de"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"3102fa9b0eb881dca1ea30c4b7d224fbaf7fe35a","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    string) fields to the instance action"},{"line_number":6,"context_line":"    ``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display"},{"line_number":7,"context_line":"    of newly added ``host`` field will be controlled by the same policy of"},{"line_number":8,"context_line":"    ``event.traceback`` field, if the user is prevented by policy, only an"},{"line_number":9,"context_line":"    ``hostId`` will be displayed."}],"source_content_type":"text/x-yaml","patch_set":9,"id":"9f6a8fd7_33548cca","line":9,"range":{"start_line":8,"start_character":4,"end_line":9,"end_character":33},"updated":"2018-04-16 21:26:16.000000000","message":"Same comments as in the REST API version history doc.","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"3c258a1addee5e0447b973c76f100bf2931a7644","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    string) fields to the instance action"},{"line_number":6,"context_line":"    ``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display"},{"line_number":7,"context_line":"    of newly added ``host`` field will be controlled by the same policy of"},{"line_number":8,"context_line":"    ``event.traceback`` field, if the user is prevented by policy, only an"},{"line_number":9,"context_line":"    ``hostId`` will be displayed."}],"source_content_type":"text/x-yaml","patch_set":9,"id":"9f6a8fd7_22043415","line":9,"range":{"start_line":8,"start_character":4,"end_line":9,"end_character":33},"in_reply_to":"9f6a8fd7_33548cca","updated":"2018-04-17 03:13:58.000000000","message":"Done","commit_id":"fec64bce2c14c105c0611c87d665351be0893b5f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"eb3c01d56fc006ba312c3305e33a1fe1e737f047","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    ``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display"},{"line_number":7,"context_line":"    of newly added ``host`` field will be controlled via policy rule"},{"line_number":8,"context_line":"    ``os_compute_api:os-instance-actions:events``, which is the same policy of"},{"line_number":9,"context_line":"    ``events.traceback`` field, if the user is prevented by policy, only an"},{"line_number":10,"context_line":"    ``hostId`` will be displayed."}],"source_content_type":"text/x-yaml","patch_set":12,"id":"9f6a8fd7_10d103fc","line":9,"range":{"start_line":9,"start_character":30,"end_line":9,"end_character":34},"updated":"2018-04-18 19:10:58.000000000","message":". If the...","commit_id":"3b59df23f859e03a8eb002bb6651e7626e8a26d7"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"eb3c01d56fc006ba312c3305e33a1fe1e737f047","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    ``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display"},{"line_number":7,"context_line":"    of newly added ``host`` field will be controlled via policy rule"},{"line_number":8,"context_line":"    ``os_compute_api:os-instance-actions:events``, which is the same policy of"},{"line_number":9,"context_line":"    ``events.traceback`` field, if the user is prevented by policy, only an"},{"line_number":10,"context_line":"    ``hostId`` will be displayed."}],"source_content_type":"text/x-yaml","patch_set":12,"id":"9f6a8fd7_d0daab15","line":9,"range":{"start_line":9,"start_character":73,"end_line":9,"end_character":75},"updated":"2018-04-18 19:10:58.000000000","message":"s/an//","commit_id":"3b59df23f859e03a8eb002bb6651e7626e8a26d7"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"7beb6561420e8fb3b10678f93cc88fec681d6585","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    ``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display"},{"line_number":7,"context_line":"    of newly added ``host`` field will be controlled via policy rule"},{"line_number":8,"context_line":"    ``os_compute_api:os-instance-actions:events``, which is the same policy of"},{"line_number":9,"context_line":"    ``events.traceback`` field, if the user is prevented by policy, only an"},{"line_number":10,"context_line":"    ``hostId`` will be displayed."}],"source_content_type":"text/x-yaml","patch_set":12,"id":"9f6a8fd7_aae0db97","line":9,"range":{"start_line":9,"start_character":30,"end_line":9,"end_character":34},"in_reply_to":"9f6a8fd7_10d103fc","updated":"2018-04-19 07:17:57.000000000","message":"Done","commit_id":"3b59df23f859e03a8eb002bb6651e7626e8a26d7"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"7beb6561420e8fb3b10678f93cc88fec681d6585","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    ``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display"},{"line_number":7,"context_line":"    of newly added ``host`` field will be controlled via policy rule"},{"line_number":8,"context_line":"    ``os_compute_api:os-instance-actions:events``, which is the same policy of"},{"line_number":9,"context_line":"    ``events.traceback`` field, if the user is prevented by policy, only an"},{"line_number":10,"context_line":"    ``hostId`` will be displayed."}],"source_content_type":"text/x-yaml","patch_set":12,"id":"9f6a8fd7_4af1ff6a","line":9,"range":{"start_line":9,"start_character":73,"end_line":9,"end_character":75},"in_reply_to":"9f6a8fd7_d0daab15","updated":"2018-04-19 07:17:57.000000000","message":"Done","commit_id":"3b59df23f859e03a8eb002bb6651e7626e8a26d7"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"3205b8504e42a66d571c1eadf7dee025e706264b","unresolved":false,"context_lines":[{"line_number":7,"context_line":"    of newly added ``host`` field will be controlled via policy rule"},{"line_number":8,"context_line":"    ``os_compute_api:os-instance-actions:events``, which is the same policy of"},{"line_number":9,"context_line":"    ``events.traceback`` field. If the user is prevented by policy, only"},{"line_number":10,"context_line":"    ``hostId`` will be displayed."}],"source_content_type":"text/x-yaml","patch_set":13,"id":"9f6a8fd7_32d94656","line":10,"updated":"2018-04-24 00:05:58.000000000","message":"Shouldn\u0027t we mention the new microversion this is being offered in?","commit_id":"1ce7d07fe0527e0dd41eb78264a37acb3f5c6623"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"76233ae20419cf3f0357f5f7e18403d2dac9fe2f","unresolved":false,"context_lines":[{"line_number":7,"context_line":"    of newly added ``host`` field will be controlled via policy rule"},{"line_number":8,"context_line":"    ``os_compute_api:os-instance-actions:events``, which is the same policy of"},{"line_number":9,"context_line":"    ``events.traceback`` field. If the user is prevented by policy, only"},{"line_number":10,"context_line":"    ``hostId`` will be displayed."}],"source_content_type":"text/x-yaml","patch_set":13,"id":"9f6a8fd7_b8da1575","line":10,"in_reply_to":"9f6a8fd7_32d94656","updated":"2018-04-24 02:48:56.000000000","message":"Yes, we should, and I plus micro version info in here:\nhttps://review.openstack.org/#/c/563802/2/releasenotes/notes/add-host-to-instance-action-events-aad2cc18fe191afa.yaml","commit_id":"1ce7d07fe0527e0dd41eb78264a37acb3f5c6623"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"86b7c5e16df0862dbd4445efd752d90cdd50d4a8","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    The microversion 2.62 adds ``host`` (hostname) and ``hostId`` (an"},{"line_number":5,"context_line":"    obfuscated hashed host id string) fields to the instance action"},{"line_number":6,"context_line":"    ``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display"},{"line_number":7,"context_line":"    of newly added ``host`` field will be controlled via policy rule"},{"line_number":8,"context_line":"    ``os_compute_api:os-instance-actions:events``, which is the same policy of"},{"line_number":9,"context_line":"    ``events.traceback`` field. If the user is prevented by policy, only"},{"line_number":10,"context_line":"    ``hostId`` will be displayed."}],"source_content_type":"text/x-yaml","patch_set":14,"id":"9f6a8fd7_a06b8083","line":7,"range":{"start_line":7,"start_character":4,"end_line":7,"end_character":6},"updated":"2018-04-26 12:42:21.000000000","message":"of the","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"bb9babefd96996ae39d29330d5737d9c3929dcf9","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    The microversion 2.62 adds ``host`` (hostname) and ``hostId`` (an"},{"line_number":5,"context_line":"    obfuscated hashed host id string) fields to the instance action"},{"line_number":6,"context_line":"    ``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display"},{"line_number":7,"context_line":"    of newly added ``host`` field will be controlled via policy rule"},{"line_number":8,"context_line":"    ``os_compute_api:os-instance-actions:events``, which is the same policy of"},{"line_number":9,"context_line":"    ``events.traceback`` field. If the user is prevented by policy, only"},{"line_number":10,"context_line":"    ``hostId`` will be displayed."}],"source_content_type":"text/x-yaml","patch_set":14,"id":"9f6a8fd7_6b3549a8","line":7,"range":{"start_line":7,"start_character":4,"end_line":7,"end_character":6},"in_reply_to":"9f6a8fd7_a06b8083","updated":"2018-04-26 13:34:35.000000000","message":"Done","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"86b7c5e16df0862dbd4445efd752d90cdd50d4a8","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    obfuscated hashed host id string) fields to the instance action"},{"line_number":6,"context_line":"    ``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display"},{"line_number":7,"context_line":"    of newly added ``host`` field will be controlled via policy rule"},{"line_number":8,"context_line":"    ``os_compute_api:os-instance-actions:events``, which is the same policy of"},{"line_number":9,"context_line":"    ``events.traceback`` field. If the user is prevented by policy, only"},{"line_number":10,"context_line":"    ``hostId`` will be displayed."}],"source_content_type":"text/x-yaml","patch_set":14,"id":"9f6a8fd7_600328c0","line":8,"range":{"start_line":8,"start_character":76,"end_line":8,"end_character":78},"updated":"2018-04-26 12:42:21.000000000","message":"used for the","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"bb9babefd96996ae39d29330d5737d9c3929dcf9","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    obfuscated hashed host id string) fields to the instance action"},{"line_number":6,"context_line":"    ``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The display"},{"line_number":7,"context_line":"    of newly added ``host`` field will be controlled via policy rule"},{"line_number":8,"context_line":"    ``os_compute_api:os-instance-actions:events``, which is the same policy of"},{"line_number":9,"context_line":"    ``events.traceback`` field. If the user is prevented by policy, only"},{"line_number":10,"context_line":"    ``hostId`` will be displayed."}],"source_content_type":"text/x-yaml","patch_set":14,"id":"9f6a8fd7_0b460d23","line":8,"range":{"start_line":8,"start_character":76,"end_line":8,"end_character":78},"in_reply_to":"9f6a8fd7_600328c0","updated":"2018-04-26 13:34:35.000000000","message":"Done","commit_id":"eef75c7cad290f3c115663a294798c3afb554cf5"}]}
