)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"cd04895c70120823ec485a59470e9be56100294a","unresolved":true,"context_lines":[{"line_number":12,"context_line":"additional subnets allows dnsmasq to serve DHCP requests that came in"},{"line_number":13,"context_line":"via DHCP relay/helper."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The old parameters \u0027ironic_dnsmasq_dhcp_range\u0027 and"},{"line_number":16,"context_line":"\u0027ironic_dnsmasq_default_gateway\u0027 used for an only subnet will be"},{"line_number":17,"context_line":"deprecated in the future. For now, the old configuration method still"},{"line_number":18,"context_line":"can be used for backward compatibility, but the new is preferred."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"This cnange implements the same solution used in the TripleO several"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"4690b80d_1691c531","line":17,"range":{"start_line":15,"start_character":0,"end_line":17,"end_character":24},"updated":"2022-01-05 10:30:05.000000000","message":"Can we deprecate them in this change?","commit_id":"43dbf653709b08e3ccf6fd5a4f9fac8e3394ca5b"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"fb6fa875e1ccc0604cf335ba9a141ed1efb70a72","unresolved":false,"context_lines":[{"line_number":12,"context_line":"additional subnets allows dnsmasq to serve DHCP requests that came in"},{"line_number":13,"context_line":"via DHCP relay/helper."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The old parameters \u0027ironic_dnsmasq_dhcp_range\u0027 and"},{"line_number":16,"context_line":"\u0027ironic_dnsmasq_default_gateway\u0027 used for an only subnet will be"},{"line_number":17,"context_line":"deprecated in the future. For now, the old configuration method still"},{"line_number":18,"context_line":"can be used for backward compatibility, but the new is preferred."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"This cnange implements the same solution used in the TripleO several"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"e9577908_693b49fa","line":17,"range":{"start_line":15,"start_character":0,"end_line":17,"end_character":24},"in_reply_to":"4690b80d_1691c531","updated":"2022-01-08 23:16:25.000000000","message":"sure","commit_id":"43dbf653709b08e3ccf6fd5a4f9fac8e3394ca5b"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"c7e57b15edbeaf7ebb01fe4382a9e3ef2aa29259","unresolved":false,"context_lines":[{"line_number":12,"context_line":"additional subnets allows dnsmasq to serve DHCP requests that came in"},{"line_number":13,"context_line":"via DHCP relay/helper."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The old parameters \u0027ironic_dnsmasq_dhcp_range\u0027 and"},{"line_number":16,"context_line":"\u0027ironic_dnsmasq_default_gateway\u0027 used for an only subnet will be"},{"line_number":17,"context_line":"deprecated in the future. For now, the old configuration method still"},{"line_number":18,"context_line":"can be used for backward compatibility, but the new is preferred."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"This cnange implements the same solution used in the TripleO several"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"9d793dcb_689ab4e2","line":17,"range":{"start_line":15,"start_character":0,"end_line":17,"end_character":24},"in_reply_to":"e9577908_693b49fa","updated":"2022-01-13 14:50:28.000000000","message":"done","commit_id":"43dbf653709b08e3ccf6fd5a4f9fac8e3394ca5b"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"75f8bfc9caa41d60d99e9a839c6aa7bc1d47085a","unresolved":true,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The old parameters \u0027ironic_dnsmasq_dhcp_range\u0027 and"},{"line_number":16,"context_line":"\u0027ironic_dnsmasq_default_gateway\u0027 used for an only subnet are now"},{"line_number":17,"context_line":"deprecated."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"This cnange implements the same solution used in the TripleO several"},{"line_number":20,"context_line":"years ago in the: Ie49b07ffe948576f5d9330cf11ee014aef4b282d"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"8a60a5a4_7676644d","line":17,"range":{"start_line":17,"start_character":0,"end_line":17,"end_character":10},"updated":"2022-02-09 10:12:53.000000000","message":"This change removes support for these variables. Deprecating means that they still work, but are planned to be removed in a future release.\n\nCrucially, deprecating is backwards compatible, while removal is not.","commit_id":"b429704a3527572f9ccf3ef3781981a5ac2d2f01"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"01e978cad235898f42a2d4014cad28b3b68be836","unresolved":false,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The old parameters \u0027ironic_dnsmasq_dhcp_range\u0027 and"},{"line_number":16,"context_line":"\u0027ironic_dnsmasq_default_gateway\u0027 used for an only subnet are now"},{"line_number":17,"context_line":"deprecated."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"This cnange implements the same solution used in the TripleO several"},{"line_number":20,"context_line":"years ago in the: Ie49b07ffe948576f5d9330cf11ee014aef4b282d"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"c72633ef_eba7dad9","line":17,"range":{"start_line":17,"start_character":0,"end_line":17,"end_character":10},"in_reply_to":"8a60a5a4_7676644d","updated":"2022-02-09 14:55:39.000000000","message":"forgot update the message. done.","commit_id":"b429704a3527572f9ccf3ef3781981a5ac2d2f01"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":7,"id":"02a06e4f_dfd6d9f8","updated":"2022-03-19 09:15:39.000000000","message":"As a general comment, we can simplify solutions to some of the inline comments by requiring that tags are present (it should be of no concern to the users) and they are unique.","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"77bbb98661ee3288308be1ef4bfdda512044d374","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"a878d606_a740beda","updated":"2022-03-19 18:17:28.000000000","message":"Radosław, I understand Your wish to help with, but let\u0027s add artificial intelligence in the subsequent changes. I will fix the default variable name and grammar notes in the docs and reno. Thanks.\n","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"4cf051c0738c266c74a681be01b64fa8f88a055e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"9d007c4a_6002a63b","updated":"2022-03-19 18:02:50.000000000","message":"autogenerating is a very bad idea, because it blocks users to provide customisation via own template config.","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"7142ec002bdea0732ee4ee5ea48059ffca559410","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"dd52f85a_c0325278","updated":"2022-03-19 18:06:28.000000000","message":"there is no need to simplify or make even more complicated to use. we use this code alongside with kayobe part in production already and it work as expected.\n","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"ac82adbe581ff1fc202ae2bfb654d01405839dd1","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":7,"id":"5c2899c5_c89867dc","in_reply_to":"02a06e4f_dfd6d9f8","updated":"2022-03-19 15:06:18.000000000","message":"If we\u0027re going back to the drawing board on this then I\u0027m going to suggest again that tags could be auto-generated. We could allow to specify them, but in most cases operators won\u0027t care what they\u0027re called (similar to physnet1).\n\nI don\u0027t think we should make user-provided tags mandatory for the common single subnet case.","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"ebf008692e66d35d80243f419bc14442ad6d8889","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"1e4cf01f_3f6af233","in_reply_to":"2588ce00_9ae963f8","updated":"2022-04-13 18:42:40.000000000","message":"Done","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"740d0985d297eb0418531aef4b733df7e8a9f739","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":7,"id":"2588ce00_9ae963f8","in_reply_to":"5c2899c5_c89867dc","updated":"2022-03-19 15:41:40.000000000","message":"Autogenerated sound sensible and makes everything easier.","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"425abe2b754361a3c0942f384e0728d986fc5209","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"d118b5f2_72dd7b41","updated":"2022-03-24 14:24:03.000000000","message":"The comments with \"nit\" annotation can be ignored but the rest still applies. If autogenerating is bad, I suggest we simply enforce naming on users as this is easily fixable by operators and avoids all the havoc and complexities arising from other alternatives. A more complex solution would be to generate names if not provided. Then you have your custom names while others, who do not care, can continue working without tags. However, I think it\u0027s an overkill. Let\u0027s force the tags.","commit_id":"6a37d5c177bc145daaead78cc2ae4ce3f568004c"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"97a85a044b48bc2dc7f2702c2dc43b3297442675","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"a511dd2a_6af2c61e","in_reply_to":"07e23872_dfd13385","updated":"2022-04-13 10:44:23.000000000","message":"I understand that. But inflicting these fairly arbitrary tags on the majority of users who do not need them seems unfair. So IMO they should be optional, and autogenerated if missing.","commit_id":"6a37d5c177bc145daaead78cc2ae4ce3f568004c"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"b2240875a024aac4eaadf4891d2f2e7336b0f1b6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"07e23872_dfd13385","in_reply_to":"1938aaa7_e57dac0c","updated":"2022-04-13 10:12:17.000000000","message":"To be honest, multiple subnets do not work without tags ;) ho have support of multiple subnets we need at least one subnet with tags.","commit_id":"6a37d5c177bc145daaead78cc2ae4ce3f568004c"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"a2379cb0cddd14beb332157a85147e8d22fb22f5","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":8,"id":"1938aaa7_e57dac0c","in_reply_to":"6acdb924_5689b64d","updated":"2022-04-13 09:29:36.000000000","message":"To be honest, I disagree. Tags are not necessary in the majority use case of a single subnet. Even with multiple subnets I\u0027d say in most cases it will be fine for kolla to generate the tags.","commit_id":"6a37d5c177bc145daaead78cc2ae4ce3f568004c"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"03af91085b4334d02768f7dacac9308246a9a370","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":8,"id":"eb617a80_f542b719","in_reply_to":"8eb71f98_56aee89a","updated":"2022-04-13 13:14:17.000000000","message":"Defaults don\u0027t work, hence the \u0027Ensure dnsmasq_dhcp_range configured for Ironic Dnsmasq\u0027 precheck","commit_id":"6a37d5c177bc145daaead78cc2ae4ce3f568004c"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"193d12ff3f7defe2c60317ba8c06d2f5e18b11c3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"8eb71f98_56aee89a","in_reply_to":"a511dd2a_6af2c61e","updated":"2022-04-13 11:10:21.000000000","message":"AFAIK majority of users do not use multisubnets and even do not touch the one subnet and use defaults. All the others who are familiar with multisubnets shouldn\u0027t have the problems with configuration of them.","commit_id":"6a37d5c177bc145daaead78cc2ae4ce3f568004c"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"5b243b05d65161cbecfeec36fa71e466ec763e63","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"6acdb924_5689b64d","in_reply_to":"becf2801_38d4c4da","updated":"2022-04-09 11:42:47.000000000","message":"how we should \u0027force\u0027 tags? what you mean? don\u0027t like name \u0027subnet1\u0027? \u0027default\u0027 is ok?","commit_id":"6a37d5c177bc145daaead78cc2ae4ce3f568004c"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"d9724695fbff388c9a5c0eadada80e5bc2415b63","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":8,"id":"becf2801_38d4c4da","in_reply_to":"d118b5f2_72dd7b41","updated":"2022-04-08 06:28:15.000000000","message":"This comment is pending.","commit_id":"6a37d5c177bc145daaead78cc2ae4ce3f568004c"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"61805eee7479f82b08a638c7f2abb3ada1f932b7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"f84842d6_2af51ffe","in_reply_to":"eb617a80_f542b719","updated":"2022-04-13 14:56:22.000000000","message":"copy and paste from official documentation works well)","commit_id":"6a37d5c177bc145daaead78cc2ae4ce3f568004c"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"c4a1aba6a0e83bc732f20e20a011c8922cc62ba4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"f84a48ba_7c1c5f44","updated":"2022-04-13 18:40:55.000000000","message":"I rebased this to fix the merge conflict and proposed changes suggested by me and Mark as well as being less specific about range format so that we can support IPv6 with the same code. The tag is now optional but it can be set by a user that cares (e.g. you, Maksim).\n\nUnless I made a typo somewhere and this all breaks, I think it\u0027s good to go. Please let me know your thoughts, both of you.","commit_id":"3b7acbb43a0daf477ae04a6086f64e76c162efb8"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"244ae764205fa8deedc4cfff6eef329093a0f50c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"187ea6dc_3a395fad","in_reply_to":"39eddc4c_2b88271b","updated":"2022-04-13 19:27:16.000000000","message":"yep, later I said \u0027ok it should work\u0027","commit_id":"3b7acbb43a0daf477ae04a6086f64e76c162efb8"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"f31f6c03bc9ae3427cb23d27f0827cd7de96cd9c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"39eddc4c_2b88271b","in_reply_to":"8a1306d8_6b8967f4","updated":"2022-04-13 19:11:01.000000000","message":"I don\u0027t see where. The tag is autogenerated if not provided.","commit_id":"3b7acbb43a0daf477ae04a6086f64e76c162efb8"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"c2f6dccf17466b2d6bc54ac7dee9bb32edc3e503","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"c3b0c714_0a0cc6d3","in_reply_to":"aee48afa_9d45926a","updated":"2022-04-13 18:56:01.000000000","message":"Sure thing, I would not merge it without your feedback unless you went silent for like two weeks. ;-) (and you only needed 10 minutes)","commit_id":"3b7acbb43a0daf477ae04a6086f64e76c162efb8"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"37587c28548831fe15288c4ff4e77d8f172f71a1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"8a1306d8_6b8967f4","in_reply_to":"c3b0c714_0a0cc6d3","updated":"2022-04-13 19:07:53.000000000","message":"kidding) asap, but not 10 minutes. As I see there are problem with option:router without tag. so if we skip tag, but provide gateway in the list element - we lost router.","commit_id":"3b7acbb43a0daf477ae04a6086f64e76c162efb8"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"18e322d438e82ca1fdf28de933620e9890809d28","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"aee48afa_9d45926a","in_reply_to":"f84a48ba_7c1c5f44","updated":"2022-04-13 18:49:04.000000000","message":"nice, but take me a time to check this","commit_id":"3b7acbb43a0daf477ae04a6086f64e76c162efb8"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"01a4c841800b206423672aa9434973020af4f2d9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"0ed0d82e_6eb507d9","updated":"2022-04-13 19:14:06.000000000","message":"ok, it should work","commit_id":"5b829f9460765b04713df9ba786bd22a41acfadd"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"71c6f4323063952954ab84d294c7f4fb84fa2475","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"5c3cab07_d888d9e1","updated":"2022-04-29 14:56:54.000000000","message":"lgtm but waiting for Mark to respond","commit_id":"762aecbfae0719a7d2fa15fd23ddd40c471be113"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"6567e57440d997519c3d48bb557025ff0c37affa","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"f3f4841e_86c4bec5","updated":"2022-04-21 15:42:36.000000000","message":"ping Mark","commit_id":"762aecbfae0719a7d2fa15fd23ddd40c471be113"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"1935361764a3bcbccd190534463080260c82fa42","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"978d868e_a3420e95","in_reply_to":"5c3cab07_d888d9e1","updated":"2022-05-02 09:15:44.000000000","message":"I am letting myself motivate Mark by just merging this change. As far as I can tell, this includes all his feedback.","commit_id":"762aecbfae0719a7d2fa15fd23ddd40c471be113"}],"ansible/roles/ironic/defaults/main.yml":[{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"cd04895c70120823ec485a59470e9be56100294a","unresolved":true,"context_lines":[{"line_number":257,"context_line":"ironic_dnsmasq_interface: \"{{ api_interface }}\""},{"line_number":258,"context_line":"ironic_dnsmasq_dhcp_range:"},{"line_number":259,"context_line":"ironic_dnsmasq_default_gateway:"},{"line_number":260,"context_line":"ironic_dnsmasq_dhcp_subnets:"},{"line_number":261,"context_line":"ironic_dnsmasq_boot_file: \"{% if enable_ironic_ipxe | bool %}undionly.kpxe{% else %}pxelinux.0{% endif %}\""},{"line_number":262,"context_line":"ironic_cleaning_network:"},{"line_number":263,"context_line":"ironic_console_serial_speed: \"115200n8\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"681546b9_37fdb4ff","line":260,"range":{"start_line":260,"start_character":0,"end_line":260,"end_character":28},"updated":"2022-01-05 10:30:05.000000000","message":"shouldn\u0027t it be an empty list? ironic_dnsmasq_dhcp_subnets: []","commit_id":"43dbf653709b08e3ccf6fd5a4f9fac8e3394ca5b"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"fb6fa875e1ccc0604cf335ba9a141ed1efb70a72","unresolved":false,"context_lines":[{"line_number":257,"context_line":"ironic_dnsmasq_interface: \"{{ api_interface }}\""},{"line_number":258,"context_line":"ironic_dnsmasq_dhcp_range:"},{"line_number":259,"context_line":"ironic_dnsmasq_default_gateway:"},{"line_number":260,"context_line":"ironic_dnsmasq_dhcp_subnets:"},{"line_number":261,"context_line":"ironic_dnsmasq_boot_file: \"{% if enable_ironic_ipxe | bool %}undionly.kpxe{% else %}pxelinux.0{% endif %}\""},{"line_number":262,"context_line":"ironic_cleaning_network:"},{"line_number":263,"context_line":"ironic_console_serial_speed: \"115200n8\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"a7727c9e_d857f6b9","line":260,"range":{"start_line":260,"start_character":0,"end_line":260,"end_character":28},"in_reply_to":"681546b9_37fdb4ff","updated":"2022-01-08 23:16:25.000000000","message":"by default? yes. it configured outside the role.","commit_id":"43dbf653709b08e3ccf6fd5a4f9fac8e3394ca5b"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"75f8bfc9caa41d60d99e9a839c6aa7bc1d47085a","unresolved":true,"context_lines":[{"line_number":252,"context_line":"# Ironic"},{"line_number":253,"context_line":"#########"},{"line_number":254,"context_line":"ironic_dnsmasq_interface: \"{{ api_interface }}\""},{"line_number":255,"context_line":"ironic_dnsmasq_dhcp_subnets:"},{"line_number":256,"context_line":"ironic_dnsmasq_dhcp_lease_time: \"10m\""},{"line_number":257,"context_line":"ironic_dnsmasq_boot_file: \"{% if enable_ironic_ipxe | bool %}undionly.kpxe{% else %}pxelinux.0{% endif %}\""},{"line_number":258,"context_line":"ironic_cleaning_network:"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"a79eb98c_3672ef3e","line":255,"range":{"start_line":255,"start_character":0,"end_line":255,"end_character":27},"updated":"2022-02-09 10:12:53.000000000","message":"I would make the default an empty list","commit_id":"b429704a3527572f9ccf3ef3781981a5ac2d2f01"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"01e978cad235898f42a2d4014cad28b3b68be836","unresolved":false,"context_lines":[{"line_number":252,"context_line":"# Ironic"},{"line_number":253,"context_line":"#########"},{"line_number":254,"context_line":"ironic_dnsmasq_interface: \"{{ api_interface }}\""},{"line_number":255,"context_line":"ironic_dnsmasq_dhcp_subnets:"},{"line_number":256,"context_line":"ironic_dnsmasq_dhcp_lease_time: \"10m\""},{"line_number":257,"context_line":"ironic_dnsmasq_boot_file: \"{% if enable_ironic_ipxe | bool %}undionly.kpxe{% else %}pxelinux.0{% endif %}\""},{"line_number":258,"context_line":"ironic_cleaning_network:"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"45d5e8f6_e94125cd","line":255,"range":{"start_line":255,"start_character":0,"end_line":255,"end_character":27},"in_reply_to":"a79eb98c_3672ef3e","updated":"2022-02-09 14:55:39.000000000","message":"this is required variable and made an empty to simplify the check \u0027ironic_dnsmasq_dhcp_range is none\u0027 instead of \u0027ironic_dnsmasq_dhcp_range | length \u003d\u003d 0\u0027 just as before.","commit_id":"b429704a3527572f9ccf3ef3781981a5ac2d2f01"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[{"line_number":253,"context_line":"#########"},{"line_number":254,"context_line":"ironic_dnsmasq_interface: \"{{ api_interface }}\""},{"line_number":255,"context_line":"ironic_dnsmasq_dhcp_subnets:"},{"line_number":256,"context_line":"ironic_dnsmasq_dhcp_lease_time: \"10m\""},{"line_number":257,"context_line":"ironic_dnsmasq_boot_file: \"{% if enable_ironic_ipxe | bool %}undionly.kpxe{% else %}pxelinux.0{% endif %}\""},{"line_number":258,"context_line":"ironic_dnsmasq_uefi_ipxe_boot_file: \"snponly.efi\""},{"line_number":259,"context_line":"ironic_cleaning_network:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"7a10ac34_766944eb","line":256,"range":{"start_line":256,"start_character":0,"end_line":256,"end_character":30},"updated":"2022-03-19 09:15:39.000000000","message":"_default_lease_time (as it can be overridden per subnet)","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"01828047b2d22c1b450598a160dbe0eac9950d90","unresolved":false,"context_lines":[{"line_number":253,"context_line":"#########"},{"line_number":254,"context_line":"ironic_dnsmasq_interface: \"{{ api_interface }}\""},{"line_number":255,"context_line":"ironic_dnsmasq_dhcp_subnets:"},{"line_number":256,"context_line":"ironic_dnsmasq_dhcp_lease_time: \"10m\""},{"line_number":257,"context_line":"ironic_dnsmasq_boot_file: \"{% if enable_ironic_ipxe | bool %}undionly.kpxe{% else %}pxelinux.0{% endif %}\""},{"line_number":258,"context_line":"ironic_dnsmasq_uefi_ipxe_boot_file: \"snponly.efi\""},{"line_number":259,"context_line":"ironic_cleaning_network:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"6c308b4c_4e2be6ab","line":256,"range":{"start_line":256,"start_character":0,"end_line":256,"end_character":30},"in_reply_to":"7a10ac34_766944eb","updated":"2022-03-19 18:47:08.000000000","message":"Done","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"}],"ansible/roles/ironic/tasks/precheck.yml":[{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[{"line_number":70,"context_line":"      ironic_dnsmasq_dhcp_subnets must be set when enable ironic"},{"line_number":71,"context_line":"  connection: local"},{"line_number":72,"context_line":"  run_once: True"},{"line_number":73,"context_line":"  when: ironic_dnsmasq_dhcp_subnets is none"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"38d8caa8_354ea37e","line":73,"updated":"2022-03-19 09:15:39.000000000","message":"we should check more properties of this variable, e.g., (1) if multiple subnets are used and at least one has gateway set, then tags must be used; (2) tags, if set, must be unique.","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"01828047b2d22c1b450598a160dbe0eac9950d90","unresolved":false,"context_lines":[{"line_number":70,"context_line":"      ironic_dnsmasq_dhcp_subnets must be set when enable ironic"},{"line_number":71,"context_line":"  connection: local"},{"line_number":72,"context_line":"  run_once: True"},{"line_number":73,"context_line":"  when: ironic_dnsmasq_dhcp_subnets is none"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"c5dc7ea0_8602986d","line":73,"in_reply_to":"38d8caa8_354ea37e","updated":"2022-03-19 18:47:08.000000000","message":"1. the only one subnet can be used.\n2. the netmask is not necessary in simple cases (eg. without DHCP-relay).\n3. this task is simple check that the variable is set, because in the defaults it especially empty.","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"}],"ansible/roles/ironic/templates/ironic-dnsmasq.conf.j2":[{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"cd04895c70120823ec485a59470e9be56100294a","unresolved":true,"context_lines":[{"line_number":14,"context_line":"{% elif item.tag is defined %}"},{"line_number":15,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},10m"},{"line_number":16,"context_line":"{% else %}"},{"line_number":17,"context_line":"dhcp-range\u003d{{ item.ip_range }},10m"},{"line_number":18,"context_line":"{% endif %}"},{"line_number":19,"context_line":"{% if item.gateway is defined %}"},{"line_number":20,"context_line":"{% if item.tag is defined %}"}],"source_content_type":"text/x-jinja2","patch_set":1,"id":"e68ad087_8ba03665","line":17,"range":{"start_line":17,"start_character":31,"end_line":17,"end_character":34},"updated":"2022-01-05 10:30:05.000000000","message":"can we make it configurable and default to 10m?","commit_id":"43dbf653709b08e3ccf6fd5a4f9fac8e3394ca5b"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"c7e57b15edbeaf7ebb01fe4382a9e3ef2aa29259","unresolved":false,"context_lines":[{"line_number":14,"context_line":"{% elif item.tag is defined %}"},{"line_number":15,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},10m"},{"line_number":16,"context_line":"{% else %}"},{"line_number":17,"context_line":"dhcp-range\u003d{{ item.ip_range }},10m"},{"line_number":18,"context_line":"{% endif %}"},{"line_number":19,"context_line":"{% if item.gateway is defined %}"},{"line_number":20,"context_line":"{% if item.tag is defined %}"}],"source_content_type":"text/x-jinja2","patch_set":1,"id":"c383137a_f3ae9f90","line":17,"range":{"start_line":17,"start_character":31,"end_line":17,"end_character":34},"in_reply_to":"ac3c2ac9_b9510806","updated":"2022-01-13 14:50:28.000000000","message":"done","commit_id":"43dbf653709b08e3ccf6fd5a4f9fac8e3394ca5b"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"fb6fa875e1ccc0604cf335ba9a141ed1efb70a72","unresolved":false,"context_lines":[{"line_number":14,"context_line":"{% elif item.tag is defined %}"},{"line_number":15,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},10m"},{"line_number":16,"context_line":"{% else %}"},{"line_number":17,"context_line":"dhcp-range\u003d{{ item.ip_range }},10m"},{"line_number":18,"context_line":"{% endif %}"},{"line_number":19,"context_line":"{% if item.gateway is defined %}"},{"line_number":20,"context_line":"{% if item.tag is defined %}"}],"source_content_type":"text/x-jinja2","patch_set":1,"id":"ac3c2ac9_b9510806","line":17,"range":{"start_line":17,"start_character":31,"end_line":17,"end_character":34},"in_reply_to":"e68ad087_8ba03665","updated":"2022-01-08 23:16:25.000000000","message":"sure","commit_id":"43dbf653709b08e3ccf6fd5a4f9fac8e3394ca5b"},{"author":{"_account_id":34391,"name":"Bram Kranendonk","display_name":"bkranendonk","email":"bram.kranendonk@team.blue","username":"bkranendonk"},"change_message_id":"0a06f9a626085b61dd84e2418fd7a005854763a8","unresolved":true,"context_lines":[{"line_number":19,"context_line":"{% if item.gateway is defined %}"},{"line_number":20,"context_line":"{% if item.tag is defined %}"},{"line_number":21,"context_line":"dhcp-option\u003dtag:{{ item.tag }},option:router,{{ item.gateway }}"},{"line_number":22,"context_line":"{% else %}"},{"line_number":23,"context_line":"dhcp-option\u003doption:router,{{ item.gateway }}"},{"line_number":24,"context_line":"{% endif %}{# tag #}"},{"line_number":25,"context_line":"{% endif %}{# gateway #}"}],"source_content_type":"text/x-jinja2","patch_set":1,"id":"677f2522_60112dd1","line":22,"updated":"2022-01-11 16:54:52.000000000","message":"Might aswell add a optional `dns_server` option?\n`dhcp-option\u003d6,{{item.dns_server}}`\n\nCan be quite useful as the ironic_inspector_internal_endpoint fqdn is might registered somewhere else.","commit_id":"43dbf653709b08e3ccf6fd5a4f9fac8e3394ca5b"},{"author":{"_account_id":34391,"name":"Bram Kranendonk","display_name":"bkranendonk","email":"bram.kranendonk@team.blue","username":"bkranendonk"},"change_message_id":"2619607a85acc53150ee06e1f383aececb98148e","unresolved":true,"context_lines":[{"line_number":19,"context_line":"{% if item.gateway is defined %}"},{"line_number":20,"context_line":"{% if item.tag is defined %}"},{"line_number":21,"context_line":"dhcp-option\u003dtag:{{ item.tag }},option:router,{{ item.gateway }}"},{"line_number":22,"context_line":"{% else %}"},{"line_number":23,"context_line":"dhcp-option\u003doption:router,{{ item.gateway }}"},{"line_number":24,"context_line":"{% endif %}{# tag #}"},{"line_number":25,"context_line":"{% endif %}{# gateway #}"}],"source_content_type":"text/x-jinja2","patch_set":1,"id":"b6bdecb6_bd8e6fd3","line":22,"in_reply_to":"677f2522_60112dd1","updated":"2022-01-11 17:04:05.000000000","message":"\u003e `dhcp-option\u003d6,{{item.dns_server}}`\n\nI meant dhcp-option\u003ddns-server,{{item.dns_server}}","commit_id":"43dbf653709b08e3ccf6fd5a4f9fac8e3394ca5b"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"9863af76b546927e73b6aba84e9f68d18d24f271","unresolved":false,"context_lines":[{"line_number":19,"context_line":"{% if item.gateway is defined %}"},{"line_number":20,"context_line":"{% if item.tag is defined %}"},{"line_number":21,"context_line":"dhcp-option\u003dtag:{{ item.tag }},option:router,{{ item.gateway }}"},{"line_number":22,"context_line":"{% else %}"},{"line_number":23,"context_line":"dhcp-option\u003doption:router,{{ item.gateway }}"},{"line_number":24,"context_line":"{% endif %}{# tag #}"},{"line_number":25,"context_line":"{% endif %}{# gateway #}"}],"source_content_type":"text/x-jinja2","patch_set":1,"id":"775b668f_d528931e","line":22,"in_reply_to":"b6bdecb6_bd8e6fd3","updated":"2022-01-13 14:08:09.000000000","message":"what you mean \u0027registered somewhere else\u0027 ? the best practices is to use IP addresses instead of dns-names for internal endpoints everywhere! and BTW dns-service is disabled, because not needed for inspection.","commit_id":"43dbf653709b08e3ccf6fd5a4f9fac8e3394ca5b"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"a80f6c58e8c8d1b013a972abd9ec66f06291ce82","unresolved":true,"context_lines":[{"line_number":6,"context_line":"bind-interfaces"},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"{% for item in ironic_dnsmasq_dhcp_subnets %}"},{"line_number":9,"context_line":"{% if item.tag is defined and item.netmask is defined %}"},{"line_number":10,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.netmask }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":11,"context_line":"{% elif item.tag is defined %}"},{"line_number":12,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"}],"source_content_type":"text/x-jinja2","patch_set":4,"id":"1a1d631f_13fa16df","line":9,"range":{"start_line":9,"start_character":11,"end_line":9,"end_character":14},"updated":"2022-03-18 10:17:15.000000000","message":"Is it useful to be able to specify a tag, or could we just use something like \n\n{% set tag\u003d\u0027subnet\u0027 ~ loop.index %}\n\nThat would also simplify this logic.","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"04e357bac41ff7ada6bf43a8974c6d01686c76c3","unresolved":false,"context_lines":[{"line_number":6,"context_line":"bind-interfaces"},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"{% for item in ironic_dnsmasq_dhcp_subnets %}"},{"line_number":9,"context_line":"{% if item.tag is defined and item.netmask is defined %}"},{"line_number":10,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.netmask }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":11,"context_line":"{% elif item.tag is defined %}"},{"line_number":12,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"}],"source_content_type":"text/x-jinja2","patch_set":4,"id":"7ae79e90_dfc80b1d","line":9,"range":{"start_line":9,"start_character":11,"end_line":9,"end_character":14},"in_reply_to":"1a1d631f_13fa16df","updated":"2022-03-18 12:43:32.000000000","message":"yes, the tag is a short name of the human readable name of the subnet. it shouldn\u0027t be any incrementally generated name like subnetN (subnet1 is for example only).","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"d87565c4485e956cf4d774c720eb743cc044260c","unresolved":true,"context_lines":[{"line_number":6,"context_line":"bind-interfaces"},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"{% for item in ironic_dnsmasq_dhcp_subnets %}"},{"line_number":9,"context_line":"{% if item.tag is defined and item.netmask is defined %}"},{"line_number":10,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.netmask }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":11,"context_line":"{% elif item.tag is defined %}"},{"line_number":12,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"}],"source_content_type":"text/x-jinja2","patch_set":4,"id":"e6792d19_92f18c6f","line":9,"range":{"start_line":9,"start_character":11,"end_line":9,"end_character":14},"in_reply_to":"7ae79e90_dfc80b1d","updated":"2022-03-18 13:48:12.000000000","message":"Is the tag shown anywhere where the user will read it? Logs etc?\n\nIt seems like the tags are necessary when there is more than one subnet and there are gateways?","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"9682f87f8cf464c9806db66718148467082f860b","unresolved":false,"context_lines":[{"line_number":6,"context_line":"bind-interfaces"},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"{% for item in ironic_dnsmasq_dhcp_subnets %}"},{"line_number":9,"context_line":"{% if item.tag is defined and item.netmask is defined %}"},{"line_number":10,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.netmask }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":11,"context_line":"{% elif item.tag is defined %}"},{"line_number":12,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"}],"source_content_type":"text/x-jinja2","patch_set":4,"id":"b0f4abd0_4796d12e","line":9,"range":{"start_line":9,"start_character":11,"end_line":9,"end_character":14},"in_reply_to":"e6792d19_92f18c6f","updated":"2022-03-18 14:59:09.000000000","message":"tags should appear in the log file when debug enabled. I can\u0027t check this right now to proof.\n\nsure, tags are necessary when need to link one part of configuration (eg. dhcp-range) with another one (eg. dhcp-option for gateway).","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[{"line_number":7,"context_line":""},{"line_number":8,"context_line":"{% for item in ironic_dnsmasq_dhcp_subnets %}"},{"line_number":9,"context_line":"{% if item.tag is defined and item.netmask is defined %}"},{"line_number":10,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.netmask }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":11,"context_line":"{% elif item.tag is defined %}"},{"line_number":12,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":13,"context_line":"{% else %}"}],"source_content_type":"text/x-jinja2","patch_set":7,"id":"e8903e97_0e5e9bfe","line":10,"range":{"start_line":10,"start_character":69,"end_line":10,"end_character":129},"updated":"2022-03-19 09:15:39.000000000","message":"let\u0027s use a jinja2 variable in the loop to set this once","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[{"line_number":7,"context_line":""},{"line_number":8,"context_line":"{% for item in ironic_dnsmasq_dhcp_subnets %}"},{"line_number":9,"context_line":"{% if item.tag is defined and item.netmask is defined %}"},{"line_number":10,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.netmask }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":11,"context_line":"{% elif item.tag is defined %}"},{"line_number":12,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":13,"context_line":"{% else %}"}],"source_content_type":"text/x-jinja2","patch_set":7,"id":"205b9cc4_805a7577","line":10,"range":{"start_line":10,"start_character":18,"end_line":10,"end_character":26},"updated":"2022-03-19 09:15:39.000000000","message":"we should probably prefix the user-provided tag with some prefix like subnet_ to avoid conflicts with what we introduce (e.g., setting \"efi\" as tag will trigger abnormal behaviour atm)","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"94b529885413e902e35b6c212b17b9c8eec9531f","unresolved":false,"context_lines":[{"line_number":7,"context_line":""},{"line_number":8,"context_line":"{% for item in ironic_dnsmasq_dhcp_subnets %}"},{"line_number":9,"context_line":"{% if item.tag is defined and item.netmask is defined %}"},{"line_number":10,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.netmask }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":11,"context_line":"{% elif item.tag is defined %}"},{"line_number":12,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":13,"context_line":"{% else %}"}],"source_content_type":"text/x-jinja2","patch_set":7,"id":"65a58f24_f03f3e41","line":10,"range":{"start_line":10,"start_character":18,"end_line":10,"end_character":26},"in_reply_to":"205b9cc4_805a7577","updated":"2022-04-13 18:42:30.000000000","message":"Done","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"740d0985d297eb0418531aef4b733df7e8a9f739","unresolved":true,"context_lines":[{"line_number":7,"context_line":""},{"line_number":8,"context_line":"{% for item in ironic_dnsmasq_dhcp_subnets %}"},{"line_number":9,"context_line":"{% if item.tag is defined and item.netmask is defined %}"},{"line_number":10,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.netmask }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":11,"context_line":"{% elif item.tag is defined %}"},{"line_number":12,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":13,"context_line":"{% else %}"}],"source_content_type":"text/x-jinja2","patch_set":7,"id":"765bbe81_dd19ae72","line":10,"range":{"start_line":10,"start_character":69,"end_line":10,"end_character":129},"in_reply_to":"3270f5e1_d849a700","updated":"2022-03-19 15:41:40.000000000","message":"Yes, I mentioned that in the last comment on this file.","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"94b529885413e902e35b6c212b17b9c8eec9531f","unresolved":false,"context_lines":[{"line_number":7,"context_line":""},{"line_number":8,"context_line":"{% for item in ironic_dnsmasq_dhcp_subnets %}"},{"line_number":9,"context_line":"{% if item.tag is defined and item.netmask is defined %}"},{"line_number":10,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.netmask }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":11,"context_line":"{% elif item.tag is defined %}"},{"line_number":12,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":13,"context_line":"{% else %}"}],"source_content_type":"text/x-jinja2","patch_set":7,"id":"d495598f_7d6de9fa","line":10,"range":{"start_line":10,"start_character":69,"end_line":10,"end_character":129},"in_reply_to":"765bbe81_dd19ae72","updated":"2022-04-13 18:42:30.000000000","message":"Done","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"ac82adbe581ff1fc202ae2bfb654d01405839dd1","unresolved":true,"context_lines":[{"line_number":7,"context_line":""},{"line_number":8,"context_line":"{% for item in ironic_dnsmasq_dhcp_subnets %}"},{"line_number":9,"context_line":"{% if item.tag is defined and item.netmask is defined %}"},{"line_number":10,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.netmask }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":11,"context_line":"{% elif item.tag is defined %}"},{"line_number":12,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":13,"context_line":"{% else %}"}],"source_content_type":"text/x-jinja2","patch_set":7,"id":"3270f5e1_d849a700","line":10,"range":{"start_line":10,"start_character":69,"end_line":10,"end_character":129},"in_reply_to":"e8903e97_0e5e9bfe","updated":"2022-03-19 15:06:18.000000000","message":"If we\u0027re redesigning this, I was going to propose building up a string using {% set %} and conditional appends.","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[{"line_number":11,"context_line":"{% elif item.tag is defined %}"},{"line_number":12,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":13,"context_line":"{% else %}"},{"line_number":14,"context_line":"dhcp-range\u003d{{ item.ip_range }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":15,"context_line":"{% endif %}"},{"line_number":16,"context_line":"{% if item.gateway is defined %}"},{"line_number":17,"context_line":"{% if item.tag is defined %}"}],"source_content_type":"text/x-jinja2","patch_set":7,"id":"a12325dd_0d2dfe5d","line":14,"range":{"start_line":14,"start_character":0,"end_line":14,"end_character":94},"updated":"2022-03-19 09:15:39.000000000","message":"what if I have a netmask but not tag? it will be silently ignored","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"94b529885413e902e35b6c212b17b9c8eec9531f","unresolved":false,"context_lines":[{"line_number":11,"context_line":"{% elif item.tag is defined %}"},{"line_number":12,"context_line":"dhcp-range\u003dset:{{ item.tag }},{{ item.ip_range }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":13,"context_line":"{% else %}"},{"line_number":14,"context_line":"dhcp-range\u003d{{ item.ip_range }},{{ item.lease_time | default(ironic_dnsmasq_dhcp_lease_time) }}"},{"line_number":15,"context_line":"{% endif %}"},{"line_number":16,"context_line":"{% if item.gateway is defined %}"},{"line_number":17,"context_line":"{% if item.tag is defined %}"}],"source_content_type":"text/x-jinja2","patch_set":7,"id":"3b0f87d6_316d8263","line":14,"range":{"start_line":14,"start_character":0,"end_line":14,"end_character":94},"in_reply_to":"a12325dd_0d2dfe5d","updated":"2022-04-13 18:42:30.000000000","message":"Done","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[{"line_number":20,"context_line":"dhcp-option\u003doption:router,{{ item.gateway }}"},{"line_number":21,"context_line":"{% endif %}{# tag #}"},{"line_number":22,"context_line":"{% endif %}{# gateway #}"},{"line_number":23,"context_line":"{% endfor %}"},{"line_number":24,"context_line":"dhcp-sequential-ip"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"{% if api_address_family \u003d\u003d \u0027ipv6\u0027 %}"}],"source_content_type":"text/x-jinja2","patch_set":7,"id":"a6f7e575_fb1abb30","line":23,"updated":"2022-03-19 09:15:39.000000000","message":"The above code can be improved, eliminating the bug above and need for complex \"if\" structures by using jinja2 vars - I suggest you set prefix for tag (if present else empty) and then infix for possible netmask.","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"94b529885413e902e35b6c212b17b9c8eec9531f","unresolved":false,"context_lines":[{"line_number":20,"context_line":"dhcp-option\u003doption:router,{{ item.gateway }}"},{"line_number":21,"context_line":"{% endif %}{# tag #}"},{"line_number":22,"context_line":"{% endif %}{# gateway #}"},{"line_number":23,"context_line":"{% endfor %}"},{"line_number":24,"context_line":"dhcp-sequential-ip"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"{% if api_address_family \u003d\u003d \u0027ipv6\u0027 %}"}],"source_content_type":"text/x-jinja2","patch_set":7,"id":"ade616ac_a3ae3ef6","line":23,"in_reply_to":"a6f7e575_fb1abb30","updated":"2022-04-13 18:42:30.000000000","message":"Done","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"}],"doc/source/reference/bare-metal/ironic-guide.rst":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"a80f6c58e8c8d1b013a972abd9ec66f06291ce82","unresolved":true,"context_lines":[{"line_number":30,"context_line":""},{"line_number":31,"context_line":".. code-block:: yaml"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"   ironic_dnsmasq_dhcp_subnets:"},{"line_number":34,"context_line":"     - ip_range: \"192.168.5.100,192.168.5.110\""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Defining additional subnets allow dnsmasq used by Ironic inspector to serve"},{"line_number":37,"context_line":"DHCP requests that came in via DHCP relay/helper. In such case each tagged"}],"source_content_type":"text/x-rst","patch_set":4,"id":"fb480070_ea4b2715","line":34,"range":{"start_line":33,"start_character":0,"end_line":34,"end_character":46},"updated":"2022-03-18 10:17:15.000000000","message":"Could you add a second example of a single subnet with a gateway?","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"04e357bac41ff7ada6bf43a8974c6d01686c76c3","unresolved":false,"context_lines":[{"line_number":30,"context_line":""},{"line_number":31,"context_line":".. code-block:: yaml"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"   ironic_dnsmasq_dhcp_subnets:"},{"line_number":34,"context_line":"     - ip_range: \"192.168.5.100,192.168.5.110\""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Defining additional subnets allow dnsmasq used by Ironic inspector to serve"},{"line_number":37,"context_line":"DHCP requests that came in via DHCP relay/helper. In such case each tagged"}],"source_content_type":"text/x-rst","patch_set":4,"id":"93eceb85_75124061","line":34,"range":{"start_line":33,"start_character":0,"end_line":34,"end_character":46},"in_reply_to":"fb480070_ea4b2715","updated":"2022-03-18 12:43:32.000000000","message":"Done","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"a80f6c58e8c8d1b013a972abd9ec66f06291ce82","unresolved":true,"context_lines":[{"line_number":33,"context_line":"   ironic_dnsmasq_dhcp_subnets:"},{"line_number":34,"context_line":"     - ip_range: \"192.168.5.100,192.168.5.110\""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Defining additional subnets allow dnsmasq used by Ironic inspector to serve"},{"line_number":37,"context_line":"DHCP requests that came in via DHCP relay/helper. In such case each tagged"},{"line_number":38,"context_line":"subnet should provide the netmask and gateway:"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"be30a9e6_1318f39d","line":36,"range":{"start_line":36,"start_character":28,"end_line":36,"end_character":33},"updated":"2022-03-18 10:17:15.000000000","message":"allows","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"04e357bac41ff7ada6bf43a8974c6d01686c76c3","unresolved":false,"context_lines":[{"line_number":33,"context_line":"   ironic_dnsmasq_dhcp_subnets:"},{"line_number":34,"context_line":"     - ip_range: \"192.168.5.100,192.168.5.110\""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Defining additional subnets allow dnsmasq used by Ironic inspector to serve"},{"line_number":37,"context_line":"DHCP requests that came in via DHCP relay/helper. In such case each tagged"},{"line_number":38,"context_line":"subnet should provide the netmask and gateway:"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"dccb132b_8576903d","line":36,"range":{"start_line":36,"start_character":28,"end_line":36,"end_character":33},"in_reply_to":"be30a9e6_1318f39d","updated":"2022-03-18 12:43:32.000000000","message":"Done","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"a80f6c58e8c8d1b013a972abd9ec66f06291ce82","unresolved":true,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Defining additional subnets allow dnsmasq used by Ironic inspector to serve"},{"line_number":37,"context_line":"DHCP requests that came in via DHCP relay/helper. In such case each tagged"},{"line_number":38,"context_line":"subnet should provide the netmask and gateway:"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":".. code-block:: yaml"},{"line_number":41,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"0a34039f_c54b3ec6","line":38,"updated":"2022-03-18 10:17:15.000000000","message":"If keeping the user defined tag, it should be mentioned here (and what it needs to be set to).","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"04e357bac41ff7ada6bf43a8974c6d01686c76c3","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Defining additional subnets allow dnsmasq used by Ironic inspector to serve"},{"line_number":37,"context_line":"DHCP requests that came in via DHCP relay/helper. In such case each tagged"},{"line_number":38,"context_line":"subnet should provide the netmask and gateway:"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":".. code-block:: yaml"},{"line_number":41,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"b5760d4a_dc8d9434","line":38,"in_reply_to":"0a34039f_c54b3ec6","updated":"2022-03-18 12:43:32.000000000","message":"Done","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[{"line_number":18,"context_line":"   enable_ironic: \"yes\""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"In the same file, define a network interface as the default NIC for dnsmasq and"},{"line_number":21,"context_line":"define a network to be used for the Ironic cleaning network:"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":".. code-block:: yaml"},{"line_number":24,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"776fc265_c77117df","line":21,"updated":"2022-03-19 09:15:39.000000000","message":"It makes more sense to move all dnsmasq vars away.","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"425abe2b754361a3c0942f384e0728d986fc5209","unresolved":true,"context_lines":[{"line_number":18,"context_line":"   enable_ironic: \"yes\""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"In the same file, define a network interface as the default NIC for dnsmasq and"},{"line_number":21,"context_line":"define a network to be used for the Ironic cleaning network:"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":".. code-block:: yaml"},{"line_number":24,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"fd146340_260e27aa","line":21,"in_reply_to":"776fc265_c77117df","updated":"2022-03-24 14:24:03.000000000","message":"this is nit","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"2e0e55de941d07f4469a512bea0c57043709791a","unresolved":false,"context_lines":[{"line_number":18,"context_line":"   enable_ironic: \"yes\""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"In the same file, define a network interface as the default NIC for dnsmasq and"},{"line_number":21,"context_line":"define a network to be used for the Ironic cleaning network:"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":".. code-block:: yaml"},{"line_number":24,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"5d50a3eb_ffeea2df","line":21,"in_reply_to":"fd146340_260e27aa","updated":"2022-04-07 20:59:29.000000000","message":"Ack","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[{"line_number":25,"context_line":"   ironic_dnsmasq_interface: \"eth1\""},{"line_number":26,"context_line":"   ironic_cleaning_network: \"public1\""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Finally, define at least one DHCP/BOOTP subnet with IP range for Ironic"},{"line_number":29,"context_line":"inspector:"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":".. code-block:: yaml"}],"source_content_type":"text/x-rst","patch_set":7,"id":"91a6314e_a43e8acc","line":28,"range":{"start_line":28,"start_character":33,"end_line":28,"end_character":39},"updated":"2022-03-19 09:15:39.000000000","message":"let\u0027s not mention this super legacy protocol","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"01828047b2d22c1b450598a160dbe0eac9950d90","unresolved":false,"context_lines":[{"line_number":25,"context_line":"   ironic_dnsmasq_interface: \"eth1\""},{"line_number":26,"context_line":"   ironic_cleaning_network: \"public1\""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Finally, define at least one DHCP/BOOTP subnet with IP range for Ironic"},{"line_number":29,"context_line":"inspector:"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":".. code-block:: yaml"}],"source_content_type":"text/x-rst","patch_set":7,"id":"71a1ad50_cf4a0900","line":28,"range":{"start_line":28,"start_character":33,"end_line":28,"end_character":39},"in_reply_to":"91a6314e_a43e8acc","updated":"2022-03-19 18:47:08.000000000","message":"Done","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[{"line_number":33,"context_line":"   ironic_dnsmasq_dhcp_subnets:"},{"line_number":34,"context_line":"     - ip_range: \"192.168.5.100,192.168.5.110\""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Another example of the single subnet with a gateway:"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":".. code-block:: yaml"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"826c05eb_defca7b8","line":36,"range":{"start_line":36,"start_character":19,"end_line":36,"end_character":23},"updated":"2022-03-19 09:15:39.000000000","message":"a","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"01828047b2d22c1b450598a160dbe0eac9950d90","unresolved":false,"context_lines":[{"line_number":33,"context_line":"   ironic_dnsmasq_dhcp_subnets:"},{"line_number":34,"context_line":"     - ip_range: \"192.168.5.100,192.168.5.110\""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Another example of the single subnet with a gateway:"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":".. code-block:: yaml"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"3e9dd41f_1b7ca1b0","line":36,"range":{"start_line":36,"start_character":19,"end_line":36,"end_character":23},"in_reply_to":"826c05eb_defca7b8","updated":"2022-03-19 18:47:08.000000000","message":"Done","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[{"line_number":42,"context_line":"       gateway: \"192.168.5.1\""},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Defining additional subnets allows dnsmasq used by Ironic inspector to serve"},{"line_number":45,"context_line":"DHCP requests that came in via DHCP relay/helper. In such case each tagged"},{"line_number":46,"context_line":"subnet should provide the netmask and gateway. The tag is a short name of the"},{"line_number":47,"context_line":"human-readable subnet name associated with a physical network:"},{"line_number":48,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"4169208e_3985fc93","line":45,"range":{"start_line":45,"start_character":62,"end_line":45,"end_character":63},"updated":"2022-03-19 09:15:39.000000000","message":",","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[{"line_number":42,"context_line":"       gateway: \"192.168.5.1\""},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Defining additional subnets allows dnsmasq used by Ironic inspector to serve"},{"line_number":45,"context_line":"DHCP requests that came in via DHCP relay/helper. In such case each tagged"},{"line_number":46,"context_line":"subnet should provide the netmask and gateway. The tag is a short name of the"},{"line_number":47,"context_line":"human-readable subnet name associated with a physical network:"},{"line_number":48,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"2b94a4f3_4d7d65e6","line":45,"range":{"start_line":45,"start_character":31,"end_line":45,"end_character":48},"updated":"2022-03-19 09:15:39.000000000","message":"DHCP relay is the proper term, let\u0027s not add alternatives to stop spreading their usage.","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"01828047b2d22c1b450598a160dbe0eac9950d90","unresolved":false,"context_lines":[{"line_number":42,"context_line":"       gateway: \"192.168.5.1\""},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Defining additional subnets allows dnsmasq used by Ironic inspector to serve"},{"line_number":45,"context_line":"DHCP requests that came in via DHCP relay/helper. In such case each tagged"},{"line_number":46,"context_line":"subnet should provide the netmask and gateway. The tag is a short name of the"},{"line_number":47,"context_line":"human-readable subnet name associated with a physical network:"},{"line_number":48,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"97156200_4d2d893b","line":45,"range":{"start_line":45,"start_character":31,"end_line":45,"end_character":48},"in_reply_to":"2b94a4f3_4d7d65e6","updated":"2022-03-19 18:47:08.000000000","message":"Done","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"01828047b2d22c1b450598a160dbe0eac9950d90","unresolved":false,"context_lines":[{"line_number":42,"context_line":"       gateway: \"192.168.5.1\""},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Defining additional subnets allows dnsmasq used by Ironic inspector to serve"},{"line_number":45,"context_line":"DHCP requests that came in via DHCP relay/helper. In such case each tagged"},{"line_number":46,"context_line":"subnet should provide the netmask and gateway. The tag is a short name of the"},{"line_number":47,"context_line":"human-readable subnet name associated with a physical network:"},{"line_number":48,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"21486a7a_2bcac8ff","line":45,"range":{"start_line":45,"start_character":62,"end_line":45,"end_character":63},"in_reply_to":"4169208e_3985fc93","updated":"2022-03-19 18:47:08.000000000","message":"Done","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[{"line_number":44,"context_line":"Defining additional subnets allows dnsmasq used by Ironic inspector to serve"},{"line_number":45,"context_line":"DHCP requests that came in via DHCP relay/helper. In such case each tagged"},{"line_number":46,"context_line":"subnet should provide the netmask and gateway. The tag is a short name of the"},{"line_number":47,"context_line":"human-readable subnet name associated with a physical network:"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":".. code-block:: yaml"},{"line_number":50,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"6ec8859c_a993be71","line":47,"updated":"2022-03-19 09:15:39.000000000","message":"Mention tags are required when at least one gateway is set and there are multiple subnets.","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"01828047b2d22c1b450598a160dbe0eac9950d90","unresolved":false,"context_lines":[{"line_number":44,"context_line":"Defining additional subnets allows dnsmasq used by Ironic inspector to serve"},{"line_number":45,"context_line":"DHCP requests that came in via DHCP relay/helper. In such case each tagged"},{"line_number":46,"context_line":"subnet should provide the netmask and gateway. The tag is a short name of the"},{"line_number":47,"context_line":"human-readable subnet name associated with a physical network:"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":".. code-block:: yaml"},{"line_number":50,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"1798860d_71e2c05d","line":47,"in_reply_to":"6ec8859c_a993be71","updated":"2022-03-19 18:47:08.000000000","message":"Done","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[{"line_number":58,"context_line":"      netmask: \"255.255.255.0\""},{"line_number":59,"context_line":"      gateway: \"192.168.6.1\""},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"The default lease time for each subnet can be configured globbaly via"},{"line_number":62,"context_line":"``ironic_dnsmasq_dhcp_lease_time`` variable or per subnet via ``lease_time``"},{"line_number":63,"context_line":"parameter."},{"line_number":64,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"50ee7378_c9c71afb","line":61,"range":{"start_line":61,"start_character":57,"end_line":61,"end_character":66},"updated":"2022-03-19 09:15:39.000000000","message":"globally","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"01828047b2d22c1b450598a160dbe0eac9950d90","unresolved":false,"context_lines":[{"line_number":58,"context_line":"      netmask: \"255.255.255.0\""},{"line_number":59,"context_line":"      gateway: \"192.168.6.1\""},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"The default lease time for each subnet can be configured globbaly via"},{"line_number":62,"context_line":"``ironic_dnsmasq_dhcp_lease_time`` variable or per subnet via ``lease_time``"},{"line_number":63,"context_line":"parameter."},{"line_number":64,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"05de06df_d95eb189","line":61,"range":{"start_line":61,"start_character":57,"end_line":61,"end_character":66},"in_reply_to":"50ee7378_c9c71afb","updated":"2022-03-19 18:47:08.000000000","message":"Done","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"01a4c841800b206423672aa9434973020af4f2d9","unresolved":true,"context_lines":[{"line_number":58,"context_line":""},{"line_number":59,"context_line":"  ironic_dnsmasq_dhcp_ranges:"},{"line_number":60,"context_line":"    - range: \"192.168.5.100,192.168.5.110\""},{"line_number":61,"context_line":"    - 192.168.6.1: \"192.168.6.100,192.168.6.110,255.255.255.0\""},{"line_number":62,"context_line":"      routers: \"192.168.6.1\""},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"The default lease time for each range can be configured globally via"}],"source_content_type":"text/x-rst","patch_set":11,"id":"c5ce4224_da43ea00","line":61,"updated":"2022-04-13 19:14:06.000000000","message":"something wired","commit_id":"5b829f9460765b04713df9ba786bd22a41acfadd"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"e23a0614ecf2578fb790f3c84b28279776d9654a","unresolved":false,"context_lines":[{"line_number":58,"context_line":""},{"line_number":59,"context_line":"  ironic_dnsmasq_dhcp_ranges:"},{"line_number":60,"context_line":"    - range: \"192.168.5.100,192.168.5.110\""},{"line_number":61,"context_line":"    - 192.168.6.1: \"192.168.6.100,192.168.6.110,255.255.255.0\""},{"line_number":62,"context_line":"      routers: \"192.168.6.1\""},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"The default lease time for each range can be configured globally via"}],"source_content_type":"text/x-rst","patch_set":11,"id":"43dbd96b_ccc95b95","line":61,"in_reply_to":"927d65f1_7bd7ddde","updated":"2022-04-13 19:26:44.000000000","message":"Done","commit_id":"5b829f9460765b04713df9ba786bd22a41acfadd"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"199ac1a190eb8b514c8a1740e3b56494de967830","unresolved":false,"context_lines":[{"line_number":58,"context_line":""},{"line_number":59,"context_line":"  ironic_dnsmasq_dhcp_ranges:"},{"line_number":60,"context_line":"    - range: \"192.168.5.100,192.168.5.110\""},{"line_number":61,"context_line":"    - 192.168.6.1: \"192.168.6.100,192.168.6.110,255.255.255.0\""},{"line_number":62,"context_line":"      routers: \"192.168.6.1\""},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"The default lease time for each range can be configured globally via"}],"source_content_type":"text/x-rst","patch_set":11,"id":"153bde0a_0fed21f0","line":61,"in_reply_to":"9814b8f4_fe2a6e3c","updated":"2022-04-13 19:56:09.000000000","message":"Ack","commit_id":"5b829f9460765b04713df9ba786bd22a41acfadd"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"94147323e6f4fccf686ee9fd514b01c076aa54b0","unresolved":true,"context_lines":[{"line_number":58,"context_line":""},{"line_number":59,"context_line":"  ironic_dnsmasq_dhcp_ranges:"},{"line_number":60,"context_line":"    - range: \"192.168.5.100,192.168.5.110\""},{"line_number":61,"context_line":"    - 192.168.6.1: \"192.168.6.100,192.168.6.110,255.255.255.0\""},{"line_number":62,"context_line":"      routers: \"192.168.6.1\""},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"The default lease time for each range can be configured globally via"}],"source_content_type":"text/x-rst","patch_set":11,"id":"927d65f1_7bd7ddde","line":61,"in_reply_to":"c5ce4224_da43ea00","updated":"2022-04-13 19:26:12.000000000","message":"good catch, possibly some keyboard shortcut went wrong","commit_id":"5b829f9460765b04713df9ba786bd22a41acfadd"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"244ae764205fa8deedc4cfff6eef329093a0f50c","unresolved":true,"context_lines":[{"line_number":58,"context_line":""},{"line_number":59,"context_line":"  ironic_dnsmasq_dhcp_ranges:"},{"line_number":60,"context_line":"    - range: \"192.168.5.100,192.168.5.110\""},{"line_number":61,"context_line":"    - 192.168.6.1: \"192.168.6.100,192.168.6.110,255.255.255.0\""},{"line_number":62,"context_line":"      routers: \"192.168.6.1\""},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"The default lease time for each range can be configured globally via"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9814b8f4_fe2a6e3c","line":61,"in_reply_to":"c5ce4224_da43ea00","updated":"2022-04-13 19:27:16.000000000","message":"we use item.range, but here \u0027192.168.6.1\u0027 as a key. this don\u0027t work!","commit_id":"5b829f9460765b04713df9ba786bd22a41acfadd"}],"etc/kolla/globals.yml":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"a80f6c58e8c8d1b013a972abd9ec66f06291ce82","unresolved":true,"context_lines":[{"line_number":601,"context_line":"#   ip_range: 192.168.0.10,192.168.0.100"},{"line_number":602,"context_line":"#   netmask: 255.255.255.0"},{"line_number":603,"context_line":"#   gateway: 192.168.0.1"},{"line_number":604,"context_line":"# where the netmask and gateway may be omited."},{"line_number":605,"context_line":"#ironic_dnsmasq_dhcp_subnets:"},{"line_number":606,"context_line":"# PXE bootloader file for Ironic Inspector, relative to /tftpboot."},{"line_number":607,"context_line":"#ironic_dnsmasq_boot_file: \"pxelinux.0\""}],"source_content_type":"text/x-yaml","patch_set":4,"id":"8d20a7a0_f5e362f5","line":604,"range":{"start_line":604,"start_character":12,"end_line":604,"end_character":32},"updated":"2022-03-18 10:17:15.000000000","message":"and tag?","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"a80f6c58e8c8d1b013a972abd9ec66f06291ce82","unresolved":true,"context_lines":[{"line_number":601,"context_line":"#   ip_range: 192.168.0.10,192.168.0.100"},{"line_number":602,"context_line":"#   netmask: 255.255.255.0"},{"line_number":603,"context_line":"#   gateway: 192.168.0.1"},{"line_number":604,"context_line":"# where the netmask and gateway may be omited."},{"line_number":605,"context_line":"#ironic_dnsmasq_dhcp_subnets:"},{"line_number":606,"context_line":"# PXE bootloader file for Ironic Inspector, relative to /tftpboot."},{"line_number":607,"context_line":"#ironic_dnsmasq_boot_file: \"pxelinux.0\""}],"source_content_type":"text/x-yaml","patch_set":4,"id":"f73b69eb_384efe01","line":604,"range":{"start_line":604,"start_character":39,"end_line":604,"end_character":45},"updated":"2022-03-18 10:17:15.000000000","message":"omitted","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"04e357bac41ff7ada6bf43a8974c6d01686c76c3","unresolved":false,"context_lines":[{"line_number":601,"context_line":"#   ip_range: 192.168.0.10,192.168.0.100"},{"line_number":602,"context_line":"#   netmask: 255.255.255.0"},{"line_number":603,"context_line":"#   gateway: 192.168.0.1"},{"line_number":604,"context_line":"# where the netmask and gateway may be omited."},{"line_number":605,"context_line":"#ironic_dnsmasq_dhcp_subnets:"},{"line_number":606,"context_line":"# PXE bootloader file for Ironic Inspector, relative to /tftpboot."},{"line_number":607,"context_line":"#ironic_dnsmasq_boot_file: \"pxelinux.0\""}],"source_content_type":"text/x-yaml","patch_set":4,"id":"60379aaf_7b6685b9","line":604,"range":{"start_line":604,"start_character":12,"end_line":604,"end_character":32},"in_reply_to":"8d20a7a0_f5e362f5","updated":"2022-03-18 12:43:32.000000000","message":"Done","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"04e357bac41ff7ada6bf43a8974c6d01686c76c3","unresolved":false,"context_lines":[{"line_number":601,"context_line":"#   ip_range: 192.168.0.10,192.168.0.100"},{"line_number":602,"context_line":"#   netmask: 255.255.255.0"},{"line_number":603,"context_line":"#   gateway: 192.168.0.1"},{"line_number":604,"context_line":"# where the netmask and gateway may be omited."},{"line_number":605,"context_line":"#ironic_dnsmasq_dhcp_subnets:"},{"line_number":606,"context_line":"# PXE bootloader file for Ironic Inspector, relative to /tftpboot."},{"line_number":607,"context_line":"#ironic_dnsmasq_boot_file: \"pxelinux.0\""}],"source_content_type":"text/x-yaml","patch_set":4,"id":"33188756_7b445f74","line":604,"range":{"start_line":604,"start_character":39,"end_line":604,"end_character":45},"in_reply_to":"f73b69eb_384efe01","updated":"2022-03-18 12:43:32.000000000","message":"Done","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[{"line_number":598,"context_line":"# dnsmasq bind interface for Ironic Inspector, by default is network_interface"},{"line_number":599,"context_line":"#ironic_dnsmasq_interface: \"{{ network_interface }}\""},{"line_number":600,"context_line":"# The following value must be set when enabling ironic, the value format is a"},{"line_number":601,"context_line":"# list of the named subnets and at least one must be configured for example"},{"line_number":602,"context_line":"# - tag: \"subnet1\""},{"line_number":603,"context_line":"#   ip_range: 192.168.0.10,192.168.0.100"},{"line_number":604,"context_line":"#   netmask: 255.255.255.0"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"973948a1_5a2c0db2","line":601,"range":{"start_line":601,"start_character":63,"end_line":601,"end_character":75},"updated":"2022-03-19 09:15:39.000000000","message":", for example:","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[{"line_number":598,"context_line":"# dnsmasq bind interface for Ironic Inspector, by default is network_interface"},{"line_number":599,"context_line":"#ironic_dnsmasq_interface: \"{{ network_interface }}\""},{"line_number":600,"context_line":"# The following value must be set when enabling ironic, the value format is a"},{"line_number":601,"context_line":"# list of the named subnets and at least one must be configured for example"},{"line_number":602,"context_line":"# - tag: \"subnet1\""},{"line_number":603,"context_line":"#   ip_range: 192.168.0.10,192.168.0.100"},{"line_number":604,"context_line":"#   netmask: 255.255.255.0"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"00fedf64_5242b7b9","line":601,"range":{"start_line":601,"start_character":10,"end_line":601,"end_character":14},"updated":"2022-03-19 09:15:39.000000000","message":"drop \"the\"","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"01828047b2d22c1b450598a160dbe0eac9950d90","unresolved":false,"context_lines":[{"line_number":598,"context_line":"# dnsmasq bind interface for Ironic Inspector, by default is network_interface"},{"line_number":599,"context_line":"#ironic_dnsmasq_interface: \"{{ network_interface }}\""},{"line_number":600,"context_line":"# The following value must be set when enabling ironic, the value format is a"},{"line_number":601,"context_line":"# list of the named subnets and at least one must be configured for example"},{"line_number":602,"context_line":"# - tag: \"subnet1\""},{"line_number":603,"context_line":"#   ip_range: 192.168.0.10,192.168.0.100"},{"line_number":604,"context_line":"#   netmask: 255.255.255.0"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"146a5d0e_90bc3a5e","line":601,"range":{"start_line":601,"start_character":10,"end_line":601,"end_character":14},"in_reply_to":"00fedf64_5242b7b9","updated":"2022-03-19 18:47:08.000000000","message":"Done","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"01828047b2d22c1b450598a160dbe0eac9950d90","unresolved":false,"context_lines":[{"line_number":598,"context_line":"# dnsmasq bind interface for Ironic Inspector, by default is network_interface"},{"line_number":599,"context_line":"#ironic_dnsmasq_interface: \"{{ network_interface }}\""},{"line_number":600,"context_line":"# The following value must be set when enabling ironic, the value format is a"},{"line_number":601,"context_line":"# list of the named subnets and at least one must be configured for example"},{"line_number":602,"context_line":"# - tag: \"subnet1\""},{"line_number":603,"context_line":"#   ip_range: 192.168.0.10,192.168.0.100"},{"line_number":604,"context_line":"#   netmask: 255.255.255.0"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"92505a84_02d4e3e9","line":601,"range":{"start_line":601,"start_character":63,"end_line":601,"end_character":75},"in_reply_to":"973948a1_5a2c0db2","updated":"2022-03-19 18:47:08.000000000","message":"Done","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[{"line_number":603,"context_line":"#   ip_range: 192.168.0.10,192.168.0.100"},{"line_number":604,"context_line":"#   netmask: 255.255.255.0"},{"line_number":605,"context_line":"#   gateway: 192.168.0.1"},{"line_number":606,"context_line":"# where the tag, netmask and gateway may be omitted."},{"line_number":607,"context_line":"#ironic_dnsmasq_dhcp_subnets:"},{"line_number":608,"context_line":"# PXE bootloader file for Ironic Inspector, relative to /tftpboot."},{"line_number":609,"context_line":"#ironic_dnsmasq_boot_file: \"pxelinux.0\""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"8f790aee_85c16b45","line":606,"range":{"start_line":606,"start_character":12,"end_line":606,"end_character":15},"updated":"2022-03-19 09:15:39.000000000","message":"could use explaining what the tag means","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"01828047b2d22c1b450598a160dbe0eac9950d90","unresolved":false,"context_lines":[{"line_number":603,"context_line":"#   ip_range: 192.168.0.10,192.168.0.100"},{"line_number":604,"context_line":"#   netmask: 255.255.255.0"},{"line_number":605,"context_line":"#   gateway: 192.168.0.1"},{"line_number":606,"context_line":"# where the tag, netmask and gateway may be omitted."},{"line_number":607,"context_line":"#ironic_dnsmasq_dhcp_subnets:"},{"line_number":608,"context_line":"# PXE bootloader file for Ironic Inspector, relative to /tftpboot."},{"line_number":609,"context_line":"#ironic_dnsmasq_boot_file: \"pxelinux.0\""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"b2eb64b1_f716353f","line":606,"range":{"start_line":606,"start_character":12,"end_line":606,"end_character":15},"in_reply_to":"8f790aee_85c16b45","updated":"2022-03-19 18:47:08.000000000","message":"Done","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"425abe2b754361a3c0942f384e0728d986fc5209","unresolved":true,"context_lines":[{"line_number":598,"context_line":"# dnsmasq bind interface for Ironic Inspector, by default is network_interface"},{"line_number":599,"context_line":"#ironic_dnsmasq_interface: \"{{ network_interface }}\""},{"line_number":600,"context_line":"# The following value must be set when enabling ironic, the value format is a"},{"line_number":601,"context_line":"# list of named subnets and at least one must be configured, for example"},{"line_number":602,"context_line":"# - tag: \"subnet1\""},{"line_number":603,"context_line":"#   ip_range: 192.168.0.10,192.168.0.100"},{"line_number":604,"context_line":"#   netmask: 255.255.255.0"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"d60e5ff5_815c1c05","line":601,"updated":"2022-03-24 14:24:03.000000000","message":"nit: still missing a colon at the end (to introduce the example)","commit_id":"6a37d5c177bc145daaead78cc2ae4ce3f568004c"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"2e0e55de941d07f4469a512bea0c57043709791a","unresolved":false,"context_lines":[{"line_number":598,"context_line":"# dnsmasq bind interface for Ironic Inspector, by default is network_interface"},{"line_number":599,"context_line":"#ironic_dnsmasq_interface: \"{{ network_interface }}\""},{"line_number":600,"context_line":"# The following value must be set when enabling ironic, the value format is a"},{"line_number":601,"context_line":"# list of named subnets and at least one must be configured, for example"},{"line_number":602,"context_line":"# - tag: \"subnet1\""},{"line_number":603,"context_line":"#   ip_range: 192.168.0.10,192.168.0.100"},{"line_number":604,"context_line":"#   netmask: 255.255.255.0"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"0b5b88b1_299b23c3","line":601,"in_reply_to":"d60e5ff5_815c1c05","updated":"2022-04-07 20:59:29.000000000","message":"Ack","commit_id":"6a37d5c177bc145daaead78cc2ae4ce3f568004c"}],"releasenotes/notes/ironic-inspector-routed-networks-b7c734d38b90c331.yaml":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"a80f6c58e8c8d1b013a972abd9ec66f06291ce82","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Assigning additional subnets allows dnsmasq to serve DHCP requests that"},{"line_number":5,"context_line":"    came in via DHCP relay/helper. The new parameter"},{"line_number":6,"context_line":"    \u0027ironic_dnsmasq_dhcp_subnets\u0027 enable the configuration of the corresponding"},{"line_number":7,"context_line":"    \u0027dhcp-range\u0027 and \u0027dhcp-option\u0027 blocks for multiple subnets in dnsmasq."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"    Example::"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"      ironic_dnsmasq_dhcp_subnets:"},{"line_number":12,"context_line":"        - tag: \"subnet1\""},{"line_number":13,"context_line":"          ip_range: \"192.168.5.100,192.168.5.110\""},{"line_number":14,"context_line":"          netmask: \"255.255.255.0\""},{"line_number":15,"context_line":"          gateway: \"192.168.5.1\""},{"line_number":16,"context_line":"        - tag: \"subnet2\""},{"line_number":17,"context_line":"          ip_range: \"192.168.6.100,192.168.6.110\""},{"line_number":18,"context_line":"          netmask: \"255.255.255.0\""},{"line_number":19,"context_line":"          gateway: \"192.168.6.1\""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    For now \u0027dhcp-range\u0027 settings are configured with new default 10 minutes"},{"line_number":22,"context_line":"    lease time value which is small enough to use small polls of IPs for"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"6163805e_071d16d3","line":19,"range":{"start_line":4,"start_character":0,"end_line":19,"end_character":32},"updated":"2022-03-18 10:17:15.000000000","message":"This is more detail than we normally include for a feature reno - save it for docs.\n\n\"Adds support for multiple DHCP subnets in the Ironic Inspector DHCP server.\"","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"04e357bac41ff7ada6bf43a8974c6d01686c76c3","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Assigning additional subnets allows dnsmasq to serve DHCP requests that"},{"line_number":5,"context_line":"    came in via DHCP relay/helper. The new parameter"},{"line_number":6,"context_line":"    \u0027ironic_dnsmasq_dhcp_subnets\u0027 enable the configuration of the corresponding"},{"line_number":7,"context_line":"    \u0027dhcp-range\u0027 and \u0027dhcp-option\u0027 blocks for multiple subnets in dnsmasq."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"    Example::"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"      ironic_dnsmasq_dhcp_subnets:"},{"line_number":12,"context_line":"        - tag: \"subnet1\""},{"line_number":13,"context_line":"          ip_range: \"192.168.5.100,192.168.5.110\""},{"line_number":14,"context_line":"          netmask: \"255.255.255.0\""},{"line_number":15,"context_line":"          gateway: \"192.168.5.1\""},{"line_number":16,"context_line":"        - tag: \"subnet2\""},{"line_number":17,"context_line":"          ip_range: \"192.168.6.100,192.168.6.110\""},{"line_number":18,"context_line":"          netmask: \"255.255.255.0\""},{"line_number":19,"context_line":"          gateway: \"192.168.6.1\""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    For now \u0027dhcp-range\u0027 settings are configured with new default 10 minutes"},{"line_number":22,"context_line":"    lease time value which is small enough to use small polls of IPs for"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"56833cbb_358c00bb","line":19,"range":{"start_line":4,"start_character":0,"end_line":19,"end_character":32},"in_reply_to":"6163805e_071d16d3","updated":"2022-03-18 12:43:32.000000000","message":"Done","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"a80f6c58e8c8d1b013a972abd9ec66f06291ce82","unresolved":true,"context_lines":[{"line_number":18,"context_line":"          netmask: \"255.255.255.0\""},{"line_number":19,"context_line":"          gateway: \"192.168.6.1\""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    For now \u0027dhcp-range\u0027 settings are configured with new default 10 minutes"},{"line_number":22,"context_line":"    lease time value which is small enough to use small polls of IPs for"},{"line_number":23,"context_line":"    inspection. This default can be changed globbaly via"},{"line_number":24,"context_line":"    \"ironic_dnsmasq_dhcp_lease_time\" variable or per subnet via \"lease_time\""},{"line_number":25,"context_line":"    parameter."},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"deprecations:"},{"line_number":28,"context_line":"  - |"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"8ce79b0e_235afeba","line":25,"range":{"start_line":21,"start_character":0,"end_line":25,"end_character":14},"updated":"2022-03-18 10:17:15.000000000","message":"This should be an upgrade note:\n\n\"Modifies the default lease time of the Ironic Inspector DHCP server to 10 minutes. This is small enough to use small pools of IPs for inspection. This default can be changed globally via \"ironic_dnsmasq_dhcp_lease_time\" variable or per subnet via \"lease_time\" parameter.","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"125e9db97da27bcb1a7a8194206837efcfccfe12","unresolved":false,"context_lines":[{"line_number":18,"context_line":"          netmask: \"255.255.255.0\""},{"line_number":19,"context_line":"          gateway: \"192.168.6.1\""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    For now \u0027dhcp-range\u0027 settings are configured with new default 10 minutes"},{"line_number":22,"context_line":"    lease time value which is small enough to use small polls of IPs for"},{"line_number":23,"context_line":"    inspection. This default can be changed globbaly via"},{"line_number":24,"context_line":"    \"ironic_dnsmasq_dhcp_lease_time\" variable or per subnet via \"lease_time\""},{"line_number":25,"context_line":"    parameter."},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"deprecations:"},{"line_number":28,"context_line":"  - |"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"1e5d5cda_45ed530e","line":25,"range":{"start_line":21,"start_character":0,"end_line":25,"end_character":14},"in_reply_to":"0551a1ff_96230278","updated":"2022-03-18 13:43:48.000000000","message":"The upgrade section should include changes to default values or behaviour. Anything that might require action from the operator.","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"9682f87f8cf464c9806db66718148467082f860b","unresolved":false,"context_lines":[{"line_number":18,"context_line":"          netmask: \"255.255.255.0\""},{"line_number":19,"context_line":"          gateway: \"192.168.6.1\""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    For now \u0027dhcp-range\u0027 settings are configured with new default 10 minutes"},{"line_number":22,"context_line":"    lease time value which is small enough to use small polls of IPs for"},{"line_number":23,"context_line":"    inspection. This default can be changed globbaly via"},{"line_number":24,"context_line":"    \"ironic_dnsmasq_dhcp_lease_time\" variable or per subnet via \"lease_time\""},{"line_number":25,"context_line":"    parameter."},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"deprecations:"},{"line_number":28,"context_line":"  - |"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"959e16b3_e2b15a2e","line":25,"range":{"start_line":21,"start_character":0,"end_line":25,"end_character":14},"in_reply_to":"1e5d5cda_45ed530e","updated":"2022-03-18 14:59:09.000000000","message":"ok. simple move the paragraph to the upgrade section enough?","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"04e357bac41ff7ada6bf43a8974c6d01686c76c3","unresolved":false,"context_lines":[{"line_number":18,"context_line":"          netmask: \"255.255.255.0\""},{"line_number":19,"context_line":"          gateway: \"192.168.6.1\""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    For now \u0027dhcp-range\u0027 settings are configured with new default 10 minutes"},{"line_number":22,"context_line":"    lease time value which is small enough to use small polls of IPs for"},{"line_number":23,"context_line":"    inspection. This default can be changed globbaly via"},{"line_number":24,"context_line":"    \"ironic_dnsmasq_dhcp_lease_time\" variable or per subnet via \"lease_time\""},{"line_number":25,"context_line":"    parameter."},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"deprecations:"},{"line_number":28,"context_line":"  - |"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"0551a1ff_96230278","line":25,"range":{"start_line":21,"start_character":0,"end_line":25,"end_character":14},"in_reply_to":"8ce79b0e_235afeba","updated":"2022-03-18 12:43:32.000000000","message":"Preserve Your note, but leave it in the features section, the upgrade section contain only clear instruction for upgrade procedure.","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"a80f6c58e8c8d1b013a972abd9ec66f06291ce82","unresolved":true,"context_lines":[{"line_number":24,"context_line":"    \"ironic_dnsmasq_dhcp_lease_time\" variable or per subnet via \"lease_time\""},{"line_number":25,"context_line":"    parameter."},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"deprecations:"},{"line_number":28,"context_line":"  - |"},{"line_number":29,"context_line":"    Both \"ironic_dnsmasq_dhcp_range\" and \"ironic_dnsmasq_default_gateway\""},{"line_number":30,"context_line":"    parameters are deprecated in favor of \"ironic_dnsmasq_dhcp_subnets\"."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"upgrade:"},{"line_number":33,"context_line":"  - |"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"83722080_2bc07e28","line":30,"range":{"start_line":27,"start_character":0,"end_line":30,"end_character":72},"updated":"2022-03-18 10:17:15.000000000","message":"It\u0027s not deprecated, it\u0027s removed. The removal is covered by the upgrade note.","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"04e357bac41ff7ada6bf43a8974c6d01686c76c3","unresolved":false,"context_lines":[{"line_number":24,"context_line":"    \"ironic_dnsmasq_dhcp_lease_time\" variable or per subnet via \"lease_time\""},{"line_number":25,"context_line":"    parameter."},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"deprecations:"},{"line_number":28,"context_line":"  - |"},{"line_number":29,"context_line":"    Both \"ironic_dnsmasq_dhcp_range\" and \"ironic_dnsmasq_default_gateway\""},{"line_number":30,"context_line":"    parameters are deprecated in favor of \"ironic_dnsmasq_dhcp_subnets\"."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"upgrade:"},{"line_number":33,"context_line":"  - |"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"7c7e4645_7841aa3b","line":30,"range":{"start_line":27,"start_character":0,"end_line":30,"end_character":72},"in_reply_to":"83722080_2bc07e28","updated":"2022-03-18 12:43:32.000000000","message":"Done","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"a80f6c58e8c8d1b013a972abd9ec66f06291ce82","unresolved":true,"context_lines":[{"line_number":41,"context_line":"    replace with::"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"      ironic_dnsmasq_dhcp_subnets:"},{"line_number":44,"context_line":"        - tag: \"subnet1\""},{"line_number":45,"context_line":"          ip_range: \"10.42.0.2,10.42.0.254\""},{"line_number":46,"context_line":"          netmask: \"255.255.255.0\""},{"line_number":47,"context_line":"          gateway: \"10.42.0.1\""}],"source_content_type":"text/x-yaml","patch_set":4,"id":"d80d3475_a76d28a5","line":44,"range":{"start_line":44,"start_character":10,"end_line":44,"end_character":24},"updated":"2022-03-18 10:17:15.000000000","message":"Tag not required?","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"04e357bac41ff7ada6bf43a8974c6d01686c76c3","unresolved":false,"context_lines":[{"line_number":41,"context_line":"    replace with::"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"      ironic_dnsmasq_dhcp_subnets:"},{"line_number":44,"context_line":"        - tag: \"subnet1\""},{"line_number":45,"context_line":"          ip_range: \"10.42.0.2,10.42.0.254\""},{"line_number":46,"context_line":"          netmask: \"255.255.255.0\""},{"line_number":47,"context_line":"          gateway: \"10.42.0.1\""}],"source_content_type":"text/x-yaml","patch_set":4,"id":"c6dc4331_903fca2b","line":44,"range":{"start_line":44,"start_character":10,"end_line":44,"end_character":24},"in_reply_to":"d80d3475_a76d28a5","updated":"2022-03-18 12:43:32.000000000","message":"yep.","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"a80f6c58e8c8d1b013a972abd9ec66f06291ce82","unresolved":true,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"upgrade:"},{"line_number":33,"context_line":"  - |"},{"line_number":34,"context_line":"    Replace usage of \"ironic_dnsmasq_dhcp_range\" together with"},{"line_number":35,"context_line":"    \"ironic_dnsmasq_default_gateway\" to \"ironic_dnsmasq_dhcp_subnets\"."},{"line_number":36,"context_line":"    For example, if you have::"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"      ironic_dnsmasq_dhcp_range: \"10.42.0.2,10.42.0.254,255.255.255.0\""},{"line_number":39,"context_line":"      ironic_dnsmasq_default_gateway: \"10.42.0.1\""},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    replace with::"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"      ironic_dnsmasq_dhcp_subnets:"},{"line_number":44,"context_line":"        - tag: \"subnet1\""},{"line_number":45,"context_line":"          ip_range: \"10.42.0.2,10.42.0.254\""},{"line_number":46,"context_line":"          netmask: \"255.255.255.0\""},{"line_number":47,"context_line":"          gateway: \"10.42.0.1\""}],"source_content_type":"text/x-yaml","patch_set":4,"id":"1ff0ab9a_735ca17b","line":47,"range":{"start_line":34,"start_character":0,"end_line":47,"end_character":30},"updated":"2022-03-18 10:17:15.000000000","message":"Nice clear instructions.","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"04e357bac41ff7ada6bf43a8974c6d01686c76c3","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"upgrade:"},{"line_number":33,"context_line":"  - |"},{"line_number":34,"context_line":"    Replace usage of \"ironic_dnsmasq_dhcp_range\" together with"},{"line_number":35,"context_line":"    \"ironic_dnsmasq_default_gateway\" to \"ironic_dnsmasq_dhcp_subnets\"."},{"line_number":36,"context_line":"    For example, if you have::"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"      ironic_dnsmasq_dhcp_range: \"10.42.0.2,10.42.0.254,255.255.255.0\""},{"line_number":39,"context_line":"      ironic_dnsmasq_default_gateway: \"10.42.0.1\""},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    replace with::"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"      ironic_dnsmasq_dhcp_subnets:"},{"line_number":44,"context_line":"        - tag: \"subnet1\""},{"line_number":45,"context_line":"          ip_range: \"10.42.0.2,10.42.0.254\""},{"line_number":46,"context_line":"          netmask: \"255.255.255.0\""},{"line_number":47,"context_line":"          gateway: \"10.42.0.1\""}],"source_content_type":"text/x-yaml","patch_set":4,"id":"7da327f0_17424cb6","line":47,"range":{"start_line":34,"start_character":0,"end_line":47,"end_character":30},"in_reply_to":"1ff0ab9a_735ca17b","updated":"2022-03-18 12:43:32.000000000","message":"Done","commit_id":"42729df2d84e9c781661474f9cff76ea84ee28e8"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[{"line_number":6,"context_line":"upgrade:"},{"line_number":7,"context_line":"  - |"},{"line_number":8,"context_line":"    Modifies the default lease time of the Ironic Inspector DHCP server to 10"},{"line_number":9,"context_line":"    minutes. This is small enough to use small pools of IPs for inspection."},{"line_number":10,"context_line":"    This default can be changed globally via \"ironic_dnsmasq_dhcp_lease_time\""},{"line_number":11,"context_line":"    variable or per subnet via \"lease_time\" parameter."},{"line_number":12,"context_line":"  - |"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"02b90299_e59c2143","line":9,"range":{"start_line":9,"start_character":56,"end_line":9,"end_character":60},"updated":"2022-03-19 09:15:39.000000000","message":"IP addresses","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"425abe2b754361a3c0942f384e0728d986fc5209","unresolved":false,"context_lines":[{"line_number":6,"context_line":"upgrade:"},{"line_number":7,"context_line":"  - |"},{"line_number":8,"context_line":"    Modifies the default lease time of the Ironic Inspector DHCP server to 10"},{"line_number":9,"context_line":"    minutes. This is small enough to use small pools of IPs for inspection."},{"line_number":10,"context_line":"    This default can be changed globally via \"ironic_dnsmasq_dhcp_lease_time\""},{"line_number":11,"context_line":"    variable or per subnet via \"lease_time\" parameter."},{"line_number":12,"context_line":"  - |"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"73a299d3_0bf5855b","line":9,"range":{"start_line":9,"start_character":56,"end_line":9,"end_character":60},"in_reply_to":"02b90299_e59c2143","updated":"2022-03-24 14:24:03.000000000","message":"Done","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"80c3dfeca931434eaad11170fb5a3c50f64ffd1a","unresolved":true,"context_lines":[{"line_number":7,"context_line":"  - |"},{"line_number":8,"context_line":"    Modifies the default lease time of the Ironic Inspector DHCP server to 10"},{"line_number":9,"context_line":"    minutes. This is small enough to use small pools of IPs for inspection."},{"line_number":10,"context_line":"    This default can be changed globally via \"ironic_dnsmasq_dhcp_lease_time\""},{"line_number":11,"context_line":"    variable or per subnet via \"lease_time\" parameter."},{"line_number":12,"context_line":"  - |"},{"line_number":13,"context_line":"    Replace usage of \"ironic_dnsmasq_dhcp_range\" together with"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"dc4e0b06_e0e6093e","line":10,"range":{"start_line":10,"start_character":45,"end_line":10,"end_character":46},"updated":"2022-03-19 09:15:39.000000000","message":"please use `` instead of \" (ditto all over the reno)","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"01828047b2d22c1b450598a160dbe0eac9950d90","unresolved":false,"context_lines":[{"line_number":7,"context_line":"  - |"},{"line_number":8,"context_line":"    Modifies the default lease time of the Ironic Inspector DHCP server to 10"},{"line_number":9,"context_line":"    minutes. This is small enough to use small pools of IPs for inspection."},{"line_number":10,"context_line":"    This default can be changed globally via \"ironic_dnsmasq_dhcp_lease_time\""},{"line_number":11,"context_line":"    variable or per subnet via \"lease_time\" parameter."},{"line_number":12,"context_line":"  - |"},{"line_number":13,"context_line":"    Replace usage of \"ironic_dnsmasq_dhcp_range\" together with"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"82aca6f1_baf954e7","line":10,"range":{"start_line":10,"start_character":45,"end_line":10,"end_character":46},"in_reply_to":"dc4e0b06_e0e6093e","updated":"2022-03-19 18:47:08.000000000","message":"Done","commit_id":"dabed869334b576ef30e7bf5e2e17734fe84e774"}]}
