)]}'
{"id":"openstack%2Foctavia~949503","triplet_id":"openstack%2Foctavia~stable%2F2025.1~Iadf100ab45499b59421425bc6874012a8bf0bde5","project":"openstack/octavia","branch":"stable/2025.1","attention_set":{},"removed_from_attention_set":{"16137":{"account":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"last_update":"2025-08-19 07:27:26.000000000","reason":"Change was abandoned"},"11628":{"account":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"last_update":"2025-08-19 07:27:26.000000000","reason":"Change was abandoned"},"29244":{"account":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"last_update":"2025-08-11 06:41:49.000000000","reason":"\u003cGERRIT_ACCOUNT_29244\u003e replied on the change","reason_account":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"}}},"hashtags":[],"change_id":"Iadf100ab45499b59421425bc6874012a8bf0bde5","subject":"Support rotating server_certs_key_passphrase key","status":"ABANDONED","created":"2025-05-12 13:13:06.000000000","updated":"2025-08-19 07:27:26.000000000","total_comment_count":1,"unresolved_comment_count":0,"has_review_started":true,"cherry_pick_of_change":942885,"cherry_pick_of_patch_set":8,"meta_rev_id":"a7dadf7377777f2c68d6c233cf58c746d9cad12d","_number":949503,"virtual_id_number":949503,"owner":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},{"tag":"autogenerated:zuul:check","value":1,"date":"2025-05-12 16:15:46.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":{"disliked":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"all":[{"value":-1,"date":"2025-08-11 06:41:49.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},{"value":0,"permitted_voting_range":{"min":-2,"max":2},"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},{"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":"","value":-1,"default_value":0,"optional":true},"Workflow":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},{"_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},"Backport-Candidate":{"all":[{"value":0,"permitted_voting_range":{"min":-2,"max":2},"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},{"value":0,"permitted_voting_range":{"min":-2,"max":2},"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Do Not Backport","-1":"Not A Backport Candidate"," 0":"Backport Review Needed","+1":"Proposed Backport","+2":"Should Backport"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2025-05-12 16:15:46.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":"2025-05-17 09:30:52.000000000","updated_by":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"reviewer":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"state":"REVIEWER"},{"updated":"2025-08-11 06:17:16.000000000","updated_by":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"reviewer":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"state":"REVIEWER"}],"messages":[{"id":"9c348b218b7ccf4675dd14009b7cb45728177a85","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"date":"2025-05-12 13:13:06.000000000","message":"Patch Set 1: Cherry Picked from branch master.","accounts_in_message":[],"_revision_number":1},{"id":"a38521401bfb09bfe79d72a1726eaf120298b2b1","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-05-12 16:15:46.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/4ee2a0b6049c476b801d8cbde7a02f0a\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/7e979cdb683e473590c001a48a6df074 : SUCCESS in 13m 30s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/88c9be99de9843c4bace2fed1dca2c99 : SUCCESS in 6m 05s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/b477a56709e241d1a1f58cc841610180 : SUCCESS in 5m 34s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/efd47d60f08f42c597d08422c8b41084 : SUCCESS in 6m 13s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/77142fb3f47a47078d5071454560d721 : SUCCESS in 11m 58s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/e0089c5eaca24afc99acefef903e7fa2 : SUCCESS in 4m 58s\n- octavia-tox-py311-tips https://zuul.opendev.org/t/openstack/build/8aa08c01290b4e4caf6678d63959961a : SUCCESS in 7m 33s\n- octavia-tox-functional-py311-tips https://zuul.opendev.org/t/openstack/build/e09718056bc5412fb1d7770283f8fa88 : SUCCESS in 9m 19s\n- openstack-tox-pip-check-reqs https://zuul.opendev.org/t/openstack/build/575f0e0204fd4631ae1f6a4cbe223bca : SUCCESS in 4m 50s\n- openstack-tox-functional-py39 https://zuul.opendev.org/t/openstack/build/36efe77f70cf4e958cffba56690af6f0 : SUCCESS in 7m 04s\n- openstack-tox-functional-py310 https://zuul.opendev.org/t/openstack/build/d33b28b0904e42938140b08a285d65cf : SUCCESS in 6m 51s\n- openstack-tox-functional-py311 https://zuul.opendev.org/t/openstack/build/ab1f25d7434442da8c65f93cd924d245 : SUCCESS in 7m 56s\n- octavia-v2-dsvm-noop-api https://zuul.opendev.org/t/openstack/build/5f509056ac684a8f893833d550130305 : SUCCESS in 1h 35m 51s\n- octavia-v2-dsvm-scenario-traffic-ops https://zuul.opendev.org/t/openstack/build/ff1270abccfb4df8baf5833184b4bb1d : SUCCESS in 1h 23m 41s\n- octavia-v2-dsvm-scenario-non-traffic-ops https://zuul.opendev.org/t/openstack/build/4a99538a29dc4df79e54374917d6fddf : SUCCESS in 1h 05m 49s\n- octavia-v2-dsvm-scenario-traffic-ops-ubuntu-jammy https://zuul.opendev.org/t/openstack/build/ce710953bdc84312acac0f4a3a74b19e : SUCCESS in 2h 10m 13s\n- octavia-v2-dsvm-scenario-non-traffic-ops-ubuntu-jammy https://zuul.opendev.org/t/openstack/build/6172e8d690f44d6f8766d844e3fded68 : SUCCESS in 44m 51s\n- octavia-v2-dsvm-scenario-traffic-ops-jobboard https://zuul.opendev.org/t/openstack/build/c50640941e9c4ce68518751f68c14e8c : SUCCESS in 2h 00m 37s\n- octavia-v2-dsvm-scenario-non-traffic-ops-jobboard https://zuul.opendev.org/t/openstack/build/37eceab9c87e42dfa96fdf4c197ba0bc : SUCCESS in 45m 26s\n- octavia-v2-dsvm-tls-barbican https://zuul.opendev.org/t/openstack/build/bbe928dd98a24fc0a1beb41755f2c3ec : FAILURE in 19m 09s (non-voting)\n- octavia-grenade https://zuul.opendev.org/t/openstack/build/e1c0e70e6cb24ad6bb28716f409dff9d : SUCCESS in 42m 16s\n- octavia-v2-dsvm-tls-barbican-fips https://zuul.opendev.org/t/openstack/build/fbf5cf1dc6a943688f7860601e6d5006 : FAILURE in 55m 15s (non-voting)\n- octavia-v2-act-stdby-dsvm-scenario https://zuul.opendev.org/t/openstack/build/341b38582344474fbc4800d6bd9d7069 : SUCCESS in 22m 09s (non-voting)\n- octavia-v2-dsvm-cinder-amphora https://zuul.opendev.org/t/openstack/build/37d27c8cafc44db68c37791bc0a6e98b : SUCCESS in 2h 11m 43s (non-voting)\n- octavia-v2-dsvm-scenario-two-node https://zuul.opendev.org/t/openstack/build/64b5b174261741509c7d0e0f7a509759 : SUCCESS in 3h 01m 24s (non-voting)\n- octavia-v2-dsvm-scenario-ipv6-only https://zuul.opendev.org/t/openstack/build/da4a4b18b27449d3b0d7f84671c410cd : SUCCESS in 2h 03m 34s (non-voting)\n- octavia-v2-dsvm-scenario-centos-9-stream https://zuul.opendev.org/t/openstack/build/fe021e9eb0b64d29bc8e5575566e7fda : FAILURE in 2h 11m 31s (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"7a37d7e509f78e31f33d3d9b95fb697afa775baa","author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"date":"2025-08-11 06:41:49.000000000","message":"Patch Set 1: Code-Review-1\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"a7dadf7377777f2c68d6c233cf58c746d9cad12d","tag":"autogenerated:gerrit:abandon","author":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"date":"2025-08-19 07:27:26.000000000","message":"Abandoned","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"710ad85449ee1e635f698463f4f7f5c4a0b2ddbb","revisions":{"710ad85449ee1e635f698463f4f7f5c4a0b2ddbb":{"kind":"REWORK","_number":1,"created":"2025-05-12 13:13:06.000000000","uploader":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"ref":"refs/changes/03/949503/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/octavia","ref":"refs/changes/03/949503/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/octavia refs/changes/03/949503/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/octavia refs/changes/03/949503/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/octavia refs/changes/03/949503/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/octavia refs/changes/03/949503/1"}}},"commit":{"parents":[{"commit":"b8824ede82c42b81ca35248bd6ab6fb8bf51f3cd","subject":"Add an octavia-wsgi compatibility script","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/octavia/commit/b8824ede82c42b81ca35248bd6ab6fb8bf51f3cd"}]}],"author":{"name":"Tobias Urdin","email":"tobias.urdin@binero.com","date":"2025-02-27 09:36:20.000000000","tz":60},"committer":{"name":"Tobias Urdin","email":"tobias.urdin@binero.com","date":"2025-05-12 13:13:06.000000000","tz":0},"subject":"Support rotating server_certs_key_passphrase key","message":"Support rotating server_certs_key_passphrase key\n\nThe server_certs_key_passphrase was introduced to encrypt\nthe stored amphora certificates and the configuration option\nfor the passphrase has a default value.\n\nThis default value cannot be changed once assigned as there\nis data stored encrypted using the passphrase, if the\npassphrase is changed all amphora needs failover so that\nthe certificates is stored encrypted using the passphrase.\n\nThis wrap the existing cryptography.fernet.Fernet logic into\na utils helper function and converts it to using MultiFernet\nso that the first key in the list is used for encrypting data\nand all the others is available for decryption that means\nthat the the first key in the list can be changed and the\ncurrent key appended to the end of the list and when you\nhave organically (over time) performed amphora failovers you\ncan remove old keys.\n\nThe server_certs_key_passphrase config option is changed to\na ListOpt which is backward compatible with StrOpt.\n\nWe introduce a new FernetKeyOpt item_type for the config\noption because ListOpt of strings (or if we would have\nused a MultiStrOpt) does not support the `regex` kwarg\nfor regex based validation.\n\nCloses-Bug: #2106810\nChange-Id: Iadf100ab45499b59421425bc6874012a8bf0bde5\n(cherry picked from commit 4dfcd861cdf86622c7d85e04d328a0a2fabd7938)\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/octavia/commit/710ad85449ee1e635f698463f4f7f5c4a0b2ddbb"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/octavia/commit/710ad85449ee1e635f698463f4f7f5c4a0b2ddbb"}]},"branch":"refs/heads/stable/2025.1"}},"requirements":[],"submit_records":[],"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":{}}},{"name":"Backport-Candidate","description":"Backport candidate status","status":"NOT_APPLICABLE","is_legacy":false,"applicability_expression_result":{"fulfilled":false,"status":"FAIL"},"submittability_expression_result":{"expression":"is:true","fulfilled":true,"status":"NOT_EVALUATED","passing_atoms":[],"failing_atoms":[],"atom_explanations":{}}},{"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":{}}},{"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":{}}}]}
