)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"a283b6c584d060fa1a3a23da45d5e7ebf9dbba49","unresolved":true,"context_lines":[{"line_number":12,"context_line":"enabled/possible non-interactively."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"With this change, we can run `post-deploy` with `become: false` if"},{"line_number":15,"context_line":"root is not the owner of the `{{ node_config }}` directory and skip"},{"line_number":16,"context_line":"creation of the `/etc/openstack` directory altogether."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: Ied5ef4e1e3c9346342962d44de26702522b06b86"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"06493386_d02de161","line":15,"range":{"start_line":15,"start_character":30,"end_line":15,"end_character":47},"updated":"2024-05-24 06:36:42.000000000","message":"FYI the errors are caused by a bug in zuul which tries to jinja expand this snippet of the commit message. The bug is already fixed, but it will take a day or two to actually deploy it in our zuul installation. In the meantime as a workaround you could just drop the braces here.","commit_id":"bd1a5853a6b6077eccf923809d9d528cabe662a5"},{"author":{"_account_id":25277,"name":"Mariusz Karpiarz","email":"mariusz.karpiarz@codethink.co.uk","username":"mkarpiarz"},"change_message_id":"92e3e16eaabd5d8cc0bc816183107ef4edca6087","unresolved":true,"context_lines":[{"line_number":12,"context_line":"enabled/possible non-interactively."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"With this change, we can run `post-deploy` with `become: false` if"},{"line_number":15,"context_line":"root is not the owner of the `{{ node_config }}` directory and skip"},{"line_number":16,"context_line":"creation of the `/etc/openstack` directory altogether."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: Ied5ef4e1e3c9346342962d44de26702522b06b86"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"26202a26_36c46294","line":15,"range":{"start_line":15,"start_character":30,"end_line":15,"end_character":47},"in_reply_to":"06493386_d02de161","updated":"2024-05-24 08:45:41.000000000","message":"Jens,\nThank you for investigating and (hopefully) fixing this issue!\nI\u0027ll upload a new patch later today.","commit_id":"bd1a5853a6b6077eccf923809d9d528cabe662a5"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"568162f3ca427859d643c98a4323a1bf083a7852","unresolved":false,"context_lines":[{"line_number":12,"context_line":"enabled/possible non-interactively."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"With this change, we can run `post-deploy` with `become: false` if"},{"line_number":15,"context_line":"root is not the owner of the `{{ node_config }}` directory and skip"},{"line_number":16,"context_line":"creation of the `/etc/openstack` directory altogether."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: Ied5ef4e1e3c9346342962d44de26702522b06b86"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"0226941f_8c67a0f9","line":15,"range":{"start_line":15,"start_character":30,"end_line":15,"end_character":47},"in_reply_to":"26202a26_36c46294","updated":"2024-10-25 14:31:41.000000000","message":"Done","commit_id":"bd1a5853a6b6077eccf923809d9d528cabe662a5"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":25277,"name":"Mariusz Karpiarz","email":"mariusz.karpiarz@codethink.co.uk","username":"mkarpiarz"},"change_message_id":"eb287f397a63f4879317967a5cc62b7da899039c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"3aa1ef97_f46953b2","updated":"2024-05-23 17:28:57.000000000","message":"recheck","commit_id":"e9d1de35207f187af55d93cd88995ba919a5a069"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"b4051f3f97400fba74f16072a40e3e583ee94310","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"9df6491b_5f0382fe","in_reply_to":"3aa1ef97_f46953b2","updated":"2024-05-23 19:36:19.000000000","message":"I must admit that I also currently have no idea why all the jobs are failing without logs, but please still do not issue a \"recheck\" comment without further explanation about why you think a recheck is needed.","commit_id":"e9d1de35207f187af55d93cd88995ba919a5a069"},{"author":{"_account_id":25277,"name":"Mariusz Karpiarz","email":"mariusz.karpiarz@codethink.co.uk","username":"mkarpiarz"},"change_message_id":"d3b7b491e1e7267315c4f7f496173bb6ee053e8a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"a45c1516_42464572","in_reply_to":"9df6491b_5f0382fe","updated":"2024-05-23 20:08:55.000000000","message":"Understood. I issued a recheck because I needed another look at what\u0027s going on there. I was only able to find the \"\u0027node_config\u0027 is undefined\" message by following the stream of one of the jobs and these appear to be discarded (and not logged) on a RETRY.\nNext time I need to rerun the pipeline, I\u0027ll specify a reason.","commit_id":"e9d1de35207f187af55d93cd88995ba919a5a069"},{"author":{"_account_id":25277,"name":"Mariusz Karpiarz","email":"mariusz.karpiarz@codethink.co.uk","username":"mkarpiarz"},"change_message_id":"927faf97877297050d14b3bd35f2de4334ae1c4e","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":3,"id":"1dd1d980_54ad096c","updated":"2024-05-23 19:32:03.000000000","message":"Build appears to be failing on:\n```\n\u0027node_config\u0027 is undefined\\n\\nThe error appears to be in \u0027/var/lib/zuul/builds/b1778a5d1ee145d69e4391300652e408/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/set-zuul-log-path-fact/tasks/main.yaml\u0027: line 32, column 7, but may\\nbe elsewhere in the file depending on the exact syntax problem.\\n\\nThe offending line appears to be:\\n\\n\\n    - name: Set log path for a periodic job\\n      ^ here\\n\"\n```\n\nI don\u0027t see how this variable (set in `ansible/group_vars/all.yml`) affects the task defined here:\nhttps://opendev.org/zuul/zuul-jobs/src/branch/master/roles/set-zuul-log-path-fact/tasks/main.yaml\n\nI would like to ask for another pair of eyes to look into this please to at least point me in the right direction. Thanks.","commit_id":"bd1a5853a6b6077eccf923809d9d528cabe662a5"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"568162f3ca427859d643c98a4323a1bf083a7852","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"aa6d855d_d2dc12a0","in_reply_to":"1dd1d980_54ad096c","updated":"2024-10-25 14:31:41.000000000","message":"Done","commit_id":"bd1a5853a6b6077eccf923809d9d528cabe662a5"},{"author":{"_account_id":32553,"name":"Sven Kieske","email":"sven_oss@posteo.de","username":"skieske"},"change_message_id":"3750221180bddc31c07b06b09583252805e22ab9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"8123a219_7524dcc9","updated":"2024-11-07 16:00:07.000000000","message":"LGTM, but you need at least a bugreport URL if you really want to backport this.","commit_id":"e6566852d5c1b2ae97ae75946956ce6d669898ec"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"ba8a20810ac1e94c40a898e6d2be48baa0e21810","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"94ea49f1_e00c1781","in_reply_to":"8123a219_7524dcc9","updated":"2025-02-19 18:56:44.000000000","message":"Good suggestion, thanks.","commit_id":"e6566852d5c1b2ae97ae75946956ce6d669898ec"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"b023f66c7a4bf5cfa380271682ca5ea0ad40e38b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"b4af8964_32de39bc","updated":"2025-02-20 05:27:09.000000000","message":"re-using previous +2 since only the bug reference was added","commit_id":"1cf04e8058391c34b5603bc1a380d1c6422c6f8f"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"28fd4060e5774532d443567d224b3919adffb706","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"0486ecbb_80e55272","updated":"2025-02-27 10:57:18.000000000","message":"recheck rabbitmq exec error\n\nError: can only create exec sessions on running containers: container state improper","commit_id":"1cf04e8058391c34b5603bc1a380d1c6422c6f8f"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"0fa1116bae7cd040d7382d3b6e86d58d71a37d55","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"3542660e_da6ee97f","updated":"2025-05-09 09:51:37.000000000","message":"recheck testing again","commit_id":"1cf04e8058391c34b5603bc1a380d1c6422c6f8f"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"eb069aac6013ef8cba3196af519588970418422d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"820d9af7_9a271d5d","updated":"2025-03-12 08:40:20.000000000","message":"recheck timeouts, timeouts","commit_id":"1cf04e8058391c34b5603bc1a380d1c6422c6f8f"}],"ansible/post-deploy.yml":[{"author":{"_account_id":25277,"name":"Mariusz Karpiarz","email":"mariusz.karpiarz@codethink.co.uk","username":"mkarpiarz"},"change_message_id":"31ce4965c6fb8d70f71097411e6b996f78a7df7a","unresolved":true,"context_lines":[{"line_number":23,"context_line":"        owner: \"{{ ansible_facts.user_uid }}\""},{"line_number":24,"context_line":"        group: \"{{ ansible_facts.user_gid }}\""},{"line_number":25,"context_line":"        mode: 0700"},{"line_number":26,"context_line":"      when: \"{{ needs_root }}\""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    - name: Template out clouds.yaml"},{"line_number":29,"context_line":"      become: \"{{ needs_root }}\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"c3b3f5ea_6f1333d9","line":26,"range":{"start_line":26,"start_character":6,"end_line":26,"end_character":30},"updated":"2024-05-23 15:08:05.000000000","message":"Please let me know whether you\u0027d prefer not to skip this task altogether but rather make it create a directory like `\"{{ node_config }}\"/openstack` or `~/.config/openstack`.","commit_id":"e9d1de35207f187af55d93cd88995ba919a5a069"},{"author":{"_account_id":25277,"name":"Mariusz Karpiarz","email":"mariusz.karpiarz@codethink.co.uk","username":"mkarpiarz"},"change_message_id":"d3b7b491e1e7267315c4f7f496173bb6ee053e8a","unresolved":false,"context_lines":[{"line_number":23,"context_line":"        owner: \"{{ ansible_facts.user_uid }}\""},{"line_number":24,"context_line":"        group: \"{{ ansible_facts.user_gid }}\""},{"line_number":25,"context_line":"        mode: 0700"},{"line_number":26,"context_line":"      when: \"{{ needs_root }}\""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    - name: Template out clouds.yaml"},{"line_number":29,"context_line":"      become: \"{{ needs_root }}\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"dfd2022f_ebf0e228","line":26,"range":{"start_line":26,"start_character":6,"end_line":26,"end_character":30},"in_reply_to":"56b249ff_5bb42744","updated":"2024-05-23 20:08:55.000000000","message":"I was wondering what this empty directory is used for. 😊\nI\u0027ll remove this task in the next patch.","commit_id":"e9d1de35207f187af55d93cd88995ba919a5a069"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"b4051f3f97400fba74f16072a40e3e583ee94310","unresolved":true,"context_lines":[{"line_number":23,"context_line":"        owner: \"{{ ansible_facts.user_uid }}\""},{"line_number":24,"context_line":"        group: \"{{ ansible_facts.user_gid }}\""},{"line_number":25,"context_line":"        mode: 0700"},{"line_number":26,"context_line":"      when: \"{{ needs_root }}\""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    - name: Template out clouds.yaml"},{"line_number":29,"context_line":"      become: \"{{ needs_root }}\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"56b249ff_5bb42744","line":26,"range":{"start_line":26,"start_character":6,"end_line":26,"end_character":30},"in_reply_to":"c3b3f5ea_6f1333d9","updated":"2024-05-23 19:36:19.000000000","message":"IMO this task can be dropped completely, it was made obsolete by Idd458ad6ef29e4eee2f9e537b4eae39d26eb9f64 and should already have been removed there","commit_id":"e9d1de35207f187af55d93cd88995ba919a5a069"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"b4051f3f97400fba74f16072a40e3e583ee94310","unresolved":true,"context_lines":[{"line_number":9,"context_line":""},{"line_number":10,"context_line":"    - name: Register become fact"},{"line_number":11,"context_line":"      set_fact:"},{"line_number":12,"context_line":"        needs_root: \"{{ st.stat.pw_name \u003d\u003d \u0027root\u0027 | bool }}\""},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"- name: Creating clouds.yaml file on the deploy node"},{"line_number":15,"context_line":"  hosts: localhost"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"4401be10_1e5cd548","line":12,"updated":"2024-05-23 19:36:19.000000000","message":"I\u0027m not too convinced that this condition is what we would actually want to check for. Checking st.stat.writeable might be better. Or do not autodetect this at all but make it a config variable? Would be interesting to see what other reviewers think.","commit_id":"bd1a5853a6b6077eccf923809d9d528cabe662a5"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"568162f3ca427859d643c98a4323a1bf083a7852","unresolved":false,"context_lines":[{"line_number":9,"context_line":""},{"line_number":10,"context_line":"    - name: Register become fact"},{"line_number":11,"context_line":"      set_fact:"},{"line_number":12,"context_line":"        needs_root: \"{{ st.stat.pw_name \u003d\u003d \u0027root\u0027 | bool }}\""},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"- name: Creating clouds.yaml file on the deploy node"},{"line_number":15,"context_line":"  hosts: localhost"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"201ad60c_9262b233","line":12,"in_reply_to":"08ed5479_359da862","updated":"2024-10-25 14:31:41.000000000","message":"Done","commit_id":"bd1a5853a6b6077eccf923809d9d528cabe662a5"},{"author":{"_account_id":32553,"name":"Sven Kieske","email":"sven_oss@posteo.de","username":"skieske"},"change_message_id":"0e722af242b73ed0045e570bdac0aa4767fa545b","unresolved":true,"context_lines":[{"line_number":9,"context_line":""},{"line_number":10,"context_line":"    - name: Register become fact"},{"line_number":11,"context_line":"      set_fact:"},{"line_number":12,"context_line":"        needs_root: \"{{ st.stat.pw_name \u003d\u003d \u0027root\u0027 | bool }}\""},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"- name: Creating clouds.yaml file on the deploy node"},{"line_number":15,"context_line":"  hosts: localhost"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"7a6fced5_16851a45","line":12,"in_reply_to":"2cf01876_bad43895","updated":"2024-06-20 16:54:22.000000000","message":"\"root\" is just a - albeit common - alias for \"EUID \u003d 0\". Please do an appropriate test. This is already imho a niche usecase patch, so it at least should do the correct check.\n\nSo what is the correct check here? For normal file system permissions it might be sufficient to detect if we can write, like frickler said, e.g.:\n\n```suggestion\n        needs_root: \"{{ not (st.stat.writeable | bool) }}\"\n```","commit_id":"bd1a5853a6b6077eccf923809d9d528cabe662a5"},{"author":{"_account_id":25277,"name":"Mariusz Karpiarz","email":"mariusz.karpiarz@codethink.co.uk","username":"mkarpiarz"},"change_message_id":"d3b7b491e1e7267315c4f7f496173bb6ee053e8a","unresolved":true,"context_lines":[{"line_number":9,"context_line":""},{"line_number":10,"context_line":"    - name: Register become fact"},{"line_number":11,"context_line":"      set_fact:"},{"line_number":12,"context_line":"        needs_root: \"{{ st.stat.pw_name \u003d\u003d \u0027root\u0027 | bool }}\""},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"- name: Creating clouds.yaml file on the deploy node"},{"line_number":15,"context_line":"  hosts: localhost"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"2cf01876_bad43895","line":12,"in_reply_to":"4401be10_1e5cd548","updated":"2024-05-23 20:08:55.000000000","message":"Sure, I\u0027m open to suggestions.\nLooking up the owner of this directory works well in my setup, where I set the `--configdir` flag to a directory owned by a non-root user but might not be the most optimal solution for everyone.","commit_id":"bd1a5853a6b6077eccf923809d9d528cabe662a5"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"d4ef8196b6999d760461b652924b4cbc4049e333","unresolved":true,"context_lines":[{"line_number":9,"context_line":""},{"line_number":10,"context_line":"    - name: Register become fact"},{"line_number":11,"context_line":"      set_fact:"},{"line_number":12,"context_line":"        needs_root: \"{{ st.stat.pw_name \u003d\u003d \u0027root\u0027 | bool }}\""},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"- name: Creating clouds.yaml file on the deploy node"},{"line_number":15,"context_line":"  hosts: localhost"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"e9b3d219_c4ddbfa5","line":12,"in_reply_to":"7a6fced5_16851a45","updated":"2024-07-03 15:06:41.000000000","message":"I am also interested in this feature and think the writable approach works well. I think you also need to consider octavia role. Do you think you\u0027ll get round to uploading a new version soon?","commit_id":"bd1a5853a6b6077eccf923809d9d528cabe662a5"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"4f1cfc13d8c6a2b2adf0a094ae129338401007a5","unresolved":true,"context_lines":[{"line_number":9,"context_line":""},{"line_number":10,"context_line":"    - name: Register become fact"},{"line_number":11,"context_line":"      set_fact:"},{"line_number":12,"context_line":"        needs_root: \"{{ st.stat.pw_name \u003d\u003d \u0027root\u0027 | bool }}\""},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"- name: Creating clouds.yaml file on the deploy node"},{"line_number":15,"context_line":"  hosts: localhost"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"08ed5479_359da862","line":12,"in_reply_to":"e9b3d219_c4ddbfa5","updated":"2024-10-25 14:29:25.000000000","message":"I\u0027ve updated this to use the suggestion to try and get this patch moving.\n\nThis approach seems to work. I\u0027d be keen to avoid yet another configuration option. If we make it do the right thing automatically that would be my preference. We can always introduce a variable at a later date.","commit_id":"bd1a5853a6b6077eccf923809d9d528cabe662a5"}],"releasenotes/notes/post-deploy-without-privilege-escalation-9427cb91d32fbd8d.yaml":[{"author":{"_account_id":25277,"name":"Mariusz Karpiarz","email":"mariusz.karpiarz@codethink.co.uk","username":"mkarpiarz"},"change_message_id":"31ce4965c6fb8d70f71097411e6b996f78a7df7a","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"other:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Allow operators to run `kolla-ansible post-deploy` without escalating"},{"line_number":5,"context_line":"    privileges on the deploy node when `node_config` is not owned by root."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"9b12cd55_a94cca46","line":2,"range":{"start_line":2,"start_character":0,"end_line":2,"end_character":5},"updated":"2024-05-23 15:08:05.000000000","message":"Should this change be classified as \"fixes\"?","commit_id":"e9d1de35207f187af55d93cd88995ba919a5a069"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"ec031aacc8c8914385a93c0021bc67fcf53066d7","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"other:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Allow operators to run `kolla-ansible post-deploy` without escalating"},{"line_number":5,"context_line":"    privileges on the deploy node when `node_config` is not owned by root."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"dc942bcd_f02b6175","line":2,"range":{"start_line":2,"start_character":0,"end_line":2,"end_character":5},"in_reply_to":"9418bb52_abb95596","updated":"2024-10-25 14:30:56.000000000","message":"Although, if class it as a bug fix, then we can backport it 😄","commit_id":"e9d1de35207f187af55d93cd88995ba919a5a069"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"4f1cfc13d8c6a2b2adf0a094ae129338401007a5","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"other:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Allow operators to run `kolla-ansible post-deploy` without escalating"},{"line_number":5,"context_line":"    privileges on the deploy node when `node_config` is not owned by root."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"9418bb52_abb95596","line":2,"range":{"start_line":2,"start_character":0,"end_line":2,"end_character":5},"in_reply_to":"9b12cd55_a94cca46","updated":"2024-10-25 14:29:25.000000000","message":"I think the lines are blurred, but as this never worked. Shall we call it a feature?","commit_id":"e9d1de35207f187af55d93cd88995ba919a5a069"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"568162f3ca427859d643c98a4323a1bf083a7852","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"other:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Allow operators to run `kolla-ansible post-deploy` without escalating"},{"line_number":5,"context_line":"    privileges on the deploy node when `node_config` is not owned by root."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"f470b26c_89f26138","line":2,"range":{"start_line":2,"start_character":0,"end_line":2,"end_character":5},"in_reply_to":"dc942bcd_f02b6175","updated":"2024-10-25 14:31:41.000000000","message":"Done","commit_id":"e9d1de35207f187af55d93cd88995ba919a5a069"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"b93b531e0809e5a06ab5ba873965ffa709b819aa","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"other:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Allow operators to run `kolla-ansible post-deploy` without escalating"},{"line_number":5,"context_line":"    privileges on the deploy node when `node_config` is not owned by root."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"aa58b81a_3090e37f","line":5,"range":{"start_line":4,"start_character":0,"end_line":5,"end_character":74},"updated":"2024-05-24 09:09:15.000000000","message":"Use double backticks to get the fixed width markup.","commit_id":"bd1a5853a6b6077eccf923809d9d528cabe662a5"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"568162f3ca427859d643c98a4323a1bf083a7852","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"other:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Allow operators to run `kolla-ansible post-deploy` without escalating"},{"line_number":5,"context_line":"    privileges on the deploy node when `node_config` is not owned by root."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"91405608_6dcca898","line":5,"range":{"start_line":4,"start_character":0,"end_line":5,"end_character":74},"in_reply_to":"710377b9_9b67cfa1","updated":"2024-10-25 14:31:41.000000000","message":"Done","commit_id":"bd1a5853a6b6077eccf923809d9d528cabe662a5"},{"author":{"_account_id":25277,"name":"Mariusz Karpiarz","email":"mariusz.karpiarz@codethink.co.uk","username":"mkarpiarz"},"change_message_id":"0a80e801b6b4e9d173a663a85280389831f5face","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"other:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Allow operators to run `kolla-ansible post-deploy` without escalating"},{"line_number":5,"context_line":"    privileges on the deploy node when `node_config` is not owned by root."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"710377b9_9b67cfa1","line":5,"range":{"start_line":4,"start_character":0,"end_line":5,"end_character":74},"in_reply_to":"aa58b81a_3090e37f","updated":"2024-05-24 11:25:57.000000000","message":"Thanks, Pierre! I\u0027ll include your feedback in the next patch.","commit_id":"bd1a5853a6b6077eccf923809d9d528cabe662a5"}]}
