)]}'
{"id":"openstack%2Fnova~866201","triplet_id":"openstack%2Fnova~stable%2Ftrain~I27441d15cc6fa2ff7715ba15aa900961aadbf54a","project":"openstack/nova","branch":"stable/train","topic":"bug/1927677","attention_set":{},"removed_from_attention_set":{"4690":{"account":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"last_update":"2023-01-11 13:16:10.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"I27441d15cc6fa2ff7715ba15aa900961aadbf54a","subject":"Adapt websocketproxy tests for SimpleHTTPServer fix","status":"MERGED","created":"2022-11-30 18:05:06.000000000","updated":"2023-01-11 13:17:18.000000000","submitted":"2023-01-11 13:16:10.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":4,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"866201-bug/1927677","meta_rev_id":"ed95d879ae2feddd0bf1d2678e885193f426139e","_number":866201,"virtual_id_number":866201,"owner":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},{"value":0,"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2023-01-11 13:16:10.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"all":[{"value":2,"date":"2023-01-11 12:23:06.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},{"value":2,"date":"2022-12-20 16:08:33.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"all":[{"value":1,"date":"2023-01-11 12:23:06.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},{"value":0,"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Review-Priority":{"all":[{"value":0,"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},{"value":0,"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{" 0":"Default Priority","+1":"Contributor Review Promise","+2":"Core Review Promise"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2022-11-30 19:01:55.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2022-12-20 16:08:33.000000000","updated_by":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"reviewer":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"state":"REVIEWER"},{"updated":"2023-01-11 12:23:06.000000000","updated_by":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"reviewer":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"state":"REVIEWER"}],"messages":[{"id":"961cd41c4fdcd15c28a3ffb11e1b713b71863737","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2022-11-30 18:05:06.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"3252e57ba8e8ce95c8446219ccc75dfdc25e6514","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-11-30 19:01:55.000000000","message":"Patch Set 1: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\n\nhttps://zuul.opendev.org/t/openstack/buildset/374320183b674c6fb1caa74f66e9cd13\n\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/580a48ba820444d1a471e83112f27667 : SUCCESS in 55m 56s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/a5c3720e03e34f968591d402851fc9b4 : SUCCESS in 15m 26s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/ecf4d2a583014cc6b68f2b2cf799c99f : FAILURE in 9m 16s\n- openstack-tox-py27 https://zuul.opendev.org/t/openstack/build/6cb2cfd663e84485b043c8891faa4d9f : FAILURE in 4m 50s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/f4a7c5791cee4336aaeeb46c88707289 : SUCCESS in 12m 33s\n- openstack-tox-py37 https://zuul.opendev.org/t/openstack/build/49406fa8162e4a9a98a7fcb324645ba7 : SUCCESS in 15m 23s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/58611de53b8f472d9e122b6f0d897968 : SUCCESS in 9m 24s\n- nova-tox-functional https://zuul.opendev.org/t/openstack/build/b42f49c0298f4bd3826749f53006bb3c : SUCCESS in 20m 19s\n- nova-tox-functional-py36 https://zuul.opendev.org/t/openstack/build/13330eff4c024a30bd5a01f6b29a96f9 : SUCCESS in 19m 52s\n- nova-tox-validate-backport https://zuul.opendev.org/t/openstack/build/05aec856c6c0438c878b5cf9c1622edb : FAILURE in 4m 34s (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"5b659e4dd50a45a0ec5ece372074715723caa981","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2022-11-30 20:03:44.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"b125173d67e4869a7c329f0521ac6300ed3a47af","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2022-11-30 22:33:36.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"e169c56032334d73146c0b05a1b50f194d061c82","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-11-30 23:23:48.000000000","message":"Patch Set 2: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\n\nhttps://zuul.opendev.org/t/openstack/buildset/fb4ba35f9a964ba5a6bb0e1bc554ac31\n\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/acb890fe66514a7e8ba491c1176c3c48 : SUCCESS in 48m 49s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/b2f7a71ea04e493c985c47fea4ae21b5 : FAILURE in 13m 02s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/3c21d997174844f98c7c701ed71e4cdd : SUCCESS in 9m 33s\n- openstack-tox-py27 https://zuul.opendev.org/t/openstack/build/06c942bb5c2842beae8667190773c3f7 : SUCCESS in 13m 48s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/c03f301fda974e11a99e257fa5b5de3a : FAILURE in 13m 30s\n- openstack-tox-py37 https://zuul.opendev.org/t/openstack/build/c2dd1bfc43874f8ca7cfdd750c668965 : FAILURE in 12m 00s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/c10c1d66d5f743a89ce757d5c5a60ab7 : SUCCESS in 10m 07s\n- nova-tox-functional https://zuul.opendev.org/t/openstack/build/c453606d133c4e39b7ae5e165c8a5804 : SUCCESS in 16m 11s\n- nova-tox-functional-py36 https://zuul.opendev.org/t/openstack/build/f33cbc864a2e4697ab2ffdc5939f2f75 : SUCCESS in 15m 24s\n- nova-tox-validate-backport https://zuul.opendev.org/t/openstack/build/042a39d7b2ec40e6b562be757a7edc8a : FAILURE in 4m 45s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"abc65d17c08448afe0c07653b4928af7eb6b923e","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2022-12-01 00:02:27.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"f2f1677b9a02748e671385fa7dd6a13e77721e20","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-12-01 00:45:19.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/3d62f61576e8456bbf017f56074c652d\n\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/666b8e28fa474f5c80e94e3be6105ef6 : SUCCESS in 42m 11s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/2101b53ff7b7401cb3da3f0e3113f9bd : SUCCESS in 14m 46s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/a9120d27d1a54e619576ac7dd8d46b7e : SUCCESS in 11m 29s\n- openstack-tox-py27 https://zuul.opendev.org/t/openstack/build/8d520db51bec4338a689ca20b027c462 : SUCCESS in 11m 25s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/a6be0279452d420f9a8cfc3f6f0115e3 : SUCCESS in 12m 07s\n- openstack-tox-py37 https://zuul.opendev.org/t/openstack/build/e38bbaffe1144b60a80385730bfe96b1 : SUCCESS in 12m 00s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/30b2f05968504c83bf6dcb2af328a13a : SUCCESS in 9m 52s\n- nova-tox-functional https://zuul.opendev.org/t/openstack/build/1c1975b9010b4cabb091789017d61c61 : SUCCESS in 18m 47s\n- nova-tox-functional-py36 https://zuul.opendev.org/t/openstack/build/f991430ff9474efbafe5b22f8cc2e4bb : SUCCESS in 18m 19s\n- nova-tox-validate-backport https://zuul.opendev.org/t/openstack/build/077446c8875a4887a54ceea31ccc723b : FAILURE in 4m 17s (non-voting)","accounts_in_message":[],"_revision_number":3},{"id":"ca084106baefa0a996a4e877cb304db7d3249217","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2022-12-20 16:08:33.000000000","message":"Patch Set 3: Code-Review+2\n\n(1 comment)","accounts_in_message":[],"_revision_number":3},{"id":"84a2bf6ec49c04aaf8ac1a964a5a7b15e23e800b","author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"date":"2023-01-11 12:23:06.000000000","message":"Patch Set 3: Code-Review+2 Workflow+1\n\n(2 comments)","accounts_in_message":[],"_revision_number":3},{"id":"477427f2748ac2e5e375513867e7362da5855284","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-01-11 12:23:45.000000000","message":"Patch Set 3: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":3},{"id":"e2fb8ea1963d155b1029b275b16e849e281908ba","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-01-11 13:16:10.000000000","message":"Patch Set 3: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/13189374704145508f886812c0f2ed43\n\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/efb2ea79ddde4b0daad71841987e1494 : SUCCESS in 52m 12s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/441ad610f6ab42dda0c33b1716f6c3f2 : SUCCESS in 11m 48s\n- openstack-tox-py27 https://zuul.opendev.org/t/openstack/build/dbd66dc2fbb641eb95b1c3c009ea6607 : SUCCESS in 14m 57s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/e13c5fd2264d41a6acc85383511689c9 : SUCCESS in 10m 10s\n- openstack-tox-py37 https://zuul.opendev.org/t/openstack/build/59881821bc364fdf98c76bdcf3399769 : SUCCESS in 12m 55s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/8b92abf4241a4d45ac0bfcc038d59a99 : SUCCESS in 9m 35s\n- nova-tox-functional https://zuul.opendev.org/t/openstack/build/d2e897123a1445f499bc8605a65cbc6f : SUCCESS in 19m 29s\n- nova-tox-functional-py36 https://zuul.opendev.org/t/openstack/build/78ae869eef2043a0a1c6e910bbff3b68 : SUCCESS in 20m 16s\n- nova-tox-validate-backport https://zuul.opendev.org/t/openstack/build/413be52752f4408f8d5b1a41797f6f00 : SUCCESS in 4m 12s","accounts_in_message":[],"_revision_number":3},{"id":"2c93d503fa5941ee67b0b03663548138af5aa711","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-01-11 13:16:10.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":3},{"id":"ed95d879ae2feddd0bf1d2678e885193f426139e","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-01-11 13:17:18.000000000","message":"Patch Set 3:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/1c92e2e5fddc4734a1909bcf6cc50043\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/e970f1539b0c47eb9a7b956d18611401 : SUCCESS in 46s","accounts_in_message":[],"_revision_number":3}],"current_revision_number":3,"current_revision":"43af75243b79e95330ecd982552d568571623e39","revisions":{"6f968282208abb72a953083710094e49f9d21593":{"kind":"REWORK","_number":1,"created":"2022-11-30 18:05:06.000000000","uploader":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"ref":"refs/changes/01/866201/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/nova","ref":"refs/changes/01/866201/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/nova refs/changes/01/866201/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/nova refs/changes/01/866201/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/nova refs/changes/01/866201/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/nova refs/changes/01/866201/1"}}},"commit":{"parents":[{"commit":"d3b46af01b7afa1a9051cb440a7986bfcb1a59b1","subject":"func: Add _live_migrate helper to InstanceHelperMixin","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/d3b46af01b7afa1a9051cb440a7986bfcb1a59b1"}]}],"author":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2022-08-16 06:49:53.000000000","tz":0},"committer":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2022-11-30 18:03:40.000000000","tz":0},"subject":"Adapt websocketproxy tests for SimpleHTTPServer fix","message":"Adapt websocketproxy tests for SimpleHTTPServer fix\n\nIn response to bug 1927677 we added a workaround to\nNovaProxyRequestHandler to respond with a 400 Bad Request if an open\nredirect is attempted:\n\n  Ie36401c782f023d1d5f2623732619105dc2cfa24\n  I95f68be76330ff09e5eabb5ef8dd9a18f5547866\n\nRecently in python 3.10.6, a fix has landed in cpython to respond with\na 301 Moved Permanently to a sanitized URL that has had extra leading\n\u0027/\u0027 characters removed.\n\nThis breaks our existing unit tests which assume a 400 Bad Request as\nthe only expected response.\n\nThis adds handling of a 301 Moved Permanently response and asserts that\nthe redirect location is the expected sanitized URL. Doing this instead\nof checking for a given python version will enable the tests to continue\nto work if and when the cpython fix gets backported to older python\nversions.\n\nWhile updating the tests, the opportunity was taken to commonize the\ncode of two unit tests that were nearly identical.\n\nConflicts:\n    nova/tests/unit/console/test_websocketproxy.py\n\nNOTE(melwitt): The conflict is because change\nI23ac1cc79482d0fabb359486a4b934463854cae5 (Allow TLS ciphers/protocols\nto be configurable for console proxies) is not in Train.\n\nRelated-Bug: #1927677\nCloses-Bug: #1986545\n\nChange-Id: I27441d15cc6fa2ff7715ba15aa900961aadbf54a\n(cherry picked from commit 15769b883ed4a86d62b141ea30d3f1590565d8e0)\n(cherry picked from commit 4a2b44c7cf55d1d79d5a2dd638bd0def3af0f5af)\n(cherry picked from commit 0e4a257e8636a979605c614a35e79ba47b74d870)\n(cherry picked from commit 3023e162e1a415ddaa70b4b8fbe24b1771dbe424)\n(cherry picked from commit 77bc3f004e7fe4077ea035c659630bedef1cfea1)\n(cherry picked from commit 746d654c23d75f084b6f0c70e6c32b97eebf419c)\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/6f968282208abb72a953083710094e49f9d21593"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/6f968282208abb72a953083710094e49f9d21593"}]},"branch":"refs/heads/stable/train"},"d6bf0b1d2be3cccfd62c45ca5314df6464aeabb5":{"kind":"REWORK","_number":2,"created":"2022-11-30 22:33:36.000000000","uploader":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"ref":"refs/changes/01/866201/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/nova","ref":"refs/changes/01/866201/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/nova refs/changes/01/866201/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/nova refs/changes/01/866201/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/nova refs/changes/01/866201/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/nova refs/changes/01/866201/2"}}},"commit":{"parents":[{"commit":"d3b46af01b7afa1a9051cb440a7986bfcb1a59b1","subject":"func: Add _live_migrate helper to InstanceHelperMixin","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/d3b46af01b7afa1a9051cb440a7986bfcb1a59b1"}]}],"author":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2022-08-16 06:49:53.000000000","tz":0},"committer":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2022-11-30 22:23:50.000000000","tz":0},"subject":"Adapt websocketproxy tests for SimpleHTTPServer fix","message":"Adapt websocketproxy tests for SimpleHTTPServer fix\n\nIn response to bug 1927677 we added a workaround to\nNovaProxyRequestHandler to respond with a 400 Bad Request if an open\nredirect is attempted:\n\n  Ie36401c782f023d1d5f2623732619105dc2cfa24\n  I95f68be76330ff09e5eabb5ef8dd9a18f5547866\n\nRecently in python 3.10.6, a fix has landed in cpython to respond with\na 301 Moved Permanently to a sanitized URL that has had extra leading\n\u0027/\u0027 characters removed.\n\nThis breaks our existing unit tests which assume a 400 Bad Request as\nthe only expected response.\n\nThis adds handling of a 301 Moved Permanently response and asserts that\nthe redirect location is the expected sanitized URL. Doing this instead\nof checking for a given python version will enable the tests to continue\nto work if and when the cpython fix gets backported to older python\nversions.\n\nWhile updating the tests, the opportunity was taken to commonize the\ncode of two unit tests that were nearly identical.\n\nConflicts:\n    nova/tests/unit/console/test_websocketproxy.py\n\nNOTE(melwitt): The conflict is because change\nI23ac1cc79482d0fabb359486a4b934463854cae5 (Allow TLS ciphers/protocols\nto be configurable for console proxies) is not in Train. The difference\nfrom the cherry picked change is because the flake8 version on the\nstable/train branch does not support f-strings [1].\n\nRelated-Bug: #1927677\nCloses-Bug: #1986545\n\n[1] https://lists.openstack.org/pipermail/openstack-discuss/2019-November/011027.html\n\nChange-Id: I27441d15cc6fa2ff7715ba15aa900961aadbf54a\n(cherry picked from commit 15769b883ed4a86d62b141ea30d3f1590565d8e0)\n(cherry picked from commit 4a2b44c7cf55d1d79d5a2dd638bd0def3af0f5af)\n(cherry picked from commit 0e4a257e8636a979605c614a35e79ba47b74d870)\n(cherry picked from commit 3023e162e1a415ddaa70b4b8fbe24b1771dbe424)\n(cherry picked from commit 77bc3f004e7fe4077ea035c659630bedef1cfea1)\n(cherry picked from commit 746d654c23d75f084b6f0c70e6c32b97eebf419c)\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/d6bf0b1d2be3cccfd62c45ca5314df6464aeabb5"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/d6bf0b1d2be3cccfd62c45ca5314df6464aeabb5"}]},"branch":"refs/heads/stable/train"},"43af75243b79e95330ecd982552d568571623e39":{"kind":"REWORK","_number":3,"created":"2022-12-01 00:02:27.000000000","uploader":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"ref":"refs/changes/01/866201/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/nova","ref":"refs/changes/01/866201/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/nova refs/changes/01/866201/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/nova refs/changes/01/866201/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/nova refs/changes/01/866201/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/nova refs/changes/01/866201/3"}}},"commit":{"parents":[{"commit":"d3b46af01b7afa1a9051cb440a7986bfcb1a59b1","subject":"func: Add _live_migrate helper to InstanceHelperMixin","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/d3b46af01b7afa1a9051cb440a7986bfcb1a59b1"}]}],"author":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2022-08-16 06:49:53.000000000","tz":0},"committer":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2022-12-01 00:01:28.000000000","tz":0},"subject":"Adapt websocketproxy tests for SimpleHTTPServer fix","message":"Adapt websocketproxy tests for SimpleHTTPServer fix\n\nIn response to bug 1927677 we added a workaround to\nNovaProxyRequestHandler to respond with a 400 Bad Request if an open\nredirect is attempted:\n\n  Ie36401c782f023d1d5f2623732619105dc2cfa24\n  I95f68be76330ff09e5eabb5ef8dd9a18f5547866\n\nRecently in python 3.10.6, a fix has landed in cpython to respond with\na 301 Moved Permanently to a sanitized URL that has had extra leading\n\u0027/\u0027 characters removed.\n\nThis breaks our existing unit tests which assume a 400 Bad Request as\nthe only expected response.\n\nThis adds handling of a 301 Moved Permanently response and asserts that\nthe redirect location is the expected sanitized URL. Doing this instead\nof checking for a given python version will enable the tests to continue\nto work if and when the cpython fix gets backported to older python\nversions.\n\nWhile updating the tests, the opportunity was taken to commonize the\ncode of two unit tests that were nearly identical.\n\nConflicts:\n    nova/tests/unit/console/test_websocketproxy.py\n\nNOTE(melwitt): The conflict is because change\nI23ac1cc79482d0fabb359486a4b934463854cae5 (Allow TLS ciphers/protocols\nto be configurable for console proxies) is not in Train. The difference\nfrom the cherry picked change is because the flake8 version on the\nstable/train branch does not support f-strings [1].\n\nRelated-Bug: #1927677\nCloses-Bug: #1986545\n\n[1] https://lists.openstack.org/pipermail/openstack-discuss/2019-November/011027.html\n\nChange-Id: I27441d15cc6fa2ff7715ba15aa900961aadbf54a\n(cherry picked from commit 15769b883ed4a86d62b141ea30d3f1590565d8e0)\n(cherry picked from commit 4a2b44c7cf55d1d79d5a2dd638bd0def3af0f5af)\n(cherry picked from commit 0e4a257e8636a979605c614a35e79ba47b74d870)\n(cherry picked from commit 3023e162e1a415ddaa70b4b8fbe24b1771dbe424)\n(cherry picked from commit 77bc3f004e7fe4077ea035c659630bedef1cfea1)\n(cherry picked from commit 746d654c23d75f084b6f0c70e6c32b97eebf419c)\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/43af75243b79e95330ecd982552d568571623e39"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/43af75243b79e95330ecd982552d568571623e39"}]},"branch":"refs/heads/stable/train"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"CLOSED","labels":[{"label":"Verified","status":"OK","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"OK","applied_by":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"}},{"label":"Workflow","status":"OK","applied_by":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"}},{"label":"Review-Priority","status":"MAY"}]}],"submit_requirements":[]}
