)]}'
{"id":"openstack%2Foctavia~923939","triplet_id":"openstack%2Foctavia~master~If37af668705a20f8447b67ef245e43af4ead7809","project":"openstack/octavia","branch":"master","attention_set":{"32053":{"account":{"_account_id":32053,"name":"Denys Mishchenko","email":"denis@mischenko.org.ua","username":"arddennis"},"last_update":"2024-07-15 08:23:40.000000000","reason":"\u003cGERRIT_ACCOUNT_27256\u003e replied on the change","reason_account":{"_account_id":27256,"name":"Vadim Ponomarev","email":"velizarx@gmail.com","username":"velizarx"}}},"removed_from_attention_set":{},"hashtags":[],"change_id":"If37af668705a20f8447b67ef245e43af4ead7809","subject":"Amphora multiple availability zones support","status":"NEW","created":"2024-07-11 09:57:16.000000000","updated":"2024-08-12 12:26:18.000000000","submit_type":"MERGE_IF_NECESSARY","mergeable":false,"submittable":false,"total_comment_count":3,"unresolved_comment_count":3,"work_in_progress":true,"has_review_started":true,"meta_rev_id":"4c637ad3e8bdea4e3611c98fd096c62efe2b7c15","_number":923939,"virtual_id_number":923939,"owner":{"_account_id":32053,"name":"Denys Mishchenko","email":"denis@mischenko.org.ua","username":"arddennis"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:check","value":1,"date":"2024-07-11 12:26:30.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},"Backport-Candidate":{"all":[{"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":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"CC":[{"_account_id":23922,"name":"Magnus Bergman","email":"mb@citynetwork.se","username":"magnusbe"},{"_account_id":27256,"name":"Vadim Ponomarev","email":"velizarx@gmail.com","username":"velizarx"}]},"pending_reviewers":{"REVIEWER":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"CC":[{"_account_id":23922,"name":"Magnus Bergman","email":"mb@citynetwork.se","username":"magnusbe"},{"_account_id":27256,"name":"Vadim Ponomarev","email":"velizarx@gmail.com","username":"velizarx"}]},"reviewer_updates":[{"updated":"2024-07-11 12:26:30.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":"2024-07-15 08:23:40.000000000","updated_by":{"_account_id":27256,"name":"Vadim Ponomarev","email":"velizarx@gmail.com","username":"velizarx"},"reviewer":{"_account_id":27256,"name":"Vadim Ponomarev","email":"velizarx@gmail.com","username":"velizarx"},"state":"CC"},{"updated":"2024-08-12 12:26:18.000000000","updated_by":{"_account_id":23922,"name":"Magnus Bergman","email":"mb@citynetwork.se","username":"magnusbe"},"reviewer":{"_account_id":23922,"name":"Magnus Bergman","email":"mb@citynetwork.se","username":"magnusbe"},"state":"CC"}],"messages":[{"id":"b021e3918a63b42cf9d5da5910c9681f9b14bf54","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":32053,"name":"Denys Mishchenko","email":"denis@mischenko.org.ua","username":"arddennis"},"date":"2024-07-11 09:57:16.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"f7a74b18ede858534e458a13c77b32b32d77a17c","tag":"autogenerated:gerrit:setWorkInProgress","author":{"_account_id":32053,"name":"Denys Mishchenko","email":"denis@mischenko.org.ua","username":"arddennis"},"date":"2024-07-11 11:16:35.000000000","message":"Set Work In Progress","accounts_in_message":[],"_revision_number":1},{"id":"036a5277d9ebb9cfdc66bac7c50cb13f513eee59","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2024-07-11 12:26:30.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/92b5116cdc4b47c69aa41bbbff641546\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/f2ae62f3add34dfc96fdd6036dd9727a : SUCCESS in 11m 50s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/b766fdd76edb41048b01d4fbc93a2c55 : SUCCESS in 4m 45s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/f738a8666d2241e184ae2d531a634581 : SUCCESS in 4m 46s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/fda4ebe213e44df1b6ac9c69843cc229 : SUCCESS in 4m 59s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/0421a26c02574ca3aaeeee5b275e832b : SUCCESS in 7m 39s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/55521e2c72e24ecc89e01007dad22dd8 : SUCCESS in 11m 34s\n- octavia-tox-py311-tips https://zuul.opendev.org/t/openstack/build/27b4797a41004fcfa3a5993b8937a8c9 : SUCCESS in 6m 32s\n- octavia-tox-functional-py311-tips https://zuul.opendev.org/t/openstack/build/e16e993cffd04bfbbae1b8ab55e8cfb1 : SUCCESS in 6m 43s\n- openstack-tox-pip-check-reqs https://zuul.opendev.org/t/openstack/build/744d5519d43145479884dcd26ce46130 : SUCCESS in 4m 15s\n- openstack-tox-functional-py39 https://zuul.opendev.org/t/openstack/build/120a19d0adf44d0cbf580886f12bec99 : SUCCESS in 7m 13s\n- openstack-tox-functional-py310 https://zuul.opendev.org/t/openstack/build/2af4875426aa4faf995f8949a61ab06d : SUCCESS in 6m 07s\n- openstack-tox-functional-py311 https://zuul.opendev.org/t/openstack/build/902e23fdc24f46ffa9995f7ad0c3d86c : SUCCESS in 6m 30s\n- octavia-v2-dsvm-noop-api https://zuul.opendev.org/t/openstack/build/97bf8b4b9ff14e38b636e4b18f8fe75c : SUCCESS in 1h 21m 11s\n- octavia-v2-dsvm-scenario-traffic-ops https://zuul.opendev.org/t/openstack/build/4b27aa70507b4b9d9e31d0c4706da7a8 : SUCCESS in 1h 44m 47s\n- octavia-v2-dsvm-scenario-non-traffic-ops https://zuul.opendev.org/t/openstack/build/72f5ead58cae4303af78367c1b255f5a : SUCCESS in 1h 04m 08s\n- octavia-v2-dsvm-scenario-traffic-ops-jobboard https://zuul.opendev.org/t/openstack/build/2c76cf2ab4a640eca5af5b4aeecaa32e : SUCCESS in 1h 47m 18s\n- octavia-v2-dsvm-scenario-non-traffic-ops-jobboard https://zuul.opendev.org/t/openstack/build/b4770333cf994547aca99b758bd29628 : SUCCESS in 53m 54s\n- octavia-v2-dsvm-tls-barbican https://zuul.opendev.org/t/openstack/build/34de965e5403482eb755a77f5ac23e57 : SUCCESS in 35m 07s\n- octavia-grenade https://zuul.opendev.org/t/openstack/build/c00afb1a2dbe40ecad40d108ca221b0a : SUCCESS in 43m 25s\n- octavia-v2-dsvm-tls-barbican-fips https://zuul.opendev.org/t/openstack/build/bfd2f98b016a40fba22e637aa09bbaaf : SUCCESS in 1h 03m 08s (non-voting)\n- octavia-v2-act-stdby-dsvm-scenario https://zuul.opendev.org/t/openstack/build/faed6df5012342a6baf86a37bcaeee49 : SUCCESS in 46m 51s (non-voting)\n- octavia-v2-dsvm-cinder-amphora https://zuul.opendev.org/t/openstack/build/7cc000a2e3d2455d9182c4fd1d44167c : SUCCESS in 2h 17m 24s (non-voting)\n- octavia-v2-dsvm-scenario-two-node https://zuul.opendev.org/t/openstack/build/15fe852c23de45169dba339da5064e55 : SUCCESS in 2h 25m 48s (non-voting)\n- octavia-v2-dsvm-scenario-ipv6-only https://zuul.opendev.org/t/openstack/build/134f295349c447d8a460fa29fd4cdd31 : FAILURE in 28m 45s (non-voting)\n- octavia-v2-dsvm-scenario-centos-9-stream https://zuul.opendev.org/t/openstack/build/c0dd0257890541ffa1c85b80c202ec1a : SUCCESS in 2h 20m 01s (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"85ff23522e6fb292bb693e2520ff1691d562c10a","author":{"_account_id":27256,"name":"Vadim Ponomarev","email":"velizarx@gmail.com","username":"velizarx"},"date":"2024-07-15 08:23:40.000000000","message":"Patch Set 1:\n\n(3 comments)","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"91f8d33e275678ac3ac5793fe3ef0abfb849c64e","revisions":{"91f8d33e275678ac3ac5793fe3ef0abfb849c64e":{"kind":"REWORK","_number":1,"created":"2024-07-11 09:57:16.000000000","uploader":{"_account_id":32053,"name":"Denys Mishchenko","email":"denis@mischenko.org.ua","username":"arddennis"},"ref":"refs/changes/39/923939/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/octavia","ref":"refs/changes/39/923939/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/octavia refs/changes/39/923939/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/octavia refs/changes/39/923939/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/octavia refs/changes/39/923939/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/octavia refs/changes/39/923939/1"}}},"commit":{"parents":[{"commit":"5ab6a8001e9a3376f09f3e72eb407bda88d20572","subject":"Add spec for multiple AZ amphora placement","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/octavia/commit/5ab6a8001e9a3376f09f3e72eb407bda88d20572"}]}],"author":{"name":"Denys Mishchenko","email":"denys.mishchenko@cleura.com","date":"2024-07-11 09:54:23.000000000","tz":120},"committer":{"name":"Denys Mishchenko","email":"denys.mishchenko@cleura.com","date":"2024-07-11 09:54:23.000000000","tz":120},"subject":"Amphora multiple availability zones support","message":"Amphora multiple availability zones support\n\nThis change adds support to define multiple compute availability zones for the\namphora creation. Multiple ways to define a list of compute zones available:\n* Define a list of Octavia availability zones in flavor.\n* Define list of compute zones in octavia flavor\n* define list of compute zones in nova section of the config file\n\nOnce we create a load balancer with multiple compute availability zones\n(using either of the above ways), we calculate a zone for the initial master\namphora based on the loadbalancer_id hash. Then we pick another zone for the\nfailover amphora. Once we execute a failover, in the compute task we find\namphora which is going to be deleted using a status \"pending delete\" then put\na new amphora in exactly the same availability zone. This lets us preserve the\nlocation of the amphoras.\n\nTests cover only basic cases with multiple compute zones. It might be needed\nto add:\n* Failover test that AZ stay the same\n* Use octavia availability zones in flavor\n* Use multiple conflicting definition (config plus flavor)\n\nIt might be better to do placement logic in controller_worker\n(create_load_balancer and failover_amphora functions) instead of compute_tasks\nand just define octavia availability_zone for the amphora during its creation,\nbut I might need help with this.\n\nImplements: blueprint multiaz_amphora_distribution\nChange-Id: If37af668705a20f8447b67ef245e43af4ead7809\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/octavia/commit/91f8d33e275678ac3ac5793fe3ef0abfb849c64e"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/octavia/commit/91f8d33e275678ac3ac5793fe3ef0abfb849c64e"}]},"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"},{"label":"Backport-Candidate","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":"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":{"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":""}}}]}
