)]}'
{"id":"openstack%2Fopenstack-ansible-haproxy_server~1003110","triplet_id":"openstack%2Fopenstack-ansible-haproxy_server~stable%2F2026.1~Idb24de98bf8ecadb4a22b5f38bde5e5dab9aaff8","project":"openstack/openstack-ansible-haproxy_server","branch":"stable/2026.1","attention_set":{},"removed_from_attention_set":{"39422":{"account":{"_account_id":39422,"name":"Tim Hosking","display_name":"Munger","email":"trhosking@gmail.com","username":"munger"},"last_update":"2026-09-01 17:22:15.000000000","reason":"Change was abandoned"}},"hashtags":[],"change_id":"Idb24de98bf8ecadb4a22b5f38bde5e5dab9aaff8","subject":"haproxy_server: set X-Forwarded-Proto instead of appending","status":"ABANDONED","created":"2026-08-31 19:30:26.000000000","updated":"2026-09-01 17:22:15.000000000","total_comment_count":2,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"cd61c5a7d0f38a8fcd74d88c6e0c15eda2b27f2c","_number":1003110,"virtual_id_number":1003110,"owner":{"_account_id":39422,"name":"Tim Hosking","display_name":"Munger","email":"trhosking@gmail.com","username":"munger"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},{"tag":"autogenerated:zuul:check","value":1,"date":"2026-08-31 22:17:39.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":-2,"max":2},"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},{"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":{"rejected":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"all":[{"value":-1,"date":"2026-08-31 19:50:56.000000000","permitted_voting_range":{"min":-1,"max":1},"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},{"_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":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},{"_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":{"CC":[{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"}],"REVIEWER":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-08-31 19:50:56.000000000","updated_by":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"reviewer":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"state":"REVIEWER"},{"updated":"2026-08-31 20:28:34.000000000","updated_by":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"reviewer":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"state":"CC"},{"updated":"2026-08-31 22:17:39.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":"5258e4e4774346b398955dee55c8b230aadf49ea","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":39422,"name":"Tim Hosking","display_name":"Munger","email":"trhosking@gmail.com","username":"munger"},"date":"2026-08-31 19:30:26.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"a51622ebf2665dd3f29ace60fd4b37ba7ce9817e","author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"date":"2026-08-31 19:50:56.000000000","message":"Patch Set 1: Workflow-1\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"446f8d83e69618c173443c3dfbfcd8effd0d1129","author":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"date":"2026-08-31 20:28:34.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"ec2640783ae5e887cd5729f3ff5594271aa4fd80","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-31 22:17:39.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/bb0ce9e8dfe64b68b6af502ff1aff9d4\n\n- openstack-ansible-linters-ubuntu-noble https://zuul.opendev.org/t/openstack/build/b43230c632304b98a0b3e30d6510008d : SUCCESS in 15m 35s\n- openstack-ansible-tox-molecule-debian-bookworm https://zuul.opendev.org/t/openstack/build/657517746a234114a132c09a314d1858 : SUCCESS in 10m 48s\n- openstack-ansible-tox-molecule-debian-trixie https://zuul.opendev.org/t/openstack/build/06a870262af343ccb0ad3bd84b705739 : SUCCESS in 10m 35s\n- openstack-ansible-tox-molecule-ubuntu-noble https://zuul.opendev.org/t/openstack/build/3057520583f24ab4a4b9eed1bef71997 : SUCCESS in 10m 32s\n- openstack-ansible-tox-molecule-ubuntu-resolute https://zuul.opendev.org/t/openstack/build/c1587d87f1324bb9aa214ea855149d2f : SUCCESS in 9m 55s\n- openstack-ansible-tox-molecule-centos-10-stream https://zuul.opendev.org/t/openstack/build/73035ad12cfa441caabaeafac315d5dd : SUCCESS in 9m 42s\n- openstack-ansible-tox-molecule-rockylinux-10 https://zuul.opendev.org/t/openstack/build/81171ac3379646cdb35ab44627d91219 : FAILURE in 5m 14s (non-voting)\n- openstack-ansible-deploy-infra_lxc-centos-10-stream https://zuul.opendev.org/t/openstack/build/e0eab13c28ab43c6ab81a385a278ba0a : SUCCESS in 58m 05s\n- openstack-ansible-deploy-infra_lxc-debian-bookworm https://zuul.opendev.org/t/openstack/build/e5424a36a1184984805207dc569c064c : SUCCESS in 1h 34m 32s\n- openstack-ansible-deploy-infra_lxc-debian-trixie https://zuul.opendev.org/t/openstack/build/730ba13019c94efda98b52a1d4dedafb : SUCCESS in 1h 20m 12s\n- openstack-ansible-deploy-infra_lxc-rockylinux-10 https://zuul.opendev.org/t/openstack/build/6261656f40fe4ecc962f5a87d444a5d5 : SUCCESS in 1h 45m 00s\n- openstack-ansible-deploy-infra_lxc_tls-rockylinux-10 https://zuul.opendev.org/t/openstack/build/084151484986421494ddec2f758b69f3 : SUCCESS in 1h 25m 47s\n- openstack-ansible-deploy-infra_lxc-ubuntu-noble https://zuul.opendev.org/t/openstack/build/8333bc108ded482f8607a6577e7aaf8e : SUCCESS in 1h 39m 53s\n- openstack-ansible-deploy-infra_lxc-ubuntu-resolute https://zuul.opendev.org/t/openstack/build/a58f0a908f7b4657a33573642f4d4baa : SUCCESS in 1h 39m 49s\n- openstack-ansible-deploy-infra_lxc_stepca-ubuntu-noble https://zuul.opendev.org/t/openstack/build/1849655753454e37a2278a7cd04cbbae : SUCCESS in 1h 38m 24s\n- openstack-ansible-deploy-infra_lxc_tls-ubuntu-noble https://zuul.opendev.org/t/openstack/build/bb0f268e66414633ac3d2536915e533c : SUCCESS in 1h 39m 54s\n- openstack-ansible-deploy-aio_metal-centos-10-stream https://zuul.opendev.org/t/openstack/build/dc2d5ea2e8c6437b8f136f6753b3cb7f : SUCCESS in 1h 13m 02s\n- openstack-ansible-deploy-aio_metal-debian-bookworm https://zuul.opendev.org/t/openstack/build/95e1f9756de14ec7b185719bb33e6be1 : SUCCESS in 1h 36m 55s\n- openstack-ansible-deploy-aio_metal-debian-trixie https://zuul.opendev.org/t/openstack/build/339097ad42094879b644cbd1c7afa066 : SUCCESS in 1h 30m 34s\n- openstack-ansible-deploy-aio_metal-rockylinux-10 https://zuul.opendev.org/t/openstack/build/b389c54a4eb447c6b751e6e67313fb75 : SUCCESS in 1h 26m 28s\n- openstack-ansible-deploy-aio_metal_tls-rockylinux-10 https://zuul.opendev.org/t/openstack/build/cc420828e812440b8c097beb0634047c : SUCCESS in 1h 29m 34s\n- openstack-ansible-deploy-aio_metal-ubuntu-noble https://zuul.opendev.org/t/openstack/build/c4434afdee3c42dda34330eea11c2aaa : SUCCESS in 1h 38m 33s\n- openstack-ansible-deploy-aio_metal-ubuntu-resolute https://zuul.opendev.org/t/openstack/build/da51c734d18b4637b772c700f20c3ad4 : SUCCESS in 1h 37m 24s\n- openstack-ansible-deploy-aio_metal_tls-ubuntu-noble https://zuul.opendev.org/t/openstack/build/f5e1a30d48f6490e90dcc454124fe891 : SUCCESS in 1h 34m 45s\n- openstack-ansible-upgrade-aio_metal-rockylinux-10 https://zuul.opendev.org/t/openstack/build/825c94fba897479baf073b4196003e84 : SUCCESS in 1h 15m 17s\n- openstack-ansible-upgrade_2025.1-aio_metal-rockylinux-10 https://zuul.opendev.org/t/openstack/build/b078af80c9244084bb8dbf59e0356a83 : SUCCESS in 2h 35m 16s\n- openstack-ansible-upgrade-aio_metal-ubuntu-noble https://zuul.opendev.org/t/openstack/build/605c1b75e343481ab8d52ac374062f00 : SUCCESS in 2h 31m 04s\n- openstack-ansible-upgrade_2025.1-aio_metal-ubuntu-noble https://zuul.opendev.org/t/openstack/build/61f90afab56148d78d9a49e23e8f9fd5 : SUCCESS in 2h 39m 11s\n- openstack-ansible-upgrade-aio_metal_tls-ubuntu-noble https://zuul.opendev.org/t/openstack/build/e36821b4c8634b99825c4f3d70e136e7 : SUCCESS in 2h 31m 29s\n- openstack-ansible-upgrade-infra_lxc-ubuntu-noble https://zuul.opendev.org/t/openstack/build/27d9428464774645aed5bbedacbd2d47 : SUCCESS in 2h 08m 17s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/7fa80a6e73da411d96f0f0fb28265dbc : SUCCESS in 6m 45s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/61d6e24c68c544dab3a86c8e596c5d7e : SUCCESS in 3m 41s","accounts_in_message":[],"_revision_number":1},{"id":"cd61c5a7d0f38a8fcd74d88c6e0c15eda2b27f2c","tag":"autogenerated:gerrit:abandon","author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"date":"2026-09-01 17:22:15.000000000","message":"Abandoned\n\nIn favor of https://review.opendev.org/c/openstack/openstack-ansible-haproxy_server/+/1003325 as backports are preferably to be cherry-picked for better traceability.","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"ed72301182a2888c6d592a0a2dcce1a5ebb7862d","revisions":{"ed72301182a2888c6d592a0a2dcce1a5ebb7862d":{"kind":"REWORK","_number":1,"created":"2026-08-31 19:30:26.000000000","uploader":{"_account_id":39422,"name":"Tim Hosking","display_name":"Munger","email":"trhosking@gmail.com","username":"munger"},"ref":"refs/changes/10/1003110/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/openstack-ansible-haproxy_server","ref":"refs/changes/10/1003110/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/openstack-ansible-haproxy_server refs/changes/10/1003110/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/openstack-ansible-haproxy_server refs/changes/10/1003110/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/openstack-ansible-haproxy_server refs/changes/10/1003110/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/openstack-ansible-haproxy_server refs/changes/10/1003110/1"}}},"commit":{"parents":[{"commit":"a3ed5a45242fc9a3a469171d5d904cd0fe27d4a0","subject":"Update TOX_CONSTRAINTS_FILE for stable/2026.1","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-ansible-haproxy_server/commit/a3ed5a45242fc9a3a469171d5d904cd0fe27d4a0"}]}],"author":{"name":"Tim Hosking","email":"trhosking@gmail.com","date":"2026-08-31 19:27:19.000000000","tz":60},"committer":{"name":"Tim Hosking","email":"trhosking@gmail.com","date":"2026-08-31 19:30:18.000000000","tz":60},"subject":"haproxy_server: set X-Forwarded-Proto instead of appending","message":"haproxy_server: set X-Forwarded-Proto instead of appending\n\nWhen an upstream proxy (e.g. Cloudflare) already sets the\nX-Forwarded-Proto header, \u0027http-request add-header\u0027 appends a second\nvalue, producing \u0027https, https\u0027. Uvicorn\u0027s ProxyHeadersMiddleware\nthen reconstructs the request URL from the concatenated value,\ncorrupting request.url.path for Starlette-based apps. This causes the\nSkyline apiserver auth middleware to skip its /api/v1 guard and reject\nall authenticated requests with \u0027Profile not found in request state\u0027.\n\nUse \u0027set-header\u0027 to replace the value rather than append, so the\nresulting header is correct regardless of whether an upstream proxy\nalready provided it.\n\nCloses-Bug: 2165932\n\nChange-Id: Idb24de98bf8ecadb4a22b5f38bde5e5dab9aaff8\nSigned-off-by: Tim Hosking \u003ctrhosking@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-ansible-haproxy_server/commit/ed72301182a2888c6d592a0a2dcce1a5ebb7862d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-ansible-haproxy_server/commit/ed72301182a2888c6d592a0a2dcce1a5ebb7862d"}]},"branch":"refs/heads/stable/2026.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":{"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":["label:Workflow\u003dMIN"],"failing_atoms":["label:Workflow\u003dMAX"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
