)]}'
{"api-ref/source/parameters.yaml":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"ba433dd9936c92decb270f984ab6d951e109c15d","unresolved":false,"context_lines":[{"line_number":2687,"context_line":"    specific tags:"},{"line_number":2688,"context_line":""},{"line_number":2689,"context_line":"    - For the ``accelerator-request-bound`` event, the tag must be"},{"line_number":2690,"context_line":"      the accelerator request UUID."},{"line_number":2691,"context_line":"    - For the ``power-update`` event the tag must be either be ``POWER_ON``"},{"line_number":2692,"context_line":"      or ``POWER_OFF``."},{"line_number":2693,"context_line":"    - For the ``volume-extended`` event the tag must be the volume id."}],"source_content_type":"text/x-yaml","patch_set":17,"id":"1fa4df85_95ff1e33","line":2690,"range":{"start_line":2690,"start_character":10,"end_line":2690,"end_character":29},"updated":"2020-03-02 13:58:06.000000000","message":"... (ARQ) ...\n\n(You\u0027re using the ARQ acronym elsewhere, so should be consistent.)","commit_id":"c6365f1b55cdbc33452fe3b40d3a7039f53f631c"}],"nova/api/openstack/api_version_request.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"ba433dd9936c92decb270f984ab6d951e109c15d","unresolved":false,"context_lines":[{"line_number":220,"context_line":"             ``GET /servers/{server_id}/migrations/{migration_id}``."},{"line_number":221,"context_line":"    * 2.81 - Adds support for image cache management by aggregate by adding"},{"line_number":222,"context_line":"             ``POST /os-aggregates/{aggregate_id}/images``."},{"line_number":223,"context_line":"    * 2.82 - Adds ``accelerator-request-bound`` event to"},{"line_number":224,"context_line":"             ``os-server-external-events`` API. This event is sent by Cyborg"},{"line_number":225,"context_line":"             to indicate completion of ARQ binding. The ARQs can be obtained"},{"line_number":226,"context_line":"             from Cyborg with ``GET /v2/accelerator_requests?instance\u003d{uuid}``"}],"source_content_type":"text/x-python","patch_set":17,"id":"1fa4df85_d5d4b6bf","line":223,"range":{"start_line":223,"start_character":54,"end_line":223,"end_character":56},"updated":"2020-03-02 13:58:06.000000000","message":"to the","commit_id":"c6365f1b55cdbc33452fe3b40d3a7039f53f631c"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"ba433dd9936c92decb270f984ab6d951e109c15d","unresolved":false,"context_lines":[{"line_number":223,"context_line":"    * 2.82 - Adds ``accelerator-request-bound`` event to"},{"line_number":224,"context_line":"             ``os-server-external-events`` API. This event is sent by Cyborg"},{"line_number":225,"context_line":"             to indicate completion of ARQ binding. The ARQs can be obtained"},{"line_number":226,"context_line":"             from Cyborg with ``GET /v2/accelerator_requests?instance\u003d{uuid}``"},{"line_number":227,"context_line":"\"\"\""},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"# The minimum and maximum versions of the API supported"}],"source_content_type":"text/x-python","patch_set":17,"id":"1fa4df85_7504e24a","line":226,"updated":"2020-03-02 13:58:06.000000000","message":"period","commit_id":"c6365f1b55cdbc33452fe3b40d3a7039f53f631c"}],"nova/api/openstack/compute/rest_api_version_history.rst":[{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"5197566c738466f493a589bd6e2893a3ed86d353","unresolved":false,"context_lines":[{"line_number":1084,"context_line":"----"},{"line_number":1085,"context_line":""},{"line_number":1086,"context_line":"Adds ``accelerator-request-bound`` event to ``os-server-external-events``"},{"line_number":1087,"context_line":"API. This event is sent by Cyborg to indicate completion of the binding"},{"line_number":1088,"context_line":"event for one accelerator request (ARQ) associated with an instance."}],"source_content_type":"text/x-rst","patch_set":8,"id":"3fa7e38b_a968b5bb","line":1087,"range":{"start_line":1087,"start_character":5,"end_line":1087,"end_character":33},"updated":"2019-12-28 06:09:15.000000000","message":"Can Nova trigger this \"event\" proactively?","commit_id":"3aad2c0f47b974e12a58742300c47f1a0457ca86"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"652d0dc0629c70de89b68c50dabf2bf9d2125767","unresolved":false,"context_lines":[{"line_number":1084,"context_line":"----"},{"line_number":1085,"context_line":""},{"line_number":1086,"context_line":"Adds ``accelerator-request-bound`` event to ``os-server-external-events``"},{"line_number":1087,"context_line":"API. This event is sent by Cyborg to indicate completion of the binding"},{"line_number":1088,"context_line":"event for one accelerator request (ARQ) associated with an instance."}],"source_content_type":"text/x-rst","patch_set":8,"id":"3fa7e38b_52548cc6","line":1087,"range":{"start_line":1087,"start_character":5,"end_line":1087,"end_character":33},"in_reply_to":"3fa7e38b_33335264","updated":"2020-01-16 00:30:58.000000000","message":"yeah, I know.","commit_id":"3aad2c0f47b974e12a58742300c47f1a0457ca86"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"5089591e1120c6003a657e43260b718cf7dfc44d","unresolved":false,"context_lines":[{"line_number":1084,"context_line":"----"},{"line_number":1085,"context_line":""},{"line_number":1086,"context_line":"Adds ``accelerator-request-bound`` event to ``os-server-external-events``"},{"line_number":1087,"context_line":"API. This event is sent by Cyborg to indicate completion of the binding"},{"line_number":1088,"context_line":"event for one accelerator request (ARQ) associated with an instance."}],"source_content_type":"text/x-rst","patch_set":8,"id":"3fa7e38b_33335264","line":1087,"range":{"start_line":1087,"start_character":5,"end_line":1087,"end_character":33},"in_reply_to":"3fa7e38b_7bd031f5","updated":"2020-01-15 14:48:59.000000000","message":"+1","commit_id":"3aad2c0f47b974e12a58742300c47f1a0457ca86"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"ca339d2b5f3a291d2eae4614fd363e174d28f4c0","unresolved":false,"context_lines":[{"line_number":1084,"context_line":"----"},{"line_number":1085,"context_line":""},{"line_number":1086,"context_line":"Adds ``accelerator-request-bound`` event to ``os-server-external-events``"},{"line_number":1087,"context_line":"API. This event is sent by Cyborg to indicate completion of the binding"},{"line_number":1088,"context_line":"event for one accelerator request (ARQ) associated with an instance."}],"source_content_type":"text/x-rst","patch_set":8,"id":"3fa7e38b_7bd031f5","line":1087,"range":{"start_line":1087,"start_character":5,"end_line":1087,"end_character":33},"in_reply_to":"3fa7e38b_a968b5bb","updated":"2020-01-02 15:52:12.000000000","message":"\u003e Can Nova trigger this \"event\" proactively?\n\nI\u0027m not sure what this means. This API is for external service events, meaning events sent by non-nova services (i.e. cyborg in this case). It could be sent by a service other than cyborg, but in practice it will always be from that. Further, this should always happen, even if nova isn\u0027t ready or waiting for it, so I think the statement in the code here is correct.","commit_id":"3aad2c0f47b974e12a58742300c47f1a0457ca86"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"ba433dd9936c92decb270f984ab6d951e109c15d","unresolved":false,"context_lines":[{"line_number":1084,"context_line":"2.82"},{"line_number":1085,"context_line":"----"},{"line_number":1086,"context_line":""},{"line_number":1087,"context_line":"Adds ``accelerator-request-bound`` event to ``os-server-external-events``"},{"line_number":1088,"context_line":"API. This event is sent by Cyborg to indicate completion of the binding"},{"line_number":1089,"context_line":"event for one accelerator request (ARQ) associated with an instance."}],"source_content_type":"text/x-rst","patch_set":17,"id":"1fa4df85_95adde32","line":1087,"range":{"start_line":1087,"start_character":41,"end_line":1087,"end_character":43},"updated":"2020-03-02 13:58:06.000000000","message":"to the","commit_id":"c6365f1b55cdbc33452fe3b40d3a7039f53f631c"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"ba433dd9936c92decb270f984ab6d951e109c15d","unresolved":false,"context_lines":[{"line_number":1086,"context_line":""},{"line_number":1087,"context_line":"Adds ``accelerator-request-bound`` event to ``os-server-external-events``"},{"line_number":1088,"context_line":"API. This event is sent by Cyborg to indicate completion of the binding"},{"line_number":1089,"context_line":"event for one accelerator request (ARQ) associated with an instance."}],"source_content_type":"text/x-rst","patch_set":17,"id":"1fa4df85_d57036df","line":1089,"range":{"start_line":1089,"start_character":14,"end_line":1089,"end_character":39},"updated":"2020-03-02 13:58:06.000000000","message":"yeah, like this","commit_id":"c6365f1b55cdbc33452fe3b40d3a7039f53f631c"}],"nova/api/openstack/compute/schemas/server_external_events.py":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"efb889118bc4029225139a3cb7e2866bb1f368ec","unresolved":false,"context_lines":[{"line_number":33,"context_line":"                            \u0027network-vif-plugged\u0027,"},{"line_number":34,"context_line":"                            \u0027network-vif-unplugged\u0027,"},{"line_number":35,"context_line":"                            \u0027network-vif-deleted\u0027,"},{"line_number":36,"context_line":"                            \u0027accelerator-requests-bound\u0027,"},{"line_number":37,"context_line":"                        ],"},{"line_number":38,"context_line":"                    },"},{"line_number":39,"context_line":"                    \u0027status\u0027: {"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_87e0c899","line":36,"updated":"2019-11-05 16:25:30.000000000","message":"Again, you cannot change this defined schema version.","commit_id":"0fa159aa71ef7d10987f6154e8518c5bb260fc74"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"7ed09e862aa922066642b81406b41ce199a2ef35","unresolved":false,"context_lines":[{"line_number":32,"context_line":"                            \u0027network-changed\u0027,"},{"line_number":33,"context_line":"                            \u0027network-vif-plugged\u0027,"},{"line_number":34,"context_line":"                            \u0027network-vif-unplugged\u0027,"},{"line_number":35,"context_line":"                            \u0027network-vif-deleted\u0027,"},{"line_number":36,"context_line":"                        ],"},{"line_number":37,"context_line":"                    },"},{"line_number":38,"context_line":"                    \u0027status\u0027: {"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_0560e20c","line":35,"updated":"2019-12-04 14:46:56.000000000","message":"Please don\u0027t make this unrelated change. I definitely prefer the trailing comma, but don\u0027t intermix it with the functional change.","commit_id":"31d243a196954d662f7ce6b6d208dce094258e76"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"d8e315302f1657da1e89da3226606ff22ea35beb","unresolved":false,"context_lines":[{"line_number":32,"context_line":"                            \u0027network-changed\u0027,"},{"line_number":33,"context_line":"                            \u0027network-vif-plugged\u0027,"},{"line_number":34,"context_line":"                            \u0027network-vif-unplugged\u0027,"},{"line_number":35,"context_line":"                            \u0027network-vif-deleted\u0027,"},{"line_number":36,"context_line":"                        ],"},{"line_number":37,"context_line":"                    },"},{"line_number":38,"context_line":"                    \u0027status\u0027: {"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_56c1ae4d","line":35,"in_reply_to":"3fa7e38b_0560e20c","updated":"2019-12-13 05:54:49.000000000","message":"Done","commit_id":"31d243a196954d662f7ce6b6d208dce094258e76"}],"nova/objects/external_event.py":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"411cc1f2e24ec5774967ecff985e8205097d5a83","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    # Accelerator Requests got bound, tag is device_profile_name."},{"line_number":34,"context_line":"    # Sent when all ARQs for a device profile have bound or failed."},{"line_number":35,"context_line":"    # Since Nova does not store ARQ UUIDs for an instance, the device"},{"line_number":36,"context_line":"    # profile name is the only feasible tag."},{"line_number":37,"context_line":"    \u0027accelerator-requests-bound\u0027,"},{"line_number":38,"context_line":"]"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"3fa7e38b_298c7033","line":36,"range":{"start_line":35,"start_character":59,"end_line":36,"end_character":43},"updated":"2019-12-11 21:16:21.000000000","message":"Sounds from the discussion like this is an incorrect use of the tag field. Setting a tag implies that the event is one of potentially many for the instance, and tag is the multiplexing key. For a neutron event, it\u0027s the port because ... you can have multiple ports and you need to know which one the event pertains to.\n\nHaving one \"everything is done for all accelerators for this instance\" event seems like a terrible design choice to me, but if that\u0027s what we\u0027re going for, tag should be unset in the event to avoid confusion.","commit_id":"e3fe46126905a8b50a7f0a6cc08f3a5108e1defe"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"5bb0422b65ee7796b27403d2c7d7428b65fa59fa","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    # Accelerator Requests got bound, tag is device_profile_name."},{"line_number":34,"context_line":"    # Sent when all ARQs for a device profile have bound or failed."},{"line_number":35,"context_line":"    # Since Nova does not store ARQ UUIDs for an instance, the device"},{"line_number":36,"context_line":"    # profile name is the only feasible tag."},{"line_number":37,"context_line":"    \u0027accelerator-requests-bound\u0027,"},{"line_number":38,"context_line":"]"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"3fa7e38b_a959405b","line":36,"range":{"start_line":35,"start_character":59,"end_line":36,"end_character":44},"updated":"2019-12-11 22:02:28.000000000","message":"After much discussion, I see that this is only ever going to be one thing, and that this event is intended to be a single monolithic \"all build-time binding stuff is done\". That doesn\u0027t match with how any of our other events work, and doesn\u0027t leave us a granular future where we use this event to handle things like post-build attach.\n\nSo, I want this to change to match the other events, which means calling this accelerator-request-bound, and tag being the uuid of that ARQ.","commit_id":"b0eaea47b842c9dfe98f539b9af1c9d5829048fd"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"d8e315302f1657da1e89da3226606ff22ea35beb","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    # Accelerator Requests got bound, tag is device_profile_name."},{"line_number":34,"context_line":"    # Sent when all ARQs for a device profile have bound or failed."},{"line_number":35,"context_line":"    # Since Nova does not store ARQ UUIDs for an instance, the device"},{"line_number":36,"context_line":"    # profile name is the only feasible tag."},{"line_number":37,"context_line":"    \u0027accelerator-requests-bound\u0027,"},{"line_number":38,"context_line":"]"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"3fa7e38b_bbb96dcb","line":36,"range":{"start_line":35,"start_character":59,"end_line":36,"end_character":44},"in_reply_to":"3fa7e38b_a959405b","updated":"2019-12-13 05:54:49.000000000","message":"Done","commit_id":"b0eaea47b842c9dfe98f539b9af1c9d5829048fd"}],"nova/tests/unit/api/openstack/compute/test_server_external_events.py":[{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"7cee973578fccb61401a4bac3198152f7cdbfddb","unresolved":false,"context_lines":[{"line_number":276,"context_line":"        self.useFixture(fx.EnvironmentVariable(\u0027OS_DEBUG\u0027, \u00271\u0027))"},{"line_number":277,"context_line":"        self.stdlog \u003d self.useFixture(fixtures.StandardLogging())"},{"line_number":278,"context_line":""},{"line_number":279,"context_line":"    def test_accelerator_request_bound_event(self):"},{"line_number":280,"context_line":"        body \u003d self.default_body"},{"line_number":281,"context_line":"        event_name \u003d \u0027accelerator-request-bound\u0027"},{"line_number":282,"context_line":"        body[\u0027events\u0027][0][\u0027name\u0027] \u003d event_name  # event 0 has a tag"}],"source_content_type":"text/x-python","patch_set":9,"id":"3fa7e38b_b4957033","line":279,"updated":"2020-01-21 06:31:47.000000000","message":"Ignore my comments in PS8, this unit test complete the test with this event, we don\u0027t need the functional test, another, this used fot external service events.","commit_id":"ea8d95cb2bd0b68ea49af150767b3351dfb9a056"}],"releasenotes/notes/accelerator-requests-6c9a6fef77ab776a.yaml":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"ba433dd9936c92decb270f984ab6d951e109c15d","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    Handling accelerator requests for an instance is now supported (where"},{"line_number":5,"context_line":"    supported by the underlying virt driver) as of microversion"},{"line_number":6,"context_line":"    2.82. The Cyborg service generates an event for the binding"},{"line_number":7,"context_line":"    completion for each accelerator request for an instance."},{"line_number":8,"context_line":"    Adds a new event ``accelerator_request_bound`` for this to the API:"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"    * ``POST /os-server-external-events``"}],"source_content_type":"text/x-yaml","patch_set":17,"id":"1fa4df85_95207eb2","line":7,"range":{"start_line":7,"start_character":24,"end_line":7,"end_character":43},"updated":"2020-03-02 13:58:06.000000000","message":"... (ARQ) ...","commit_id":"c6365f1b55cdbc33452fe3b40d3a7039f53f631c"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"e1cd06d7f81ce228ad4c1afc2f4d5cb89678ffe3","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    Handling accelerator requests for an instance is now supported (where"},{"line_number":5,"context_line":"    supported by the underlying virt driver) as of microversion"},{"line_number":6,"context_line":"    2.82. The Cyborg service generates an event for the binding"},{"line_number":7,"context_line":"    completion for each accelerator request for an instance."},{"line_number":8,"context_line":"    Adds a new event ``accelerator_request_bound`` for this to the API:"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"    * ``POST /os-server-external-events``"}],"source_content_type":"text/x-yaml","patch_set":17,"id":"df33271e_637abf24","line":7,"range":{"start_line":7,"start_character":24,"end_line":7,"end_character":43},"in_reply_to":"1fa4df85_95207eb2","updated":"2020-03-25 07:51:32.000000000","message":"Done","commit_id":"c6365f1b55cdbc33452fe3b40d3a7039f53f631c"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"ba433dd9936c92decb270f984ab6d951e109c15d","unresolved":false,"context_lines":[{"line_number":7,"context_line":"    completion for each accelerator request for an instance."},{"line_number":8,"context_line":"    Adds a new event ``accelerator_request_bound`` for this to the API:"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"    * ``POST /os-server-external-events``"}],"source_content_type":"text/x-yaml","patch_set":17,"id":"1fa4df85_b5149a4f","line":10,"range":{"start_line":10,"start_character":4,"end_line":10,"end_character":5},"updated":"2020-03-02 13:58:06.000000000","message":"not sure this needs to be a one-element bullet list, could just be inline.","commit_id":"c6365f1b55cdbc33452fe3b40d3a7039f53f631c"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"e1cd06d7f81ce228ad4c1afc2f4d5cb89678ffe3","unresolved":false,"context_lines":[{"line_number":7,"context_line":"    completion for each accelerator request for an instance."},{"line_number":8,"context_line":"    Adds a new event ``accelerator_request_bound`` for this to the API:"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"    * ``POST /os-server-external-events``"}],"source_content_type":"text/x-yaml","patch_set":17,"id":"df33271e_c3774b3a","line":10,"range":{"start_line":10,"start_character":4,"end_line":10,"end_character":5},"in_reply_to":"1fa4df85_b5149a4f","updated":"2020-03-25 07:51:32.000000000","message":"Done","commit_id":"c6365f1b55cdbc33452fe3b40d3a7039f53f631c"}]}
