)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":37306,"name":"Piotr Milewski","display_name":"Piotr Milewski","email":"vurmil@gmail.com","username":"vurmil"},"change_message_id":"a480fbfbc33ad4852ce45824f48affd1b0a646e6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"efb2e8d1_3f6cf678","updated":"2026-02-12 09:42:50.000000000","message":"FIX: https://review.opendev.org/c/openstack/kolla-ansible/+/976588","commit_id":"3e444dd6bdc53578d110b5aedd0b260c360f59e3"},{"author":{"_account_id":37203,"name":"Bertrand Lanson","display_name":"Bertrand Lanson","email":"bertrand.lanson@infomaniak.com","username":"lanson","status":"Infomaniak Network SA"},"change_message_id":"1fcd89076158360fa046ffd244e5693d5c138e44","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"c4b3226c_c18b4055","updated":"2026-02-12 08:40:11.000000000","message":"LGTM","commit_id":"3e444dd6bdc53578d110b5aedd0b260c360f59e3"},{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"ab6b13f6217ca8218ecb683284a4daeaaa042118","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"9672ab58_9e0b2ffd","updated":"2026-02-12 13:08:15.000000000","message":"recheck j2lint fixed","commit_id":"3e444dd6bdc53578d110b5aedd0b260c360f59e3"},{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"a444b8bee87130d2f84a5e7a7259c431f915f1f9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"36d8264b_6e161572","updated":"2026-02-12 16:43:53.000000000","message":"recheck rocky podman unrelated issue","commit_id":"3e444dd6bdc53578d110b5aedd0b260c360f59e3"},{"author":{"_account_id":37306,"name":"Piotr Milewski","display_name":"Piotr Milewski","email":"vurmil@gmail.com","username":"vurmil"},"change_message_id":"5e804c76728d0c37b428175edc7332e60172305a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"ec392514_cef7363b","in_reply_to":"36d8264b_6e161572","updated":"2026-02-12 16:55:08.000000000","message":"I\u0027ve found further evidence that this Podman race condition is a systemic issue affecting more than just RabbitMQ.\n\nIn a recent config_validate run, the task Get info on container for nova_scheduler failed with an identical pattern:\n\nTask: Get info on container for nova_scheduler.\n\nError: RemoteDisconnected(\u0027Remote end closed connection without response\u0027) while querying the Podman socket.\n\nSocket: http://%2Frun%2Fpodman%2Fpodman.sock/.../libpod/containers/json.\n\nThis confirms the Podman API (v5.7.0 in this log) often drops connections or reports an \"improper state\" when commands are issued in rapid succession. While my current patch (https://review.opendev.org/c/openstack/kolla-ansible/+/976636) specifically targets the RabbitMQ failure, we should consider a more global retry strategy for the Podman engine to prevent similar intermittent failures in other services and validation tasks.\n\nhttps://github.com/containers/conmon/issues/260","commit_id":"3e444dd6bdc53578d110b5aedd0b260c360f59e3"}],"ansible/roles/service-stop/tasks/iterated.yml":[{"author":{"_account_id":37855,"name":"Amir Hossein Ahmadi","display_name":"Amir Hossein","email":"sahahmadi96@gmail.com","username":"amir58118"},"change_message_id":"4c96f7e175e245a4764b2c659b63b8cc7a3a37da","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- name: \"Stopping {{ service_name }} containers with iteration\""},{"line_number":3,"context_line":"  become: true"},{"line_number":4,"context_line":"  vars:"},{"line_number":5,"context_line":"    service: \"{{ outer_item.value }}\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"2341f660_ecc4e148","line":2,"updated":"2026-02-11 18:54:55.000000000","message":"Suggestion: mentioning \"iteration\" in the task name doesn\u0027t add much meaning for log readers.\n\n- name: \"Stopping containers for {{ service_name }}\"","commit_id":"44ff2358eddbef3bbe2d3d7093c2bed9b11615dc"},{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"0f68cb09b827c44bc98692e937fe4e3f1866f9d4","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- name: \"Stopping {{ service_name }} containers with iteration\""},{"line_number":3,"context_line":"  become: true"},{"line_number":4,"context_line":"  vars:"},{"line_number":5,"context_line":"    service: \"{{ outer_item.value }}\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"c76a704a_37ce75ff","line":2,"in_reply_to":"2341f660_ecc4e148","updated":"2026-02-12 07:20:30.000000000","message":"It does for these that understand the code.","commit_id":"44ff2358eddbef3bbe2d3d7093c2bed9b11615dc"},{"author":{"_account_id":37306,"name":"Piotr Milewski","display_name":"Piotr Milewski","email":"vurmil@gmail.com","username":"vurmil"},"change_message_id":"91c46482a4152ab72e42d7b622ce08310cb2075a","unresolved":true,"context_lines":[{"line_number":11,"context_line":"    ignore_missing: \"{{ kolla_action_stop_ignore_missing | bool }}\""},{"line_number":12,"context_line":"  when:"},{"line_number":13,"context_line":"    - service.container_name not in skip_stop_containers"},{"line_number":14,"context_line":"  loop: \"{{ range(1,(service.iterate_var | int) + 1) | list }}\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"a897eb8a_f59c58e2","line":14,"range":{"start_line":14,"start_character":2,"end_line":14,"end_character":31},"updated":"2026-02-11 19:08:33.000000000","message":"If iterate_var is not defined, then: None | int  -\u003e 0 \nwhich results in:\nrange(1, 1)\nThis produces an empty loop and silently skips execution.\nWhile this does not raise an error, it may hide a configuration issue and make troubleshooting harder.\nA slightly safer (hardened) version would be:\nloop: \"{{ range(1, (service.iterate_var | default(0) | int) + 1) | list }}\"\nThis makes the behavior explicit and avoids relying on implicit None → 0 casting.","commit_id":"44ff2358eddbef3bbe2d3d7093c2bed9b11615dc"},{"author":{"_account_id":37855,"name":"Amir Hossein Ahmadi","display_name":"Amir Hossein","email":"sahahmadi96@gmail.com","username":"amir58118"},"change_message_id":"4c96f7e175e245a4764b2c659b63b8cc7a3a37da","unresolved":true,"context_lines":[{"line_number":11,"context_line":"    ignore_missing: \"{{ kolla_action_stop_ignore_missing | bool }}\""},{"line_number":12,"context_line":"  when:"},{"line_number":13,"context_line":"    - service.container_name not in skip_stop_containers"},{"line_number":14,"context_line":"  loop: \"{{ range(1,(service.iterate_var | int) + 1) | list }}\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"09a77a75_7094aaf2","line":14,"updated":"2026-02-11 18:54:55.000000000","message":"Nit: loop: \"{{ range(1, (service.iterate_var | int) + 1) | list }}\"","commit_id":"44ff2358eddbef3bbe2d3d7093c2bed9b11615dc"},{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"6cce77d56f2f7166d679c6b7a3d1c40d62d88fcd","unresolved":false,"context_lines":[{"line_number":11,"context_line":"    ignore_missing: \"{{ kolla_action_stop_ignore_missing | bool }}\""},{"line_number":12,"context_line":"  when:"},{"line_number":13,"context_line":"    - service.container_name not in skip_stop_containers"},{"line_number":14,"context_line":"  loop: \"{{ range(1,(service.iterate_var | int) + 1) | list }}\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"7871810f_317dc715","line":14,"in_reply_to":"09a77a75_7094aaf2","updated":"2026-02-12 07:30:16.000000000","message":"Done","commit_id":"44ff2358eddbef3bbe2d3d7093c2bed9b11615dc"},{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"0f68cb09b827c44bc98692e937fe4e3f1866f9d4","unresolved":false,"context_lines":[{"line_number":11,"context_line":"    ignore_missing: \"{{ kolla_action_stop_ignore_missing | bool }}\""},{"line_number":12,"context_line":"  when:"},{"line_number":13,"context_line":"    - service.container_name not in skip_stop_containers"},{"line_number":14,"context_line":"  loop: \"{{ range(1,(service.iterate_var | int) + 1) | list }}\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"972c66c2_c9a3eee1","line":14,"range":{"start_line":14,"start_character":2,"end_line":14,"end_character":31},"in_reply_to":"89b8251d_6d208aa4","updated":"2026-02-12 07:20:30.000000000","message":"Done","commit_id":"44ff2358eddbef3bbe2d3d7093c2bed9b11615dc"},{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"3346f3b9ddbe371ad4b0136cd583f332ccef3d11","unresolved":true,"context_lines":[{"line_number":11,"context_line":"    ignore_missing: \"{{ kolla_action_stop_ignore_missing | bool }}\""},{"line_number":12,"context_line":"  when:"},{"line_number":13,"context_line":"    - service.container_name not in skip_stop_containers"},{"line_number":14,"context_line":"  loop: \"{{ range(1,(service.iterate_var | int) + 1) | list }}\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"89b8251d_6d208aa4","line":14,"range":{"start_line":14,"start_character":2,"end_line":14,"end_character":31},"in_reply_to":"a897eb8a_f59c58e2","updated":"2026-02-12 07:14:55.000000000","message":"I’d say it would be better to check for iterate_var is defined in main.yml","commit_id":"44ff2358eddbef3bbe2d3d7093c2bed9b11615dc"}]}
