)]}'
{"id":"openstack%2Fopenstack-ansible-os_octavia~958736","triplet_id":"openstack%2Fopenstack-ansible-os_octavia~master~Ib6a5c074ef99459f8707ab0874edb55d39d495ad","project":"openstack/openstack-ansible-os_octavia","branch":"master","attention_set":{},"removed_from_attention_set":{"28619":{"account":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"last_update":"2025-08-29 19:20:01.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"Ib6a5c074ef99459f8707ab0874edb55d39d495ad","subject":"Deprecate quota management with Octavia","status":"MERGED","created":"2025-08-28 09:09:56.000000000","updated":"2025-08-29 19:22:00.000000000","submitted":"2025-08-29 19:20:01.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"958736","meta_rev_id":"81869d418f76cb70640894927cd1961e0d42d406","_number":958736,"virtual_id_number":958736,"owner":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":31542,"name":"Andrew Bonney","email":"andrew.bonney@bbc.co.uk","username":"andrewbonney"},{"value":0,"_account_id":32666,"name":"Damian Dąbrowski","email":"damian@dabrowski.cloud","username":"ddabrowski"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2025-08-29 19:20:01.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":31542,"name":"Andrew Bonney","email":"andrew.bonney@bbc.co.uk","username":"andrewbonney"},"all":[{"value":2,"date":"2025-08-29 10:00:24.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":31542,"name":"Andrew Bonney","email":"andrew.bonney@bbc.co.uk","username":"andrewbonney"},{"value":2,"date":"2025-08-29 17:19:36.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":32666,"name":"Damian Dąbrowski","email":"damian@dabrowski.cloud","username":"ddabrowski"},{"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":32666,"name":"Damian Dąbrowski","email":"damian@dabrowski.cloud","username":"ddabrowski"},"all":[{"value":0,"_account_id":31542,"name":"Andrew Bonney","email":"andrew.bonney@bbc.co.uk","username":"andrewbonney"},{"value":1,"date":"2025-08-29 17:19:36.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":32666,"name":"Damian Dąbrowski","email":"damian@dabrowski.cloud","username":"ddabrowski"},{"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},"Backport-Candidate":{"all":[{"value":0,"_account_id":31542,"name":"Andrew Bonney","email":"andrew.bonney@bbc.co.uk","username":"andrewbonney"},{"value":0,"_account_id":32666,"name":"Damian Dąbrowski","email":"damian@dabrowski.cloud","username":"ddabrowski"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Not A Backport Candidate"," 0":"Backport Review Needed","+1":"Proposed Backport"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":31542,"name":"Andrew Bonney","email":"andrew.bonney@bbc.co.uk","username":"andrewbonney"},{"_account_id":32666,"name":"Damian Dąbrowski","email":"damian@dabrowski.cloud","username":"ddabrowski"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2025-08-28 12:07:40.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-08-29 10:00:24.000000000","updated_by":{"_account_id":31542,"name":"Andrew Bonney","email":"andrew.bonney@bbc.co.uk","username":"andrewbonney"},"reviewer":{"_account_id":31542,"name":"Andrew Bonney","email":"andrew.bonney@bbc.co.uk","username":"andrewbonney"},"state":"REVIEWER"},{"updated":"2025-08-29 17:19:36.000000000","updated_by":{"_account_id":32666,"name":"Damian Dąbrowski","email":"damian@dabrowski.cloud","username":"ddabrowski"},"reviewer":{"_account_id":32666,"name":"Damian Dąbrowski","email":"damian@dabrowski.cloud","username":"ddabrowski"},"state":"REVIEWER"}],"messages":[{"id":"129c0d0c76a16565d0cac12e884b027f6cdf0ec6","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"date":"2025-08-28 09:09:56.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"b386781b4c5ff0806315754e072e39675010f592","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"date":"2025-08-28 09:10:26.000000000","message":"Uploaded patch set 2: Commit message was updated.","accounts_in_message":[],"_revision_number":2},{"id":"b7bef3f40fa17613c2646d18d93e661fce7bec8a","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-08-28 12:07:40.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/fd8711c76d5c4b199737cf99d8bcbf64\n\n- openstack-ansible-linters-ubuntu-noble https://zuul.opendev.org/t/openstack/build/c29bdd5454ca4863ab073325728d7a62 : SUCCESS in 9m 06s\n- openstack-ansible-deploy-aio_metal-centos-10-stream https://zuul.opendev.org/t/openstack/build/97c58096f8144d398555e99189825492 : SUCCESS in 1h 35m 53s\n- openstack-ansible-deploy-aio_metal-debian-bookworm https://zuul.opendev.org/t/openstack/build/f7d7910f7c3e4eba857a69a0cf4b3b09 : SUCCESS in 2h 06m 40s\n- openstack-ansible-deploy-aio_metal-ubuntu-noble https://zuul.opendev.org/t/openstack/build/1c6580db73a54a1195e1931015efe292 : SUCCESS in 2h 03m 53s\n- openstack-ansible-deploy-aio_metal_tls-ubuntu-noble https://zuul.opendev.org/t/openstack/build/0e9a6176bd16430fa17c350fd5eabd8a : SUCCESS in 1h 51m 25s\n- openstack-ansible-upgrade-aio_metal-ubuntu-noble https://zuul.opendev.org/t/openstack/build/d0285a4db371449aa7d584d27287f4d4 : SUCCESS in 2h 38m 51s\n- openstack-ansible-upgrade-aio_metal_tls-ubuntu-noble https://zuul.opendev.org/t/openstack/build/d600b262814a4c238b91c48e085d1dd3 : SUCCESS in 1h 16m 27s\n- openstack-ansible-deploy-aio_distro_metal-ubuntu-noble https://zuul.opendev.org/t/openstack/build/71dfee3a9ecd406296cb56a9fe7363d1 : FAILURE in 58m 13s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/b7d247565ff4428cb50b4de1fed2c7b6 : SUCCESS in 19m 44s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/1f4c7e4a6e054f9ca97b040a3d2a10fd : SUCCESS in 3m 04s\n- openstack-ansible-deploy-aio_lxc_ovnprovider-ubuntu-noble https://zuul.opendev.org/t/openstack/build/94132a8cf4ef4d05a7efe7b1bb73c97e : SUCCESS in 2h 47m 01s","accounts_in_message":[],"_revision_number":2},{"id":"19bd717dc16f7fa9124e19ff2dc0575e3fce3e0b","author":{"_account_id":31542,"name":"Andrew Bonney","email":"andrew.bonney@bbc.co.uk","username":"andrewbonney"},"date":"2025-08-29 10:00:24.000000000","message":"Patch Set 2: Code-Review+2","accounts_in_message":[],"_revision_number":2},{"id":"5a55dd02ceb3e6fee7e4d560f60fa9ffd663c60a","author":{"_account_id":32666,"name":"Damian Dąbrowski","email":"damian@dabrowski.cloud","username":"ddabrowski"},"date":"2025-08-29 17:19:36.000000000","message":"Patch Set 2: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":2},{"id":"ecf33d9e692af7450a758c6248fd6aa80d5cd77b","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-08-29 17:23:17.000000000","message":"Patch Set 2: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":2},{"id":"963b66a736b1688e2798bb53647495db88533ea4","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-08-29 19:20:01.000000000","message":"Patch Set 2: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/390093ff4f9e48179317e72efb8894dc\n\n- openstack-ansible-linters-ubuntu-noble https://zuul.opendev.org/t/openstack/build/ea601a96562444b1ae6aa663b30509c7 : SUCCESS in 6m 51s\n- openstack-ansible-deploy-aio_metal-centos-10-stream https://zuul.opendev.org/t/openstack/build/7d3960b4d984436292f4671597fee3f1 : SUCCESS in 56m 26s\n- openstack-ansible-deploy-aio_metal-debian-bookworm https://zuul.opendev.org/t/openstack/build/088e732f508b41d48162e2e26555a6b4 : SUCCESS in 53m 43s\n- openstack-ansible-deploy-aio_metal-ubuntu-noble https://zuul.opendev.org/t/openstack/build/c6593a5c70f04e0ea87e77f83f02fe7e : SUCCESS in 1h 21m 45s\n- openstack-ansible-deploy-aio_metal_tls-ubuntu-noble https://zuul.opendev.org/t/openstack/build/48cdb5417da742719b6fa9b5ac97695f : SUCCESS in 1h 52m 24s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/3d7fbea7044140adab035fd0fc8e3801 : SUCCESS in 3m 19s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/ff79d989ce7948f4a4588db95f1a006f : SUCCESS in 2m 00s\n- openstack-ansible-deploy-aio_lxc_ovnprovider-ubuntu-noble https://zuul.opendev.org/t/openstack/build/1ee5488513a146f183d8e183d635ba57 : SUCCESS in 1h 08m 38s","accounts_in_message":[],"_revision_number":2},{"id":"528a1ff7e986e7c3140e89a53bdeaae816b4aa23","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-08-29 19:20:01.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":2},{"id":"81869d418f76cb70640894927cd1961e0d42d406","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-08-29 19:22:00.000000000","message":"Patch Set 2:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/b3eef5450a8b4edbba7150129167ff1b\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/e9afe69230424dd28722bb7c59dda210 : SUCCESS in 1m 42s","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"53baf4054db3ffdbd9fd1b0315190f4ca334548a","revisions":{"99e71d3f424dc38e6d44ab056042b7710f58ac41":{"kind":"REWORK","_number":1,"created":"2025-08-28 09:09:56.000000000","uploader":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"ref":"refs/changes/36/958736/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/openstack-ansible-os_octavia","ref":"refs/changes/36/958736/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/openstack-ansible-os_octavia refs/changes/36/958736/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/openstack-ansible-os_octavia refs/changes/36/958736/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/openstack-ansible-os_octavia refs/changes/36/958736/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/openstack-ansible-os_octavia refs/changes/36/958736/1"}}},"commit":{"parents":[{"commit":"f9cf3bd677ce8ec5e18cb74e25c96a71540f644d","subject":"Switch from wsgi script to wsgi module","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-ansible-os_octavia/commit/f9cf3bd677ce8ec5e18cb74e25c96a71540f644d"}]}],"author":{"name":"Dmitriy Rabotyagov","email":"dmitriy.rabotyagov@cleura.com","date":"2025-08-28 09:09:49.000000000","tz":120},"committer":{"name":"Dmitriy Rabotyagov","email":"dmitriy.rabotyagov@cleura.com","date":"2025-08-28 09:09:49.000000000","tz":120},"subject":"Deprecate quota management with Octavia","message":"Deprecate quota management with Octavia\n\nWith adding Octavia Load Balancer to the `openstack.cloud.quota`\nmodule [1] we have a chicken-egg situation:\n* If Octavia endpoint exist, but Octavia service is not yet running or\ndisabled on HAProxy, openstack_resources will fail on quotas\n* We need service_setup to run before openstack_resources as\notherwise there will be no user to create/upload SSH key for\n\nQuota management inside of the Octavia role also creates a confusion,\nas Octavia does use default `service` project by default, which\nis shared with other services, like Trove, which may result in\nconflicts between these services.\n\nAs a solution it is proposed to deprecate quota management in\nfavor of ``openstack.osa.openstack_resources`` playbook and guide\noperators on way to set quotas in their user_variables instead.\n\n[1] https://opendev.org/openstack/ansible-collections-openstack/commit/57c63e7918659b4897cc39e50460aba6b40a5936#diff-ca4fad21675b7d9b029b213a9629606546fe7009\n\nChange-Id: Ib6a5c074ef99459f8707ab0874edb55d39d495ad\nSigned-off-by: Dmitriy Rabotyagov \u003cdmitriy.rabotyagov@cleura.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-ansible-os_octavia/commit/99e71d3f424dc38e6d44ab056042b7710f58ac41"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-ansible-os_octavia/commit/99e71d3f424dc38e6d44ab056042b7710f58ac41"}]},"branch":"refs/heads/master"},"53baf4054db3ffdbd9fd1b0315190f4ca334548a":{"kind":"NO_CODE_CHANGE","_number":2,"created":"2025-08-28 09:10:26.000000000","uploader":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"ref":"refs/changes/36/958736/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/openstack-ansible-os_octavia","ref":"refs/changes/36/958736/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/openstack-ansible-os_octavia refs/changes/36/958736/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/openstack-ansible-os_octavia refs/changes/36/958736/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/openstack-ansible-os_octavia refs/changes/36/958736/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/openstack-ansible-os_octavia refs/changes/36/958736/2"}}},"commit":{"parents":[{"commit":"f9cf3bd677ce8ec5e18cb74e25c96a71540f644d","subject":"Switch from wsgi script to wsgi module","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-ansible-os_octavia/commit/f9cf3bd677ce8ec5e18cb74e25c96a71540f644d"}]}],"author":{"name":"Dmitriy Rabotyagov","email":"dmitriy.rabotyagov@cleura.com","date":"2025-08-28 09:09:49.000000000","tz":120},"committer":{"name":"Dmitriy Rabotyagov","email":"dmitriy.rabotyagov@cleura.com","date":"2025-08-28 09:10:00.000000000","tz":120},"subject":"Deprecate quota management with Octavia","message":"Deprecate quota management with Octavia\n\nWith adding Octavia Load Balancer to the `openstack.cloud.quota`\nmodule [1] we have a chicken-egg situation:\n* If Octavia endpoint exist, but Octavia service is not yet running or\ndisabled on HAProxy, openstack_resources will fail on quotas\n* We need service_setup to run before openstack_resources as\notherwise there will be no user to create/upload SSH key for\n\nQuota management inside of the Octavia role also creates a confusion,\nas Octavia does use default `service` project by default, which\nis shared with other services, like Trove, which may result in\nconflicts between these services.\n\nAs a solution it is proposed to deprecate quota management in\nfavor of ``openstack.osa.openstack_resources`` playbook and guide\noperators on way to set quotas in their user_variables instead.\n\n[1] https://opendev.org/openstack/ansible-collections-openstack/commit/57c63e7918659b4897cc39e50460aba6b40a5936#diff-ca4fad21675b7d9b029b213a9629606546fe7009\n\nDepends-On: https://review.opendev.org/c/openstack/ansible-role-pki/+/958661\nChange-Id: Ib6a5c074ef99459f8707ab0874edb55d39d495ad\nSigned-off-by: Dmitriy Rabotyagov \u003cdmitriy.rabotyagov@cleura.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-ansible-os_octavia/commit/53baf4054db3ffdbd9fd1b0315190f4ca334548a"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-ansible-os_octavia/commit/53baf4054db3ffdbd9fd1b0315190f4ca334548a"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"CLOSED","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY","applied_by":{"_account_id":32666,"name":"Damian Dąbrowski","email":"damian@dabrowski.cloud","username":"ddabrowski"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":32666,"name":"Damian Dąbrowski","email":"damian@dabrowski.cloud","username":"ddabrowski"}},{"label":"Backport-Candidate","status":"MAY"}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dMAX"],"failing_atoms":["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":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dMAX"],"failing_atoms":["label:Code-Review\u003dMIN"],"atom_explanations":{}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dMAX"],"failing_atoms":["label:Workflow\u003dMIN"],"atom_explanations":{}}}]}
