)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"ad52d1750be2a6b14e9097cd4b2dfa8d0f2a5b16","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"7891010a_76d34b94","updated":"2023-08-30 15:55:46.000000000","message":"you propose solution depended on Kolla/Kolla-Ansible deploys, so this should be fixed in these projects.","commit_id":"f666c2a609f1b1cd0fd87ac5dac604ffa2a9671c"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"4b570e5a9185df92a7e288a23fd864dfe485b197","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"87682a6e_58d392b9","in_reply_to":"7891010a_76d34b94","updated":"2023-08-31 07:37:51.000000000","message":"Imo lack of log rotation will be a problem regardless of what deployment method will be used. Log location can be variablized.","commit_id":"f666c2a609f1b1cd0fd87ac5dac604ffa2a9671c"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"53cfe6d5f257e4b73c0144a1615143aa852890ac","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"b147a9b7_df03ebc4","in_reply_to":"87682a6e_58d392b9","updated":"2023-08-31 10:20:15.000000000","message":"kolla-ansible implemented log rotation for ironic almost 6 years ago: I1246c071b7340b3267226cefb64a04da1cce9f26","commit_id":"f666c2a609f1b1cd0fd87ac5dac604ffa2a9671c"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"96deab3aeceefe13226b61f8116f0abddf211eb0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"fe71a831_699c5cfd","in_reply_to":"b147a9b7_df03ebc4","updated":"2023-09-01 13:18:54.000000000","message":"Ack","commit_id":"f666c2a609f1b1cd0fd87ac5dac604ffa2a9671c"}],"playbooks/install.yaml":[{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"c4dadc3511e44ab039c132eb49bac88e2b0ada1d","unresolved":true,"context_lines":[{"line_number":36,"context_line":"    - bifrost-keystone-install"},{"line_number":37,"context_line":"    - bifrost-ironic-install"},{"line_number":38,"context_line":"    - role: bifrost-logrotate-install"},{"line_number":39,"context_line":"      when: ironic_log_dir is truthy or inspector_log_dir is truthy"},{"line_number":40,"context_line":"    - role: bifrost-keystone-client-config"},{"line_number":41,"context_line":"      user: \"{{ ansible_env.SUDO_USER | default(ansible_user_id) }}\""},{"line_number":42,"context_line":"      clouds:"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"c7c288ee_26961bb3","line":39,"range":{"start_line":39,"start_character":6,"end_line":39,"end_character":67},"updated":"2023-08-31 14:10:40.000000000","message":"not needed too.","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"230f51bb8f92d9790294671f67aec14a95654c29","unresolved":false,"context_lines":[{"line_number":36,"context_line":"    - bifrost-keystone-install"},{"line_number":37,"context_line":"    - bifrost-ironic-install"},{"line_number":38,"context_line":"    - role: bifrost-logrotate-install"},{"line_number":39,"context_line":"      when: ironic_log_dir is truthy or inspector_log_dir is truthy"},{"line_number":40,"context_line":"    - role: bifrost-keystone-client-config"},{"line_number":41,"context_line":"      user: \"{{ ansible_env.SUDO_USER | default(ansible_user_id) }}\""},{"line_number":42,"context_line":"      clouds:"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"2136da49_3657466e","line":39,"range":{"start_line":39,"start_character":6,"end_line":39,"end_character":67},"in_reply_to":"ad44010c_9d3583b4","updated":"2023-09-01 13:18:32.000000000","message":"Done","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"6a739aa8376f2ab16ddc2821e50ef8e56841d347","unresolved":true,"context_lines":[{"line_number":36,"context_line":"    - bifrost-keystone-install"},{"line_number":37,"context_line":"    - bifrost-ironic-install"},{"line_number":38,"context_line":"    - role: bifrost-logrotate-install"},{"line_number":39,"context_line":"      when: ironic_log_dir is truthy or inspector_log_dir is truthy"},{"line_number":40,"context_line":"    - role: bifrost-keystone-client-config"},{"line_number":41,"context_line":"      user: \"{{ ansible_env.SUDO_USER | default(ansible_user_id) }}\""},{"line_number":42,"context_line":"      clouds:"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"ad44010c_9d3583b4","line":39,"range":{"start_line":39,"start_character":6,"end_line":39,"end_character":67},"in_reply_to":"ad9f8bfd_5d44dedc","updated":"2023-08-31 14:25:55.000000000","message":"the role defaults needed, which you can override whatever place you need.\nhttps://docs.ansible.com/ansible/2.9/user_guide/playbooks_reuse_roles.html#role-default-variables","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"c09c1dff857d014180447ec90796ad912a210845","unresolved":false,"context_lines":[{"line_number":36,"context_line":"    - bifrost-keystone-install"},{"line_number":37,"context_line":"    - bifrost-ironic-install"},{"line_number":38,"context_line":"    - role: bifrost-logrotate-install"},{"line_number":39,"context_line":"      when: ironic_log_dir is truthy or inspector_log_dir is truthy"},{"line_number":40,"context_line":"    - role: bifrost-keystone-client-config"},{"line_number":41,"context_line":"      user: \"{{ ansible_env.SUDO_USER | default(ansible_user_id) }}\""},{"line_number":42,"context_line":"      clouds:"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"ad9f8bfd_5d44dedc","line":39,"range":{"start_line":39,"start_character":6,"end_line":39,"end_character":67},"in_reply_to":"c7c288ee_26961bb3","updated":"2023-08-31 14:17:57.000000000","message":"It is needed because, according to my vm tests, standalone bifrost by default logs to stdout.","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"}],"playbooks/roles/bifrost-logrotate-install/defaults/main.yml":[{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"a7557c7e1e9aa118ef3d2b812fe9ff59fac1670c","unresolved":true,"context_lines":[{"line_number":29,"context_line":"# If the file doesn\u0027t exist should error be raised"},{"line_number":30,"context_line":"missing_ok: true"},{"line_number":31,"context_line":"# Ironic log directory"},{"line_number":32,"context_line":"ironic_log_dir: \"{{ ironic_log_dir }}\""},{"line_number":33,"context_line":"# Ironic inspector log directory"},{"line_number":34,"context_line":"inspector_log_dir: \"{{ inspector_log_dir }}\""},{"line_number":35,"context_line":"# Log file owner"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"60805385_da8d9403","line":32,"range":{"start_line":32,"start_character":16,"end_line":32,"end_character":38},"updated":"2023-08-31 12:59:18.000000000","message":"not needed. since this is role defaults lets provide something default like \"/var/log/ironic\"","commit_id":"b5c82e9e9c5dfc656a0a325fb9da78acaa44efb0"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"d345331cd517d35394630d05f296f0b0e0813198","unresolved":false,"context_lines":[{"line_number":29,"context_line":"# If the file doesn\u0027t exist should error be raised"},{"line_number":30,"context_line":"missing_ok: true"},{"line_number":31,"context_line":"# Ironic log directory"},{"line_number":32,"context_line":"ironic_log_dir: \"{{ ironic_log_dir }}\""},{"line_number":33,"context_line":"# Ironic inspector log directory"},{"line_number":34,"context_line":"inspector_log_dir: \"{{ inspector_log_dir }}\""},{"line_number":35,"context_line":"# Log file owner"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"47992220_39621683","line":32,"range":{"start_line":32,"start_character":16,"end_line":32,"end_character":38},"in_reply_to":"08f377a1_f9fa9af3","updated":"2023-08-31 13:35:42.000000000","message":"Removed from defaults as bifrost by default logs into stdout.","commit_id":"b5c82e9e9c5dfc656a0a325fb9da78acaa44efb0"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"3a783b4cd128501f400c36dae4c0d8f01d27a1b3","unresolved":true,"context_lines":[{"line_number":29,"context_line":"# If the file doesn\u0027t exist should error be raised"},{"line_number":30,"context_line":"missing_ok: true"},{"line_number":31,"context_line":"# Ironic log directory"},{"line_number":32,"context_line":"ironic_log_dir: \"{{ ironic_log_dir }}\""},{"line_number":33,"context_line":"# Ironic inspector log directory"},{"line_number":34,"context_line":"inspector_log_dir: \"{{ inspector_log_dir }}\""},{"line_number":35,"context_line":"# Log file owner"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"be78b098_96ae1cf2","line":32,"range":{"start_line":32,"start_character":16,"end_line":32,"end_character":38},"in_reply_to":"47992220_39621683","updated":"2023-08-31 13:52:31.000000000","message":"the role shouldn\u0027t contain undefined variables.","commit_id":"b5c82e9e9c5dfc656a0a325fb9da78acaa44efb0"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"c6d87c336a5fc677294f74d262e8a0e77d3533df","unresolved":true,"context_lines":[{"line_number":29,"context_line":"# If the file doesn\u0027t exist should error be raised"},{"line_number":30,"context_line":"missing_ok: true"},{"line_number":31,"context_line":"# Ironic log directory"},{"line_number":32,"context_line":"ironic_log_dir: \"{{ ironic_log_dir }}\""},{"line_number":33,"context_line":"# Ironic inspector log directory"},{"line_number":34,"context_line":"inspector_log_dir: \"{{ inspector_log_dir }}\""},{"line_number":35,"context_line":"# Log file owner"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"08f377a1_f9fa9af3","line":32,"range":{"start_line":32,"start_character":16,"end_line":32,"end_character":38},"in_reply_to":"60805385_da8d9403","updated":"2023-08-31 13:24:43.000000000","message":"the defaults needed. please address previous comment.","commit_id":"b5c82e9e9c5dfc656a0a325fb9da78acaa44efb0"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"230f51bb8f92d9790294671f67aec14a95654c29","unresolved":false,"context_lines":[{"line_number":29,"context_line":"# If the file doesn\u0027t exist should error be raised"},{"line_number":30,"context_line":"missing_ok: true"},{"line_number":31,"context_line":"# Ironic log directory"},{"line_number":32,"context_line":"ironic_log_dir: \"{{ ironic_log_dir }}\""},{"line_number":33,"context_line":"# Ironic inspector log directory"},{"line_number":34,"context_line":"inspector_log_dir: \"{{ inspector_log_dir }}\""},{"line_number":35,"context_line":"# Log file owner"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"5402d90f_f5e269e1","line":32,"range":{"start_line":32,"start_character":16,"end_line":32,"end_character":38},"in_reply_to":"be78b098_96ae1cf2","updated":"2023-09-01 13:18:32.000000000","message":"Done","commit_id":"b5c82e9e9c5dfc656a0a325fb9da78acaa44efb0"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"a7557c7e1e9aa118ef3d2b812fe9ff59fac1670c","unresolved":true,"context_lines":[{"line_number":31,"context_line":"# Ironic log directory"},{"line_number":32,"context_line":"ironic_log_dir: \"{{ ironic_log_dir }}\""},{"line_number":33,"context_line":"# Ironic inspector log directory"},{"line_number":34,"context_line":"inspector_log_dir: \"{{ inspector_log_dir }}\""},{"line_number":35,"context_line":"# Log file owner"},{"line_number":36,"context_line":"log_user: root"},{"line_number":37,"context_line":"# Log file owner group"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"2148b8ab_38e7b297","line":34,"range":{"start_line":34,"start_character":19,"end_line":34,"end_character":44},"updated":"2023-08-31 12:59:18.000000000","message":"ditto. but \"/var/log/ironic-inspector\"","commit_id":"b5c82e9e9c5dfc656a0a325fb9da78acaa44efb0"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"c6d87c336a5fc677294f74d262e8a0e77d3533df","unresolved":true,"context_lines":[{"line_number":31,"context_line":"# Ironic log directory"},{"line_number":32,"context_line":"ironic_log_dir: \"{{ ironic_log_dir }}\""},{"line_number":33,"context_line":"# Ironic inspector log directory"},{"line_number":34,"context_line":"inspector_log_dir: \"{{ inspector_log_dir }}\""},{"line_number":35,"context_line":"# Log file owner"},{"line_number":36,"context_line":"log_user: root"},{"line_number":37,"context_line":"# Log file owner group"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"c93b05be_a23f6044","line":34,"range":{"start_line":34,"start_character":19,"end_line":34,"end_character":44},"in_reply_to":"2148b8ab_38e7b297","updated":"2023-08-31 13:24:43.000000000","message":"ditto.","commit_id":"b5c82e9e9c5dfc656a0a325fb9da78acaa44efb0"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"230f51bb8f92d9790294671f67aec14a95654c29","unresolved":false,"context_lines":[{"line_number":31,"context_line":"# Ironic log directory"},{"line_number":32,"context_line":"ironic_log_dir: \"{{ ironic_log_dir }}\""},{"line_number":33,"context_line":"# Ironic inspector log directory"},{"line_number":34,"context_line":"inspector_log_dir: \"{{ inspector_log_dir }}\""},{"line_number":35,"context_line":"# Log file owner"},{"line_number":36,"context_line":"log_user: root"},{"line_number":37,"context_line":"# Log file owner group"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"2e7e7336_28cd40cb","line":34,"range":{"start_line":34,"start_character":19,"end_line":34,"end_character":44},"in_reply_to":"7602a51a_250705c9","updated":"2023-09-01 13:18:32.000000000","message":"Ack","commit_id":"b5c82e9e9c5dfc656a0a325fb9da78acaa44efb0"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"3a783b4cd128501f400c36dae4c0d8f01d27a1b3","unresolved":true,"context_lines":[{"line_number":31,"context_line":"# Ironic log directory"},{"line_number":32,"context_line":"ironic_log_dir: \"{{ ironic_log_dir }}\""},{"line_number":33,"context_line":"# Ironic inspector log directory"},{"line_number":34,"context_line":"inspector_log_dir: \"{{ inspector_log_dir }}\""},{"line_number":35,"context_line":"# Log file owner"},{"line_number":36,"context_line":"log_user: root"},{"line_number":37,"context_line":"# Log file owner group"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"efe37acb_4764eb02","line":34,"range":{"start_line":34,"start_character":19,"end_line":34,"end_character":44},"in_reply_to":"7b7bab52_73cfd3a5","updated":"2023-08-31 13:52:31.000000000","message":"ditto.","commit_id":"b5c82e9e9c5dfc656a0a325fb9da78acaa44efb0"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"d345331cd517d35394630d05f296f0b0e0813198","unresolved":false,"context_lines":[{"line_number":31,"context_line":"# Ironic log directory"},{"line_number":32,"context_line":"ironic_log_dir: \"{{ ironic_log_dir }}\""},{"line_number":33,"context_line":"# Ironic inspector log directory"},{"line_number":34,"context_line":"inspector_log_dir: \"{{ inspector_log_dir }}\""},{"line_number":35,"context_line":"# Log file owner"},{"line_number":36,"context_line":"log_user: root"},{"line_number":37,"context_line":"# Log file owner group"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"7b7bab52_73cfd3a5","line":34,"range":{"start_line":34,"start_character":19,"end_line":34,"end_character":44},"in_reply_to":"c93b05be_a23f6044","updated":"2023-08-31 13:35:42.000000000","message":"Removed from defaults as bifrost by default logs into stdout.","commit_id":"b5c82e9e9c5dfc656a0a325fb9da78acaa44efb0"},{"author":{"_account_id":32553,"name":"Sven Kieske","email":"sven_oss@posteo.de","username":"skieske"},"change_message_id":"dd08ca919c96e2ad87e26eabbcb08ed164e913e1","unresolved":true,"context_lines":[{"line_number":31,"context_line":"# Ironic log directory"},{"line_number":32,"context_line":"ironic_log_dir: \"{{ ironic_log_dir }}\""},{"line_number":33,"context_line":"# Ironic inspector log directory"},{"line_number":34,"context_line":"inspector_log_dir: \"{{ inspector_log_dir }}\""},{"line_number":35,"context_line":"# Log file owner"},{"line_number":36,"context_line":"log_user: root"},{"line_number":37,"context_line":"# Log file owner group"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"7602a51a_250705c9","line":34,"range":{"start_line":34,"start_character":19,"end_line":34,"end_character":44},"in_reply_to":"efe37acb_4764eb02","updated":"2023-08-31 15:07:02.000000000","message":"whether something logs by default to stdout and what the default log path is, if logging to disk is enabled, are two orthogonal things.\n\nso it should be possible to define a default log path, as Maksim suggested, while retaining the ability to log to stdtout by default and not use said log path in this scenario.\n\nthe log_dir would only be used if the log method (file based) would be changed accordingly.\n\nif you want to depend on systemd you could completely avoid this, of course and always log to stdout and let journald handle the rest. I don\u0027t know if this is acceptable for bifrost.\n\nso maybe introduce a boolean variable `persist_logs` (I\u0027m not really familiar with bifrost code, so I don\u0027t know if this maybe already exists in some form).","commit_id":"b5c82e9e9c5dfc656a0a325fb9da78acaa44efb0"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"cb5666a7c38f3d1dd1b9441da5d93a84c9a6dd8f","unresolved":true,"context_lines":[{"line_number":8,"context_line":"# Skip starting logrotate service"},{"line_number":9,"context_line":"skip_start: false"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"# Logrotate congiguration variables:"},{"line_number":12,"context_line":"#"},{"line_number":13,"context_line":"# Frequency of rotation"},{"line_number":14,"context_line":"frequency: weekly"},{"line_number":15,"context_line":"# Amount of files to keep"},{"line_number":16,"context_line":"file_count: 3"},{"line_number":17,"context_line":"# To compress or to not compress"},{"line_number":18,"context_line":"compress: true"},{"line_number":19,"context_line":"# Minimum size of log file"},{"line_number":20,"context_line":"file_minsize: 30M"},{"line_number":21,"context_line":"# Maximum size of log file"},{"line_number":22,"context_line":"file_maxsize: 100M"},{"line_number":23,"context_line":"# Compression delay"},{"line_number":24,"context_line":"delay_compression: true"},{"line_number":25,"context_line":"# Remove old log file or truncate it"},{"line_number":26,"context_line":"copy_truncate: true"},{"line_number":27,"context_line":"# Should a log file be rotated if it\u0027s empty"},{"line_number":28,"context_line":"not_if_empty: true"},{"line_number":29,"context_line":"# If the file doesn\u0027t exist should error be raised"},{"line_number":30,"context_line":"missing_ok: true"},{"line_number":31,"context_line":"# Log file owner"},{"line_number":32,"context_line":"log_user: root"},{"line_number":33,"context_line":"# Log file owner group"},{"line_number":34,"context_line":"log_group: root"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"a1fafd1e_43130d8f","line":34,"range":{"start_line":11,"start_character":0,"end_line":34,"end_character":15},"updated":"2023-08-31 14:28:31.000000000","message":"Please add a logrotate_ prefix to these variables.","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"9e2074251c5221c37b07e1745ce5b747f0210378","unresolved":false,"context_lines":[{"line_number":8,"context_line":"# Skip starting logrotate service"},{"line_number":9,"context_line":"skip_start: false"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"# Logrotate congiguration variables:"},{"line_number":12,"context_line":"#"},{"line_number":13,"context_line":"# Frequency of rotation"},{"line_number":14,"context_line":"frequency: weekly"},{"line_number":15,"context_line":"# Amount of files to keep"},{"line_number":16,"context_line":"file_count: 3"},{"line_number":17,"context_line":"# To compress or to not compress"},{"line_number":18,"context_line":"compress: true"},{"line_number":19,"context_line":"# Minimum size of log file"},{"line_number":20,"context_line":"file_minsize: 30M"},{"line_number":21,"context_line":"# Maximum size of log file"},{"line_number":22,"context_line":"file_maxsize: 100M"},{"line_number":23,"context_line":"# Compression delay"},{"line_number":24,"context_line":"delay_compression: true"},{"line_number":25,"context_line":"# Remove old log file or truncate it"},{"line_number":26,"context_line":"copy_truncate: true"},{"line_number":27,"context_line":"# Should a log file be rotated if it\u0027s empty"},{"line_number":28,"context_line":"not_if_empty: true"},{"line_number":29,"context_line":"# If the file doesn\u0027t exist should error be raised"},{"line_number":30,"context_line":"missing_ok: true"},{"line_number":31,"context_line":"# Log file owner"},{"line_number":32,"context_line":"log_user: root"},{"line_number":33,"context_line":"# Log file owner group"},{"line_number":34,"context_line":"log_group: root"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"a27631a0_eb96fadd","line":34,"range":{"start_line":11,"start_character":0,"end_line":34,"end_character":15},"in_reply_to":"a1fafd1e_43130d8f","updated":"2023-09-01 13:08:37.000000000","message":"Done","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"ca288b1934eb68f2c4b9ed0fb02695da1eabe01c","unresolved":true,"context_lines":[{"line_number":33,"context_line":"# Log file owner group"},{"line_number":34,"context_line":"logrotate_log_group: root"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"bifrost_components:"},{"line_number":37,"context_line":"  - name: \"nginx\""},{"line_number":38,"context_line":"    logdir: \"{{ nginx_log_dir}} | default(\u0027/var/log/nginx\u0027)\""},{"line_number":39,"context_line":"  - name: \"keystone\""}],"source_content_type":"text/x-yaml","patch_set":12,"id":"cf182c1e_d30ba004","line":36,"updated":"2023-09-04 08:41:51.000000000","message":"Rename to logrotate_components?","commit_id":"b5c04226116db07fd200076a9d79b0e4de4d1d08"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"12b44289345c0621c7e6256e4d28466bd41b25e4","unresolved":false,"context_lines":[{"line_number":33,"context_line":"# Log file owner group"},{"line_number":34,"context_line":"logrotate_log_group: root"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"bifrost_components:"},{"line_number":37,"context_line":"  - name: \"nginx\""},{"line_number":38,"context_line":"    logdir: \"{{ nginx_log_dir}} | default(\u0027/var/log/nginx\u0027)\""},{"line_number":39,"context_line":"  - name: \"keystone\""}],"source_content_type":"text/x-yaml","patch_set":12,"id":"90f33d6b_e0174d1e","line":36,"in_reply_to":"cf182c1e_d30ba004","updated":"2023-09-04 10:31:03.000000000","message":"Done","commit_id":"b5c04226116db07fd200076a9d79b0e4de4d1d08"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"ca288b1934eb68f2c4b9ed0fb02695da1eabe01c","unresolved":true,"context_lines":[{"line_number":34,"context_line":"logrotate_log_group: root"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"bifrost_components:"},{"line_number":37,"context_line":"  - name: \"nginx\""},{"line_number":38,"context_line":"    logdir: \"{{ nginx_log_dir}} | default(\u0027/var/log/nginx\u0027)\""},{"line_number":39,"context_line":"  - name: \"keystone\""},{"line_number":40,"context_line":"    logdir: \"/var/log/nginx/keystone\""}],"source_content_type":"text/x-yaml","patch_set":12,"id":"cbab7f84_af4f6c25","line":37,"updated":"2023-09-04 08:41:51.000000000","message":"AFAICT the names are unused - this could just be a list of strings.","commit_id":"b5c04226116db07fd200076a9d79b0e4de4d1d08"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"12b44289345c0621c7e6256e4d28466bd41b25e4","unresolved":false,"context_lines":[{"line_number":34,"context_line":"logrotate_log_group: root"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"bifrost_components:"},{"line_number":37,"context_line":"  - name: \"nginx\""},{"line_number":38,"context_line":"    logdir: \"{{ nginx_log_dir}} | default(\u0027/var/log/nginx\u0027)\""},{"line_number":39,"context_line":"  - name: \"keystone\""},{"line_number":40,"context_line":"    logdir: \"/var/log/nginx/keystone\""}],"source_content_type":"text/x-yaml","patch_set":12,"id":"59147e75_724fc4ee","line":37,"in_reply_to":"cbab7f84_af4f6c25","updated":"2023-09-04 10:31:03.000000000","message":"Done","commit_id":"b5c04226116db07fd200076a9d79b0e4de4d1d08"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"ca288b1934eb68f2c4b9ed0fb02695da1eabe01c","unresolved":true,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"bifrost_components:"},{"line_number":37,"context_line":"  - name: \"nginx\""},{"line_number":38,"context_line":"    logdir: \"{{ nginx_log_dir}} | default(\u0027/var/log/nginx\u0027)\""},{"line_number":39,"context_line":"  - name: \"keystone\""},{"line_number":40,"context_line":"    logdir: \"/var/log/nginx/keystone\""},{"line_number":41,"context_line":"  - name: \"ironic\""}],"source_content_type":"text/x-yaml","patch_set":12,"id":"21b21c58_51ddb3c6","line":38,"updated":"2023-09-04 08:41:51.000000000","message":"The default filter needs to go inside the jinja expression.","commit_id":"b5c04226116db07fd200076a9d79b0e4de4d1d08"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"12b44289345c0621c7e6256e4d28466bd41b25e4","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"bifrost_components:"},{"line_number":37,"context_line":"  - name: \"nginx\""},{"line_number":38,"context_line":"    logdir: \"{{ nginx_log_dir}} | default(\u0027/var/log/nginx\u0027)\""},{"line_number":39,"context_line":"  - name: \"keystone\""},{"line_number":40,"context_line":"    logdir: \"/var/log/nginx/keystone\""},{"line_number":41,"context_line":"  - name: \"ironic\""}],"source_content_type":"text/x-yaml","patch_set":12,"id":"d584a18c_dcc25538","line":38,"in_reply_to":"21b21c58_51ddb3c6","updated":"2023-09-04 10:31:03.000000000","message":"Done","commit_id":"b5c04226116db07fd200076a9d79b0e4de4d1d08"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"ca288b1934eb68f2c4b9ed0fb02695da1eabe01c","unresolved":true,"context_lines":[{"line_number":37,"context_line":"  - name: \"nginx\""},{"line_number":38,"context_line":"    logdir: \"{{ nginx_log_dir}} | default(\u0027/var/log/nginx\u0027)\""},{"line_number":39,"context_line":"  - name: \"keystone\""},{"line_number":40,"context_line":"    logdir: \"/var/log/nginx/keystone\""},{"line_number":41,"context_line":"  - name: \"ironic\""},{"line_number":42,"context_line":"    logdir: \"{{ ironic_log_dir | default(\u0027\u0027) }}\""},{"line_number":43,"context_line":"  - name: \"ironic-inspector\""}],"source_content_type":"text/x-yaml","patch_set":12,"id":"580825c6_d077a3c3","line":40,"updated":"2023-09-04 08:41:51.000000000","message":"\"{{ nginx_log_dir }}/nginx/keystone\"","commit_id":"b5c04226116db07fd200076a9d79b0e4de4d1d08"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"12b44289345c0621c7e6256e4d28466bd41b25e4","unresolved":false,"context_lines":[{"line_number":37,"context_line":"  - name: \"nginx\""},{"line_number":38,"context_line":"    logdir: \"{{ nginx_log_dir}} | default(\u0027/var/log/nginx\u0027)\""},{"line_number":39,"context_line":"  - name: \"keystone\""},{"line_number":40,"context_line":"    logdir: \"/var/log/nginx/keystone\""},{"line_number":41,"context_line":"  - name: \"ironic\""},{"line_number":42,"context_line":"    logdir: \"{{ ironic_log_dir | default(\u0027\u0027) }}\""},{"line_number":43,"context_line":"  - name: \"ironic-inspector\""}],"source_content_type":"text/x-yaml","patch_set":12,"id":"54922823_99c442b9","line":40,"in_reply_to":"580825c6_d077a3c3","updated":"2023-09-04 10:31:03.000000000","message":"Done","commit_id":"b5c04226116db07fd200076a9d79b0e4de4d1d08"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"ca288b1934eb68f2c4b9ed0fb02695da1eabe01c","unresolved":true,"context_lines":[{"line_number":39,"context_line":"  - name: \"keystone\""},{"line_number":40,"context_line":"    logdir: \"/var/log/nginx/keystone\""},{"line_number":41,"context_line":"  - name: \"ironic\""},{"line_number":42,"context_line":"    logdir: \"{{ ironic_log_dir | default(\u0027\u0027) }}\""},{"line_number":43,"context_line":"  - name: \"ironic-inspector\""},{"line_number":44,"context_line":"    logdir: \"{{ inspector_log_dir | default(\u0027\u0027) }}\""}],"source_content_type":"text/x-yaml","patch_set":12,"id":"132dafd6_8f16cc74","line":42,"updated":"2023-09-04 08:41:51.000000000","message":"The default for these is in the bifrost-ironic-install role, so they won\u0027t necessarily be defined here. I suggest defining the log dir variables again in this file and removing the default() filters.","commit_id":"b5c04226116db07fd200076a9d79b0e4de4d1d08"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"12b44289345c0621c7e6256e4d28466bd41b25e4","unresolved":false,"context_lines":[{"line_number":39,"context_line":"  - name: \"keystone\""},{"line_number":40,"context_line":"    logdir: \"/var/log/nginx/keystone\""},{"line_number":41,"context_line":"  - name: \"ironic\""},{"line_number":42,"context_line":"    logdir: \"{{ ironic_log_dir | default(\u0027\u0027) }}\""},{"line_number":43,"context_line":"  - name: \"ironic-inspector\""},{"line_number":44,"context_line":"    logdir: \"{{ inspector_log_dir | default(\u0027\u0027) }}\""}],"source_content_type":"text/x-yaml","patch_set":12,"id":"0ab524ee_38854463","line":42,"in_reply_to":"132dafd6_8f16cc74","updated":"2023-09-04 10:31:03.000000000","message":"Done","commit_id":"b5c04226116db07fd200076a9d79b0e4de4d1d08"},{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"a499a07ea5cf4a98a425eaed943aac35f699141a","unresolved":true,"context_lines":[{"line_number":39,"context_line":"nginx_log_dir: \"/var/log/nginx\""},{"line_number":40,"context_line":"# Keystone default log location"},{"line_number":41,"context_line":"keystone_log_dir: \"{{ nginx_log_dir }}/nginx/keystone\""},{"line_number":42,"context_line":"# Ironic default log location"},{"line_number":43,"context_line":"ironic_log_dir: \"\""},{"line_number":44,"context_line":"# Ironic-inspector default log location"},{"line_number":45,"context_line":"inspector_log_dir: \"\""},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"logrotate_log_dirs:"},{"line_number":48,"context_line":"  - \"{{ nginx_log_dir }}\""}],"source_content_type":"text/x-yaml","patch_set":13,"id":"b7b9bb0c_63bc750d","line":45,"range":{"start_line":42,"start_character":0,"end_line":45,"end_character":21},"updated":"2023-09-04 11:04:22.000000000","message":"do not define those here - they have no defaults in other roles, check if those variables are defined (e.g. when: ironic_log_dir is defined) in relevant places","commit_id":"7bf8565673f539002c23dcb9594cfc7db05e2d5e"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"2113014e35efc2f8bd2865ba9c17b2917d6b1eb5","unresolved":false,"context_lines":[{"line_number":39,"context_line":"nginx_log_dir: \"/var/log/nginx\""},{"line_number":40,"context_line":"# Keystone default log location"},{"line_number":41,"context_line":"keystone_log_dir: \"{{ nginx_log_dir }}/nginx/keystone\""},{"line_number":42,"context_line":"# Ironic default log location"},{"line_number":43,"context_line":"ironic_log_dir: \"\""},{"line_number":44,"context_line":"# Ironic-inspector default log location"},{"line_number":45,"context_line":"inspector_log_dir: \"\""},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"logrotate_log_dirs:"},{"line_number":48,"context_line":"  - \"{{ nginx_log_dir }}\""}],"source_content_type":"text/x-yaml","patch_set":13,"id":"d4ca833c_ec0039ee","line":45,"range":{"start_line":42,"start_character":0,"end_line":45,"end_character":21},"in_reply_to":"b7b9bb0c_63bc750d","updated":"2023-09-04 12:37:12.000000000","message":"Done","commit_id":"7bf8565673f539002c23dcb9594cfc7db05e2d5e"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"3ea00de66597148f4c93b7617e7d5c12d069de05","unresolved":true,"context_lines":[{"line_number":39,"context_line":"nginx_log_dir: \"/var/log/nginx\""},{"line_number":40,"context_line":"# Keystone default log location"},{"line_number":41,"context_line":"keystone_log_dir: \"{{ nginx_log_dir }}/nginx/keystone\""},{"line_number":42,"context_line":"# Ironic default log location"},{"line_number":43,"context_line":"ironic_log_dir: \"\""},{"line_number":44,"context_line":"# Ironic-inspector default log location"},{"line_number":45,"context_line":"inspector_log_dir: \"\""},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"logrotate_log_dirs:"},{"line_number":48,"context_line":"  - \"{{ nginx_log_dir }}\""},{"line_number":49,"context_line":"  - \"{{ keystone_log_dir }}\""}],"source_content_type":"text/x-yaml","patch_set":13,"id":"a9f8c980_ee21c29f","line":46,"range":{"start_line":42,"start_character":0,"end_line":46,"end_character":0},"updated":"2023-09-04 10:39:59.000000000","message":"Why are these defaults empty?","commit_id":"7bf8565673f539002c23dcb9594cfc7db05e2d5e"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"36b14916f6e063bcc108ec54dde2d07cf0b6bf31","unresolved":false,"context_lines":[{"line_number":39,"context_line":"nginx_log_dir: \"/var/log/nginx\""},{"line_number":40,"context_line":"# Keystone default log location"},{"line_number":41,"context_line":"keystone_log_dir: \"{{ nginx_log_dir }}/nginx/keystone\""},{"line_number":42,"context_line":"# Ironic default log location"},{"line_number":43,"context_line":"ironic_log_dir: \"\""},{"line_number":44,"context_line":"# Ironic-inspector default log location"},{"line_number":45,"context_line":"inspector_log_dir: \"\""},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"logrotate_log_dirs:"},{"line_number":48,"context_line":"  - \"{{ nginx_log_dir }}\""},{"line_number":49,"context_line":"  - \"{{ keystone_log_dir }}\""}],"source_content_type":"text/x-yaml","patch_set":13,"id":"38c44c66_6e1e9db6","line":46,"range":{"start_line":42,"start_character":0,"end_line":46,"end_character":0},"in_reply_to":"a9f8c980_ee21c29f","updated":"2023-09-04 10:42:54.000000000","message":"Because ironic logs to stdout by default. If var is not defined there will be errors.","commit_id":"7bf8565673f539002c23dcb9594cfc7db05e2d5e"}],"playbooks/roles/bifrost-logrotate-install/tasks/configure.yml":[{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"a7557c7e1e9aa118ef3d2b812fe9ff59fac1670c","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":6,"id":"095c0c19_736942f2","line":19,"updated":"2023-08-31 12:59:18.000000000","message":"add here task \"Ensure log directory exist\" and loop through \u0027ironic_log_dir\u0027 and \u0027inspector_log_dir\u0027","commit_id":"b5c82e9e9c5dfc656a0a325fb9da78acaa44efb0"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"230f51bb8f92d9790294671f67aec14a95654c29","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"b7252f01_51be8ada","line":19,"in_reply_to":"095c0c19_736942f2","updated":"2023-09-01 13:18:32.000000000","message":"Removed log dir creation step.","commit_id":"b5c82e9e9c5dfc656a0a325fb9da78acaa44efb0"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"c6d87c336a5fc677294f74d262e8a0e77d3533df","unresolved":true,"context_lines":[{"line_number":11,"context_line":"# See the License for the specific language governing permissions and"},{"line_number":12,"context_line":"# limitations under the License."},{"line_number":13,"context_line":"---"},{"line_number":14,"context_line":"- name: \"Ensure {{ ironic_log_dir }} exists\""},{"line_number":15,"context_line":"  file:"},{"line_number":16,"context_line":"    name: \"{{ ironic_log_dir }}\""},{"line_number":17,"context_line":"    state: directory"},{"line_number":18,"context_line":"    owner: \"ironic\""},{"line_number":19,"context_line":"    group: \"ironic\""},{"line_number":20,"context_line":"    mode: \"0644\""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"- name: \"Ensure {{ inspector_log_dir }} exists\""},{"line_number":23,"context_line":"  file:"},{"line_number":24,"context_line":"    name: \"{{ inspector_log_dir }}\""},{"line_number":25,"context_line":"    state: directory"},{"line_number":26,"context_line":"    owner: \"ironic\""},{"line_number":27,"context_line":"    group: \"ironic\""},{"line_number":28,"context_line":"    mode: \"0644\""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"- name: \"Template logrotate config\""},{"line_number":31,"context_line":"  template:"},{"line_number":32,"context_line":"    src: \"logrotate.conf.json.j2\""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"1d4c8590_1743a4f9","line":29,"range":{"start_line":14,"start_character":0,"end_line":29,"end_character":0},"updated":"2023-08-31 13:24:43.000000000","message":"this can be combined into one task.\nuse \u0027whith:\u0027 and provide list.","commit_id":"3ce65982c1cb9153c68f9fec6d42aa40b5dbe118"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"7c74f4567e367c4481519fddea9bdf79c7f48b81","unresolved":false,"context_lines":[{"line_number":11,"context_line":"# See the License for the specific language governing permissions and"},{"line_number":12,"context_line":"# limitations under the License."},{"line_number":13,"context_line":"---"},{"line_number":14,"context_line":"- name: \"Ensure {{ ironic_log_dir }} exists\""},{"line_number":15,"context_line":"  file:"},{"line_number":16,"context_line":"    name: \"{{ ironic_log_dir }}\""},{"line_number":17,"context_line":"    state: directory"},{"line_number":18,"context_line":"    owner: \"ironic\""},{"line_number":19,"context_line":"    group: \"ironic\""},{"line_number":20,"context_line":"    mode: \"0644\""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"- name: \"Ensure {{ inspector_log_dir }} exists\""},{"line_number":23,"context_line":"  file:"},{"line_number":24,"context_line":"    name: \"{{ inspector_log_dir }}\""},{"line_number":25,"context_line":"    state: directory"},{"line_number":26,"context_line":"    owner: \"ironic\""},{"line_number":27,"context_line":"    group: \"ironic\""},{"line_number":28,"context_line":"    mode: \"0644\""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"- name: \"Template logrotate config\""},{"line_number":31,"context_line":"  template:"},{"line_number":32,"context_line":"    src: \"logrotate.conf.json.j2\""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"82cdd2a6_0419b534","line":29,"range":{"start_line":14,"start_character":0,"end_line":29,"end_character":0},"in_reply_to":"1d4c8590_1743a4f9","updated":"2023-08-31 13:42:34.000000000","message":"That\u0027s true but one might want to define one with other logs going to stdout, so I\u0027ll leave it as 2 actions.","commit_id":"3ce65982c1cb9153c68f9fec6d42aa40b5dbe118"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"230f51bb8f92d9790294671f67aec14a95654c29","unresolved":false,"context_lines":[{"line_number":11,"context_line":"# See the License for the specific language governing permissions and"},{"line_number":12,"context_line":"# limitations under the License."},{"line_number":13,"context_line":"---"},{"line_number":14,"context_line":"- name: \"Ensure {{ ironic_log_dir }} exists\""},{"line_number":15,"context_line":"  file:"},{"line_number":16,"context_line":"    name: \"{{ ironic_log_dir }}\""},{"line_number":17,"context_line":"    state: directory"},{"line_number":18,"context_line":"    owner: \"ironic\""},{"line_number":19,"context_line":"    group: \"ironic\""},{"line_number":20,"context_line":"    mode: \"0644\""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"- name: \"Ensure {{ inspector_log_dir }} exists\""},{"line_number":23,"context_line":"  file:"},{"line_number":24,"context_line":"    name: \"{{ inspector_log_dir }}\""},{"line_number":25,"context_line":"    state: directory"},{"line_number":26,"context_line":"    owner: \"ironic\""},{"line_number":27,"context_line":"    group: \"ironic\""},{"line_number":28,"context_line":"    mode: \"0644\""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"- name: \"Template logrotate config\""},{"line_number":31,"context_line":"  template:"},{"line_number":32,"context_line":"    src: \"logrotate.conf.json.j2\""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"7f2530d9_b4627acf","line":29,"range":{"start_line":14,"start_character":0,"end_line":29,"end_character":0},"in_reply_to":"6dde0bfc_40e341be","updated":"2023-09-01 13:18:32.000000000","message":"Removed","commit_id":"3ce65982c1cb9153c68f9fec6d42aa40b5dbe118"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"4077b568cba46e578aee239df013216c2724851c","unresolved":true,"context_lines":[{"line_number":11,"context_line":"# See the License for the specific language governing permissions and"},{"line_number":12,"context_line":"# limitations under the License."},{"line_number":13,"context_line":"---"},{"line_number":14,"context_line":"- name: \"Ensure {{ ironic_log_dir }} exists\""},{"line_number":15,"context_line":"  file:"},{"line_number":16,"context_line":"    name: \"{{ ironic_log_dir }}\""},{"line_number":17,"context_line":"    state: directory"},{"line_number":18,"context_line":"    owner: \"ironic\""},{"line_number":19,"context_line":"    group: \"ironic\""},{"line_number":20,"context_line":"    mode: \"0644\""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"- name: \"Ensure {{ inspector_log_dir }} exists\""},{"line_number":23,"context_line":"  file:"},{"line_number":24,"context_line":"    name: \"{{ inspector_log_dir }}\""},{"line_number":25,"context_line":"    state: directory"},{"line_number":26,"context_line":"    owner: \"ironic\""},{"line_number":27,"context_line":"    group: \"ironic\""},{"line_number":28,"context_line":"    mode: \"0644\""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"- name: \"Template logrotate config\""},{"line_number":31,"context_line":"  template:"},{"line_number":32,"context_line":"    src: \"logrotate.conf.json.j2\""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"9e31ba8d_374bfeca","line":29,"range":{"start_line":14,"start_character":0,"end_line":29,"end_character":0},"in_reply_to":"82cb4815_15220790","updated":"2023-08-31 14:09:35.000000000","message":"If one of those is undefined that task will fail.","commit_id":"3ce65982c1cb9153c68f9fec6d42aa40b5dbe118"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"3a783b4cd128501f400c36dae4c0d8f01d27a1b3","unresolved":false,"context_lines":[{"line_number":11,"context_line":"# See the License for the specific language governing permissions and"},{"line_number":12,"context_line":"# limitations under the License."},{"line_number":13,"context_line":"---"},{"line_number":14,"context_line":"- name: \"Ensure {{ ironic_log_dir }} exists\""},{"line_number":15,"context_line":"  file:"},{"line_number":16,"context_line":"    name: \"{{ ironic_log_dir }}\""},{"line_number":17,"context_line":"    state: directory"},{"line_number":18,"context_line":"    owner: \"ironic\""},{"line_number":19,"context_line":"    group: \"ironic\""},{"line_number":20,"context_line":"    mode: \"0644\""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"- name: \"Ensure {{ inspector_log_dir }} exists\""},{"line_number":23,"context_line":"  file:"},{"line_number":24,"context_line":"    name: \"{{ inspector_log_dir }}\""},{"line_number":25,"context_line":"    state: directory"},{"line_number":26,"context_line":"    owner: \"ironic\""},{"line_number":27,"context_line":"    group: \"ironic\""},{"line_number":28,"context_line":"    mode: \"0644\""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"- name: \"Template logrotate config\""},{"line_number":31,"context_line":"  template:"},{"line_number":32,"context_line":"    src: \"logrotate.conf.json.j2\""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"82cb4815_15220790","line":29,"range":{"start_line":14,"start_character":0,"end_line":29,"end_character":0},"in_reply_to":"82cdd2a6_0419b534","updated":"2023-08-31 13:52:31.000000000","message":"- name: \"Ensure {{ item }} exists\"\n  file:\n    name: \"{{ item }}\"\n    state: directory\n    owner: \"ironic\"\n    group: \"ironic\"\n    mode: \"0644\"\n  with_items:\n    - \"{{ ironic_log_dir }}\"\n    - \"{{ inspector_log_dir }}\"\n\nwhat\u0027s wrong? this is the same as your two tasks, but much more human readable and uses less lines of code.","commit_id":"3ce65982c1cb9153c68f9fec6d42aa40b5dbe118"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"53f2908062c1e6231b57f7edf2f1561546a25d58","unresolved":true,"context_lines":[{"line_number":11,"context_line":"# See the License for the specific language governing permissions and"},{"line_number":12,"context_line":"# limitations under the License."},{"line_number":13,"context_line":"---"},{"line_number":14,"context_line":"- name: \"Ensure {{ ironic_log_dir }} exists\""},{"line_number":15,"context_line":"  file:"},{"line_number":16,"context_line":"    name: \"{{ ironic_log_dir }}\""},{"line_number":17,"context_line":"    state: directory"},{"line_number":18,"context_line":"    owner: \"ironic\""},{"line_number":19,"context_line":"    group: \"ironic\""},{"line_number":20,"context_line":"    mode: \"0644\""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"- name: \"Ensure {{ inspector_log_dir }} exists\""},{"line_number":23,"context_line":"  file:"},{"line_number":24,"context_line":"    name: \"{{ inspector_log_dir }}\""},{"line_number":25,"context_line":"    state: directory"},{"line_number":26,"context_line":"    owner: \"ironic\""},{"line_number":27,"context_line":"    group: \"ironic\""},{"line_number":28,"context_line":"    mode: \"0644\""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"- name: \"Template logrotate config\""},{"line_number":31,"context_line":"  template:"},{"line_number":32,"context_line":"    src: \"logrotate.conf.json.j2\""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"6dde0bfc_40e341be","line":29,"range":{"start_line":14,"start_character":0,"end_line":29,"end_character":0},"in_reply_to":"9e31ba8d_374bfeca","updated":"2023-08-31 14:12:58.000000000","message":"please address previous comments and add the role defaults.","commit_id":"3ce65982c1cb9153c68f9fec6d42aa40b5dbe118"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"152cdf56d9641fed8d649e841ca5c48c650dde1b","unresolved":true,"context_lines":[{"line_number":18,"context_line":"    owner: \"ironic\""},{"line_number":19,"context_line":"    group: \"ironic\""},{"line_number":20,"context_line":"    mode: \"0644\""},{"line_number":21,"context_line":"  when: ironic_log_dir is truthy"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"- name: \"Ensure {{ inspector_log_dir }} exists\""},{"line_number":24,"context_line":"  file:"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"23f3ce73_c32ed2b8","line":21,"range":{"start_line":21,"start_character":2,"end_line":21,"end_character":32},"updated":"2023-08-31 13:53:57.000000000","message":"not needed. please address previous comments and add the role defaults.","commit_id":"2fc073c0a6a277cafd533a4a9f4992479f687c1d"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"230f51bb8f92d9790294671f67aec14a95654c29","unresolved":false,"context_lines":[{"line_number":18,"context_line":"    owner: \"ironic\""},{"line_number":19,"context_line":"    group: \"ironic\""},{"line_number":20,"context_line":"    mode: \"0644\""},{"line_number":21,"context_line":"  when: ironic_log_dir is truthy"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"- name: \"Ensure {{ inspector_log_dir }} exists\""},{"line_number":24,"context_line":"  file:"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"996e72c6_130df726","line":21,"range":{"start_line":21,"start_character":2,"end_line":21,"end_character":32},"in_reply_to":"23f3ce73_c32ed2b8","updated":"2023-09-01 13:18:32.000000000","message":"Ack","commit_id":"2fc073c0a6a277cafd533a4a9f4992479f687c1d"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"152cdf56d9641fed8d649e841ca5c48c650dde1b","unresolved":true,"context_lines":[{"line_number":27,"context_line":"    owner: \"ironic\""},{"line_number":28,"context_line":"    group: \"ironic\""},{"line_number":29,"context_line":"    mode: \"0644\""},{"line_number":30,"context_line":"  when: inspector_log_dir is truthy"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"- name: \"Template logrotate config\""},{"line_number":33,"context_line":"  template:"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"ba7226e0_3306d21e","line":30,"range":{"start_line":30,"start_character":2,"end_line":30,"end_character":35},"updated":"2023-08-31 13:53:57.000000000","message":"ditto.","commit_id":"2fc073c0a6a277cafd533a4a9f4992479f687c1d"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"230f51bb8f92d9790294671f67aec14a95654c29","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    owner: \"ironic\""},{"line_number":28,"context_line":"    group: \"ironic\""},{"line_number":29,"context_line":"    mode: \"0644\""},{"line_number":30,"context_line":"  when: inspector_log_dir is truthy"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"- name: \"Template logrotate config\""},{"line_number":33,"context_line":"  template:"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"2215cb0c_63106997","line":30,"range":{"start_line":30,"start_character":2,"end_line":30,"end_character":35},"in_reply_to":"ba7226e0_3306d21e","updated":"2023-09-01 13:18:32.000000000","message":"Ack","commit_id":"2fc073c0a6a277cafd533a4a9f4992479f687c1d"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"716f4e0f480b3235718ac294584f92198f4ca8ed","unresolved":true,"context_lines":[{"line_number":17,"context_line":"    state: directory"},{"line_number":18,"context_line":"    owner: \"ironic\""},{"line_number":19,"context_line":"    group: \"ironic\""},{"line_number":20,"context_line":"    mode: \"0644\""},{"line_number":21,"context_line":"  when: ironic_log_dir is truthy"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"- name: \"Ensure {{ inspector_log_dir }} exists\""}],"source_content_type":"text/x-yaml","patch_set":9,"id":"ca3417d0_aa018113","line":20,"range":{"start_line":20,"start_character":11,"end_line":20,"end_character":15},"updated":"2023-08-31 14:33:08.000000000","message":"wrong permissions for directory","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"230f51bb8f92d9790294671f67aec14a95654c29","unresolved":false,"context_lines":[{"line_number":17,"context_line":"    state: directory"},{"line_number":18,"context_line":"    owner: \"ironic\""},{"line_number":19,"context_line":"    group: \"ironic\""},{"line_number":20,"context_line":"    mode: \"0644\""},{"line_number":21,"context_line":"  when: ironic_log_dir is truthy"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"- name: \"Ensure {{ inspector_log_dir }} exists\""}],"source_content_type":"text/x-yaml","patch_set":9,"id":"01d62952_75503209","line":20,"range":{"start_line":20,"start_character":11,"end_line":20,"end_character":15},"in_reply_to":"ca3417d0_aa018113","updated":"2023-09-01 13:18:32.000000000","message":"Removed.","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"716f4e0f480b3235718ac294584f92198f4ca8ed","unresolved":true,"context_lines":[{"line_number":26,"context_line":"    state: directory"},{"line_number":27,"context_line":"    owner: \"ironic\""},{"line_number":28,"context_line":"    group: \"ironic\""},{"line_number":29,"context_line":"    mode: \"0644\""},{"line_number":30,"context_line":"  when: inspector_log_dir is truthy"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"- name: \"Template logrotate config\""}],"source_content_type":"text/x-yaml","patch_set":9,"id":"dc9b526e_585514f0","line":29,"range":{"start_line":29,"start_character":11,"end_line":29,"end_character":15},"updated":"2023-08-31 14:33:08.000000000","message":"ditto","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"230f51bb8f92d9790294671f67aec14a95654c29","unresolved":false,"context_lines":[{"line_number":26,"context_line":"    state: directory"},{"line_number":27,"context_line":"    owner: \"ironic\""},{"line_number":28,"context_line":"    group: \"ironic\""},{"line_number":29,"context_line":"    mode: \"0644\""},{"line_number":30,"context_line":"  when: inspector_log_dir is truthy"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"- name: \"Template logrotate config\""}],"source_content_type":"text/x-yaml","patch_set":9,"id":"ce088c7e_8e37ad7b","line":29,"range":{"start_line":29,"start_character":11,"end_line":29,"end_character":15},"in_reply_to":"dc9b526e_585514f0","updated":"2023-09-01 13:18:32.000000000","message":"Removed.","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"cb5666a7c38f3d1dd1b9441da5d93a84c9a6dd8f","unresolved":true,"context_lines":[{"line_number":11,"context_line":"# See the License for the specific language governing permissions and"},{"line_number":12,"context_line":"# limitations under the License."},{"line_number":13,"context_line":"---"},{"line_number":14,"context_line":"- name: \"Ensure {{ ironic_log_dir }} exists\""},{"line_number":15,"context_line":"  file:"},{"line_number":16,"context_line":"    name: \"{{ ironic_log_dir }}\""},{"line_number":17,"context_line":"    state: directory"},{"line_number":18,"context_line":"    owner: \"ironic\""},{"line_number":19,"context_line":"    group: \"ironic\""},{"line_number":20,"context_line":"    mode: \"0644\""},{"line_number":21,"context_line":"  when: ironic_log_dir is truthy"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"- name: \"Ensure {{ inspector_log_dir }} exists\""},{"line_number":24,"context_line":"  file:"},{"line_number":25,"context_line":"    name: \"{{ inspector_log_dir }}\""},{"line_number":26,"context_line":"    state: directory"},{"line_number":27,"context_line":"    owner: \"ironic\""},{"line_number":28,"context_line":"    group: \"ironic\""},{"line_number":29,"context_line":"    mode: \"0644\""},{"line_number":30,"context_line":"  when: inspector_log_dir is truthy"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"- name: \"Template logrotate config\""},{"line_number":33,"context_line":"  template:"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"8cd8748c_4d07a667","line":30,"range":{"start_line":14,"start_character":0,"end_line":30,"end_character":35},"updated":"2023-08-31 14:28:31.000000000","message":"Personally I think this role should just assume that these directories exist.","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"},{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"b37fbbdcdfd172fa809f201b4a9a1b82160a4da5","unresolved":false,"context_lines":[{"line_number":11,"context_line":"# See the License for the specific language governing permissions and"},{"line_number":12,"context_line":"# limitations under the License."},{"line_number":13,"context_line":"---"},{"line_number":14,"context_line":"- name: \"Ensure {{ ironic_log_dir }} exists\""},{"line_number":15,"context_line":"  file:"},{"line_number":16,"context_line":"    name: \"{{ ironic_log_dir }}\""},{"line_number":17,"context_line":"    state: directory"},{"line_number":18,"context_line":"    owner: \"ironic\""},{"line_number":19,"context_line":"    group: \"ironic\""},{"line_number":20,"context_line":"    mode: \"0644\""},{"line_number":21,"context_line":"  when: ironic_log_dir is truthy"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"- name: \"Ensure {{ inspector_log_dir }} exists\""},{"line_number":24,"context_line":"  file:"},{"line_number":25,"context_line":"    name: \"{{ inspector_log_dir }}\""},{"line_number":26,"context_line":"    state: directory"},{"line_number":27,"context_line":"    owner: \"ironic\""},{"line_number":28,"context_line":"    group: \"ironic\""},{"line_number":29,"context_line":"    mode: \"0644\""},{"line_number":30,"context_line":"  when: inspector_log_dir is truthy"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"- name: \"Template logrotate config\""},{"line_number":33,"context_line":"  template:"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"1c483fc5_baf8653e","line":30,"range":{"start_line":14,"start_character":0,"end_line":30,"end_character":35},"in_reply_to":"7ca5e956_7a2b1e24","updated":"2023-09-04 08:20:45.000000000","message":"If the log directories do not exist, more things will fail than only log rotation - so it should be handled somewhere else and should not be in scope of that patch.","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"9e2074251c5221c37b07e1745ce5b747f0210378","unresolved":false,"context_lines":[{"line_number":11,"context_line":"# See the License for the specific language governing permissions and"},{"line_number":12,"context_line":"# limitations under the License."},{"line_number":13,"context_line":"---"},{"line_number":14,"context_line":"- name: \"Ensure {{ ironic_log_dir }} exists\""},{"line_number":15,"context_line":"  file:"},{"line_number":16,"context_line":"    name: \"{{ ironic_log_dir }}\""},{"line_number":17,"context_line":"    state: directory"},{"line_number":18,"context_line":"    owner: \"ironic\""},{"line_number":19,"context_line":"    group: \"ironic\""},{"line_number":20,"context_line":"    mode: \"0644\""},{"line_number":21,"context_line":"  when: ironic_log_dir is truthy"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"- name: \"Ensure {{ inspector_log_dir }} exists\""},{"line_number":24,"context_line":"  file:"},{"line_number":25,"context_line":"    name: \"{{ inspector_log_dir }}\""},{"line_number":26,"context_line":"    state: directory"},{"line_number":27,"context_line":"    owner: \"ironic\""},{"line_number":28,"context_line":"    group: \"ironic\""},{"line_number":29,"context_line":"    mode: \"0644\""},{"line_number":30,"context_line":"  when: inspector_log_dir is truthy"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"- name: \"Template logrotate config\""},{"line_number":33,"context_line":"  template:"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"a6b5ee50_cfda7a9b","line":30,"range":{"start_line":14,"start_character":0,"end_line":30,"end_character":35},"in_reply_to":"8cd8748c_4d07a667","updated":"2023-09-01 13:08:37.000000000","message":"Done","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"b98f0e1b42b8cd6fa35e6b95727289d25c767c42","unresolved":true,"context_lines":[{"line_number":11,"context_line":"# See the License for the specific language governing permissions and"},{"line_number":12,"context_line":"# limitations under the License."},{"line_number":13,"context_line":"---"},{"line_number":14,"context_line":"- name: \"Ensure {{ ironic_log_dir }} exists\""},{"line_number":15,"context_line":"  file:"},{"line_number":16,"context_line":"    name: \"{{ ironic_log_dir }}\""},{"line_number":17,"context_line":"    state: directory"},{"line_number":18,"context_line":"    owner: \"ironic\""},{"line_number":19,"context_line":"    group: \"ironic\""},{"line_number":20,"context_line":"    mode: \"0644\""},{"line_number":21,"context_line":"  when: ironic_log_dir is truthy"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"- name: \"Ensure {{ inspector_log_dir }} exists\""},{"line_number":24,"context_line":"  file:"},{"line_number":25,"context_line":"    name: \"{{ inspector_log_dir }}\""},{"line_number":26,"context_line":"    state: directory"},{"line_number":27,"context_line":"    owner: \"ironic\""},{"line_number":28,"context_line":"    group: \"ironic\""},{"line_number":29,"context_line":"    mode: \"0644\""},{"line_number":30,"context_line":"  when: inspector_log_dir is truthy"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"- name: \"Template logrotate config\""},{"line_number":33,"context_line":"  template:"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"7ca5e956_7a2b1e24","line":30,"range":{"start_line":14,"start_character":0,"end_line":30,"end_character":35},"in_reply_to":"a6b5ee50_cfda7a9b","updated":"2023-09-01 13:17:59.000000000","message":"the log directories can be overridden, so these tasks still needed.","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"cb5666a7c38f3d1dd1b9441da5d93a84c9a6dd8f","unresolved":true,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"- name: \"Template logrotate config\""},{"line_number":33,"context_line":"  template:"},{"line_number":34,"context_line":"    src: \"logrotate.conf.json.j2\""},{"line_number":35,"context_line":"    dest: \"/etc/logrotate.conf\""},{"line_number":36,"context_line":"    mode: \"0600\""}],"source_content_type":"text/x-yaml","patch_set":9,"id":"0d8ad3c8_55322105","line":34,"updated":"2023-08-31 14:28:31.000000000","message":"Remove .json (and rename the file) - it\u0027s not JSON","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"9e2074251c5221c37b07e1745ce5b747f0210378","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"- name: \"Template logrotate config\""},{"line_number":33,"context_line":"  template:"},{"line_number":34,"context_line":"    src: \"logrotate.conf.json.j2\""},{"line_number":35,"context_line":"    dest: \"/etc/logrotate.conf\""},{"line_number":36,"context_line":"    mode: \"0600\""}],"source_content_type":"text/x-yaml","patch_set":9,"id":"18f75ead_ad29b406","line":34,"in_reply_to":"0d8ad3c8_55322105","updated":"2023-09-01 13:08:37.000000000","message":"Done","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"}],"playbooks/roles/bifrost-logrotate-install/tasks/start.yml":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"cb5666a7c38f3d1dd1b9441da5d93a84c9a6dd8f","unresolved":true,"context_lines":[{"line_number":18,"context_line":"- name: \"Ensure logrotate service is started\""},{"line_number":19,"context_line":"  service:"},{"line_number":20,"context_line":"    name: logrotate"},{"line_number":21,"context_line":"    state: started"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"44bb5bc9_544ffb79","line":21,"updated":"2023-08-31 14:28:31.000000000","message":"Also needs \u0027enabled: true\u0027","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"9e2074251c5221c37b07e1745ce5b747f0210378","unresolved":false,"context_lines":[{"line_number":18,"context_line":"- name: \"Ensure logrotate service is started\""},{"line_number":19,"context_line":"  service:"},{"line_number":20,"context_line":"    name: logrotate"},{"line_number":21,"context_line":"    state: started"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"783d6cad_6e6f0201","line":21,"in_reply_to":"44bb5bc9_544ffb79","updated":"2023-09-01 13:08:37.000000000","message":"Done","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"}],"playbooks/roles/bifrost-logrotate-install/templates/logrotate.conf.json.j2":[{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"5d70fc87ff63ab66fce2759df80ced783d3cb7e1","unresolved":true,"context_lines":[{"line_number":36,"context_line":""},{"line_number":37,"context_line":"maxsize {{ file_maxsize }}"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"su root kolla"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"\"{{ ironic_log_dir }}/*.log\""},{"line_number":42,"context_line":"{"}],"source_content_type":"text/x-jinja2","patch_set":3,"id":"b6f4deef_ee30d4f6","line":39,"range":{"start_line":39,"start_character":8,"end_line":39,"end_character":13},"updated":"2023-08-31 10:33:34.000000000","message":"the user should be parametrised too","commit_id":"cade8771133b93634b9059aad931e21bc927b162"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"d62a14311a55fd5b9850b1e24fac423833859bb2","unresolved":false,"context_lines":[{"line_number":36,"context_line":""},{"line_number":37,"context_line":"maxsize {{ file_maxsize }}"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"su root kolla"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"\"{{ ironic_log_dir }}/*.log\""},{"line_number":42,"context_line":"{"}],"source_content_type":"text/x-jinja2","patch_set":3,"id":"fae2450e_05fcbb90","line":39,"range":{"start_line":39,"start_character":8,"end_line":39,"end_character":13},"in_reply_to":"b6f4deef_ee30d4f6","updated":"2023-08-31 10:51:17.000000000","message":"Ack","commit_id":"cade8771133b93634b9059aad931e21bc927b162"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"cb5666a7c38f3d1dd1b9441da5d93a84c9a6dd8f","unresolved":true,"context_lines":[{"line_number":35,"context_line":"minsize {{ file_minsize }}"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"maxsize {{ file_maxsize }}"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"{% if ironic_log_dir %}"},{"line_number":40,"context_line":"\"{{ ironic_log_dir }}/*.log\""},{"line_number":41,"context_line":"{"},{"line_number":42,"context_line":"}"},{"line_number":43,"context_line":"{% endif %}"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"{% if inspector_log_dir %}"},{"line_number":46,"context_line":"\"{{ inspector_log_dir }}/*.log\""},{"line_number":47,"context_line":"{"},{"line_number":48,"context_line":"}"},{"line_number":49,"context_line":"{% endif %}"}],"source_content_type":"text/x-jinja2","patch_set":9,"id":"40ae11de_5e89c1fa","line":49,"range":{"start_line":38,"start_character":0,"end_line":49,"end_character":11},"updated":"2023-08-31 14:28:31.000000000","message":"I\u0027d consider specifying a list of paths as a variable, and looping over them here.","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"9e2074251c5221c37b07e1745ce5b747f0210378","unresolved":false,"context_lines":[{"line_number":35,"context_line":"minsize {{ file_minsize }}"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"maxsize {{ file_maxsize }}"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"{% if ironic_log_dir %}"},{"line_number":40,"context_line":"\"{{ ironic_log_dir }}/*.log\""},{"line_number":41,"context_line":"{"},{"line_number":42,"context_line":"}"},{"line_number":43,"context_line":"{% endif %}"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"{% if inspector_log_dir %}"},{"line_number":46,"context_line":"\"{{ inspector_log_dir }}/*.log\""},{"line_number":47,"context_line":"{"},{"line_number":48,"context_line":"}"},{"line_number":49,"context_line":"{% endif %}"}],"source_content_type":"text/x-jinja2","patch_set":9,"id":"a38a989e_7e57fb0d","line":49,"range":{"start_line":38,"start_character":0,"end_line":49,"end_character":11},"in_reply_to":"40ae11de_5e89c1fa","updated":"2023-09-01 13:08:37.000000000","message":"Done","commit_id":"067688c7ea2eba83e79a6fa8dd36cd0428ce962e"}]}
