)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"2c0dc8c829e959aef15e02e61fc4d8cac7c8571e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"83dd2a98_693faea8","updated":"2025-10-20 12:06:59.000000000","message":"There might be some fixes here that are relevant, loads of breaking changes: https://review.opendev.org/c/openstack/kolla-ansible/+/960333","commit_id":"5166307949be6bf14e7b3e2d0f7173b3c05fb609"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"4fecec088bacc4bdd1697e94419f725b3bbd293d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"d5203daf_5f2e4523","in_reply_to":"83dd2a98_693faea8","updated":"2025-10-20 16:27:34.000000000","message":"Thanks, I have been checking that out","commit_id":"5166307949be6bf14e7b3e2d0f7173b3c05fb609"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"6dcc4ffbad2e62eb8d028d6c96e91537e66aa236","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":15,"id":"0b79a33b_3e3f548f","updated":"2025-10-21 16:57:38.000000000","message":"recheck","commit_id":"3fbaa5454609fe561136fc3adc830c0be0ad67cc"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"f56a91f675169dc3672e2f55c2fe5a3dba8fad44","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":15,"id":"72de505e_f3259ffa","updated":"2025-10-24 09:35:41.000000000","message":"recheck: fresh logs","commit_id":"3fbaa5454609fe561136fc3adc830c0be0ad67cc"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"194abc684d0140e9092454d23baadd07ce8595a7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"a1f70d0e_abf216e8","updated":"2025-10-24 16:30:19.000000000","message":"recheck: role updated","commit_id":"b5bfb8d98659671d93fc0c37a140616d078be407"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"4d099b33ae53a9f6de8a0fa0a68c34b48ca92ca7","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":17,"id":"4634155f_9c5c7ac9","updated":"2025-11-07 10:59:59.000000000","message":"Got some more experimental stuff in https://review.opendev.org/c/openstack/kayobe/+/964813/6 that I\u0027ll eventually merge","commit_id":"f51e4f7f288b6bf06ebda090337e38afb5f03518"},{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"817d913333a6cc01cc93ac89e933fd268ebccd2c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":18,"id":"00340d14_df7799e0","updated":"2025-11-12 14:20:47.000000000","message":"Let\u0027s merge it for the sake of release - but we need to drop usage of ANSIBLE_ALLOW_BROKEN_CONDITIONALS and backport it...","commit_id":"8601c0104c07c7e331e8474216729a95e76a6bc2"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"3c411ee29f1acc6e6a25aaf33e21d74684b4e1df","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":18,"id":"a5cbe8ec_24ced1c1","updated":"2025-11-12 15:59:32.000000000","message":"Looks like a good step in the right direction.","commit_id":"8601c0104c07c7e331e8474216729a95e76a6bc2"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"ee09235614e9edb18d22f3771d7426de4034de32","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":18,"id":"0251ef04_1e5ef32f","updated":"2025-11-08 13:10:24.000000000","message":"recheck","commit_id":"8601c0104c07c7e331e8474216729a95e76a6bc2"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"5b1c6e91605799f89b372ddf37833d9eae1b0889","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":18,"id":"d0e26802_ce2e6ae9","updated":"2025-11-07 21:48:54.000000000","message":"recheck: role changed","commit_id":"8601c0104c07c7e331e8474216729a95e76a6bc2"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"09eee055ed1057a829355cbd1bce48e45183d38c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":19,"id":"91a6a3cc_c01e20d3","updated":"2025-11-13 13:09:04.000000000","message":"+2 from me, on the bits I didn\u0027t do. Agreed we need to follow up.","commit_id":"2f845652dd6d70c67f9454c2b09f983076bbca92"},{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"b3c7f7ff031579c2fdb87038cdc6ef79aac7e447","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":19,"id":"75fecb26_d5030eb2","updated":"2025-11-13 13:14:20.000000000","message":"Let\u0027s merge this, I need to raise the release/rc1 patch at latest tomorrow.","commit_id":"2f845652dd6d70c67f9454c2b09f983076bbca92"}],"kayobe/ansible.py":[{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"3c411ee29f1acc6e6a25aaf33e21d74684b4e1df","unresolved":true,"context_lines":[{"line_number":21,"context_line":"import sys"},{"line_number":22,"context_line":"import tempfile"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"from ansible.parsing.vault import EncryptedString"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"from kayobe import exception"},{"line_number":27,"context_line":"from kayobe import utils"}],"source_content_type":"text/x-python","patch_set":18,"id":"4dd4f3d3_633a55dc","line":24,"updated":"2025-11-12 15:59:32.000000000","message":"This is going to break 2.18 because it arrived in 2.19. We\u0027ll need a conditional import or something similar.\n\nCheck:\nhttps://github.com/ansible/ansible/blame/v2.18.11/lib/ansible/parsing/vault/__init__.py","commit_id":"8601c0104c07c7e331e8474216729a95e76a6bc2"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"44d94a12f84859d0d48dbca061bd0914de122776","unresolved":false,"context_lines":[{"line_number":21,"context_line":"import sys"},{"line_number":22,"context_line":"import tempfile"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"from ansible.parsing.vault import EncryptedString"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"from kayobe import exception"},{"line_number":27,"context_line":"from kayobe import utils"}],"source_content_type":"text/x-python","patch_set":18,"id":"4c897ff4_c5551435","line":24,"in_reply_to":"4dd4f3d3_633a55dc","updated":"2025-11-13 13:06:45.000000000","message":"Done","commit_id":"8601c0104c07c7e331e8474216729a95e76a6bc2"},{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"09ab01e22e2f15a37ebff7712bd0eaf87759bc00","unresolved":false,"context_lines":[{"line_number":21,"context_line":"import sys"},{"line_number":22,"context_line":"import tempfile"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"from ansible.parsing.vault import EncryptedString"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"from kayobe import exception"},{"line_number":27,"context_line":"from kayobe import utils"}],"source_content_type":"text/x-python","patch_set":18,"id":"a7b6fdc3_eeaf46fd","line":24,"in_reply_to":"4dd4f3d3_633a55dc","updated":"2025-11-13 13:07:15.000000000","message":"Done","commit_id":"8601c0104c07c7e331e8474216729a95e76a6bc2"}],"kayobe/tests/unit/test_ansible.py":[{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"993af1cb7b8698ca51702dbbdb3d63863ae53a91","unresolved":true,"context_lines":[{"line_number":671,"context_line":"    def test_config_dump_vaulted(self, mock_mkdtemp, mock_run, mock_listdir,"},{"line_number":672,"context_line":"                                 mock_read, mock_rmtree):"},{"line_number":673,"context_line":""},{"line_number":674,"context_line":"        secret \u003d VaultSecret(b\u0027test-pass\u0027)"},{"line_number":675,"context_line":"        VaultSecretsContext.initialize("},{"line_number":676,"context_line":"            VaultSecretsContext(secrets\u003d[(\u0027default\u0027, secret)]))"},{"line_number":677,"context_line":"        parser \u003d argparse.ArgumentParser()"}],"source_content_type":"text/x-python","patch_set":18,"id":"5bd9f2c3_817fc68a","line":674,"updated":"2025-11-07 18:54:46.000000000","message":"Should this come from an environment variable? How did it work before?","commit_id":"8601c0104c07c7e331e8474216729a95e76a6bc2"}],"kayobe/tests/unit/test_utils.py":[{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"3c411ee29f1acc6e6a25aaf33e21d74684b4e1df","unresolved":true,"context_lines":[{"line_number":18,"context_line":"import unittest"},{"line_number":19,"context_line":"from unittest import mock"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"from ansible.parsing.vault import EncryptedString"},{"line_number":22,"context_line":"import yaml"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"from kayobe import exception"}],"source_content_type":"text/x-python","patch_set":18,"id":"c5e00868_5d561098","line":21,"updated":"2025-11-12 15:59:32.000000000","message":"Same here","commit_id":"8601c0104c07c7e331e8474216729a95e76a6bc2"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"44d94a12f84859d0d48dbca061bd0914de122776","unresolved":false,"context_lines":[{"line_number":18,"context_line":"import unittest"},{"line_number":19,"context_line":"from unittest import mock"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"from ansible.parsing.vault import EncryptedString"},{"line_number":22,"context_line":"import yaml"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"from kayobe import exception"}],"source_content_type":"text/x-python","patch_set":18,"id":"5777126f_a38b8932","line":21,"in_reply_to":"c5e00868_5d561098","updated":"2025-11-13 13:06:45.000000000","message":"Done","commit_id":"8601c0104c07c7e331e8474216729a95e76a6bc2"},{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"09ab01e22e2f15a37ebff7712bd0eaf87759bc00","unresolved":false,"context_lines":[{"line_number":18,"context_line":"import unittest"},{"line_number":19,"context_line":"from unittest import mock"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"from ansible.parsing.vault import EncryptedString"},{"line_number":22,"context_line":"import yaml"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"from kayobe import exception"}],"source_content_type":"text/x-python","patch_set":18,"id":"92b08a77_a33af1d1","line":21,"in_reply_to":"c5e00868_5d561098","updated":"2025-11-13 13:07:15.000000000","message":"Done","commit_id":"8601c0104c07c7e331e8474216729a95e76a6bc2"}],"requirements.yml":[{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"3c411ee29f1acc6e6a25aaf33e21d74684b4e1df","unresolved":true,"context_lines":[{"line_number":31,"context_line":"    version: 1.2.0"},{"line_number":32,"context_line":"  - src: git+https://github.com/stackhpc/ansible-role-configdrive.git"},{"line_number":33,"context_line":"    name: jriguera.configdrive"},{"line_number":34,"context_line":"    version: bugfix/ansible-12"},{"line_number":35,"context_line":"  - src: MichaelRigart.interfaces"},{"line_number":36,"context_line":"    version: v1.15.6"},{"line_number":37,"context_line":"  - src: mrlesmithjr.chrony"}],"source_content_type":"text/x-yaml","patch_set":18,"id":"0326b56f_cf40e2b2","line":34,"updated":"2025-11-12 15:59:32.000000000","message":"nit: I think we should merge this branch before we merge this change. Otherwise we need to worry about the bugfix branch getting deleted.","commit_id":"8601c0104c07c7e331e8474216729a95e76a6bc2"},{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"09ab01e22e2f15a37ebff7712bd0eaf87759bc00","unresolved":false,"context_lines":[{"line_number":31,"context_line":"    version: 1.2.0"},{"line_number":32,"context_line":"  - src: git+https://github.com/stackhpc/ansible-role-configdrive.git"},{"line_number":33,"context_line":"    name: jriguera.configdrive"},{"line_number":34,"context_line":"    version: bugfix/ansible-12"},{"line_number":35,"context_line":"  - src: MichaelRigart.interfaces"},{"line_number":36,"context_line":"    version: v1.15.6"},{"line_number":37,"context_line":"  - src: mrlesmithjr.chrony"}],"source_content_type":"text/x-yaml","patch_set":18,"id":"622e77b3_02c213d6","line":34,"in_reply_to":"0326b56f_cf40e2b2","updated":"2025-11-13 13:07:15.000000000","message":"Done","commit_id":"8601c0104c07c7e331e8474216729a95e76a6bc2"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"44d94a12f84859d0d48dbca061bd0914de122776","unresolved":false,"context_lines":[{"line_number":31,"context_line":"    version: 1.2.0"},{"line_number":32,"context_line":"  - src: git+https://github.com/stackhpc/ansible-role-configdrive.git"},{"line_number":33,"context_line":"    name: jriguera.configdrive"},{"line_number":34,"context_line":"    version: bugfix/ansible-12"},{"line_number":35,"context_line":"  - src: MichaelRigart.interfaces"},{"line_number":36,"context_line":"    version: v1.15.6"},{"line_number":37,"context_line":"  - src: mrlesmithjr.chrony"}],"source_content_type":"text/x-yaml","patch_set":18,"id":"c9550f2f_c150d7b5","line":34,"in_reply_to":"0326b56f_cf40e2b2","updated":"2025-11-13 13:06:45.000000000","message":"Done","commit_id":"8601c0104c07c7e331e8474216729a95e76a6bc2"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"15994fad4f6442c706d0c04c39a7c77e8f8323b8","unresolved":true,"context_lines":[{"line_number":29,"context_line":"    version: 1.3.1"},{"line_number":30,"context_line":"  - src: giovtorres.tuned"},{"line_number":31,"context_line":"    version: 1.2.0"},{"line_number":32,"context_line":"  - src: git+https://github.com/stackhpc/ansible-role-configdrive.git"},{"line_number":33,"context_line":"    name: jriguera.configdrive"},{"line_number":34,"context_line":"    version: fb199247333e72e38a9d414cf7b6144daa645477"},{"line_number":35,"context_line":"  - src: MichaelRigart.interfaces"},{"line_number":36,"context_line":"    version: v1.15.6"},{"line_number":37,"context_line":"  - src: mrlesmithjr.chrony"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"7674a6a2_5812ab21","line":34,"range":{"start_line":32,"start_character":0,"end_line":34,"end_character":53},"updated":"2025-11-13 14:11:26.000000000","message":"Please make a pull request, the maintainer is often quick to merge.","commit_id":"2f845652dd6d70c67f9454c2b09f983076bbca92"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"15994fad4f6442c706d0c04c39a7c77e8f8323b8","unresolved":true,"context_lines":[{"line_number":46,"context_line":"    version: 1.1.6"},{"line_number":47,"context_line":"  - src: stackhpc.drac-facts"},{"line_number":48,"context_line":"    version: 1.0.0"},{"line_number":49,"context_line":"  - src: git+https://github.com/stackhpc/ansible-role-libvirt-host.git"},{"line_number":50,"context_line":"    name: stackhpc.libvirt-host"},{"line_number":51,"context_line":"    version: 9a947f74abdcd2e0d4e3371162f8299aef259271"},{"line_number":52,"context_line":"  - src: stackhpc.libvirt-vm"},{"line_number":53,"context_line":"    version: v1.16.3"},{"line_number":54,"context_line":"  - src: stackhpc.luks"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"2fce7134_2c9f8f52","line":51,"range":{"start_line":49,"start_character":0,"end_line":51,"end_character":53},"updated":"2025-11-13 14:11:26.000000000","message":"Let\u0027s make a new release.","commit_id":"2f845652dd6d70c67f9454c2b09f983076bbca92"}]}
