)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1a71444f1633ea4565e7bb7ae2360c63a7f937b1","unresolved":true,"context_lines":[{"line_number":55,"context_line":""},{"line_number":56,"context_line":"Change-Id: I1e701cbabc0e2c435685e31465159eec09e3b1a0"},{"line_number":57,"context_line":"Depends-On: https://review.opendev.org/c/openstack/nova/+/940873"},{"line_number":58,"context_line":"Depends-On: https://review.opendev.org/c/openstack/tempest/+/940943"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":40,"id":"f41bb280_b5eea9cc","line":58,"updated":"2025-02-18 21:13:55.000000000","message":"ironicly this is now failing because we need the tempst fix\n\nhttps://9b32f0b8cfc44eb5fd33-150df88d14e6b0a30b936772a21a5ab1.ssl.cf5.rackcdn.com/924844/40/check/nova-ovs-hybrid-plug/29f5c1d/testr_results.html\n\n\nft1.1: setUpClass (tempest.api.compute.admin.test_spice.SpiceDirectConsoleTestJSON)testtools.testresult.real._StringException: Traceback (most recent call last):\n  File \"/opt/stack/tempest/tempest/lib/common/rest_client.py\", line 1108, in validate_response\n    jsonschema.validate(body, body_schema,\n  File \"/opt/stack/tempest/.tox/tempest/lib/python3.11/site-packages/jsonschema/validators.py\", line 1332, in validate\n    raise error\njsonschema.exceptions.ValidationError: Additional properties are not allowed (\u0027properties\u0027 was unexpected)\n\nFailed validating \u0027additionalProperties\u0027 in schema[0]:\n    {\u0027type\u0027: \u0027object\u0027,\n     \u0027properties\u0027: {\u0027id\u0027: {\u0027type\u0027: \u0027string\u0027},\n                    \u0027links\u0027: {\u0027type\u0027: \u0027array\u0027,\n                              \u0027items\u0027: {\u0027type\u0027: \u0027object\u0027,\n                                        \u0027properties\u0027: {\u0027href\u0027: {\u0027type\u0027: \u0027string\u0027,\n                                                                \u0027format\u0027: \u0027uri\u0027},\n                                                       \u0027rel\u0027: {\u0027type\u0027: \u0027string\u0027}},\n                                        \u0027additionalProperties\u0027: False,\n                                        \u0027required\u0027: [\u0027href\u0027, \u0027rel\u0027]}}},\n     \u0027additionalProperties\u0027: False,\n     \u0027required\u0027: [\u0027id\u0027, \u0027links\u0027]}\n\nOn instance:\n    {\u0027id\u0027: \u00279f0ccac2-f61a-4fe2-9e46-33674a718c3a\u0027,\n     \u0027links\u0027: [{\u0027rel\u0027: \u0027bookmark\u0027,\n                \u0027href\u0027: \u0027https://217.182.140.12/compute/images/9f0ccac2-f61a-4fe2-9e46-33674a718c3a\u0027}],\n     \u0027properties\u0027: {\u0027hw_rng_model\u0027: \u0027virtio\u0027,\n                    \u0027owner_specified.openstack.md5\u0027: \u0027\u0027,\n                    \u0027owner_specified.openstack.sha256\u0027: \u0027\u0027,\n                    \u0027owner_specified.openstack.object\u0027: \u0027images/cirros-0.6.3-x86_64-disk\u0027,\n                    \u0027min_ram\u0027: \u00270\u0027,\n                    \u0027min_disk\u0027: \u00271\u0027,\n                    \u0027disk_format\u0027: \u0027qcow2\u0027,\n                    \u0027container_format\u0027: \u0027bare\u0027,\n                    \u0027base_image_ref\u0027: \u00279f0ccac2-f61a-4fe2-9e46-33674a718c3a\u0027}}\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n  File \"/opt/stack/tempest/tempest/test.py\", line 185, in setUpClass\n    raise value.with_traceback(trace)\n  File \"/opt/stack/tempest/tempest/test.py\", line 178, in setUpClass\n    cls.resource_setup()\n  File \"/opt/stack/tempest/tempest/api/compute/admin/test_spice.py\", line 63, in resource_setup\n    cls.server \u003d cls.create_test_server(wait_until\u003d\"ACTIVE\")\n                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"/opt/stack/tempest/tempest/api/compute/base.py\", line 243, in create_test_server\n    body, servers \u003d compute.create_test_server(\n                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"/opt/stack/tempest/tempest/common/compute.py\", line 340, in create_test_server\n    with excutils.save_and_reraise_exception():\n  File \"/opt/stack/tempest/.tox/tempest/lib/python3.11/site-packages/oslo_utils/excutils.py\", line 227, in __exit__\n    self.force_reraise()\n  File \"/opt/stack/tempest/.tox/tempest/lib/python3.11/site-packages/oslo_utils/excutils.py\", line 200, in force_reraise\n    raise self.value\n  File \"/opt/stack/tempest/tempest/common/compute.py\", line 323, in create_test_server\n    server \u003d waiters.wait_for_server_status(\n             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"/opt/stack/tempest/tempest/common/waiters.py\", line 40, in wait_for_server_status\n    body \u003d client.show_server(server_id)[\u0027server\u0027]\n           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"/opt/stack/tempest/tempest/lib/services/compute/servers_client.py\", line 167, in show_server\n    self.validate_response(schema.get_server, resp, body)\n  File \"/opt/stack/tempest/tempest/lib/common/rest_client.py\", line 1113, in validate_response\n    raise exceptions.InvalidHTTPResponseBody(msg)\ntempest.lib.exceptions.InvalidHTTPResponseBody: HTTP response body is invalid json or xml\nDetails: HTTP response body is invalid (Additional properties are not allowed (\u0027properties\u0027 was unexpected)\n\nFailed validating \u0027additionalProperties\u0027 in schema[0]:\n    {\u0027type\u0027: \u0027object\u0027,\n     \u0027properties\u0027: {\u0027id\u0027: {\u0027type\u0027: \u0027string\u0027},\n                    \u0027links\u0027: {\u0027type\u0027: \u0027array\u0027,\n                              \u0027items\u0027: {\u0027type\u0027: \u0027object\u0027,\n                                        \u0027properties\u0027: {\u0027href\u0027: {\u0027type\u0027: \u0027string\u0027,\n                                                                \u0027format\u0027: \u0027uri\u0027},\n                                                       \u0027rel\u0027: {\u0027type\u0027: \u0027string\u0027}},\n                                        \u0027additionalProperties\u0027: False,\n                                        \u0027required\u0027: [\u0027href\u0027, \u0027rel\u0027]}}},\n     \u0027additionalProperties\u0027: False,\n     \u0027required\u0027: [\u0027id\u0027, \u0027links\u0027]}\n\nOn instance:\n    {\u0027id\u0027: \u00279f0ccac2-f61a-4fe2-9e46-33674a718c3a\u0027,\n     \u0027links\u0027: [{\u0027rel\u0027: \u0027bookmark\u0027,\n                \u0027href\u0027: \u0027https://217.182.140.12/compute/images/9f0ccac2-f61a-4fe2-9e46-33674a718c3a\u0027}],\n     \u0027properties\u0027: {\u0027hw_rng_model\u0027: \u0027virtio\u0027,\n                    \u0027owner_specified.openstack.md5\u0027: \u0027\u0027,\n                    \u0027owner_specified.openstack.sha256\u0027: \u0027\u0027,\n                    \u0027owner_specified.openstack.object\u0027: \u0027images/cirros-0.6.3-x86_64-disk\u0027,\n                    \u0027min_ram\u0027: \u00270\u0027,\n                    \u0027min_disk\u0027: \u00271\u0027,\n                    \u0027disk_format\u0027: \u0027qcow2\u0027,\n                    \u0027container_format\u0027: \u0027bare\u0027,\n                    \u0027base_image_ref\u0027: \u00279f0ccac2-f61a-4fe2-9e46-33674a718c3a\u0027}})","commit_id":"fd6210fef923aaade11af282834d31be32cc3e57"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1835db69a9a46f71099fbb39f423d77eb8b2174a","unresolved":false,"context_lines":[{"line_number":55,"context_line":""},{"line_number":56,"context_line":"Change-Id: I1e701cbabc0e2c435685e31465159eec09e3b1a0"},{"line_number":57,"context_line":"Depends-On: https://review.opendev.org/c/openstack/nova/+/940873"},{"line_number":58,"context_line":"Depends-On: https://review.opendev.org/c/openstack/tempest/+/940943"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":40,"id":"bf0a496a_7646ca9d","line":58,"in_reply_to":"f41bb280_b5eea9cc","updated":"2025-02-19 20:18:11.000000000","message":"Done","commit_id":"fd6210fef923aaade11af282834d31be32cc3e57"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"d3960cb3d89e242daac867823cf510de7c06cafd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"84e6d478_5a373de0","updated":"2024-08-12 11:30:42.000000000","message":"i need to review this again just not right now.\nthis change should have the release note in it as it effectively complete the feature.\n\nthe rest of the followup patches should extend that release note as they add additional functionality or have there own releasenote for each additional feature \n\nthe choice on that is yours to make, either is fine.","commit_id":"c5b7caf996fda96183b9e2ba683668d77d364861"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"8bf8d3d29b0c00f25621d0875db94735fcc4b25d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"c3c7c78a_ac810a02","updated":"2024-08-22 06:36:57.000000000","message":"Now split into three patches.","commit_id":"9c324e5496b9a7b6b02c713a347e38dc97eda940"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"058950bc3cf98a96808f4c814fe0020c0464117a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"6c2d0c14_aa05f967","updated":"2024-08-20 13:32:32.000000000","message":"im a little conflcited.\n\noverall this looks good one comment on the config option inline\n\nthe patch fully implemtes teh feature which is nice although its perhaps larger then it shoudl be and we coudl consider splitign this into 3 patches\n\nobject change then db change then api+compute changes.\n\nill leave dan or other weigh in on that.\n\n+1 partly because this will need a respine for the trivial pep8 issue anyway.\n\ndirectionally this is good and close to what i was expecting based on the spec.\n\nit would be nice to have a install guide docs update to describe how to configure this\nend to end but that could be in a later patch.","commit_id":"9c324e5496b9a7b6b02c713a347e38dc97eda940"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"525cddd955a6fa012b06da6ea5185340fbacadcb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"3a1d0f3f_965be327","updated":"2024-08-22 13:56:19.000000000","message":"actully it was failing in the previous version too","commit_id":"9980e004a9097e8a2277169b00523f1624034e71"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"f7dcf4247ca51bbcbf8f7ddcca1061a3514129ea","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"52fb3519_3abaaa78","updated":"2024-08-22 10:13:36.000000000","message":"recheck","commit_id":"9980e004a9097e8a2277169b00523f1624034e71"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"09a255bbe7faab2be16c2258575816349a031e20","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"312b374f_fea160d2","updated":"2024-08-22 13:55:33.000000000","message":"the functional test failure is ligit\n\nFileNotFoundError: [Errno 2] No such file or directory: \u0027/home/zuul/src/opendev.org/openstack/nova/nova/tests/functional/api_sample_tests/api_samples/os-remote-consoles/v2.97/create-spice-direct-console-req.json.tpl\u0027\n\nill review the rest of the patch but looks like your missing an api sample file for the new microversion perhaps you missed a git add when spliting things up?","commit_id":"9980e004a9097e8a2277169b00523f1624034e71"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"6e0102102cd6124957a0be71e47d173c9a3e8f71","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"52f5816c_e8ef381f","in_reply_to":"312b374f_fea160d2","updated":"2024-08-22 17:49:34.000000000","message":"you need to add a file like this \n\nnova/tests/functional/api_sample_tests/api_samples/os-console-auth-tokens/v2.31/create-serial-console-req.json.tpl\n\nto cover the new microversion","commit_id":"9980e004a9097e8a2277169b00523f1624034e71"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"ebb4469e0b1d56210384d08b966f94683372eb42","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"74292772_c5b370b3","in_reply_to":"52f5816c_e8ef381f","updated":"2024-08-22 22:11:24.000000000","message":"I am confused as this didn\u0027t fail before the split. I guess I missed something during the refactor, I\u0027ll try and sort it out today.","commit_id":"9980e004a9097e8a2277169b00523f1624034e71"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"d4405553df1934435b8f2345e1d5c4b49caf0384","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"12dbf7a9_50df6802","in_reply_to":"74292772_c5b370b3","updated":"2024-08-23 08:17:44.000000000","message":"no this did fail before the split in patch set \n7 https://storage.gra.cloud.ovh.net/v1/AUTH_dcaab5e32b234d56b626f72581e3644c/zuul_opendev_logs_3d7/924844/7/check/nova-tox-functional-py39/3d78c3a/testr_results.html\n\n6 https://7722787aab27262520fe-fc1e7af78d7504e20bbc3359634b65b5.ssl.cf5.rackcdn.com/924844/6/check/nova-tox-functional-py39/6ee3a5c/testr_results.html\n\n5 https://5481f30c7f7864f4d07b-85bb929ac58f1a419407783b8f581cf5.ssl.cf5.rackcdn.com/924844/5/check/nova-tox-functional-py39/2d4715d/testr_results.html\n\nand proaly before but i stop checkign after 3 revisions.","commit_id":"9980e004a9097e8a2277169b00523f1624034e71"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"ae14ae9875d675364c06c0facb019afa1106def6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"9c37ecbf_d8469fed","updated":"2024-08-29 05:45:53.000000000","message":"Not sure if I missed anything but this looks mostly OK. -1 because I think a couple of tests are missing and a possible typo in the config option help.","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"52ba66eda50c8e872405699ffb61f8c39e469baf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":15,"id":"c86d87fc_cd115549","updated":"2024-08-30 21:56:15.000000000","message":"I also noticed that this is missing an update for the api-ref doc.","commit_id":"7784c5a722b409b892bff44c25869b9bf33ee6c6"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"4debc991b91ab2507cbfb16a1a1dbc97d019898f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":15,"id":"8aa0a703_7f0336e3","updated":"2024-08-30 23:39:55.000000000","message":"I cannot for the life of me see why the api-sample test is failing. I will keep beating at it, but I have no idea when I\u0027ll figure it out.","commit_id":"7784c5a722b409b892bff44c25869b9bf33ee6c6"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"0a9bce2b5b9b6d9ca9436295e576921d8b183236","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"10b74817_ea3832ff","updated":"2024-09-01 07:20:26.000000000","message":"I\u0027m removing the test for get on /srvers/\u003cuuid\u003e/remote-consoles, because I now think that we dropped support for that in v2.6 and that\u0027s why the test is failing.","commit_id":"777f6de5ca9ddabbd4de9abac10e54364a7aaaa2"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"a1dd0e9252da410eebcb4f0c0a2977df47fb0e66","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"35200589_b8001956","in_reply_to":"10b74817_ea3832ff","updated":"2024-09-04 00:12:56.000000000","message":"Indeed you are right, I looked for the removal explanation in the microversion history:\nhttps://docs.openstack.org/nova/latest/reference/api-microversion-history.html#id5","commit_id":"777f6de5ca9ddabbd4de9abac10e54364a7aaaa2"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"81c29cecbfd4cbdcb126e158e8dbda591fe4216a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":20,"id":"0b1f02b8_2bb09d21","updated":"2024-11-03 22:49:46.000000000","message":"recheck","commit_id":"4747b939eb24857609a6067ad604f3eb5becc5e0"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"6c749926aba5cc39420bd35ec2e2c202e9d79842","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":20,"id":"77858bd6_a297e285","updated":"2024-11-03 08:51:11.000000000","message":"recheck","commit_id":"4747b939eb24857609a6067ad604f3eb5becc5e0"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"e9c13ab4dbe053fb4a90229053565d14b557c196","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":22,"id":"89b103ba_bc7a3777","updated":"2024-12-31 03:12:49.000000000","message":"recheck","commit_id":"e8f83493f64b220885cf1f7c416fb15702822405"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"f69ca437ec88ac104de05d3a670655a1bc1725de","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":26,"id":"64a79766_1fb8c781","updated":"2025-02-05 03:12:34.000000000","message":"This is a lot to parse with all the docs that go along with it -- so I may have missed something.\n\nNoticed some small issues with the main one being the api-ref for the addition of spice-direct. When I looked at the doc preview [1] from the api-ref build job, the new type spice-direct is not shown in the POST /servers/{server_id}/remote-consoles section.\n\nAlso noticed it looks like this is missing API samples for the new GET /os-console-auth-tokens/{console_token} response parameter tls_port with spice-direct. I guess I\u0027m not 100% sure if we ever intentionally skip any api samples and api sample tests.\n\nAnother question: is it possible to test this in Tempest at all? Or has someone tried out the latest PS?\n\n[1] https://storage.gra.cloud.ovh.net/v1/AUTH_dcaab5e32b234d56b626f72581e3644c/zuul_opendev_logs_ef7/924844/29/check/build-openstack-api-ref/ef7bc29/docs/","commit_id":"f0e0ba82bf281b8aa6626dda9fbed7cd95e853a0"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"62d5d6ba934fc4afd19d6504bddb293c405b22b8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"e5dd6b7a_c5b33b82","updated":"2025-02-06 19:12:32.000000000","message":"recheck ceph flakey","commit_id":"0c5e8c66b23511bba079fda74181ccb4eb5343c2"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"2001603c3045aef73aee2d6dec56dbc86b59dc71","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":33,"id":"8faa302d_2c30f74a","updated":"2025-02-10 08:50:49.000000000","message":"This one was done a while ago, but I didn\u0027t mash the button.","commit_id":"8db91a4c5918070760af01f7e082a6b6e967f6e6"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"d557533a77ba48c095bb8c5082b986cc9250251f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":34,"id":"a39b9d40_2380bdcc","updated":"2025-02-10 18:52:33.000000000","message":"recheck no test run","commit_id":"f9203cf5079b2e1781b17da8d5e509c533d44c94"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"94893378cadd9dc40d979848f4b36df7103cdc35","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":34,"id":"bf368954_c58ceba4","updated":"2025-02-10 19:35:02.000000000","message":"recheck rebased https://review.opendev.org/c/openstack/nova/+/940873/","commit_id":"f9203cf5079b2e1781b17da8d5e509c533d44c94"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"4f976ff901f850a35b10957b48521b80ee523743","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":34,"id":"61f2b7b9_5bb75fa9","updated":"2025-02-10 20:00:53.000000000","message":"recheck updated devstack patch","commit_id":"f9203cf5079b2e1781b17da8d5e509c533d44c94"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"1b007cbdcfc6a32f6b7d638794a7599ca9dedadf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":35,"id":"929e9618_d5a9208b","updated":"2025-02-12 21:34:22.000000000","message":"recheck I think you get the general idea by now","commit_id":"5c6f751d9a14e55184d7f713504e947aaa85336a"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"4559af53e49a4f1bcbe8fb11585244ff89babb20","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":35,"id":"e6d37549_4c61fb9e","updated":"2025-02-12 07:59:15.000000000","message":"recheck arguing with new tempest test","commit_id":"5c6f751d9a14e55184d7f713504e947aaa85336a"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"d1364572fcd72d1dd6b31d415fd6a90e2bafd68a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":35,"id":"ba897d9a_3368215e","updated":"2025-02-12 18:58:25.000000000","message":"recheck developing tempest tests competence is low","commit_id":"5c6f751d9a14e55184d7f713504e947aaa85336a"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c750d01e6b174605cd2b91d55f1813cf667a2846","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":35,"id":"7f8d881f_3b9d36fa","updated":"2025-02-12 07:08:03.000000000","message":"recheck fixed new tempest test schema thingies","commit_id":"5c6f751d9a14e55184d7f713504e947aaa85336a"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"8e570e57a9b9712755044021beaa11d87761be0d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":35,"id":"d814bdbf_d03c8935","updated":"2025-02-12 19:44:29.000000000","message":"recheck michael, its called recheck.","commit_id":"5c6f751d9a14e55184d7f713504e947aaa85336a"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"ff552531382f2be4be426e4f04e2cfd7dedf8a40","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":35,"id":"91034195_ef4db94f","updated":"2025-02-12 09:11:30.000000000","message":"recheck still arguing with new tempest test","commit_id":"5c6f751d9a14e55184d7f713504e947aaa85336a"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"91844a7b1d76fccac596d341d17840bfc7a97831","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":35,"id":"a307f047_b97a9f32","updated":"2025-02-12 19:41:23.000000000","message":"retest urls, how do they work?","commit_id":"5c6f751d9a14e55184d7f713504e947aaa85336a"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"d73f9bbe16d5431b6fffc5892e6b3282e5d3110e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":35,"id":"d9550285_c1260afd","updated":"2025-02-12 02:48:37.000000000","message":"so the new test ran but failed.\n\ni belive this is the schema validation cod in tempst that is failing and gmann i think commented the same on the tempest patch already\nso hopefully that can be resolved in teh next verion fo the tempst patch.\n\n\nft1.1: tempest.api.compute.servers.test_spice.SpiceDirectConsoleTestJSON.test_spice_direct[id-80f4460d-1a06-403c-9e93-cf434c70be05]testtools.testresult.real._StringException: pythonlogging:\u0027\u0027: {{{\n2025-02-11 21:05:33,624 70943 INFO     [tempest.lib.common.rest_client] Request (SpiceDirectConsoleTestJSON:test_spice_direct): 200 POST https://217.182.142.81/compute/v2.1/servers/6bd2d7cf-d5c7-49c6-b289-7c961946e512/remote-consoles 1.055s\n2025-02-11 21:05:33,625 70943 DEBUG    [tempest.lib.common.rest_client] Request - Headers: {\u0027Content-Type\u0027: \u0027application/json\u0027, \u0027Accept\u0027: \u0027application/json\u0027, \u0027X-OpenStack-Nova-API-Version\u0027: \u00272.98\u0027, \u0027X-Auth-Token\u0027: \u0027\u003comitted\u003e\u0027}\n        Body: {\"remote_console\": {\"type\": \"spice-direct\", \"protocol\": \"spice\"}}\n    Response - Headers: {\u0027date\u0027: \u0027Tue, 11 Feb 2025 21:05:32 GMT\u0027, \u0027server\u0027: \u0027Apache/2.4.62 (Debian)\u0027, \u0027content-length\u0027: \u0027146\u0027, \u0027content-type\u0027: \u0027application/json\u0027, \u0027openstack-api-version\u0027: \u0027compute 2.98\u0027, \u0027x-openstack-nova-api-version\u0027: \u00272.98\u0027, \u0027vary\u0027: \u0027OpenStack-API-Version,X-OpenStack-Nova-API-Version\u0027, \u0027x-openstack-request-id\u0027: \u0027req-885baccf-58e1-439c-94d6-c795396e252d\u0027, \u0027x-compute-request-id\u0027: \u0027req-885baccf-58e1-439c-94d6-c795396e252d\u0027, \u0027connection\u0027: \u0027close\u0027, \u0027status\u0027: \u0027200\u0027, \u0027content-location\u0027: \u0027https://217.182.142.81/compute/v2.1/servers/6bd2d7cf-d5c7-49c6-b289-7c961946e512/remote-consoles\u0027}\n        Body: b\u0027{\"remote_console\": {\"protocol\": \"spice\", \"type\": \"spice-direct\", \"url\": \"http://127.0.0.1:13002/nova?token\u003d5f9d6c94-e3be-4c2b-b1e8-f0fbb295fcab\"}}\u0027\n}}}\n\nTraceback (most recent call last):\n  File \"/opt/stack/tempest/tempest/lib/common/rest_client.py\", line 1108, in validate_response\n    jsonschema.validate(body, body_schema,\n  File \"/opt/stack/tempest/.tox/tempest/lib/python3.11/site-packages/jsonschema/validators.py\", line 1332, in validate\n    raise error\njsonschema.exceptions.ValidationError: \u0027spice-direct\u0027 is not one of [\u0027novnc\u0027, \u0027xvpvnc\u0027, \u0027rdp-html5\u0027, \u0027spice-html5\u0027, \u0027serial\u0027, \u0027webmks\u0027]\n\nFailed validating \u0027enum\u0027 in schema[\u0027properties\u0027][\u0027remote_console\u0027][\u0027properties\u0027][\u0027type\u0027]:\n    {\u0027enum\u0027: [\u0027novnc\u0027,\n              \u0027xvpvnc\u0027,\n              \u0027rdp-html5\u0027,\n              \u0027spice-html5\u0027,\n              \u0027serial\u0027,\n              \u0027webmks\u0027]}\n\nOn instance[\u0027remote_console\u0027][\u0027type\u0027]:\n    \u0027spice-direct\u0027\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n  File \"/opt/stack/tempest/tempest/api/compute/servers/test_spice.py\", line 70, in test_spice_direct\n    body \u003d self.servers_client.get_remote_console(\n           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"/opt/stack/tempest/tempest/lib/services/compute/servers_client.py\", line 680, in get_remote_console\n    self.validate_response(schema.get_remote_consoles, resp, body)\n  File \"/opt/stack/tempest/tempest/lib/common/rest_client.py\", line 1113, in validate_response\n    raise exceptions.InvalidHTTPResponseBody(msg)\ntempest.lib.exceptions.InvalidHTTPResponseBody: HTTP response body is invalid json or xml\nDetails: HTTP response body is invalid (\u0027spice-direct\u0027 is not one of [\u0027novnc\u0027, \u0027xvpvnc\u0027, \u0027rdp-html5\u0027, \u0027spice-html5\u0027, \u0027serial\u0027, \u0027webmks\u0027]\n\nFailed validating \u0027enum\u0027 in schema[\u0027properties\u0027][\u0027remote_console\u0027][\u0027properties\u0027][\u0027type\u0027]:\n    {\u0027enum\u0027: [\u0027novnc\u0027,\n              \u0027xvpvnc\u0027,\n              \u0027rdp-html5\u0027,\n              \u0027spice-html5\u0027,\n              \u0027serial\u0027,\n              \u0027webmks\u0027]}\n\nOn instance[\u0027remote_console\u0027][\u0027type\u0027]:\n    \u0027spice-direct\u0027)","commit_id":"5c6f751d9a14e55184d7f713504e947aaa85336a"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"2386c78620f068c21a06ba34dff2b7dcdd144b75","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":35,"id":"7178dca2_8d8d0188","updated":"2025-02-12 02:51:43.000000000","message":"spice test is failing because if tempest change missing schema versioning https://review.opendev.org/c/openstack/tempest/+/940943/comment/4b1cc154_361f1c5e/","commit_id":"5c6f751d9a14e55184d7f713504e947aaa85336a"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"8f4d4dc05752be9c8344c37ad917b3164e9c7ed3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":36,"id":"b8e69cc9_d2af40b9","updated":"2025-02-13 01:10:08.000000000","message":"recheck eventually I will win","commit_id":"3e04a908df70c8a94ddacaaabbdb003d75b89431"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"5b879d5725e40ea01f97424669653cbfc826fc2c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":36,"id":"2d5736b1_1865a2cd","updated":"2025-02-12 23:02:21.000000000","message":"recheck fix console ip assumption in tempest test","commit_id":"3e04a908df70c8a94ddacaaabbdb003d75b89431"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"43b0f90185960e8969ea863a49c6d4e8d0846311","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":36,"id":"d6cb5b0b_201797ee","updated":"2025-02-13 00:06:48.000000000","message":"recheck what I lack in talent I make up for in persistence","commit_id":"3e04a908df70c8a94ddacaaabbdb003d75b89431"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"f8856f143b8a1aff190ab04cedaf75811d090816","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":37,"id":"4a5c4d60_1ba5eb30","updated":"2025-02-18 00:28:16.000000000","message":"i think these are what need to be updated","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"1142891579f5d10a64847b63e7338b6e46e78427","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":37,"id":"4927fc81_147450da","updated":"2025-02-18 10:47:05.000000000","message":"you unfortunately need to rebase your change due to the microversion bump but I also have an upgrade question about the returned value of tls_port for an old compute.","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"47872014f8ab3e09bab971168417c4850e39be66","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":40,"id":"ce618229_ef09dd93","updated":"2025-02-19 08:13:22.000000000","message":"+2 with comments that can be addressed later, nothing worth holding the merge.","commit_id":"fd6210fef923aaade11af282834d31be32cc3e57"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"483c9ce5ccd65bf99667e8c2e784491c3b7b2448","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":40,"id":"050118ec_5392e73a","updated":"2025-02-19 01:38:36.000000000","message":"It looks like all of my comments from PS29 were addressed, thank you. This LGTM.\n\nUnderstood regarding the Tempest test that https://review.opendev.org/c/openstack/tempest/+/942023 is needed to enable it to work again.","commit_id":"fd6210fef923aaade11af282834d31be32cc3e57"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"86315191dd1d87ac251568d823b1d1a429a52b93","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":40,"id":"e4c3a9ce_29fc1083","updated":"2025-02-21 02:10:12.000000000","message":"recheck https://review.opendev.org/c/openstack/tempest/+/942023 has merged","commit_id":"fd6210fef923aaade11af282834d31be32cc3e57"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1a71444f1633ea4565e7bb7ae2360c63a7f937b1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":40,"id":"8a226b96_36dfa730","updated":"2025-02-18 21:13:55.000000000","message":"the current version fixes the other test failes\n\nwe either need to merge the tempest fix first\nor skip the test and reenable it in a follow up when tempest is fixed\n\nif we merge the tempest test first we shodl be sure that we are not going to chnage the microverison again.","commit_id":"fd6210fef923aaade11af282834d31be32cc3e57"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"7d44821c87eaea6ff0f84803d0d0a3a43602dc22","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":42,"id":"5e1c11de_de20dd52","updated":"2025-02-22 00:00:23.000000000","message":"I have verified the spice Tempest test passes using https://review.opendev.org/c/openstack/nova/+/942493 and https://review.opendev.org/c/openstack/tempest/+/942492 (a Tempest patch is required to handle the 2.98 microversion that added image properties to /servers).\n\nCan also confirm no code has changed since PS40 which I had +1ed. Upgrading to +2 based on the testing I did.","commit_id":"cbc263f6bc741734c4da11f8725e38a59c02f0e7"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"89156e4ad57335f48a8d77290272627d532e3a15","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":42,"id":"e282f432_410b7c99","updated":"2025-02-21 23:55:54.000000000","message":"re adding +2\n\nthe only change is the commit message removing the depend on that is not needed any more","commit_id":"cbc263f6bc741734c4da11f8725e38a59c02f0e7"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"f226b5c3e471453dbc960b0bd9a524655a4f8a74","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":42,"id":"3bcc565e_7d7f7de2","updated":"2025-02-24 12:04:34.000000000","message":"recheck https://review.opendev.org/c/openstack/tempest/+/942492 merged","commit_id":"cbc263f6bc741734c4da11f8725e38a59c02f0e7"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"5d0a7bc990b0086f040c9ece4c538732f0a2ddf3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":42,"id":"5ff7f096_18a73e8f","updated":"2025-02-24 15:14:01.000000000","message":"recheck related timeout\n\nthe spice test passed in the hybrid plug job\n\ntest_spice_direct[id-80f4460d-1a06-403c-9e93-cf434c70be05]\n\tpass\n[x]\n\n        \npt9.1: tempest.api.compute.admin.test_spice.SpiceDirectConsoleTestJSON.test_spice_direct[id-80f4460d-1a06-403c-9e93-cf434c70be05]\n\nhttps://storage.gra.cloud.ovh.net/v1/AUTH_dcaab5e32b234d56b626f72581e3644c/zuul_opendev_logs_1cb/924844/42/check/nova-ovs-hybrid-plug/1cb518b/testr_results.html\n        \nso im going ot +w the sereise","commit_id":"cbc263f6bc741734c4da11f8725e38a59c02f0e7"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"be1b6526d8ed2478f9d2f819b2ddcddd9026f881","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":42,"id":"6d4be1aa_7e0acbf6","updated":"2025-02-24 22:06:02.000000000","message":"recheck unrelated functionatl test failure\n\nRuntimeError: detected leaked greenlets in nova.tests.functional.libvirt.test_vgpu.VGPUMultipleTypesTests.test_create_servers_with_specific_type\n\nit looks like that test has a race with cleaning up? that not related to this change.","commit_id":"cbc263f6bc741734c4da11f8725e38a59c02f0e7"}],"api-ref/source/parameters.yaml":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"52ba66eda50c8e872405699ffb61f8c39e469baf","unresolved":true,"context_lines":[{"line_number":4259,"context_line":"  in: body"},{"line_number":4260,"context_line":"  required: true"},{"line_number":4261,"context_line":"  type: array"},{"line_number":4262,"context_line":"internal_access_path:"},{"line_number":4263,"context_line":"  description: |"},{"line_number":4264,"context_line":"    The id representing the internal access path."},{"line_number":4265,"context_line":"  in: body"},{"line_number":4266,"context_line":"  required: false"},{"line_number":4267,"context_line":"  type: string"},{"line_number":4268,"context_line":"ip_address:"},{"line_number":4269,"context_line":"  description: |"},{"line_number":4270,"context_line":"    The IP address."}],"source_content_type":"text/x-yaml","patch_set":12,"id":"bb832e67_6d3fdc7d","line":4267,"range":{"start_line":4262,"start_character":0,"end_line":4267,"end_character":14},"updated":"2024-08-30 21:56:15.000000000","message":"Example of a parameter which will be referenced in api-ref/source/servers-remote-consoles.inc\n\nExample from when server `locked_reason` was added:\n\nhttps://github.com/openstack/nova/commit/c541ace518219f6edad779ee0324586a0430b481#diff-90239de3f3bd41089568f5ad88d26b266e1bd9c2d2a107549a9641b60ad66808R4350-R4356","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"4debc991b91ab2507cbfb16a1a1dbc97d019898f","unresolved":false,"context_lines":[{"line_number":4259,"context_line":"  in: body"},{"line_number":4260,"context_line":"  required: true"},{"line_number":4261,"context_line":"  type: array"},{"line_number":4262,"context_line":"internal_access_path:"},{"line_number":4263,"context_line":"  description: |"},{"line_number":4264,"context_line":"    The id representing the internal access path."},{"line_number":4265,"context_line":"  in: body"},{"line_number":4266,"context_line":"  required: false"},{"line_number":4267,"context_line":"  type: string"},{"line_number":4268,"context_line":"ip_address:"},{"line_number":4269,"context_line":"  description: |"},{"line_number":4270,"context_line":"    The IP address."}],"source_content_type":"text/x-yaml","patch_set":12,"id":"27ccefae_7e0c4807","line":4267,"range":{"start_line":4262,"start_character":0,"end_line":4267,"end_character":14},"in_reply_to":"bb832e67_6d3fdc7d","updated":"2024-08-30 23:39:55.000000000","message":"Done","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"f69ca437ec88ac104de05d3a670655a1bc1725de","unresolved":true,"context_lines":[{"line_number":5407,"context_line":"os-getSPICEConsole-type:"},{"line_number":5408,"context_line":"  description: |"},{"line_number":5409,"context_line":"    The type of SPICE console. The valid values are ``spice-html5``"},{"line_number":5410,"context_line":"    and ``spice-direct``."},{"line_number":5411,"context_line":"  in: body"},{"line_number":5412,"context_line":"  required: true"},{"line_number":5413,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":29,"id":"bca8ba63_1b388748","line":5410,"updated":"2025-02-05 03:12:34.000000000","message":"I think this change should be removed because os-getSPICEConsole was removed in microversion 2.6.","commit_id":"425a756452b2deebddf75772788e3d533bec03b0"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"fce55cb8299030fc731635c69dde02b52962299d","unresolved":false,"context_lines":[{"line_number":5407,"context_line":"os-getSPICEConsole-type:"},{"line_number":5408,"context_line":"  description: |"},{"line_number":5409,"context_line":"    The type of SPICE console. The valid values are ``spice-html5``"},{"line_number":5410,"context_line":"    and ``spice-direct``."},{"line_number":5411,"context_line":"  in: body"},{"line_number":5412,"context_line":"  required: true"},{"line_number":5413,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":29,"id":"ba21d7ca_9afc954d","line":5410,"in_reply_to":"bca8ba63_1b388748","updated":"2025-02-10 08:49:41.000000000","message":"Done","commit_id":"425a756452b2deebddf75772788e3d533bec03b0"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"f69ca437ec88ac104de05d3a670655a1bc1725de","unresolved":true,"context_lines":[{"line_number":5988,"context_line":"  description: |"},{"line_number":5989,"context_line":"    The type of remote console. The valid values are ``novnc``,"},{"line_number":5990,"context_line":"    ``spice-html5``, ``serial``, and ``webmks``. The type"},{"line_number":5991,"context_line":"    ``webmks`` is added since Microversion ``2.8``."},{"line_number":5992,"context_line":"  in: body"},{"line_number":5993,"context_line":"  required: true"},{"line_number":5994,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":29,"id":"ddae9077_2c0ef34a","line":5991,"updated":"2025-02-05 03:12:34.000000000","message":"We should update this to show spice-direct as an option since microversion 2.98 (this is the API used instead of the removed os-getSPICEConsole since 2.6).","commit_id":"425a756452b2deebddf75772788e3d533bec03b0"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"fce55cb8299030fc731635c69dde02b52962299d","unresolved":false,"context_lines":[{"line_number":5988,"context_line":"  description: |"},{"line_number":5989,"context_line":"    The type of remote console. The valid values are ``novnc``,"},{"line_number":5990,"context_line":"    ``spice-html5``, ``serial``, and ``webmks``. The type"},{"line_number":5991,"context_line":"    ``webmks`` is added since Microversion ``2.8``."},{"line_number":5992,"context_line":"  in: body"},{"line_number":5993,"context_line":"  required: true"},{"line_number":5994,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":29,"id":"5887e138_7d67f67f","line":5991,"in_reply_to":"ddae9077_2c0ef34a","updated":"2025-02-10 08:49:41.000000000","message":"Done","commit_id":"425a756452b2deebddf75772788e3d533bec03b0"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"f69ca437ec88ac104de05d3a670655a1bc1725de","unresolved":true,"context_lines":[{"line_number":7100,"context_line":"  description: |"},{"line_number":7101,"context_line":"    The port number of a port requiring a TLS connection."},{"line_number":7102,"context_line":"  in: body"},{"line_number":7103,"context_line":"  required: true"},{"line_number":7104,"context_line":"  type: integer"},{"line_number":7105,"context_line":"to_port:"},{"line_number":7106,"context_line":"  description: |"}],"source_content_type":"text/x-yaml","patch_set":29,"id":"28e2dd80_9e29b56a","line":7103,"updated":"2025-02-05 03:12:34.000000000","message":"Shouldn\u0027t this be false? This is an optional query parameter IIUC, only returned for microversion \u003e\u003d 2.98 + spice-direct?","commit_id":"425a756452b2deebddf75772788e3d533bec03b0"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"fce55cb8299030fc731635c69dde02b52962299d","unresolved":false,"context_lines":[{"line_number":7100,"context_line":"  description: |"},{"line_number":7101,"context_line":"    The port number of a port requiring a TLS connection."},{"line_number":7102,"context_line":"  in: body"},{"line_number":7103,"context_line":"  required: true"},{"line_number":7104,"context_line":"  type: integer"},{"line_number":7105,"context_line":"to_port:"},{"line_number":7106,"context_line":"  description: |"}],"source_content_type":"text/x-yaml","patch_set":29,"id":"93b7c030_b828c342","line":7103,"in_reply_to":"28e2dd80_9e29b56a","updated":"2025-02-10 08:49:41.000000000","message":"Done","commit_id":"425a756452b2deebddf75772788e3d533bec03b0"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"1142891579f5d10a64847b63e7338b6e46e78427","unresolved":true,"context_lines":[{"line_number":5413,"context_line":"  type: object"},{"line_number":5414,"context_line":"os-getSPICEConsole-type:"},{"line_number":5415,"context_line":"  description: |"},{"line_number":5416,"context_line":"    The type of SPICE console. The valid values are ``spice-html5``."},{"line_number":5417,"context_line":"  in: body"},{"line_number":5418,"context_line":"  required: true"},{"line_number":5419,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":37,"id":"39737811_73ae7af8","line":5416,"updated":"2025-02-18 10:47:05.000000000","message":"not sure this change is yet needed but ok","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c3ac7361a3c84adaa8215cef587e675579c2f467","unresolved":false,"context_lines":[{"line_number":5413,"context_line":"  type: object"},{"line_number":5414,"context_line":"os-getSPICEConsole-type:"},{"line_number":5415,"context_line":"  description: |"},{"line_number":5416,"context_line":"    The type of SPICE console. The valid values are ``spice-html5``."},{"line_number":5417,"context_line":"  in: body"},{"line_number":5418,"context_line":"  required: true"},{"line_number":5419,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":37,"id":"dc6ac132_ab39d7ac","line":5416,"in_reply_to":"39737811_73ae7af8","updated":"2025-02-18 11:01:58.000000000","message":"This is an unintended change due to changing this and then backing that change out carelessly. I will clean it up.","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"47872014f8ab3e09bab971168417c4850e39be66","unresolved":true,"context_lines":[{"line_number":7107,"context_line":"  description: |"},{"line_number":7108,"context_line":"    The port number of a port requiring a TLS connection."},{"line_number":7109,"context_line":"  in: body"},{"line_number":7110,"context_line":"  required: false"},{"line_number":7111,"context_line":"  type: integer"},{"line_number":7112,"context_line":"to_port:"},{"line_number":7113,"context_line":"  description: |"}],"source_content_type":"text/x-yaml","patch_set":40,"id":"164d799b_7f62fbd5","line":7110,"updated":"2025-02-19 08:13:22.000000000","message":"yes indeed, only provided if spice-direct connection. Shall we document that ? (can be fixed in a follow-up patch)","commit_id":"fd6210fef923aaade11af282834d31be32cc3e57"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1835db69a9a46f71099fbb39f423d77eb8b2174a","unresolved":false,"context_lines":[{"line_number":7107,"context_line":"  description: |"},{"line_number":7108,"context_line":"    The port number of a port requiring a TLS connection."},{"line_number":7109,"context_line":"  in: body"},{"line_number":7110,"context_line":"  required: false"},{"line_number":7111,"context_line":"  type: integer"},{"line_number":7112,"context_line":"to_port:"},{"line_number":7113,"context_line":"  description: |"}],"source_content_type":"text/x-yaml","patch_set":40,"id":"b15c42a9_7dabe921","line":7110,"in_reply_to":"164d799b_7f62fbd5","updated":"2025-02-19 20:18:11.000000000","message":"Ack this can be a follwup","commit_id":"fd6210fef923aaade11af282834d31be32cc3e57"}],"api-ref/source/servers-remote-consoles.inc":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"52ba66eda50c8e872405699ffb61f8c39e469baf","unresolved":true,"context_lines":[{"line_number":90,"context_line":"  - instance_uuid: instance_id_body"},{"line_number":91,"context_line":"  - host: console_host"},{"line_number":92,"context_line":"  - port: port_number"},{"line_number":93,"context_line":"  - internal_access_path: internal_access_path"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"**Example Show Console Authentication Token**"},{"line_number":96,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":12,"id":"9a2a5f2c_1767809e","line":93,"updated":"2024-08-30 21:56:15.000000000","message":"`tls_port` would be added here using the name from api-ref/source/parameters.yaml\n\nExample from when server `locked_reason` was added:\n\nhttps://github.com/openstack/nova/commit/c541ace518219f6edad779ee0324586a0430b481#diff-337e99d59f1902c5cc56837577ce70a5b5ffa813a6ce8677f6c6e20fb15bb9d3R652","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"4debc991b91ab2507cbfb16a1a1dbc97d019898f","unresolved":false,"context_lines":[{"line_number":90,"context_line":"  - instance_uuid: instance_id_body"},{"line_number":91,"context_line":"  - host: console_host"},{"line_number":92,"context_line":"  - port: port_number"},{"line_number":93,"context_line":"  - internal_access_path: internal_access_path"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"**Example Show Console Authentication Token**"},{"line_number":96,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":12,"id":"990affa0_74468ad0","line":93,"in_reply_to":"9a2a5f2c_1767809e","updated":"2024-08-30 23:39:55.000000000","message":"Done","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"f69ca437ec88ac104de05d3a670655a1bc1725de","unresolved":true,"context_lines":[{"line_number":39,"context_line":""},{"line_number":40,"context_line":".. literalinclude:: ../../doc/api_samples/os-remote-consoles/v2.6/create-vnc-console-req.json"},{"line_number":41,"context_line":"   :language: javascript"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"Response"},{"line_number":44,"context_line":"--------"},{"line_number":45,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":29,"id":"0ceed461_df1779e6","line":42,"updated":"2025-02-05 03:12:34.000000000","message":"Here you could include if you wanted, an Example Get Remote Spice Direct Console (or what it is formally called) and literalinclude the request api sample for spice-direct.\n\nI could see not adding it too since it\u0027s just changing what value you would pass for type and not involving any new request parameters. So either way.","commit_id":"425a756452b2deebddf75772788e3d533bec03b0"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"fce55cb8299030fc731635c69dde02b52962299d","unresolved":false,"context_lines":[{"line_number":39,"context_line":""},{"line_number":40,"context_line":".. literalinclude:: ../../doc/api_samples/os-remote-consoles/v2.6/create-vnc-console-req.json"},{"line_number":41,"context_line":"   :language: javascript"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"Response"},{"line_number":44,"context_line":"--------"},{"line_number":45,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":29,"id":"11dff780_3c9471ac","line":42,"in_reply_to":"0ceed461_df1779e6","updated":"2025-02-10 08:49:41.000000000","message":"Done","commit_id":"425a756452b2deebddf75772788e3d533bec03b0"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"f69ca437ec88ac104de05d3a670655a1bc1725de","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":29,"id":"e3ac8988_36d93d92","line":100,"updated":"2025-02-05 03:12:34.000000000","message":"Here it might be nice to literalinclude the api sample response for os-console-auth-tokens v2.98 with spice-direct that shows the tls_port in the response.","commit_id":"425a756452b2deebddf75772788e3d533bec03b0"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"fce55cb8299030fc731635c69dde02b52962299d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":29,"id":"40364fe2_ef7d45df","line":100,"in_reply_to":"e3ac8988_36d93d92","updated":"2025-02-10 08:49:41.000000000","message":"Done","commit_id":"425a756452b2deebddf75772788e3d533bec03b0"}],"doc/api_samples/versions/versions-get-resp.json":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1a71444f1633ea4565e7bb7ae2360c63a7f937b1","unresolved":false,"context_lines":[{"line_number":22,"context_line":"                }"},{"line_number":23,"context_line":"            ],"},{"line_number":24,"context_line":"            \"status\": \"CURRENT\","},{"line_number":25,"context_line":"            \"version\": \"2.99\","},{"line_number":26,"context_line":"            \"min_version\": \"2.1\","},{"line_number":27,"context_line":"            \"updated\": \"2013-07-23T11:33:21Z\""},{"line_number":28,"context_line":"        }"}],"source_content_type":"application/json","patch_set":40,"id":"38f84fe1_6700fb0d","line":25,"updated":"2025-02-18 21:13:55.000000000","message":"ah one  missing update","commit_id":"fd6210fef923aaade11af282834d31be32cc3e57"}],"nova/api/openstack/compute/console_auth_tokens.py":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"ae14ae9875d675364c06c0facb019afa1106def6","unresolved":true,"context_lines":[{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        if connect_info.console_type \u003d\u003d \u0027spice-direct\u0027 and include_tls_port:"},{"line_number":70,"context_line":"            retval[\u0027console\u0027][\u0027tls_port\u0027] \u003d connect_info.tls_port"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        return retval"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"    @wsgi.Controller.api_version(\"2.1\", \"2.30\")"}],"source_content_type":"text/x-python","patch_set":12,"id":"14b7ec48_ebcee52b","line":71,"updated":"2024-08-29 05:45:53.000000000","message":"I think we\u0027re missing an API sample doc and test for os-console-auth-tokens with 2.97?","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"08918c35306373a1969e97ed4f10902ba52f5692","unresolved":true,"context_lines":[{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        if connect_info.console_type \u003d\u003d \u0027spice-direct\u0027 and include_tls_port:"},{"line_number":70,"context_line":"            retval[\u0027console\u0027][\u0027tls_port\u0027] \u003d connect_info.tls_port"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        return retval"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"    @wsgi.Controller.api_version(\"2.1\", \"2.30\")"}],"source_content_type":"text/x-python","patch_set":12,"id":"4d6244ee_d5b39cf9","line":71,"in_reply_to":"14b7ec48_ebcee52b","updated":"2024-08-30 09:16:33.000000000","message":"v2.97 does not change os-console-auth-tokens, so is that required?","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"52ba66eda50c8e872405699ffb61f8c39e469baf","unresolved":true,"context_lines":[{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        if connect_info.console_type \u003d\u003d \u0027spice-direct\u0027 and include_tls_port:"},{"line_number":70,"context_line":"            retval[\u0027console\u0027][\u0027tls_port\u0027] \u003d connect_info.tls_port"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        return retval"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"    @wsgi.Controller.api_version(\"2.1\", \"2.30\")"}],"source_content_type":"text/x-python","patch_set":12,"id":"9c48f087_d1bf353f","line":71,"in_reply_to":"4d6244ee_d5b39cf9","updated":"2024-08-30 21:56:15.000000000","message":"I was thinking because of the new optional field being returned, `tls_port`?\n\nCurrent (v2.31) sample: https://github.com/openstack/nova/blob/master/doc/api_samples/os-console-auth-tokens/v2.31/get-console-connect-info-get-resp.json\n\nThe v2.97 sample would have `tls_port` in it also.\n\nCurrent api-ref: https://docs.openstack.org/api-ref/compute/#show-console-connection-information\n\nExample patch from when server `locked_reason` was added:\n\nhttps://review.opendev.org/c/openstack/nova/+/648662","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"4debc991b91ab2507cbfb16a1a1dbc97d019898f","unresolved":false,"context_lines":[{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        if connect_info.console_type \u003d\u003d \u0027spice-direct\u0027 and include_tls_port:"},{"line_number":70,"context_line":"            retval[\u0027console\u0027][\u0027tls_port\u0027] \u003d connect_info.tls_port"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        return retval"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"    @wsgi.Controller.api_version(\"2.1\", \"2.30\")"}],"source_content_type":"text/x-python","patch_set":12,"id":"779b689e_0c4cd1ec","line":71,"in_reply_to":"9c48f087_d1bf353f","updated":"2024-08-30 23:39:55.000000000","message":"Done","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"f69ca437ec88ac104de05d3a670655a1bc1725de","unresolved":true,"context_lines":[{"line_number":67,"context_line":"        }"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        if connect_info.console_type \u003d\u003d \u0027spice-direct\u0027 and include_tls_port:"},{"line_number":70,"context_line":"            retval[\u0027console\u0027][\u0027tls_port\u0027] \u003d connect_info.tls_port"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        return retval"},{"line_number":73,"context_line":""}],"source_content_type":"text/x-python","patch_set":29,"id":"162fa019_13e07a9e","line":70,"updated":"2025-02-05 03:12:34.000000000","message":"It looks like this patch is missing doc/api_samples/os-console-auth-tokens/ and nova/tests/functional/api_sample_tests/os-console-auth-tokens/ for this change (showing API response with tls_port from GET /os-console-auth-tokens/{console_token}).","commit_id":"425a756452b2deebddf75772788e3d533bec03b0"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"fce55cb8299030fc731635c69dde02b52962299d","unresolved":false,"context_lines":[{"line_number":67,"context_line":"        }"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        if connect_info.console_type \u003d\u003d \u0027spice-direct\u0027 and include_tls_port:"},{"line_number":70,"context_line":"            retval[\u0027console\u0027][\u0027tls_port\u0027] \u003d connect_info.tls_port"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        return retval"},{"line_number":73,"context_line":""}],"source_content_type":"text/x-python","patch_set":29,"id":"eb82cb92_6d28ac24","line":70,"in_reply_to":"162fa019_13e07a9e","updated":"2025-02-10 08:49:41.000000000","message":"Done","commit_id":"425a756452b2deebddf75772788e3d533bec03b0"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"1142891579f5d10a64847b63e7338b6e46e78427","unresolved":true,"context_lines":[{"line_number":67,"context_line":"        }"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        if connect_info.console_type \u003d\u003d \u0027spice-direct\u0027 and include_tls_port:"},{"line_number":70,"context_line":"            retval[\u0027console\u0027][\u0027tls_port\u0027] \u003d connect_info.tls_port"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        return retval"},{"line_number":73,"context_line":""}],"source_content_type":"text/x-python","patch_set":37,"id":"967f1f31_5c2c1700","line":70,"range":{"start_line":70,"start_character":44,"end_line":70,"end_character":65},"updated":"2025-02-18 10:47:05.000000000","message":"in case of a rolling upgrade with old computes, the api service would be new and using the latest object version which includes that field. In the case of an old compute, it wouldn\u0027t obtain the tls_port value from the primitive but in that case, the field would be set to None.\n\nIn that specific example, we would return a value for  retval[\u0027console\u0027][\u0027tls_port\u0027] which is \u0027null\u0027. Are you OK with such return value ?\n\nShouldn\u0027t we rather only return this value if set ?","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"47872014f8ab3e09bab971168417c4850e39be66","unresolved":false,"context_lines":[{"line_number":67,"context_line":"        }"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        if connect_info.console_type \u003d\u003d \u0027spice-direct\u0027 and include_tls_port:"},{"line_number":70,"context_line":"            retval[\u0027console\u0027][\u0027tls_port\u0027] \u003d connect_info.tls_port"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        return retval"},{"line_number":73,"context_line":""}],"source_content_type":"text/x-python","patch_set":37,"id":"dcc817d5_9c6bf94b","line":70,"range":{"start_line":70,"start_character":44,"end_line":70,"end_character":65},"in_reply_to":"3414d05d_c3ca0cf5","updated":"2025-02-19 08:13:22.000000000","message":"Fair enough","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c3ac7361a3c84adaa8215cef587e675579c2f467","unresolved":false,"context_lines":[{"line_number":67,"context_line":"        }"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        if connect_info.console_type \u003d\u003d \u0027spice-direct\u0027 and include_tls_port:"},{"line_number":70,"context_line":"            retval[\u0027console\u0027][\u0027tls_port\u0027] \u003d connect_info.tls_port"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        return retval"},{"line_number":73,"context_line":""}],"source_content_type":"text/x-python","patch_set":37,"id":"3414d05d_c3ca0cf5","line":70,"range":{"start_line":70,"start_character":44,"end_line":70,"end_character":65},"in_reply_to":"967f1f31_5c2c1700","updated":"2025-02-18 11:01:58.000000000","message":"This wil also happen if a deployer has spice.require_secure set to False (the default because its how we did things before I started this work). That is, a user of this API already has to handle that case and it shouldn\u0027t be a problem.","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"f8856f143b8a1aff190ab04cedaf75811d090816","unresolved":true,"context_lines":[{"line_number":90,"context_line":"        raise webob.exc.HTTPBadRequest()"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"    @wsgi.Controller.api_version(\"2.31\")  # noqa"},{"line_number":93,"context_line":"    @wsgi.Controller.api_version(\"2.31\", \"2.97\")  # noqa"},{"line_number":94,"context_line":"    @wsgi.expected_errors((400, 404))"},{"line_number":95,"context_line":"    @validation.query_schema(schema.show_query)"},{"line_number":96,"context_line":"    def show(self, req, id):  # noqa"}],"source_content_type":"text/x-python","patch_set":37,"id":"a847edd4_8eb81b57","line":93,"updated":"2025-02-18 00:28:16.000000000","message":"i thin kthis is the issue.","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c3ac7361a3c84adaa8215cef587e675579c2f467","unresolved":false,"context_lines":[{"line_number":90,"context_line":"        raise webob.exc.HTTPBadRequest()"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"    @wsgi.Controller.api_version(\"2.31\")  # noqa"},{"line_number":93,"context_line":"    @wsgi.Controller.api_version(\"2.31\", \"2.97\")  # noqa"},{"line_number":94,"context_line":"    @wsgi.expected_errors((400, 404))"},{"line_number":95,"context_line":"    @validation.query_schema(schema.show_query)"},{"line_number":96,"context_line":"    def show(self, req, id):  # noqa"}],"source_content_type":"text/x-python","patch_set":37,"id":"703fc1f4_f8944fb1","line":93,"in_reply_to":"1b618c0b_b6fe3a73","updated":"2025-02-18 11:01:58.000000000","message":"Done.","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"1142891579f5d10a64847b63e7338b6e46e78427","unresolved":true,"context_lines":[{"line_number":90,"context_line":"        raise webob.exc.HTTPBadRequest()"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"    @wsgi.Controller.api_version(\"2.31\")  # noqa"},{"line_number":93,"context_line":"    @wsgi.Controller.api_version(\"2.31\", \"2.97\")  # noqa"},{"line_number":94,"context_line":"    @wsgi.expected_errors((400, 404))"},{"line_number":95,"context_line":"    @validation.query_schema(schema.show_query)"},{"line_number":96,"context_line":"    def show(self, req, id):  # noqa"}],"source_content_type":"text/x-python","patch_set":37,"id":"1b618c0b_b6fe3a73","line":93,"in_reply_to":"a847edd4_8eb81b57","updated":"2025-02-18 10:47:05.000000000","message":"Yes, we need to provide the max microversion supported in the enveloppe, hence 2.98","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"1142891579f5d10a64847b63e7338b6e46e78427","unresolved":false,"context_lines":[{"line_number":100,"context_line":"    @wsgi.expected_errors((400, 404))"},{"line_number":101,"context_line":"    @validation.query_schema(schema.show_query)"},{"line_number":102,"context_line":"    def show(self, req, id):  # noqa"},{"line_number":103,"context_line":"        return self._show(req, id, include_tls_port\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":37,"id":"1ad9707d_3fbcf29e","line":103,"updated":"2025-02-18 10:47:05.000000000","message":"all is correct here","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"}],"nova/api/openstack/compute/remote_consoles.py":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"ae14ae9875d675364c06c0facb019afa1106def6","unresolved":true,"context_lines":[{"line_number":103,"context_line":"                \u0027type\u0027: console_type,"},{"line_number":104,"context_line":"                \u0027url\u0027: output[\u0027url\u0027]"},{"line_number":105,"context_line":"                }"},{"line_number":106,"context_line":"            }"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"    @wsgi.Controller.api_version(\"2.1\", \"2.5\")"},{"line_number":109,"context_line":"    @wsgi.expected_errors((400, 404, 409, 501))"}],"source_content_type":"text/x-python","patch_set":12,"id":"b5cd126b_093593a1","line":106,"updated":"2024-08-29 05:45:53.000000000","message":"This seems to not change anything except formatting.","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"08918c35306373a1969e97ed4f10902ba52f5692","unresolved":true,"context_lines":[{"line_number":103,"context_line":"                \u0027type\u0027: console_type,"},{"line_number":104,"context_line":"                \u0027url\u0027: output[\u0027url\u0027]"},{"line_number":105,"context_line":"                }"},{"line_number":106,"context_line":"            }"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"    @wsgi.Controller.api_version(\"2.1\", \"2.5\")"},{"line_number":109,"context_line":"    @wsgi.expected_errors((400, 404, 409, 501))"}],"source_content_type":"text/x-python","patch_set":12,"id":"dc3e2ea4_6b276906","line":106,"in_reply_to":"b5cd126b_093593a1","updated":"2024-08-30 09:16:33.000000000","message":"Yeah sorry, a previous version of this patch did change this and then I never changed it back. I\u0027ll fix it now.","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"8dca4cbcbab148c66bd35aa212c2fcbe73d0fd8b","unresolved":false,"context_lines":[{"line_number":103,"context_line":"                \u0027type\u0027: console_type,"},{"line_number":104,"context_line":"                \u0027url\u0027: output[\u0027url\u0027]"},{"line_number":105,"context_line":"                }"},{"line_number":106,"context_line":"            }"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"    @wsgi.Controller.api_version(\"2.1\", \"2.5\")"},{"line_number":109,"context_line":"    @wsgi.expected_errors((400, 404, 409, 501))"}],"source_content_type":"text/x-python","patch_set":12,"id":"053f1946_32bd7902","line":106,"in_reply_to":"dc3e2ea4_6b276906","updated":"2025-01-29 20:12:42.000000000","message":"Done","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"ae14ae9875d675364c06c0facb019afa1106def6","unresolved":true,"context_lines":[{"line_number":167,"context_line":"                    \u0027type\u0027: console_type,"},{"line_number":168,"context_line":"                    \u0027url\u0027: output[\u0027url\u0027]"},{"line_number":169,"context_line":"                    }"},{"line_number":170,"context_line":"                }"},{"line_number":171,"context_line":""},{"line_number":172,"context_line":"        except exception.InstanceNotFound as e:"},{"line_number":173,"context_line":"            raise webob.exc.HTTPNotFound(explanation\u003de.format_message())"}],"source_content_type":"text/x-python","patch_set":12,"id":"12e3fd3c_85226bdf","line":170,"updated":"2024-08-29 05:45:53.000000000","message":"Same with this.","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"08918c35306373a1969e97ed4f10902ba52f5692","unresolved":true,"context_lines":[{"line_number":167,"context_line":"                    \u0027type\u0027: console_type,"},{"line_number":168,"context_line":"                    \u0027url\u0027: output[\u0027url\u0027]"},{"line_number":169,"context_line":"                    }"},{"line_number":170,"context_line":"                }"},{"line_number":171,"context_line":""},{"line_number":172,"context_line":"        except exception.InstanceNotFound as e:"},{"line_number":173,"context_line":"            raise webob.exc.HTTPNotFound(explanation\u003de.format_message())"}],"source_content_type":"text/x-python","patch_set":12,"id":"42e4ab04_9a0b6b92","line":170,"in_reply_to":"12e3fd3c_85226bdf","updated":"2024-08-30 09:16:33.000000000","message":"And same excuse.","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"8dca4cbcbab148c66bd35aa212c2fcbe73d0fd8b","unresolved":false,"context_lines":[{"line_number":167,"context_line":"                    \u0027type\u0027: console_type,"},{"line_number":168,"context_line":"                    \u0027url\u0027: output[\u0027url\u0027]"},{"line_number":169,"context_line":"                    }"},{"line_number":170,"context_line":"                }"},{"line_number":171,"context_line":""},{"line_number":172,"context_line":"        except exception.InstanceNotFound as e:"},{"line_number":173,"context_line":"            raise webob.exc.HTTPNotFound(explanation\u003de.format_message())"}],"source_content_type":"text/x-python","patch_set":12,"id":"07c728c3_42a14527","line":170,"in_reply_to":"42e4ab04_9a0b6b92","updated":"2025-01-29 20:12:42.000000000","message":"Done","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"a1dd0e9252da410eebcb4f0c0a2977df47fb0e66","unresolved":true,"context_lines":[{"line_number":72,"context_line":"    @wsgi.expected_errors((400, 404, 409, 501))"},{"line_number":73,"context_line":"    @wsgi.action(\u0027os-getSPICEConsole\u0027)"},{"line_number":74,"context_line":"    @validation.schema(remote_consoles.get_spice_console)"},{"line_number":75,"context_line":"    @validation.schema(remote_consoles.get_spice_console_v297, \"2.97\")"},{"line_number":76,"context_line":"    def get_spice_console(self, req, id, body):"},{"line_number":77,"context_line":"        \"\"\"Get text console output.\"\"\""},{"line_number":78,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"},{"line_number":79,"context_line":"        context.can(rc_policies.BASE_POLICY_NAME)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        # NOTE(mikal): We support two types of SPICE console -- the traditional"},{"line_number":82,"context_line":"        # \"spice-html5\" console (the default), and a direct connection to qemu"},{"line_number":83,"context_line":"        # on the hypervisor (\"spice-direct\"). This second option is intended"},{"line_number":84,"context_line":"        # for use with a SPICE protocol proxy sitting in front of Nova."},{"line_number":85,"context_line":"        console_type \u003d body[\u0027os-getSPICEConsole\u0027].get(\u0027type\u0027)"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"        instance \u003d common.get_instance(self.compute_api, context, id)"}],"source_content_type":"text/x-python","patch_set":18,"id":"c96c24c2_3328ad34","line":84,"range":{"start_line":75,"start_character":0,"end_line":84,"end_character":71},"updated":"2024-09-04 00:12:56.000000000","message":"These changes to `get_spice_console` should be removed bc as you determined, this API was \"removed\" starting in microversion 2.6 and should no longer be updated.","commit_id":"6e179e0a3d3e0f860cf1f06eb6f13c31633ed2f5"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"57a341493aac72e66eda529a367c78e9c50cbe6f","unresolved":true,"context_lines":[{"line_number":72,"context_line":"    @wsgi.expected_errors((400, 404, 409, 501))"},{"line_number":73,"context_line":"    @wsgi.action(\u0027os-getSPICEConsole\u0027)"},{"line_number":74,"context_line":"    @validation.schema(remote_consoles.get_spice_console)"},{"line_number":75,"context_line":"    @validation.schema(remote_consoles.get_spice_console_v297, \"2.97\")"},{"line_number":76,"context_line":"    def get_spice_console(self, req, id, body):"},{"line_number":77,"context_line":"        \"\"\"Get text console output.\"\"\""},{"line_number":78,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"},{"line_number":79,"context_line":"        context.can(rc_policies.BASE_POLICY_NAME)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        # NOTE(mikal): We support two types of SPICE console -- the traditional"},{"line_number":82,"context_line":"        # \"spice-html5\" console (the default), and a direct connection to qemu"},{"line_number":83,"context_line":"        # on the hypervisor (\"spice-direct\"). This second option is intended"},{"line_number":84,"context_line":"        # for use with a SPICE protocol proxy sitting in front of Nova."},{"line_number":85,"context_line":"        console_type \u003d body[\u0027os-getSPICEConsole\u0027].get(\u0027type\u0027)"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"        instance \u003d common.get_instance(self.compute_api, context, id)"}],"source_content_type":"text/x-python","patch_set":18,"id":"9dc863e1_4fb0aedd","line":84,"range":{"start_line":75,"start_character":0,"end_line":84,"end_character":71},"in_reply_to":"617a811f_1b865a27","updated":"2025-01-29 18:54:20.000000000","message":"Sorry I missed this one. Removing it now.","commit_id":"6e179e0a3d3e0f860cf1f06eb6f13c31633ed2f5"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"8dca4cbcbab148c66bd35aa212c2fcbe73d0fd8b","unresolved":false,"context_lines":[{"line_number":72,"context_line":"    @wsgi.expected_errors((400, 404, 409, 501))"},{"line_number":73,"context_line":"    @wsgi.action(\u0027os-getSPICEConsole\u0027)"},{"line_number":74,"context_line":"    @validation.schema(remote_consoles.get_spice_console)"},{"line_number":75,"context_line":"    @validation.schema(remote_consoles.get_spice_console_v297, \"2.97\")"},{"line_number":76,"context_line":"    def get_spice_console(self, req, id, body):"},{"line_number":77,"context_line":"        \"\"\"Get text console output.\"\"\""},{"line_number":78,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"},{"line_number":79,"context_line":"        context.can(rc_policies.BASE_POLICY_NAME)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        # NOTE(mikal): We support two types of SPICE console -- the traditional"},{"line_number":82,"context_line":"        # \"spice-html5\" console (the default), and a direct connection to qemu"},{"line_number":83,"context_line":"        # on the hypervisor (\"spice-direct\"). This second option is intended"},{"line_number":84,"context_line":"        # for use with a SPICE protocol proxy sitting in front of Nova."},{"line_number":85,"context_line":"        console_type \u003d body[\u0027os-getSPICEConsole\u0027].get(\u0027type\u0027)"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"        instance \u003d common.get_instance(self.compute_api, context, id)"}],"source_content_type":"text/x-python","patch_set":18,"id":"7f65b452_c296d06e","line":84,"range":{"start_line":75,"start_character":0,"end_line":84,"end_character":71},"in_reply_to":"9dc863e1_4fb0aedd","updated":"2025-01-29 20:12:42.000000000","message":"Done","commit_id":"6e179e0a3d3e0f860cf1f06eb6f13c31633ed2f5"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"e5e4ca9c07c3798380d77a611ed5f20404a11aa6","unresolved":true,"context_lines":[{"line_number":72,"context_line":"    @wsgi.expected_errors((400, 404, 409, 501))"},{"line_number":73,"context_line":"    @wsgi.action(\u0027os-getSPICEConsole\u0027)"},{"line_number":74,"context_line":"    @validation.schema(remote_consoles.get_spice_console)"},{"line_number":75,"context_line":"    @validation.schema(remote_consoles.get_spice_console_v297, \"2.97\")"},{"line_number":76,"context_line":"    def get_spice_console(self, req, id, body):"},{"line_number":77,"context_line":"        \"\"\"Get text console output.\"\"\""},{"line_number":78,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"},{"line_number":79,"context_line":"        context.can(rc_policies.BASE_POLICY_NAME)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        # NOTE(mikal): We support two types of SPICE console -- the traditional"},{"line_number":82,"context_line":"        # \"spice-html5\" console (the default), and a direct connection to qemu"},{"line_number":83,"context_line":"        # on the hypervisor (\"spice-direct\"). This second option is intended"},{"line_number":84,"context_line":"        # for use with a SPICE protocol proxy sitting in front of Nova."},{"line_number":85,"context_line":"        console_type \u003d body[\u0027os-getSPICEConsole\u0027].get(\u0027type\u0027)"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"        instance \u003d common.get_instance(self.compute_api, context, id)"}],"source_content_type":"text/x-python","patch_set":18,"id":"617a811f_1b865a27","line":84,"range":{"start_line":75,"start_character":0,"end_line":84,"end_character":71},"in_reply_to":"c96c24c2_3328ad34","updated":"2025-01-29 15:09:07.000000000","message":"so we still need to revert this correct?\n\nthe commen update is fine but the fact we are still nave an updated schema implies this api is beign modifed but it was remvoed in 2.6 so it shoudl not be readded.\n\n@wsgi.Controller.api_version(\"2.1\", \"2.5\") will prevent it from being called with 2.98\n\nso it does not cause a functional change, but we should still revert the changes to this file i think for correctness reasons so this is still piending.","commit_id":"6e179e0a3d3e0f860cf1f06eb6f13c31633ed2f5"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"f8856f143b8a1aff190ab04cedaf75811d090816","unresolved":true,"context_lines":[{"line_number":143,"context_line":"    @wsgi.Controller.api_version(\"2.6\")"},{"line_number":144,"context_line":"    @wsgi.expected_errors((400, 404, 409, 501))"},{"line_number":145,"context_line":"    @validation.schema(schema.create_v26, \"2.6\", \"2.7\")"},{"line_number":146,"context_line":"    @validation.schema(schema.create_v28, \"2.8\", \"2.97\")"},{"line_number":147,"context_line":"    @validation.schema(schema.create_v298, \"2.99\")"},{"line_number":148,"context_line":"    def create(self, req, server_id, body):"},{"line_number":149,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"}],"source_content_type":"text/x-python","patch_set":37,"id":"475c4324_90681778","line":146,"updated":"2025-02-18 00:28:16.000000000","message":"and here i think you need to update this to 2.98","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c3ac7361a3c84adaa8215cef587e675579c2f467","unresolved":false,"context_lines":[{"line_number":143,"context_line":"    @wsgi.Controller.api_version(\"2.6\")"},{"line_number":144,"context_line":"    @wsgi.expected_errors((400, 404, 409, 501))"},{"line_number":145,"context_line":"    @validation.schema(schema.create_v26, \"2.6\", \"2.7\")"},{"line_number":146,"context_line":"    @validation.schema(schema.create_v28, \"2.8\", \"2.97\")"},{"line_number":147,"context_line":"    @validation.schema(schema.create_v298, \"2.99\")"},{"line_number":148,"context_line":"    def create(self, req, server_id, body):"},{"line_number":149,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"}],"source_content_type":"text/x-python","patch_set":37,"id":"0a2dfc4e_a8d03dfc","line":146,"in_reply_to":"2b90ad3f_52002aee","updated":"2025-02-18 11:01:58.000000000","message":"Done","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"1142891579f5d10a64847b63e7338b6e46e78427","unresolved":true,"context_lines":[{"line_number":143,"context_line":"    @wsgi.Controller.api_version(\"2.6\")"},{"line_number":144,"context_line":"    @wsgi.expected_errors((400, 404, 409, 501))"},{"line_number":145,"context_line":"    @validation.schema(schema.create_v26, \"2.6\", \"2.7\")"},{"line_number":146,"context_line":"    @validation.schema(schema.create_v28, \"2.8\", \"2.97\")"},{"line_number":147,"context_line":"    @validation.schema(schema.create_v298, \"2.99\")"},{"line_number":148,"context_line":"    def create(self, req, server_id, body):"},{"line_number":149,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"}],"source_content_type":"text/x-python","patch_set":37,"id":"2b90ad3f_52002aee","line":146,"in_reply_to":"475c4324_90681778","updated":"2025-02-18 10:47:05.000000000","message":"that\u0027s right.","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"1142891579f5d10a64847b63e7338b6e46e78427","unresolved":true,"context_lines":[{"line_number":144,"context_line":"    @wsgi.expected_errors((400, 404, 409, 501))"},{"line_number":145,"context_line":"    @validation.schema(schema.create_v26, \"2.6\", \"2.7\")"},{"line_number":146,"context_line":"    @validation.schema(schema.create_v28, \"2.8\", \"2.97\")"},{"line_number":147,"context_line":"    @validation.schema(schema.create_v298, \"2.99\")"},{"line_number":148,"context_line":"    def create(self, req, server_id, body):"},{"line_number":149,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"},{"line_number":150,"context_line":"        instance \u003d common.get_instance(self.compute_api, context, server_id)"}],"source_content_type":"text/x-python","patch_set":37,"id":"a6992c88_2ccdeee2","line":147,"range":{"start_line":147,"start_character":30,"end_line":147,"end_character":41},"updated":"2025-02-18 10:47:05.000000000","message":"this should be named create_v299","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c3ac7361a3c84adaa8215cef587e675579c2f467","unresolved":false,"context_lines":[{"line_number":144,"context_line":"    @wsgi.expected_errors((400, 404, 409, 501))"},{"line_number":145,"context_line":"    @validation.schema(schema.create_v26, \"2.6\", \"2.7\")"},{"line_number":146,"context_line":"    @validation.schema(schema.create_v28, \"2.8\", \"2.97\")"},{"line_number":147,"context_line":"    @validation.schema(schema.create_v298, \"2.99\")"},{"line_number":148,"context_line":"    def create(self, req, server_id, body):"},{"line_number":149,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"},{"line_number":150,"context_line":"        instance \u003d common.get_instance(self.compute_api, context, server_id)"}],"source_content_type":"text/x-python","patch_set":37,"id":"15825c3b_8cc4e0cd","line":147,"range":{"start_line":147,"start_character":30,"end_line":147,"end_character":41},"in_reply_to":"a6992c88_2ccdeee2","updated":"2025-02-18 11:01:58.000000000","message":"Done","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"}],"nova/api/openstack/compute/rest_api_version_history.rst":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"ae14ae9875d675364c06c0facb019afa1106def6","unresolved":true,"context_lines":[{"line_number":1255,"context_line":""},{"line_number":1256,"context_line":"The ``server show`` and ``server list --long`` responses now include the"},{"line_number":1257,"context_line":"pinned availability zone as well."},{"line_number":1258,"context_line":""},{"line_number":1259,"context_line":"2.97"},{"line_number":1260,"context_line":"----"},{"line_number":1261,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"2e984c33_91615f29","line":1258,"updated":"2024-08-29 05:45:53.000000000","message":"Note to self: I wondered what the `.. _microversion X.Y:` on many of the other microversions do and it seems like it allows you to name the html anchor so that it\u0027s something like `#microversion-2-92` instead of `#id83`.\n\nhttps://docs.openstack.org/nova/latest/reference/api-microversion-history.html#microversion-2-92","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"08918c35306373a1969e97ed4f10902ba52f5692","unresolved":true,"context_lines":[{"line_number":1255,"context_line":""},{"line_number":1256,"context_line":"The ``server show`` and ``server list --long`` responses now include the"},{"line_number":1257,"context_line":"pinned availability zone as well."},{"line_number":1258,"context_line":""},{"line_number":1259,"context_line":"2.97"},{"line_number":1260,"context_line":"----"},{"line_number":1261,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"e57738ad_5b850e54","line":1258,"in_reply_to":"2e984c33_91615f29","updated":"2024-08-30 09:16:33.000000000","message":"Oh, I had wondered. Fixed.","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"8dca4cbcbab148c66bd35aa212c2fcbe73d0fd8b","unresolved":false,"context_lines":[{"line_number":1255,"context_line":""},{"line_number":1256,"context_line":"The ``server show`` and ``server list --long`` responses now include the"},{"line_number":1257,"context_line":"pinned availability zone as well."},{"line_number":1258,"context_line":""},{"line_number":1259,"context_line":"2.97"},{"line_number":1260,"context_line":"----"},{"line_number":1261,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"6131d63c_d2d90252","line":1258,"in_reply_to":"e57738ad_5b850e54","updated":"2025-01-29 20:12:42.000000000","message":"Acknowledged","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"f69ca437ec88ac104de05d3a670655a1bc1725de","unresolved":true,"context_lines":[{"line_number":1273,"context_line":"----"},{"line_number":1274,"context_line":""},{"line_number":1275,"context_line":"Add the ``spice-direct`` console type to the spice console protocol. Also"},{"line_number":1276,"context_line":"add a ``tls_port`` field to the return value from ``os-console-auth-token``."},{"line_number":1277,"context_line":""},{"line_number":1278,"context_line":".. _manage-shares documentation: https://docs.openstack.org/nova/latest/admin/manage-shares.html"}],"source_content_type":"text/x-rst","patch_set":29,"id":"faa163fa_ced2df0c","line":1276,"updated":"2025-02-05 03:12:34.000000000","message":"``os-console-auth-tokens`` or maybe ``GET /os-console-auth-tokens/{console_token}``\n\nhttps://docs.openstack.org/api-ref/compute/#show-console-connection-information","commit_id":"425a756452b2deebddf75772788e3d533bec03b0"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"fce55cb8299030fc731635c69dde02b52962299d","unresolved":false,"context_lines":[{"line_number":1273,"context_line":"----"},{"line_number":1274,"context_line":""},{"line_number":1275,"context_line":"Add the ``spice-direct`` console type to the spice console protocol. Also"},{"line_number":1276,"context_line":"add a ``tls_port`` field to the return value from ``os-console-auth-token``."},{"line_number":1277,"context_line":""},{"line_number":1278,"context_line":".. _manage-shares documentation: https://docs.openstack.org/nova/latest/admin/manage-shares.html"}],"source_content_type":"text/x-rst","patch_set":29,"id":"f7dfa9df_0f045949","line":1276,"in_reply_to":"faa163fa_ced2df0c","updated":"2025-02-10 08:49:41.000000000","message":"Done","commit_id":"425a756452b2deebddf75772788e3d533bec03b0"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"f8856f143b8a1aff190ab04cedaf75811d090816","unresolved":true,"context_lines":[{"line_number":1280,"context_line":"(list server --long) and in the rebuild case of"},{"line_number":1281,"context_line":"``POST /server/{server_id}/action`` (server rebuild) API response."},{"line_number":1282,"context_line":""},{"line_number":1283,"context_line":".. _microversion 2.98:"},{"line_number":1284,"context_line":""},{"line_number":1285,"context_line":"2.99"},{"line_number":1286,"context_line":"----"}],"source_content_type":"text/x-rst","patch_set":37,"id":"4ea47224_8dbbb418","line":1283,"updated":"2025-02-18 00:28:16.000000000","message":"also this shoudl be 2.99","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"1142891579f5d10a64847b63e7338b6e46e78427","unresolved":true,"context_lines":[{"line_number":1280,"context_line":"(list server --long) and in the rebuild case of"},{"line_number":1281,"context_line":"``POST /server/{server_id}/action`` (server rebuild) API response."},{"line_number":1282,"context_line":""},{"line_number":1283,"context_line":".. _microversion 2.98:"},{"line_number":1284,"context_line":""},{"line_number":1285,"context_line":"2.99"},{"line_number":1286,"context_line":"----"}],"source_content_type":"text/x-rst","patch_set":37,"id":"6cfeb26a_b86232b0","line":1283,"in_reply_to":"4ea47224_8dbbb418","updated":"2025-02-18 10:47:05.000000000","message":"yup","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c3ac7361a3c84adaa8215cef587e675579c2f467","unresolved":false,"context_lines":[{"line_number":1280,"context_line":"(list server --long) and in the rebuild case of"},{"line_number":1281,"context_line":"``POST /server/{server_id}/action`` (server rebuild) API response."},{"line_number":1282,"context_line":""},{"line_number":1283,"context_line":".. _microversion 2.98:"},{"line_number":1284,"context_line":""},{"line_number":1285,"context_line":"2.99"},{"line_number":1286,"context_line":"----"}],"source_content_type":"text/x-rst","patch_set":37,"id":"c0f25b60_fd679d3e","line":1283,"in_reply_to":"6cfeb26a_b86232b0","updated":"2025-02-18 11:01:58.000000000","message":"Done","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"}],"nova/api/openstack/compute/schemas/remote_consoles.py":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"a1dd0e9252da410eebcb4f0c0a2977df47fb0e66","unresolved":true,"context_lines":[{"line_number":68,"context_line":"    \u0027required\u0027: [\u0027os-getSPICEConsole\u0027],"},{"line_number":69,"context_line":"    \u0027additionalProperties\u0027: False,"},{"line_number":70,"context_line":"}"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"# NOTE(stephenfin): This schema is intentionally empty since the action has"},{"line_number":73,"context_line":"# been removed"},{"line_number":74,"context_line":"get_rdp_console \u003d {}"}],"source_content_type":"text/x-python","patch_set":18,"id":"bcfe7166_8d9bb51c","line":71,"updated":"2024-09-04 00:12:56.000000000","message":"This change should similarly also be removed.","commit_id":"6e179e0a3d3e0f860cf1f06eb6f13c31633ed2f5"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"8dca4cbcbab148c66bd35aa212c2fcbe73d0fd8b","unresolved":false,"context_lines":[{"line_number":68,"context_line":"    \u0027required\u0027: [\u0027os-getSPICEConsole\u0027],"},{"line_number":69,"context_line":"    \u0027additionalProperties\u0027: False,"},{"line_number":70,"context_line":"}"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"# NOTE(stephenfin): This schema is intentionally empty since the action has"},{"line_number":73,"context_line":"# been removed"},{"line_number":74,"context_line":"get_rdp_console \u003d {}"}],"source_content_type":"text/x-python","patch_set":18,"id":"589f85f6_4f0d262b","line":71,"in_reply_to":"bcfe7166_8d9bb51c","updated":"2025-01-29 20:12:42.000000000","message":"Done","commit_id":"6e179e0a3d3e0f860cf1f06eb6f13c31633ed2f5"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"f8856f143b8a1aff190ab04cedaf75811d090816","unresolved":true,"context_lines":[{"line_number":120,"context_line":"    \u0027additionalProperties\u0027: False,"},{"line_number":121,"context_line":"}"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"create_v298 \u003d {"},{"line_number":124,"context_line":"    \u0027type\u0027: \u0027object\u0027,"},{"line_number":125,"context_line":"    \u0027properties\u0027: {"},{"line_number":126,"context_line":"        \u0027remote_console\u0027: {"}],"source_content_type":"text/x-python","patch_set":37,"id":"d6a396f9_dde38cd5","line":123,"range":{"start_line":123,"start_character":0,"end_line":123,"end_character":11},"updated":"2025-02-18 00:28:16.000000000","message":"create_v299","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c3ac7361a3c84adaa8215cef587e675579c2f467","unresolved":false,"context_lines":[{"line_number":120,"context_line":"    \u0027additionalProperties\u0027: False,"},{"line_number":121,"context_line":"}"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"create_v298 \u003d {"},{"line_number":124,"context_line":"    \u0027type\u0027: \u0027object\u0027,"},{"line_number":125,"context_line":"    \u0027properties\u0027: {"},{"line_number":126,"context_line":"        \u0027remote_console\u0027: {"}],"source_content_type":"text/x-python","patch_set":37,"id":"cbab40ea_80d8de5d","line":123,"range":{"start_line":123,"start_character":0,"end_line":123,"end_character":11},"in_reply_to":"56b78722_3e174786","updated":"2025-02-18 11:01:58.000000000","message":"Done, in the duplicating the dict kind of way. I can change that if you really want.","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"1142891579f5d10a64847b63e7338b6e46e78427","unresolved":true,"context_lines":[{"line_number":120,"context_line":"    \u0027additionalProperties\u0027: False,"},{"line_number":121,"context_line":"}"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"create_v298 \u003d {"},{"line_number":124,"context_line":"    \u0027type\u0027: \u0027object\u0027,"},{"line_number":125,"context_line":"    \u0027properties\u0027: {"},{"line_number":126,"context_line":"        \u0027remote_console\u0027: {"}],"source_content_type":"text/x-python","patch_set":37,"id":"56b78722_3e174786","line":123,"range":{"start_line":123,"start_character":0,"end_line":123,"end_character":11},"in_reply_to":"d6a396f9_dde38cd5","updated":"2025-02-18 10:47:05.000000000","message":"yup\n\nAs a note, you could just use the existing create_v28 object and add the new enum item directly, we do this for some other schemas like instance creation (instead of duplicating the dict)","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"}],"nova/compute/manager.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"8dca4cbcbab148c66bd35aa212c2fcbe73d0fd8b","unresolved":true,"context_lines":[{"line_number":7860,"context_line":"                fields[\u0027access_url_base\u0027] \u003d \\"},{"line_number":7861,"context_line":"                    CONF.spice.spice_direct_proxy_base_url"},{"line_number":7862,"context_line":""},{"line_number":7863,"context_line":"            console_auth \u003d objects.ConsoleAuthToken(**fields)"},{"line_number":7864,"context_line":"            console_auth.authorize(CONF.consoleauth.token_ttl)"},{"line_number":7865,"context_line":"            connect_info \u003d console.get_connection_info("},{"line_number":7866,"context_line":"                console_auth.token, console_auth.access_url)"}],"source_content_type":"text/x-python","patch_set":25,"id":"6a781fde_2332a31a","line":7863,"updated":"2025-01-29 20:12:42.000000000","message":"oh right this feature does not change the guest xml or techniclly depned on the virt driver.\n\nyes it will only work for libvirt but that not strictly a limiation of the other virt drivers more what the hyperviros supprot.\n\nso this is kind of existing tech debt but all the libvirt specific are still encpsulated in the `console \u003d self.driver.get_spice_console(context, instance)`\ncall.\n\nafter reviewing the next patch i realised atht that needed a comptue service bump and a min compute service check in teh api.\n\ni was wondering if  we also need one in this patch because we dont know if the  the compute manager on any given host supprot this console mode.\n\ni guess we can avoid that becasue without htis change we will raise an excpeiton online 7846 if you try to get the console via the api.\n\nso this is actully ok as it is.\n\nwe coudl still add a check in the api to catch it earlier but its not required.\n\nill leave this unresovled incase anyoen else diagrees with that logic.","commit_id":"6d36aac68f23be254972f6050d9bbef8ce1c84a3"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"fce55cb8299030fc731635c69dde02b52962299d","unresolved":false,"context_lines":[{"line_number":7860,"context_line":"                fields[\u0027access_url_base\u0027] \u003d \\"},{"line_number":7861,"context_line":"                    CONF.spice.spice_direct_proxy_base_url"},{"line_number":7862,"context_line":""},{"line_number":7863,"context_line":"            console_auth \u003d objects.ConsoleAuthToken(**fields)"},{"line_number":7864,"context_line":"            console_auth.authorize(CONF.consoleauth.token_ttl)"},{"line_number":7865,"context_line":"            connect_info \u003d console.get_connection_info("},{"line_number":7866,"context_line":"                console_auth.token, console_auth.access_url)"}],"source_content_type":"text/x-python","patch_set":25,"id":"b8639657_7ecbbf8e","line":7863,"in_reply_to":"6a781fde_2332a31a","updated":"2025-02-10 08:49:41.000000000","message":"Acknowledged","commit_id":"6d36aac68f23be254972f6050d9bbef8ce1c84a3"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"f69ca437ec88ac104de05d3a670655a1bc1725de","unresolved":true,"context_lines":[{"line_number":7864,"context_line":"            console_auth.authorize(CONF.consoleauth.token_ttl)"},{"line_number":7865,"context_line":"            connect_info \u003d console.get_connection_info("},{"line_number":7866,"context_line":"                console_auth.token, console_auth.access_url)"},{"line_number":7867,"context_line":"            return connect_info"},{"line_number":7868,"context_line":""},{"line_number":7869,"context_line":"        except exception.InstanceNotFound:"},{"line_number":7870,"context_line":"            if instance.vm_state !\u003d vm_states.BUILDING:"}],"source_content_type":"text/x-python","patch_set":29,"id":"1f6bc2d2_ccc963e4","line":7867,"updated":"2025-02-05 03:12:34.000000000","message":"This looks like an unrelated change.","commit_id":"425a756452b2deebddf75772788e3d533bec03b0"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"fce55cb8299030fc731635c69dde02b52962299d","unresolved":false,"context_lines":[{"line_number":7864,"context_line":"            console_auth.authorize(CONF.consoleauth.token_ttl)"},{"line_number":7865,"context_line":"            connect_info \u003d console.get_connection_info("},{"line_number":7866,"context_line":"                console_auth.token, console_auth.access_url)"},{"line_number":7867,"context_line":"            return connect_info"},{"line_number":7868,"context_line":""},{"line_number":7869,"context_line":"        except exception.InstanceNotFound:"},{"line_number":7870,"context_line":"            if instance.vm_state !\u003d vm_states.BUILDING:"}],"source_content_type":"text/x-python","patch_set":29,"id":"11abf95e_1a076ecc","line":7867,"in_reply_to":"1f6bc2d2_ccc963e4","updated":"2025-02-10 08:49:41.000000000","message":"Done","commit_id":"425a756452b2deebddf75772788e3d533bec03b0"}],"nova/conf/spice.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"058950bc3cf98a96808f4c814fe0020c0464117a","unresolved":true,"context_lines":[{"line_number":162,"context_line":"  The access URL returned by the compute node must have the host"},{"line_number":163,"context_line":"  and port where the ``nova-spicehtml5proxy`` service is listening."},{"line_number":164,"context_line":"\"\"\"),"},{"line_number":165,"context_line":"    cfg.URIOpt(\u0027kerbside_base_url\u0027,"},{"line_number":166,"context_line":"        default\u003d\u0027http://127.0.0.1:13002/nova\u0027,"},{"line_number":167,"context_line":"        help\u003d\"\"\""},{"line_number":168,"context_line":"Location of the Kerbside SPICE protocol native console proxy."}],"source_content_type":"text/x-python","patch_set":7,"id":"01a3e958_7c020905","line":165,"range":{"start_line":165,"start_character":16,"end_line":165,"end_character":33},"updated":"2024-08-20 13:32:32.000000000","message":"i know that sylvain has some reservations of using the name kerbside in our code\n\n\nwe may want to call this spice_direct_base_url ? and remove other direct references to kerbside.","commit_id":"9c324e5496b9a7b6b02c713a347e38dc97eda940"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"8bf8d3d29b0c00f25621d0875db94735fcc4b25d","unresolved":false,"context_lines":[{"line_number":162,"context_line":"  The access URL returned by the compute node must have the host"},{"line_number":163,"context_line":"  and port where the ``nova-spicehtml5proxy`` service is listening."},{"line_number":164,"context_line":"\"\"\"),"},{"line_number":165,"context_line":"    cfg.URIOpt(\u0027kerbside_base_url\u0027,"},{"line_number":166,"context_line":"        default\u003d\u0027http://127.0.0.1:13002/nova\u0027,"},{"line_number":167,"context_line":"        help\u003d\"\"\""},{"line_number":168,"context_line":"Location of the Kerbside SPICE protocol native console proxy."}],"source_content_type":"text/x-python","patch_set":7,"id":"cf2c8b03_a03c2a43","line":165,"range":{"start_line":165,"start_character":16,"end_line":165,"end_character":33},"in_reply_to":"01a3e958_7c020905","updated":"2024-08-22 06:36:57.000000000","message":"Done","commit_id":"9c324e5496b9a7b6b02c713a347e38dc97eda940"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"ae14ae9875d675364c06c0facb019afa1106def6","unresolved":true,"context_lines":[{"line_number":176,"context_line":"Possible values:"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"* Must be a valid URL of the form:  ``http://host:port/nova`` where host is the"},{"line_number":179,"context_line":"  node running ``nova-spicehtml5proxy`` and the port is typically 13002."},{"line_number":180,"context_line":"  Consider not using the default value as it is not well defined for any real"},{"line_number":181,"context_line":"  deployment."},{"line_number":182,"context_line":"\"\"\"),"}],"source_content_type":"text/x-python","patch_set":12,"id":"7cf0e8c2_a2389f9a","line":179,"range":{"start_line":179,"start_character":17,"end_line":179,"end_character":37},"updated":"2024-08-29 05:45:53.000000000","message":"This should be Kerbside or something other than html5 proxy, right?","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"8dca4cbcbab148c66bd35aa212c2fcbe73d0fd8b","unresolved":false,"context_lines":[{"line_number":176,"context_line":"Possible values:"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"* Must be a valid URL of the form:  ``http://host:port/nova`` where host is the"},{"line_number":179,"context_line":"  node running ``nova-spicehtml5proxy`` and the port is typically 13002."},{"line_number":180,"context_line":"  Consider not using the default value as it is not well defined for any real"},{"line_number":181,"context_line":"  deployment."},{"line_number":182,"context_line":"\"\"\"),"}],"source_content_type":"text/x-python","patch_set":12,"id":"8b5965e4_0b8dafc8","line":179,"range":{"start_line":179,"start_character":17,"end_line":179,"end_character":37},"in_reply_to":"59fe1f66_50ee2e3a","updated":"2025-01-29 20:12:42.000000000","message":"Done","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"08918c35306373a1969e97ed4f10902ba52f5692","unresolved":true,"context_lines":[{"line_number":176,"context_line":"Possible values:"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"* Must be a valid URL of the form:  ``http://host:port/nova`` where host is the"},{"line_number":179,"context_line":"  node running ``nova-spicehtml5proxy`` and the port is typically 13002."},{"line_number":180,"context_line":"  Consider not using the default value as it is not well defined for any real"},{"line_number":181,"context_line":"  deployment."},{"line_number":182,"context_line":"\"\"\"),"}],"source_content_type":"text/x-python","patch_set":12,"id":"59fe1f66_50ee2e3a","line":179,"range":{"start_line":179,"start_character":17,"end_line":179,"end_character":37},"in_reply_to":"7cf0e8c2_a2389f9a","updated":"2024-08-30 09:16:33.000000000","message":"Good catch. Fixed.","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"f69ca437ec88ac104de05d3a670655a1bc1725de","unresolved":true,"context_lines":[{"line_number":172,"context_line":""},{"line_number":173,"context_line":"Possible values:"},{"line_number":174,"context_line":""},{"line_number":175,"context_line":"* Must be a valid URL of the form:  ``http://host:port/nova`` where host is the"},{"line_number":176,"context_line":"  node running the SPICE protocol native proxy and the port is typically 13002."},{"line_number":177,"context_line":"  Note that the port component is optional if you are using the default port"},{"line_number":178,"context_line":"  for HTTP or HTTPS. Consider not using the default value as it is not well"}],"source_content_type":"text/x-python","patch_set":29,"id":"893a84fa_a84ba4e0","line":175,"updated":"2025-02-05 03:12:34.000000000","message":"extra space","commit_id":"425a756452b2deebddf75772788e3d533bec03b0"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"fce55cb8299030fc731635c69dde02b52962299d","unresolved":false,"context_lines":[{"line_number":172,"context_line":""},{"line_number":173,"context_line":"Possible values:"},{"line_number":174,"context_line":""},{"line_number":175,"context_line":"* Must be a valid URL of the form:  ``http://host:port/nova`` where host is the"},{"line_number":176,"context_line":"  node running the SPICE protocol native proxy and the port is typically 13002."},{"line_number":177,"context_line":"  Note that the port component is optional if you are using the default port"},{"line_number":178,"context_line":"  for HTTP or HTTPS. Consider not using the default value as it is not well"}],"source_content_type":"text/x-python","patch_set":29,"id":"2b4cb945_1bada8e5","line":175,"in_reply_to":"893a84fa_a84ba4e0","updated":"2025-02-10 08:49:41.000000000","message":"Done","commit_id":"425a756452b2deebddf75772788e3d533bec03b0"}],"nova/db/main/migrations/versions/2903cd72dc14_add_tls_port_to_console_auth_tokens.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"058950bc3cf98a96808f4c814fe0020c0464117a","unresolved":true,"context_lines":[{"line_number":31,"context_line":"def upgrade():"},{"line_number":32,"context_line":"    with op.batch_alter_table(\u0027console_auth_tokens\u0027, schema\u003dNone) as batch_op:"},{"line_number":33,"context_line":"        batch_op.add_column(sa.Column(\u0027tls_port\u0027, sa.Integer()))"},{"line_number":34,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"bc08bc6f_4070008a","line":34,"in_reply_to":"3e25ef41_e93512eb","updated":"2024-08-20 13:32:32.000000000","message":"ah its unhappy that there are 2 blank lines here.\n\nim going to ignore this for now but you will need to respin to fix this to make ci happy.","commit_id":"9c324e5496b9a7b6b02c713a347e38dc97eda940"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"8bf8d3d29b0c00f25621d0875db94735fcc4b25d","unresolved":false,"context_lines":[{"line_number":31,"context_line":"def upgrade():"},{"line_number":32,"context_line":"    with op.batch_alter_table(\u0027console_auth_tokens\u0027, schema\u003dNone) as batch_op:"},{"line_number":33,"context_line":"        batch_op.add_column(sa.Column(\u0027tls_port\u0027, sa.Integer()))"},{"line_number":34,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"278e67e1_d44811c9","line":34,"in_reply_to":"bc08bc6f_4070008a","updated":"2024-08-22 06:36:57.000000000","message":"Done","commit_id":"9c324e5496b9a7b6b02c713a347e38dc97eda940"}],"nova/tests/functional/api_sample_tests/api_samples/os-console-auth-tokens/v2.97/create-serial-console-req.json.tpl":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"ae14ae9875d675364c06c0facb019afa1106def6","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":12,"id":"874a28ce_bb8d80c0","line":7,"updated":"2024-08-29 05:45:53.000000000","message":"This seems unrelated to the direct spice console?","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"08918c35306373a1969e97ed4f10902ba52f5692","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":12,"id":"ee0f9151_11637448","line":7,"in_reply_to":"874a28ce_bb8d80c0","updated":"2024-08-30 09:16:33.000000000","message":"True, it was missing when I generated them but I will remove it again.","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"2001603c3045aef73aee2d6dec56dbc86b59dc71","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"2980cbbf_8430bed0","line":7,"in_reply_to":"ee0f9151_11637448","updated":"2025-02-10 08:50:49.000000000","message":"Done","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"}],"nova/tests/functional/api_sample_tests/test_console_auth_tokens.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"f8856f143b8a1aff190ab04cedaf75811d090816","unresolved":true,"context_lines":[{"line_number":54,"context_line":"                              response, 200)"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"class ConsoleV298AuthTokensSampleJsonTests(test_servers.ServersSampleBase):"},{"line_number":58,"context_line":"    ADMIN_API \u003d True"},{"line_number":59,"context_line":"    sample_dir \u003d \"os-console-auth-tokens\""},{"line_number":60,"context_line":"    microversion \u003d \u00272.99\u0027"}],"source_content_type":"text/x-python","patch_set":37,"id":"d3a2ef20_7ecf5597","line":57,"range":{"start_line":57,"start_character":6,"end_line":57,"end_character":42},"updated":"2025-02-18 00:28:16.000000000","message":"```suggestion\nclass ConsoleV299AuthTokensSampleJsonTests(test_servers.ServersSampleBase):\n```","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c3ac7361a3c84adaa8215cef587e675579c2f467","unresolved":false,"context_lines":[{"line_number":54,"context_line":"                              response, 200)"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"class ConsoleV298AuthTokensSampleJsonTests(test_servers.ServersSampleBase):"},{"line_number":58,"context_line":"    ADMIN_API \u003d True"},{"line_number":59,"context_line":"    sample_dir \u003d \"os-console-auth-tokens\""},{"line_number":60,"context_line":"    microversion \u003d \u00272.99\u0027"}],"source_content_type":"text/x-python","patch_set":37,"id":"a498ead5_cdf8c39d","line":57,"range":{"start_line":57,"start_character":6,"end_line":57,"end_character":42},"in_reply_to":"d3a2ef20_7ecf5597","updated":"2025-02-18 11:01:58.000000000","message":"Done","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"f8856f143b8a1aff190ab04cedaf75811d090816","unresolved":true,"context_lines":[{"line_number":58,"context_line":"    ADMIN_API \u003d True"},{"line_number":59,"context_line":"    sample_dir \u003d \"os-console-auth-tokens\""},{"line_number":60,"context_line":"    microversion \u003d \u00272.99\u0027"},{"line_number":61,"context_line":"    scenarios \u003d [(\u0027v2_98\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"    def _get_console_url(self, data):"},{"line_number":64,"context_line":"        return jsonutils.loads(data)[\"remote_console\"][\"url\"]"}],"source_content_type":"text/x-python","patch_set":37,"id":"0b49530f_c4795436","line":61,"range":{"start_line":61,"start_character":19,"end_line":61,"end_character":24},"updated":"2025-02-18 00:28:16.000000000","message":"v2_99","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c3ac7361a3c84adaa8215cef587e675579c2f467","unresolved":false,"context_lines":[{"line_number":58,"context_line":"    ADMIN_API \u003d True"},{"line_number":59,"context_line":"    sample_dir \u003d \"os-console-auth-tokens\""},{"line_number":60,"context_line":"    microversion \u003d \u00272.99\u0027"},{"line_number":61,"context_line":"    scenarios \u003d [(\u0027v2_98\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"    def _get_console_url(self, data):"},{"line_number":64,"context_line":"        return jsonutils.loads(data)[\"remote_console\"][\"url\"]"}],"source_content_type":"text/x-python","patch_set":37,"id":"855c1597_eb78a445","line":61,"range":{"start_line":61,"start_character":19,"end_line":61,"end_character":24},"in_reply_to":"0b49530f_c4795436","updated":"2025-02-18 11:01:58.000000000","message":"Done","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"}],"nova/tests/functional/api_sample_tests/test_remote_consoles.py":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"ae14ae9875d675364c06c0facb019afa1106def6","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":12,"id":"4a75c6ec_3b2b3afc","line":148,"updated":"2024-08-29 05:45:53.000000000","message":"I think we\u0027re missing a test for GET spice direct console?","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"a1dd0e9252da410eebcb4f0c0a2977df47fb0e66","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"e33a0d72_169338cb","line":148,"in_reply_to":"480e1429_07392702","updated":"2024-09-04 00:12:56.000000000","message":"Note for posterity: we don\u0027t have or need a different test for \"getting\" the spice direct console because as of microversion 2.6, the POST to /remote-consoles \"gets\" all of the consoles. There is no separate GET API.","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"08918c35306373a1969e97ed4f10902ba52f5692","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":12,"id":"480e1429_07392702","line":148,"in_reply_to":"4a75c6ec_3b2b3afc","updated":"2024-08-30 09:16:33.000000000","message":"Done.","commit_id":"911ba4c1d1494ed157beca76bbdbd97c4b1eaf11"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"f8856f143b8a1aff190ab04cedaf75811d090816","unresolved":true,"context_lines":[{"line_number":127,"context_line":"                              response, 200)"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"class ConsolesV298SampleJsonTests(test_servers.ServersSampleBase):"},{"line_number":131,"context_line":"    sample_dir \u003d \"os-remote-consoles\""},{"line_number":132,"context_line":"    microversion \u003d \u00272.99\u0027"},{"line_number":133,"context_line":"    scenarios \u003d [(\u0027v2_98\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"}],"source_content_type":"text/x-python","patch_set":37,"id":"6ac040a7_8c6e46cd","line":130,"range":{"start_line":130,"start_character":6,"end_line":130,"end_character":33},"updated":"2025-02-18 00:28:16.000000000","message":"```suggestion\nclass ConsolesV299SampleJsonTests(test_servers.ServersSampleBase):\n```","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"1142891579f5d10a64847b63e7338b6e46e78427","unresolved":true,"context_lines":[{"line_number":127,"context_line":"                              response, 200)"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"class ConsolesV298SampleJsonTests(test_servers.ServersSampleBase):"},{"line_number":131,"context_line":"    sample_dir \u003d \"os-remote-consoles\""},{"line_number":132,"context_line":"    microversion \u003d \u00272.99\u0027"},{"line_number":133,"context_line":"    scenarios \u003d [(\u0027v2_98\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"}],"source_content_type":"text/x-python","patch_set":37,"id":"ccbefd47_c2525df1","line":130,"range":{"start_line":130,"start_character":6,"end_line":130,"end_character":33},"in_reply_to":"6ac040a7_8c6e46cd","updated":"2025-02-18 10:47:05.000000000","message":"yup","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c3ac7361a3c84adaa8215cef587e675579c2f467","unresolved":false,"context_lines":[{"line_number":127,"context_line":"                              response, 200)"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"class ConsolesV298SampleJsonTests(test_servers.ServersSampleBase):"},{"line_number":131,"context_line":"    sample_dir \u003d \"os-remote-consoles\""},{"line_number":132,"context_line":"    microversion \u003d \u00272.99\u0027"},{"line_number":133,"context_line":"    scenarios \u003d [(\u0027v2_98\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"}],"source_content_type":"text/x-python","patch_set":37,"id":"d6ba8f54_d2375e3b","line":130,"range":{"start_line":130,"start_character":6,"end_line":130,"end_character":33},"in_reply_to":"ccbefd47_c2525df1","updated":"2025-02-18 11:01:58.000000000","message":"Done","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"f8856f143b8a1aff190ab04cedaf75811d090816","unresolved":true,"context_lines":[{"line_number":130,"context_line":"class ConsolesV298SampleJsonTests(test_servers.ServersSampleBase):"},{"line_number":131,"context_line":"    sample_dir \u003d \"os-remote-consoles\""},{"line_number":132,"context_line":"    microversion \u003d \u00272.99\u0027"},{"line_number":133,"context_line":"    scenarios \u003d [(\u0027v2_98\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"    def setUp(self):"},{"line_number":136,"context_line":"        super(ConsolesV298SampleJsonTests, self).setUp()"}],"source_content_type":"text/x-python","patch_set":37,"id":"c4d8b7b6_e8603bba","line":133,"range":{"start_line":133,"start_character":19,"end_line":133,"end_character":24},"updated":"2025-02-18 00:28:16.000000000","message":"v2_99","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c3ac7361a3c84adaa8215cef587e675579c2f467","unresolved":false,"context_lines":[{"line_number":130,"context_line":"class ConsolesV298SampleJsonTests(test_servers.ServersSampleBase):"},{"line_number":131,"context_line":"    sample_dir \u003d \"os-remote-consoles\""},{"line_number":132,"context_line":"    microversion \u003d \u00272.99\u0027"},{"line_number":133,"context_line":"    scenarios \u003d [(\u0027v2_98\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"    def setUp(self):"},{"line_number":136,"context_line":"        super(ConsolesV298SampleJsonTests, self).setUp()"}],"source_content_type":"text/x-python","patch_set":37,"id":"63f3fa6b_b64d8677","line":133,"range":{"start_line":133,"start_character":19,"end_line":133,"end_character":24},"in_reply_to":"c4d8b7b6_e8603bba","updated":"2025-02-18 11:01:58.000000000","message":"Done","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"f8856f143b8a1aff190ab04cedaf75811d090816","unresolved":true,"context_lines":[{"line_number":133,"context_line":"    scenarios \u003d [(\u0027v2_98\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"    def setUp(self):"},{"line_number":136,"context_line":"        super(ConsolesV298SampleJsonTests, self).setUp()"},{"line_number":137,"context_line":"        self.flags(enabled\u003dTrue, group\u003d\u0027spice\u0027)"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"    def test_create_spice_direct_console(self):"}],"source_content_type":"text/x-python","patch_set":37,"id":"b4e22261_6ed90b66","line":136,"range":{"start_line":136,"start_character":8,"end_line":136,"end_character":56},"updated":"2025-02-18 00:28:16.000000000","message":"```suggestion\n        super().setUp()\n```","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c3ac7361a3c84adaa8215cef587e675579c2f467","unresolved":false,"context_lines":[{"line_number":133,"context_line":"    scenarios \u003d [(\u0027v2_98\u0027, {\u0027api_major_version\u0027: \u0027v2.1\u0027})]"},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"    def setUp(self):"},{"line_number":136,"context_line":"        super(ConsolesV298SampleJsonTests, self).setUp()"},{"line_number":137,"context_line":"        self.flags(enabled\u003dTrue, group\u003d\u0027spice\u0027)"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"    def test_create_spice_direct_console(self):"}],"source_content_type":"text/x-python","patch_set":37,"id":"1996d202_72d010fd","line":136,"range":{"start_line":136,"start_character":8,"end_line":136,"end_character":56},"in_reply_to":"b4e22261_6ed90b66","updated":"2025-02-18 11:01:58.000000000","message":"Done","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"}],"nova/tests/unit/api/openstack/compute/test_console_auth_tokens.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"f8856f143b8a1aff190ab04cedaf75811d090816","unresolved":true,"context_lines":[{"line_number":98,"context_line":"        mock_validate.assert_called_once_with(self.context, fakes.FAKE_UUID)"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"class ConsoleAuthTokensExtensionTestV298(ConsoleAuthTokensExtensionTestV21):"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"    def setUp(self):"},{"line_number":104,"context_line":"        super(ConsoleAuthTokensExtensionTestV298, self).setUp()"}],"source_content_type":"text/x-python","patch_set":37,"id":"0735e7b0_4ca39c71","line":101,"range":{"start_line":101,"start_character":6,"end_line":101,"end_character":40},"updated":"2025-02-18 00:28:16.000000000","message":"```suggestion\nclass ConsoleAuthTokensExtensionTestV299(ConsoleAuthTokensExtensionTestV21):\n```","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c3ac7361a3c84adaa8215cef587e675579c2f467","unresolved":false,"context_lines":[{"line_number":98,"context_line":"        mock_validate.assert_called_once_with(self.context, fakes.FAKE_UUID)"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"class ConsoleAuthTokensExtensionTestV298(ConsoleAuthTokensExtensionTestV21):"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"    def setUp(self):"},{"line_number":104,"context_line":"        super(ConsoleAuthTokensExtensionTestV298, self).setUp()"}],"source_content_type":"text/x-python","patch_set":37,"id":"d8a0875e_bdd68391","line":101,"range":{"start_line":101,"start_character":6,"end_line":101,"end_character":40},"in_reply_to":"0735e7b0_4ca39c71","updated":"2025-02-18 11:01:58.000000000","message":"Done","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"f8856f143b8a1aff190ab04cedaf75811d090816","unresolved":true,"context_lines":[{"line_number":101,"context_line":"class ConsoleAuthTokensExtensionTestV298(ConsoleAuthTokensExtensionTestV21):"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"    def setUp(self):"},{"line_number":104,"context_line":"        super(ConsoleAuthTokensExtensionTestV298, self).setUp()"},{"line_number":105,"context_line":"        self.req.api_version_request \u003d api_version_request.APIVersionRequest("},{"line_number":106,"context_line":"            \u00272.99\u0027)"},{"line_number":107,"context_line":""}],"source_content_type":"text/x-python","patch_set":37,"id":"9c7653da_a80cebc1","line":104,"range":{"start_line":104,"start_character":9,"end_line":104,"end_character":63},"updated":"2025-02-18 00:28:16.000000000","message":"```suggestion\n        super().setUp()\n```","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c3ac7361a3c84adaa8215cef587e675579c2f467","unresolved":false,"context_lines":[{"line_number":101,"context_line":"class ConsoleAuthTokensExtensionTestV298(ConsoleAuthTokensExtensionTestV21):"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"    def setUp(self):"},{"line_number":104,"context_line":"        super(ConsoleAuthTokensExtensionTestV298, self).setUp()"},{"line_number":105,"context_line":"        self.req.api_version_request \u003d api_version_request.APIVersionRequest("},{"line_number":106,"context_line":"            \u00272.99\u0027)"},{"line_number":107,"context_line":""}],"source_content_type":"text/x-python","patch_set":37,"id":"863ab9d4_0a1c4f22","line":104,"range":{"start_line":104,"start_character":9,"end_line":104,"end_character":63},"in_reply_to":"9c7653da_a80cebc1","updated":"2025-02-18 11:01:58.000000000","message":"Done","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"47872014f8ab3e09bab971168417c4850e39be66","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":40,"id":"ddb1fcdb_a0f2ffa1","line":134,"updated":"2025-02-19 08:13:22.000000000","message":"we could add a test returning an old object version like for rolling upgrades but that can be in a FUP","commit_id":"fd6210fef923aaade11af282834d31be32cc3e57"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"59110b2b1523f081b50f310138bd67c859d68a81","unresolved":false,"context_lines":[{"line_number":35,"context_line":"            \u0027instance_uuid\u0027: fakes.FAKE_UUID,"},{"line_number":36,"context_line":"            \u0027host\u0027: \u0027fake_host\u0027,"},{"line_number":37,"context_line":"            \u0027port\u0027: \u00271234\u0027,"},{"line_number":38,"context_line":"            \u0027internal_access_path\u0027: \u0027fake_access_path\u0027"},{"line_number":39,"context_line":"        }"},{"line_number":40,"context_line":"    }"},{"line_number":41,"context_line":"    _EXPECTED_OUTPUT_SPICE \u003d {"}],"source_content_type":"text/x-python","patch_set":42,"id":"accada61_5cb0035e","line":38,"updated":"2025-03-04 13:09:30.000000000","message":"FYI, this causes a regression in our tests since this field should be a UUID. It looks like a mistake introduced in [PS22](https://review.opendev.org/c/openstack/nova/+/924844/22/nova/tests/unit/api/openstack/compute/test_console_auth_tokens.py#38). The only reason we\u0027re not seeing it is because there\u0027s no response body schema decorator on the v2.31 - v2.98 or v2.99+ versions of the methods.\n\nI\u0027m fixing this in I2a50750848f8571df7cdbaf39f2168e355220c25 but just pointing this out for future reviewers.","commit_id":"cbc263f6bc741734c4da11f8725e38a59c02f0e7"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"59110b2b1523f081b50f310138bd67c859d68a81","unresolved":true,"context_lines":[{"line_number":53,"context_line":"    _EXPECTED_OUTPUT_DB \u003d copy.deepcopy(_EXPECTED_OUTPUT)"},{"line_number":54,"context_line":"    _EXPECTED_OUTPUT_DB[\u0027console\u0027].update("},{"line_number":55,"context_line":"        {\u0027host\u0027: \u0027fake_host\u0027, \u0027port\u0027: 1234,"},{"line_number":56,"context_line":"         \u0027internal_access_path\u0027: \u0027fake_access_path\u0027})"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"    _EXPECTED_OUTPUT_DB_SPICE \u003d copy.deepcopy(_EXPECTED_OUTPUT_SPICE)"},{"line_number":59,"context_line":"    _EXPECTED_OUTPUT_DB_SPICE[\u0027console\u0027].update("}],"source_content_type":"text/x-python","patch_set":42,"id":"fae14bbd_73b7c3c8","line":56,"updated":"2025-03-04 13:09:30.000000000","message":"Same comment as above.","commit_id":"cbc263f6bc741734c4da11f8725e38a59c02f0e7"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"292666e30f8ad4b02c4da060e4f868f3f8e31ec1","unresolved":false,"context_lines":[{"line_number":53,"context_line":"    _EXPECTED_OUTPUT_DB \u003d copy.deepcopy(_EXPECTED_OUTPUT)"},{"line_number":54,"context_line":"    _EXPECTED_OUTPUT_DB[\u0027console\u0027].update("},{"line_number":55,"context_line":"        {\u0027host\u0027: \u0027fake_host\u0027, \u0027port\u0027: 1234,"},{"line_number":56,"context_line":"         \u0027internal_access_path\u0027: \u0027fake_access_path\u0027})"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"    _EXPECTED_OUTPUT_DB_SPICE \u003d copy.deepcopy(_EXPECTED_OUTPUT_SPICE)"},{"line_number":59,"context_line":"    _EXPECTED_OUTPUT_DB_SPICE[\u0027console\u0027].update("}],"source_content_type":"text/x-python","patch_set":42,"id":"f2701209_db1ba12f","line":56,"in_reply_to":"fae14bbd_73b7c3c8","updated":"2025-03-04 13:09:48.000000000","message":"Marking as resolved...","commit_id":"cbc263f6bc741734c4da11f8725e38a59c02f0e7"}],"nova/tests/unit/api/openstack/compute/test_remote_consoles.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"f8856f143b8a1aff190ab04cedaf75811d090816","unresolved":true,"context_lines":[{"line_number":476,"context_line":"                                             \u0027webmks\u0027)"},{"line_number":477,"context_line":""},{"line_number":478,"context_line":""},{"line_number":479,"context_line":"class ConsolesExtensionTestV298(ConsolesExtensionTestV26):"},{"line_number":480,"context_line":"    def setUp(self):"},{"line_number":481,"context_line":"        super(ConsolesExtensionTestV298, self).setUp()"},{"line_number":482,"context_line":"        self.req \u003d fakes.HTTPRequest.blank(\u0027\u0027)"}],"source_content_type":"text/x-python","patch_set":37,"id":"a302f918_004ce4c8","line":479,"range":{"start_line":479,"start_character":6,"end_line":479,"end_character":31},"updated":"2025-02-18 00:28:16.000000000","message":"```suggestion\nclass ConsolesExtensionTestV299(ConsolesExtensionTestV26):\n```","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c3ac7361a3c84adaa8215cef587e675579c2f467","unresolved":false,"context_lines":[{"line_number":476,"context_line":"                                             \u0027webmks\u0027)"},{"line_number":477,"context_line":""},{"line_number":478,"context_line":""},{"line_number":479,"context_line":"class ConsolesExtensionTestV298(ConsolesExtensionTestV26):"},{"line_number":480,"context_line":"    def setUp(self):"},{"line_number":481,"context_line":"        super(ConsolesExtensionTestV298, self).setUp()"},{"line_number":482,"context_line":"        self.req \u003d fakes.HTTPRequest.blank(\u0027\u0027)"}],"source_content_type":"text/x-python","patch_set":37,"id":"e2a8a426_969a0401","line":479,"range":{"start_line":479,"start_character":6,"end_line":479,"end_character":31},"in_reply_to":"a302f918_004ce4c8","updated":"2025-02-18 11:01:58.000000000","message":"Done","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"f8856f143b8a1aff190ab04cedaf75811d090816","unresolved":true,"context_lines":[{"line_number":478,"context_line":""},{"line_number":479,"context_line":"class ConsolesExtensionTestV298(ConsolesExtensionTestV26):"},{"line_number":480,"context_line":"    def setUp(self):"},{"line_number":481,"context_line":"        super(ConsolesExtensionTestV298, self).setUp()"},{"line_number":482,"context_line":"        self.req \u003d fakes.HTTPRequest.blank(\u0027\u0027)"},{"line_number":483,"context_line":"        self.context \u003d self.req.environ[\u0027nova.context\u0027]"},{"line_number":484,"context_line":"        self.req.api_version_request \u003d api_version_request.APIVersionRequest("}],"source_content_type":"text/x-python","patch_set":37,"id":"bd2edc83_37f30ce5","line":481,"range":{"start_line":481,"start_character":8,"end_line":481,"end_character":54},"updated":"2025-02-18 00:28:16.000000000","message":"```suggestion\n        super().setUp()\n```","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c3ac7361a3c84adaa8215cef587e675579c2f467","unresolved":false,"context_lines":[{"line_number":478,"context_line":""},{"line_number":479,"context_line":"class ConsolesExtensionTestV298(ConsolesExtensionTestV26):"},{"line_number":480,"context_line":"    def setUp(self):"},{"line_number":481,"context_line":"        super(ConsolesExtensionTestV298, self).setUp()"},{"line_number":482,"context_line":"        self.req \u003d fakes.HTTPRequest.blank(\u0027\u0027)"},{"line_number":483,"context_line":"        self.context \u003d self.req.environ[\u0027nova.context\u0027]"},{"line_number":484,"context_line":"        self.req.api_version_request \u003d api_version_request.APIVersionRequest("}],"source_content_type":"text/x-python","patch_set":37,"id":"703c621a_d58becfe","line":481,"range":{"start_line":481,"start_character":8,"end_line":481,"end_character":54},"in_reply_to":"bd2edc83_37f30ce5","updated":"2025-02-18 11:01:58.000000000","message":"Done","commit_id":"0a6a3bfeafaccee3eadfdb3f5f485c5af5adca22"}],"releasenotes/notes/spice-direct-consoles-4bee40633633c971.yaml":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"8dca4cbcbab148c66bd35aa212c2fcbe73d0fd8b","unresolved":false,"context_lines":[{"line_number":13,"context_line":"    be fronted by a proxy which will handle authentication separately."},{"line_number":14,"context_line":"    This new console type is exposed in the Compute API v2.98"},{"line_number":15,"context_line":"    microversion. To facilitate this proxying, a new config option"},{"line_number":16,"context_line":"    ``spice_direct_proxy_base_url`` is added to the spice configuration group."},{"line_number":17,"context_line":"    This option is used to construct a URL containing an access token for"},{"line_number":18,"context_line":"    the console, and that access token can be turned into hypervisor"},{"line_number":19,"context_line":"    connection information using the pre-existing"}],"source_content_type":"text/x-yaml","patch_set":25,"id":"8148c93e_11f5682a","line":16,"updated":"2025-01-29 20:12:42.000000000","message":"+1","commit_id":"6d36aac68f23be254972f6050d9bbef8ce1c84a3"}]}
