)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"4ba51c02146ed3476e61bab240bcd59c2b76f6f3","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     satoshi-sh \u003csatoss1108@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2025-03-13 22:14:13 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Create Podman DIB for container-based cleaning"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Create ironic-python-agent-podman. It installs podman and create conf files for podman, ipa, and cleaning steps"},{"line_number":10,"context_line":"Add explanation how to configure on README.rst"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":15,"id":"47548bce_1f3d1c89","line":7,"updated":"2025-03-14 18:33:02.000000000","message":"s/DIB/element/ -- the thing you\u0027re creating is a diskimage-builder (DIB) element 😊","commit_id":"9da686a86832aac99cf383a1498f6631777eeda2"},{"author":{"_account_id":37707,"name":"Satoshi Shirosaka","display_name":"Satoshi S.","email":"satoss1108@gmail.com","username":"satoshi-sh"},"change_message_id":"7dcde011bf460d8d3df4b43f6ed5a485f2569719","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     satoshi-sh \u003csatoss1108@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2025-03-13 22:14:13 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Create Podman DIB for container-based cleaning"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Create ironic-python-agent-podman. It installs podman and create conf files for podman, ipa, and cleaning steps"},{"line_number":10,"context_line":"Add explanation how to configure on README.rst"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":15,"id":"e0bb22dd_89f414e3","line":7,"in_reply_to":"47548bce_1f3d1c89","updated":"2025-03-17 14:09:11.000000000","message":"Done","commit_id":"9da686a86832aac99cf383a1498f6631777eeda2"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"4ba51c02146ed3476e61bab240bcd59c2b76f6f3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":15,"id":"be0c149c_783910a0","updated":"2025-03-14 18:33:02.000000000","message":"couple of nits around wording and wrapping","commit_id":"9da686a86832aac99cf383a1498f6631777eeda2"}],"dib/ironic-python-agent-podman/README.md":[{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"d1761e65975b2b1f7de00b15d2b2c38aee41567b","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# ironic-python-agent-podman"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"This element installs Podman and configures it for use with the Ironic Python Agent (IPA)."},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"## Configuration"},{"line_number":6,"context_line":""}],"source_content_type":"text/x-gfm","patch_set":6,"id":"c11d75d7_14dd2d21","line":3,"updated":"2025-03-07 16:59:41.000000000","message":"It currently only supports debian-based images, right? We should document that; unless we want to add support for more in this PR (I\u0027d do that as a followup or as-needed).","commit_id":"6209259448cb12010d2e4aa40cf2ce444ccaac61"},{"author":{"_account_id":37707,"name":"Satoshi Shirosaka","display_name":"Satoshi S.","email":"satoss1108@gmail.com","username":"satoshi-sh"},"change_message_id":"91c597add30724e4d0ff605b9991f479cf3d52b0","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# ironic-python-agent-podman"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"This element installs Podman and configures it for use with the Ironic Python Agent (IPA)."},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"## Configuration"},{"line_number":6,"context_line":""}],"source_content_type":"text/x-gfm","patch_set":6,"id":"37e522d5_2c02c705","line":3,"in_reply_to":"c11d75d7_14dd2d21","updated":"2025-03-07 20:25:32.000000000","message":"Done","commit_id":"6209259448cb12010d2e4aa40cf2ce444ccaac61"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"4ba51c02146ed3476e61bab240bcd59c2b76f6f3","unresolved":true,"context_lines":[{"line_number":2,"context_line":"Adds Podman support and configuration files to ironic-python-agent-ramdisk."},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"## Compatibility"},{"line_number":5,"context_line":"This DIB currently supports Debian-based images only. Additional distribution support may be added in the future."},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"## ironic-python-agent-config"},{"line_number":8,"context_line":"allow_arbitrary_containers:"}],"source_content_type":"text/x-gfm","patch_set":15,"id":"1629118c_4d2333b7","line":5,"updated":"2025-03-14 18:33:02.000000000","message":"s/DIB/element/\n\nAlso please wrap lines at 80 characters when possible. I\u0027m surprised lint isn\u0027t enforcing this.","commit_id":"9da686a86832aac99cf383a1498f6631777eeda2"},{"author":{"_account_id":37707,"name":"Satoshi Shirosaka","display_name":"Satoshi S.","email":"satoss1108@gmail.com","username":"satoshi-sh"},"change_message_id":"7dcde011bf460d8d3df4b43f6ed5a485f2569719","unresolved":false,"context_lines":[{"line_number":2,"context_line":"Adds Podman support and configuration files to ironic-python-agent-ramdisk."},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"## Compatibility"},{"line_number":5,"context_line":"This DIB currently supports Debian-based images only. Additional distribution support may be added in the future."},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"## ironic-python-agent-config"},{"line_number":8,"context_line":"allow_arbitrary_containers:"}],"source_content_type":"text/x-gfm","patch_set":15,"id":"0f90705f_30a23b87","line":5,"in_reply_to":"1629118c_4d2333b7","updated":"2025-03-17 14:09:11.000000000","message":"Done","commit_id":"9da686a86832aac99cf383a1498f6631777eeda2"}],"dib/ironic-python-agent-podman/element-deps":[{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"d1761e65975b2b1f7de00b15d2b2c38aee41567b","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":6,"id":"b8ae1804_92b894bf","line":2,"updated":"2025-03-07 16:59:41.000000000","message":"you\u0027ll need to add package-installs here once you make my requested edit","commit_id":"6209259448cb12010d2e4aa40cf2ce444ccaac61"},{"author":{"_account_id":37707,"name":"Satoshi Shirosaka","display_name":"Satoshi S.","email":"satoss1108@gmail.com","username":"satoshi-sh"},"change_message_id":"bcf3eff2dd8906006227d889a66d89de84cdd0e8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"d647b2c2_9a427d1e","line":2,"in_reply_to":"b8ae1804_92b894bf","updated":"2025-03-07 21:09:32.000000000","message":"Done","commit_id":"6209259448cb12010d2e4aa40cf2ce444ccaac61"}],"dib/ironic-python-agent-podman/install.d/50-install-podman":[{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"d1761e65975b2b1f7de00b15d2b2c38aee41567b","unresolved":true,"context_lines":[{"line_number":4,"context_line":""},{"line_number":5,"context_line":"# Update package list and install Podman"},{"line_number":6,"context_line":"apt-get update"},{"line_number":7,"context_line":"apt-get install -y podman"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"podman version || true"}],"source_content_type":"application/x-shellscript","patch_set":6,"id":"134cba14_c9acc9c6","line":7,"updated":"2025-03-07 16:59:41.000000000","message":"The preferred way to install packages is https://docs.openstack.org/diskimage-builder/latest/elements/package-installs/README.html -- this allows us to do things like map different package names for different distros.","commit_id":"6209259448cb12010d2e4aa40cf2ce444ccaac61"},{"author":{"_account_id":37707,"name":"Satoshi Shirosaka","display_name":"Satoshi S.","email":"satoss1108@gmail.com","username":"satoshi-sh"},"change_message_id":"bcf3eff2dd8906006227d889a66d89de84cdd0e8","unresolved":false,"context_lines":[{"line_number":4,"context_line":""},{"line_number":5,"context_line":"# Update package list and install Podman"},{"line_number":6,"context_line":"apt-get update"},{"line_number":7,"context_line":"apt-get install -y podman"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"podman version || true"}],"source_content_type":"application/x-shellscript","patch_set":6,"id":"5a1a1dd1_18ba319d","line":7,"in_reply_to":"134cba14_c9acc9c6","updated":"2025-03-07 21:09:32.000000000","message":"Done","commit_id":"6209259448cb12010d2e4aa40cf2ce444ccaac61"}],"dib/ironic-python-agent-podman/pre-finalise.d/10-ipa-podman-config":[{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"d1761e65975b2b1f7de00b15d2b2c38aee41567b","unresolved":true,"context_lines":[{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Define the target directory inside the ramdisk"},{"line_number":4,"context_line":"INSIDEDIR\u003d/etc/containers"},{"line_number":5,"context_line":"CONFFILE\u003d$TMP_BUILD_DIR/mnt/$INSIDEDIR/containers.conf"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"# Ensure the directory exists"},{"line_number":8,"context_line":"sudo mkdir -p $(dirname $CONFFILE)"}],"source_content_type":"application/x-shellscript","patch_set":6,"id":"cf6eda69_3b19e3d1","line":5,"updated":"2025-03-07 16:59:41.000000000","message":"I was unable to find this in the docs; I\u0027m sure it\u0027s there somewhere, but there\u0027s a couple of things you may want to look at here:\n\nDIB_ prefixed variables can be overridden by the caller; something folks may want to do in this case. Something like \n\nDIB_IPA_CONTAINER_CONFFILE\u003d${DIB_IPA_CONTAINER_CONFFILE:/path/to/containers.conf} # (this may not be 100% accurate syntax, but use the bash syntax that uses the variable if set, and sets it if not)","commit_id":"6209259448cb12010d2e4aa40cf2ce444ccaac61"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"acb5c2b189c32119e79be710dc58963c90d5ae41","unresolved":true,"context_lines":[{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Define the target directory inside the ramdisk"},{"line_number":4,"context_line":"INSIDEDIR\u003d/etc/containers"},{"line_number":5,"context_line":"CONFFILE\u003d$TMP_BUILD_DIR/mnt/$INSIDEDIR/containers.conf"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"# Ensure the directory exists"},{"line_number":8,"context_line":"sudo mkdir -p $(dirname $CONFFILE)"}],"source_content_type":"application/x-shellscript","patch_set":6,"id":"f0e0927e_a8e7e94d","line":5,"in_reply_to":"a9379732_4d832302","updated":"2025-03-07 21:08:19.000000000","message":"This is assuming that the distribution IPA lives in is using the expected pathing for things. That\u0027s usually a good assumption, but it\u0027s nice to include an escape route if someone is doing something silly. Especially in DIB elements, I always try to error on the side of more flexibility so it\u0027s easier to adapt to a specific use case.","commit_id":"6209259448cb12010d2e4aa40cf2ce444ccaac61"},{"author":{"_account_id":37707,"name":"Satoshi Shirosaka","display_name":"Satoshi S.","email":"satoss1108@gmail.com","username":"satoshi-sh"},"change_message_id":"7e3b0557ade6be1bc743086ecafbe98d5b765e5b","unresolved":true,"context_lines":[{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Define the target directory inside the ramdisk"},{"line_number":4,"context_line":"INSIDEDIR\u003d/etc/containers"},{"line_number":5,"context_line":"CONFFILE\u003d$TMP_BUILD_DIR/mnt/$INSIDEDIR/containers.conf"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"# Ensure the directory exists"},{"line_number":8,"context_line":"sudo mkdir -p $(dirname $CONFFILE)"}],"source_content_type":"application/x-shellscript","patch_set":6,"id":"a9379732_4d832302","line":5,"in_reply_to":"cf6eda69_3b19e3d1","updated":"2025-03-07 20:44:05.000000000","message":"In the newer patch, I used this strategy in 20-ipa-config and 30-ipa-steps(On this copy local mysteps.file to the ram)\n\nI\u0027m not sure if DIB_IPA_CONTAINER_CONFFILE is useful for the user. podman/docker will read conf from etc/containers/containers.conf We could have option copying local containers.conf file copy to the RAM with the DIB_IP_CONTAINER_CONF(path to local file) file? This strategy could be used for 20-ipa-config as well.","commit_id":"6209259448cb12010d2e4aa40cf2ce444ccaac61"},{"author":{"_account_id":37707,"name":"Satoshi Shirosaka","display_name":"Satoshi S.","email":"satoss1108@gmail.com","username":"satoshi-sh"},"change_message_id":"e40fb5d3091f9bfc43529b0b7a454f168e40cd25","unresolved":false,"context_lines":[{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Define the target directory inside the ramdisk"},{"line_number":4,"context_line":"INSIDEDIR\u003d/etc/containers"},{"line_number":5,"context_line":"CONFFILE\u003d$TMP_BUILD_DIR/mnt/$INSIDEDIR/containers.conf"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"# Ensure the directory exists"},{"line_number":8,"context_line":"sudo mkdir -p $(dirname $CONFFILE)"}],"source_content_type":"application/x-shellscript","patch_set":6,"id":"b73e5ffc_f7d9cf34","line":5,"in_reply_to":"f0e0927e_a8e7e94d","updated":"2025-03-07 21:28:01.000000000","message":"Done","commit_id":"6209259448cb12010d2e4aa40cf2ce444ccaac61"}],"dib/ironic-python-agent-podman/pre-finalise.d/30-ipa-steps":[{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"d1761e65975b2b1f7de00b15d2b2c38aee41567b","unresolved":true,"context_lines":[{"line_number":16,"context_line":"    reboot_requested: true"},{"line_number":17,"context_line":"    pull_options:"},{"line_number":18,"context_line":"      - --tls-verify\u003dfalse"},{"line_number":19,"context_line":"    run_options: "},{"line_number":20,"context_line":"      - --rm"},{"line_number":21,"context_line":"      - --network\u003dhost"},{"line_number":22,"context_line":"      - --tls-verify\u003dfalse"}],"source_content_type":"application/x-shellscript","patch_set":6,"id":"e0adc46c_b62887a1","line":19,"updated":"2025-03-07 16:59:41.000000000","message":"nit: trailing whitespace, throughout file","commit_id":"6209259448cb12010d2e4aa40cf2ce444ccaac61"},{"author":{"_account_id":37707,"name":"Satoshi Shirosaka","display_name":"Satoshi S.","email":"satoss1108@gmail.com","username":"satoshi-sh"},"change_message_id":"9724a9fa2e00b96e32ea223569eccb98086f0b82","unresolved":false,"context_lines":[{"line_number":16,"context_line":"    reboot_requested: true"},{"line_number":17,"context_line":"    pull_options:"},{"line_number":18,"context_line":"      - --tls-verify\u003dfalse"},{"line_number":19,"context_line":"    run_options: "},{"line_number":20,"context_line":"      - --rm"},{"line_number":21,"context_line":"      - --network\u003dhost"},{"line_number":22,"context_line":"      - --tls-verify\u003dfalse"}],"source_content_type":"application/x-shellscript","patch_set":6,"id":"50112265_0b829ac2","line":19,"in_reply_to":"e0adc46c_b62887a1","updated":"2025-03-07 20:25:01.000000000","message":"Done","commit_id":"6209259448cb12010d2e4aa40cf2ce444ccaac61"}],"elements/podman/install.d/50-podman":[{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"b07473f9a5599a0823f29bdca3a421eec147fcda","unresolved":true,"context_lines":[{"line_number":1,"context_line":"#!/bin/bash"},{"line_number":2,"context_line":"apt-get update"},{"line_number":3,"context_line":"apt-get install -y podman"},{"line_number":4,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"7e1d7c4a_f2488501","line":1,"updated":"2025-03-04 23:31:02.000000000","message":"A couple notes:\n- Please namespace this to ironic-python-agent- -- podman is an element I could anticipate existing in upstream DIB eventually :)\n- Add a readme to this, and ensure the various configs you\u0027re installing are modifyable by an end-user. e.g. -- I might suggest having the yaml file be a static one that is installed, with the source being configurable via env variable.","commit_id":"16ad1804bcede0b5b0af1b1c12eeef2a67dca9e7"},{"author":{"_account_id":37707,"name":"Satoshi Shirosaka","display_name":"Satoshi S.","email":"satoss1108@gmail.com","username":"satoshi-sh"},"change_message_id":"9724a9fa2e00b96e32ea223569eccb98086f0b82","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#!/bin/bash"},{"line_number":2,"context_line":"apt-get update"},{"line_number":3,"context_line":"apt-get install -y podman"},{"line_number":4,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"47269297_0b037aaf","line":1,"in_reply_to":"7e1d7c4a_f2488501","updated":"2025-03-07 20:25:01.000000000","message":"Done","commit_id":"16ad1804bcede0b5b0af1b1c12eeef2a67dca9e7"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"b07473f9a5599a0823f29bdca3a421eec147fcda","unresolved":true,"context_lines":[{"line_number":10,"context_line":"EOF"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"# Create directory for IPA configuration"},{"line_number":13,"context_line":"mkdir -p /etc/ironic-python-agent"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"# Create ironic_python_agent.conf"},{"line_number":16,"context_line":"tee /etc/ironic-python-agent/ironic_python_agent.conf \u003c\u003cEOF"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"f30b2596_4b97b664","line":13,"updated":"2025-03-04 23:31:02.000000000","message":"So oslo.config has native support for directory-based configs, which IPA-builder already utilizes here: https://github.com/openstack/ironic-python-agent-builder/blob/46a8e0104e47eb0734ec28b7f52d181757e6df88/dib/ironic-python-agent-tls/pre-finalise.d/10-configure-ipa-tls#L4\n\nThis basically means if you put .conf files in /etc/package.d/ it will read them all in and combine them. This is likely the primary reason your changes are not being picked up.","commit_id":"16ad1804bcede0b5b0af1b1c12eeef2a67dca9e7"},{"author":{"_account_id":37707,"name":"Satoshi Shirosaka","display_name":"Satoshi S.","email":"satoss1108@gmail.com","username":"satoshi-sh"},"change_message_id":"bcf3eff2dd8906006227d889a66d89de84cdd0e8","unresolved":false,"context_lines":[{"line_number":10,"context_line":"EOF"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"# Create directory for IPA configuration"},{"line_number":13,"context_line":"mkdir -p /etc/ironic-python-agent"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"# Create ironic_python_agent.conf"},{"line_number":16,"context_line":"tee /etc/ironic-python-agent/ironic_python_agent.conf \u003c\u003cEOF"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"f3d727f1_9988c498","line":13,"in_reply_to":"f30b2596_4b97b664","updated":"2025-03-07 21:09:32.000000000","message":"Done","commit_id":"16ad1804bcede0b5b0af1b1c12eeef2a67dca9e7"}]}
