)]}'
{"id":"openstack%2Foctavia-tempest-plugin~994029","triplet_id":"openstack%2Foctavia-tempest-plugin~master~Ifaa2a9cc539a795484cc6855969cdf1a888a912f","project":"openstack/octavia-tempest-plugin","branch":"master","hashtags":[],"change_id":"Ifaa2a9cc539a795484cc6855969cdf1a888a912f","subject":"Handle provider \"unsupported\" 400 responses as not implemented","status":"NEW","created":"2026-06-19 02:48:46.000000000","updated":"2026-06-19 04:44:54.000000000","submit_type":"MERGE_IF_NECESSARY","mergeable":true,"submittable":false,"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"43379f217a7cda38c1511e60854047dc7e91b0e7","_number":994029,"virtual_id_number":994029,"owner":{"_account_id":3031,"name":"Sam Morrison","email":"sorrison@gmail.com","username":"sorrison"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:check","value":1,"date":"2026-06-19 04:44:54.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":"","value":1,"default_value":0,"optional":true},"Code-Review":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_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":{"all":[{"_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}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-06-19 04:44:54.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"}],"messages":[{"id":"e85ef22bcac6f48dbd97822a30b8eb25009e9f76","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":3031,"name":"Sam Morrison","email":"sorrison@gmail.com","username":"sorrison"},"date":"2026-06-19 02:48:46.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"43379f217a7cda38c1511e60854047dc7e91b0e7","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-19 04:44:54.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/068b844e3f36470cae3163281e9dbbc4\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/174342990d8543ceb98d1c7f336db47a : SUCCESS in 8m 42s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/d41870935da24afa9b0c6f62e9b5bf23 : SUCCESS in 3m 23s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/9c48eb1d512141f38a3d90eb4ae418f9 : SUCCESS in 3m 51s\n- octavia-v2-dsvm-noop-api https://zuul.opendev.org/t/openstack/build/3c8e0fc7d4a24cf69e31a3a08227588e : SUCCESS in 1h 06m 10s\n- octavia-v2-dsvm-noop-api-stable-2026-1 https://zuul.opendev.org/t/openstack/build/672f9ef81e544dacb956bbe06fae7d94 : SUCCESS in 1h 01m 08s\n- octavia-v2-dsvm-noop-api-stable-2025-2 https://zuul.opendev.org/t/openstack/build/91a31f1e98bb43ba90816562397b2eac : SUCCESS in 1h 18m 11s\n- octavia-v2-dsvm-noop-api-stable-2025-1 https://zuul.opendev.org/t/openstack/build/8ef0f1f8a642405da087acc161e4a00a : SUCCESS in 1h 10m 44s\n- octavia-v2-dsvm-noop-api-advanced-rbac https://zuul.opendev.org/t/openstack/build/c21fda94094745ef84dbbe5ad43de604 : SUCCESS in 1h 12m 11s\n- octavia-v2-dsvm-scenario-traffic-ops https://zuul.opendev.org/t/openstack/build/4db686e5927a45b1bb4d2436dc0eab86 : SUCCESS in 1h 30m 38s\n- octavia-v2-dsvm-scenario-non-traffic-ops https://zuul.opendev.org/t/openstack/build/b543542d9b9346b2960564e169bc7135 : SUCCESS in 1h 12m 32s\n- octavia-v2-dsvm-scenario-traffic-ops-stable-2026-1 https://zuul.opendev.org/t/openstack/build/25cd7c5e7f854f508dad02220c44bdf3 : SUCCESS in 1h 37m 09s\n- octavia-v2-dsvm-scenario-non-traffic-ops-stable-2026-1 https://zuul.opendev.org/t/openstack/build/2131051c221a4e47aa3bb8ac07fdb836 : SUCCESS in 1h 09m 09s\n- octavia-v2-dsvm-scenario-traffic-ops-stable-2025-2 https://zuul.opendev.org/t/openstack/build/9852df61e0b84ac3bd84b22ec9678c9f : SUCCESS in 1h 38m 10s\n- octavia-v2-dsvm-scenario-non-traffic-ops-stable-2025-2 https://zuul.opendev.org/t/openstack/build/d475226f646f43ec9c0032408e058e52 : SUCCESS in 1h 15m 33s\n- octavia-v2-dsvm-scenario-traffic-ops-stable-2025-1 https://zuul.opendev.org/t/openstack/build/d5355ce6c8224ab9baa4da6132f0c277 : SUCCESS in 1h 35m 48s\n- octavia-v2-dsvm-scenario-non-traffic-ops-stable-2025-1 https://zuul.opendev.org/t/openstack/build/2f514fc1bc764defacebd0ab3e8142c8 : SUCCESS in 1h 14m 46s\n- octavia-v2-dsvm-tls-barbican https://zuul.opendev.org/t/openstack/build/c8aac2be9ded4bdf9ff4c0428f8361f3 : SUCCESS in 40m 56s\n- octavia-v2-dsvm-tls-barbican-stable-2026-1 https://zuul.opendev.org/t/openstack/build/c97c10824f1c4e219c7664942d2505cb : SUCCESS in 40m 04s\n- octavia-v2-dsvm-tls-barbican-stable-2025-2 https://zuul.opendev.org/t/openstack/build/0c4cfc9e87814c06be7c05e7ba9ec41f : SUCCESS in 39m 57s\n- octavia-v2-dsvm-tls-barbican-stable-2025-1 https://zuul.opendev.org/t/openstack/build/461f0f67d666435e96bb269a13dba8c8 : SUCCESS in 43m 17s\n- octavia-v2-dsvm-scenario-ipv6-only https://zuul.opendev.org/t/openstack/build/5a1aa9600d5e4176858ae102ddcf23de : SUCCESS in 1h 32m 54s (non-voting)\n- octavia-v2-dsvm-scenario-centos-10-stream-traffic-ops https://zuul.opendev.org/t/openstack/build/361ee318061746fa98349b6277e2962e : SUCCESS in 1h 25m 54s (non-voting)\n- octavia-v2-dsvm-scenario-centos-10-stream-non-traffic-ops https://zuul.opendev.org/t/openstack/build/c9e423f898484e0f8a0b5f2749c545bd : SUCCESS in 1h 04m 25s (non-voting)\n- octavia-v2-dsvm-scenario-rockylinux-10-traffic-ops https://zuul.opendev.org/t/openstack/build/4885644e35904f578833e2db3015e994 : SUCCESS in 1h 24m 52s (non-voting)\n- octavia-v2-dsvm-scenario-rockylinux-10-non-traffic-ops https://zuul.opendev.org/t/openstack/build/ed99fd88ec2b484bbced496ca9b267b6 : FAILURE in 24m 36s (non-voting)\n- octavia-v2-act-stdby-dsvm-scenario-two-node-traffic-ops https://zuul.opendev.org/t/openstack/build/ec53514bc8bf46ab9152afdee5c97d84 : SUCCESS in 52m 40s (non-voting)\n- octavia-v2-act-stdby-dsvm-scenario https://zuul.opendev.org/t/openstack/build/6ba57e5d54884dc6a920776521c3d4c4 : SUCCESS in 33m 34s (non-voting)\n- octavia-v2-act-stdby-dsvm-scenario-stable-2026-1 https://zuul.opendev.org/t/openstack/build/5ed4d06a5fc3434d8434ba968c10aca2 : FAILURE in 53m 55s (non-voting)\n- octavia-v2-act-stdby-dsvm-scenario-stable-2025-2 https://zuul.opendev.org/t/openstack/build/7307873572d544fc811dc74e422c0df2 : SUCCESS in 35m 29s (non-voting)\n- octavia-v2-act-stdby-dsvm-scenario-stable-2025-1 https://zuul.opendev.org/t/openstack/build/dccf278a4f934c3f85b98db24e3744f4 : SUCCESS in 32m 18s (non-voting)\n- octavia-v2-dsvm-cinder-amphora https://zuul.opendev.org/t/openstack/build/3adae47c31c44ac0856e92b79d0c78aa : SUCCESS in 36m 52s (non-voting)\n- neutron-ovn-provider-v2-api https://zuul.opendev.org/t/openstack/build/dce10e2649fc4249bbcd4449d9a2add8 : SUCCESS in 55m 19s (non-voting)\n- neutron-ovn-provider-v2-scenario https://zuul.opendev.org/t/openstack/build/a25523c7c2ab49f6b9fd0cbe86f3ef14 : SUCCESS in 48m 10s (non-voting)","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"f592c313e77ae0139f865b9f99984c0caa53f413","revisions":{"f592c313e77ae0139f865b9f99984c0caa53f413":{"kind":"REWORK","_number":1,"created":"2026-06-19 02:48:46.000000000","uploader":{"_account_id":3031,"name":"Sam Morrison","email":"sorrison@gmail.com","username":"sorrison"},"ref":"refs/changes/29/994029/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/octavia-tempest-plugin","ref":"refs/changes/29/994029/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/octavia-tempest-plugin refs/changes/29/994029/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/octavia-tempest-plugin refs/changes/29/994029/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/octavia-tempest-plugin refs/changes/29/994029/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/octavia-tempest-plugin refs/changes/29/994029/1"}}},"commit":{"parents":[{"commit":"bb4776fabba145a03ea0b0df379dcd63d1a26a90","subject":"Replace OVN Metadata agent with OVN agent","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/octavia-tempest-plugin/commit/bb4776fabba145a03ea0b0df379dcd63d1a26a90"}]}],"author":{"name":"Sam Morrison","email":"sorrison@gmail.com","date":"2026-06-19 02:46:49.000000000","tz":600},"committer":{"name":"Sam Morrison","email":"sorrison@gmail.com","date":"2026-06-19 02:48:04.000000000","tz":600},"subject":"Handle provider \"unsupported\" 400 responses as not implemented","message":"Handle provider \"unsupported\" 400 responses as not implemented\n\nThe Octavia API previously returned HTTP 501 (Not Implemented) when a\nprovider driver did not support a requested action or option, and now\nreturns HTTP 400 (Bad Request) for these cases.\n\nThe tempest tests rely on a NotImplemented (501) response to skip\nfeatures that a provider driver does not implement, via the\nskip_if_not_implemented decorator. With the response code change those\ntests would fail instead of being skipped for providers that lack a\nfeature.\n\nTranslate these specific 400 responses, identified by the \"does not\nsupport a requested action/option\" faultstring, into NotImplemented in\nthe base LBaaS client so the skip behaviour is preserved. The change is\nbackward compatible: older Octavia releases that still return 501 are\nhandled unchanged, and genuine 400 Bad Request responses are not\naffected.\n\nChange-Id: Ifaa2a9cc539a795484cc6855969cdf1a888a912f\nRelated: https://review.opendev.org/c/openstack/octavia/+/993871\nRelated-Bug: #2157080\nSigned-off-by: Sam Morrison \u003csorrison@gmail.com\u003e\nAssisted-by: Claude Opus 4.8 (1M context) \u003cnoreply@anthropic.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/octavia-tempest-plugin/commit/f592c313e77ae0139f865b9f99984c0caa53f413"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/octavia-tempest-plugin/commit/f592c313e77ae0139f865b9f99984c0caa53f413"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"OK","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY"},{"label":"Workflow","status":"MAY"}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Verified\u003dMAX","label:Verified\u003dMIN"],"atom_explanations":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Code-Review\u003dMAX","label:Code-Review\u003dMIN"],"atom_explanations":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Workflow\u003dMAX","label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
