)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"3a437f0e9a091fa9da4f20d752f5ddddd96d37d9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"3ce0140b_6568b7dc","updated":"2026-04-09 16:31:21.000000000","message":"I don\u0027t believe we should add this to SDK. From [the nova api-ref](https://docs.openstack.org/api-ref/compute/#create-external-events-os-server-external-events):\n\n\u003e This is an `admin` level service API only designed to be used by other OpenStack services. The point of this API is to coordinate between Nova and Neutron, Nova and Cinder, Nova and Ironic (and potentially future services) on activities they both need to be involved in, such as network hotplugging.\n\u003e \n\u003e Unless you are writing Neutron, Cinder or Ironic code you *should not* be using this API.\n\nI assume you want this for removing neutron or nova client somewhere? If so, this is likely one of the rare cases where it would make more sense to use the http methods on the proxy.\n\n```\n\u003e\u003e\u003e import openstack\n\u003e\u003e\u003e conn \u003d openstack.connect(cloud\u003d\u0027devstack-admin\u0027)\n\u003e\u003e\u003e events \u003d {}\n\u003e\u003e\u003e conn.compute.post(\u0027/os-server-external-events\u0027, json\u003devents)\n```\n\nobviously with a populated `events` body","commit_id":"11f16def2866d6ecfdf1303653346f03ebcce521"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"a4f033728645bfffef47bacc14a90aae1533fe69","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"62a2a5c7_9db43015","in_reply_to":"06e0faf1_494f8993","updated":"2026-04-21 10:25:17.000000000","message":"Thanks, I updated the Neutron side (https://review.opendev.org/c/openstack/neutron/+/983905) patch and the client.compute.post() works fine really","commit_id":"11f16def2866d6ecfdf1303653346f03ebcce521"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"5d905f44efa21f6640b5ee27737112327842fd17","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"06e0faf1_494f8993","in_reply_to":"0e9f9eb1_bb952949","updated":"2026-04-15 12:16:25.000000000","message":"yeah, I think haleyb just jumped to those, so that can be also a topic :)","commit_id":"11f16def2866d6ecfdf1303653346f03ebcce521"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"1f77cd09beb5e2bb677c103b2a3f2b60186e6054","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"adba2d55_1498d1a7","in_reply_to":"3ce0140b_6568b7dc","updated":"2026-04-13 11:34:53.000000000","message":"Currently Neutron uses novaclient to send this event to Nova (I suppose Cinder, Cyborg...) also do the same, but if we want to move everything out from novaclient we have to have the possiblity to send /os-server-external-events from SDK or send a direct HTTP POST from the middle of Neutron for example.","commit_id":"11f16def2866d6ecfdf1303653346f03ebcce521"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"13450b99102ffb29ea4e83d0fcf8de8917a22c80","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"0e9f9eb1_bb952949","in_reply_to":"3f3e86e2_5b547a7f","updated":"2026-04-14 16:48:52.000000000","message":"Ack. For what it\u0027s worth, if you look at openstackclient you\u0027ll find a number of places where we use these raw HTTP methods for e.g. nova-network, since we didn\u0027t want to add those things to SDK either.","commit_id":"11f16def2866d6ecfdf1303653346f03ebcce521"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"5cfa18970a3623ecfb9eff32241d64980068b761","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"dc709d2d_b9e1f964","in_reply_to":"62a2a5c7_9db43015","updated":"2026-04-21 18:46:08.000000000","message":"you can use the raw client but that seriously undermined the creditability of the sdk project if we dont support this\n\nunless you planning to rip out supprot for cinder swap volume or neutron port bidning as well?\n\nhttps://github.com/openstack/openstacksdk/blob/405e2d7836a2777eb59f06f95f4025faa058f166/openstack/network/v2/port_binding.py\nhttps://github.com/openstack/openstacksdk/blob/master/openstack/network/v2/_proxy.py#L3541-L3602\nhttps://docs.openstack.org/api-ref/network/v2/index.html?expanded\u003dshow-port-binding-of-a-port-detail#activate-port-binding\n\nhttps://github.com/openstack/openstacksdk/blob/master/openstack/compute/v2/_proxy.py#L2143\nhttps://docs.openstack.org/api-ref/compute/#update-swapping-a-volume-attachment\n\nif we cant use ths sdk for service to service api then we shoudl not use the sdk in services.\n\n\nonly nova or ironic or zun shoudl ever call those api as they are service only apis just like the external evnets api.","commit_id":"11f16def2866d6ecfdf1303653346f03ebcce521"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"a32e5fe762eab5d4e9b835252db3b7e8bd3038e3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"3f3e86e2_5b547a7f","in_reply_to":"adba2d55_1498d1a7","updated":"2026-04-14 16:41:04.000000000","message":"I will check how to send with the post method you wrote.\nJust to be sure that Nova folks are aware of this topic/change I dropped this to nova channel and Uggla asked me to add to the PTG etherpad, as others also use this API (I mean not just Neutron) it can be useful to make it more visible","commit_id":"11f16def2866d6ecfdf1303653346f03ebcce521"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"e0c948eff0085bff8f7c2dc91da1e17452f1ca6d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"23fd12a5_62a70f9e","in_reply_to":"dc709d2d_b9e1f964","updated":"2026-04-22 13:48:22.000000000","message":"Actually after checking the depths of it and testing I think what Stephen suggested is a good way, see the actual patch: https://review.opendev.org/c/openstack/neutron/+/983905/3/neutron/notifiers/nova.py\n\nWe still use SDK, but without the helpers of having Events class (or whatever it should be).\n\nOn the other hand it is true that we have the policy files to restrict users from using the API over their boundaries, so I can live with any of these way forward.","commit_id":"11f16def2866d6ecfdf1303653346f03ebcce521"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"3190f0cf01cead811d676febc646ef90c087f4c4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"d235a96c_c76e524d","updated":"2026-05-06 09:04:08.000000000","message":"recheck networking-ext job marked non-voting while neutron issue fixed","commit_id":"3f07726a50b00e54a635a4f482353f544d8bf73d"}]}
