)]}'
{"ansible/monasca_cleanup.yml":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"32304c39a980d687137abdffdfd86c522d05bc11","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- name: Cleanup unused Monasca services"},{"line_number":3,"context_line":"  hosts: monasca"},{"line_number":4,"context_line":"  roles:"},{"line_number":5,"context_line":"    - { role: monasca,"},{"line_number":6,"context_line":"        tags: monasca }"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"4ff65e28_51621e33","line":3,"range":{"start_line":3,"start_character":9,"end_line":3,"end_character":16},"updated":"2021-03-01 15:21:02.000000000","message":"nit: better to use the groups referenced by the role:\n\n    - monasca-api\n    - monasca-grafana\n    - monasca-log-transformer\n    - monasca-log-persister\n    - monasca-log-metrics\n    - monasca-thresh\n    - monasca-notification\n    - monasca-persister","commit_id":"4f251d6f014780a31c676213a0e35056e41629ff"}],"ansible/roles/monasca/defaults/main.yml":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"2832b639288880175b3dce9d0615f50455ff4988","unresolved":true,"context_lines":[{"line_number":24,"context_line":"# Wallaby release"},{"line_number":25,"context_line":"  monasca-log-transformer:"},{"line_number":26,"context_line":"    container_name: monasca_log_transformer"},{"line_number":27,"context_line":"    group: monasca-log-transformer"},{"line_number":28,"context_line":"    enabled: false"},{"line_number":29,"context_line":"    image: \"{{ monasca_logstash_image_full }}\""},{"line_number":30,"context_line":"    volumes: \"{{ monasca_log_transformer_default_volumes + monasca_log_transformer_extra_volumes }}\""}],"source_content_type":"text/x-yaml","patch_set":2,"id":"5c139130_67985876","line":27,"range":{"start_line":27,"start_character":11,"end_line":27,"end_character":34},"updated":"2021-01-11 09:56:24.000000000","message":"Removed inventory group will cause KeyError later","commit_id":"b8a050ba8303f85651561bc6ae6c3024ae3576fd"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"f677097a449b089cb0c90c38c39b310cdc7484bc","unresolved":false,"context_lines":[{"line_number":24,"context_line":"# Wallaby release"},{"line_number":25,"context_line":"  monasca-log-transformer:"},{"line_number":26,"context_line":"    container_name: monasca_log_transformer"},{"line_number":27,"context_line":"    group: monasca-log-transformer"},{"line_number":28,"context_line":"    enabled: false"},{"line_number":29,"context_line":"    image: \"{{ monasca_logstash_image_full }}\""},{"line_number":30,"context_line":"    volumes: \"{{ monasca_log_transformer_default_volumes + monasca_log_transformer_extra_volumes }}\""}],"source_content_type":"text/x-yaml","patch_set":2,"id":"f3fd9352_ee9b65e1","line":27,"range":{"start_line":27,"start_character":11,"end_line":27,"end_character":34},"in_reply_to":"5c139130_67985876","updated":"2021-02-17 13:46:22.000000000","message":"Done","commit_id":"b8a050ba8303f85651561bc6ae6c3024ae3576fd"},{"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":"14683e337db7b8d20e506c56212eb1011137892f","unresolved":true,"context_lines":[{"line_number":174,"context_line":"    partitions: \"{{ monasca_default_topic_partitions }}\""},{"line_number":175,"context_line":"    replication_factor: \"{{ monasca_default_topic_replication_factor }}\""},{"line_number":176,"context_line":"    enabled: True"},{"line_number":177,"context_line":"  - name: \"{{ monasca_transformed_logs_topic }}\""},{"line_number":178,"context_line":"    partitions: \"{{ monasca_default_topic_partitions }}\""},{"line_number":179,"context_line":"    replication_factor: \"{{ monasca_default_topic_replication_factor }}\""},{"line_number":180,"context_line":"    enabled: False"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"67d5e8e6_1cb321f7","line":177,"updated":"2021-03-24 17:08:31.000000000","message":"could use a comment near this","commit_id":"0743a9bf4b8bdce0aec8ee8640574ce3ee6a6b35"}],"ansible/roles/monasca/tasks/check-containers.yml":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"2832b639288880175b3dce9d0615f50455ff4988","unresolved":true,"context_lines":[{"line_number":16,"context_line":"  notify:"},{"line_number":17,"context_line":"    - \"Restart {{ item.key }} container\""},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"- name: Stop and remove containers for disabled monasca services"},{"line_number":20,"context_line":"  become: true"},{"line_number":21,"context_line":"  kolla_docker:"},{"line_number":22,"context_line":"    action: \"stop_and_remove_container\""},{"line_number":23,"context_line":"    name: \"{{ item.value.container_name }}\""},{"line_number":24,"context_line":"  when:"},{"line_number":25,"context_line":"    - inventory_hostname in groups[item.value.group]"},{"line_number":26,"context_line":"    - not item.value.enabled | bool"},{"line_number":27,"context_line":"  with_dict: \"{{ monasca_services }}\""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"- name: Remove volumes for disabled monasca services"},{"line_number":30,"context_line":"  become: true"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"4e94327b_8e83138c","line":27,"range":{"start_line":19,"start_character":0,"end_line":27,"end_character":37},"updated":"2021-01-11 09:56:24.000000000","message":"I\u0027m wondering if some standard cleanup role would be useful.","commit_id":"b8a050ba8303f85651561bc6ae6c3024ae3576fd"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"80ca1b11f2a1e32a4bffc2595ac22c12f44bc69a","unresolved":true,"context_lines":[{"line_number":16,"context_line":"  notify:"},{"line_number":17,"context_line":"    - \"Restart {{ item.key }} container\""},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"- name: Stop and remove containers for disabled monasca services"},{"line_number":20,"context_line":"  become: true"},{"line_number":21,"context_line":"  kolla_docker:"},{"line_number":22,"context_line":"    action: \"stop_and_remove_container\""},{"line_number":23,"context_line":"    name: \"{{ item.value.container_name }}\""},{"line_number":24,"context_line":"  when:"},{"line_number":25,"context_line":"    - inventory_hostname in groups[item.value.group]"},{"line_number":26,"context_line":"    - not item.value.enabled | bool"},{"line_number":27,"context_line":"  with_dict: \"{{ monasca_services }}\""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"- name: Remove volumes for disabled monasca services"},{"line_number":30,"context_line":"  become: true"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"8e813995_b722f06a","line":27,"range":{"start_line":19,"start_character":0,"end_line":27,"end_character":37},"in_reply_to":"4e94327b_8e83138c","updated":"2021-01-11 11:06:40.000000000","message":"I was thinking that too - it would be quite easy apart from docker volumes","commit_id":"b8a050ba8303f85651561bc6ae6c3024ae3576fd"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"f677097a449b089cb0c90c38c39b310cdc7484bc","unresolved":true,"context_lines":[{"line_number":16,"context_line":"  notify:"},{"line_number":17,"context_line":"    - \"Restart {{ item.key }} container\""},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"- name: Stop and remove containers for disabled monasca services"},{"line_number":20,"context_line":"  become: true"},{"line_number":21,"context_line":"  kolla_docker:"},{"line_number":22,"context_line":"    action: \"stop_and_remove_container\""},{"line_number":23,"context_line":"    name: \"{{ item.value.container_name }}\""},{"line_number":24,"context_line":"  when:"},{"line_number":25,"context_line":"    - inventory_hostname in groups[item.value.group]"},{"line_number":26,"context_line":"    - not item.value.enabled | bool"},{"line_number":27,"context_line":"  with_dict: \"{{ monasca_services }}\""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"- name: Remove volumes for disabled monasca services"},{"line_number":30,"context_line":"  become: true"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"1ce8242d_44c899ee","line":27,"range":{"start_line":19,"start_character":0,"end_line":27,"end_character":37},"in_reply_to":"8e813995_b722f06a","updated":"2021-02-17 13:46:22.000000000","message":"I\u0027ve kept it in this role for now, but we could consider making it more general in a different patch.","commit_id":"b8a050ba8303f85651561bc6ae6c3024ae3576fd"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"2832b639288880175b3dce9d0615f50455ff4988","unresolved":true,"context_lines":[{"line_number":30,"context_line":"  become: true"},{"line_number":31,"context_line":"  kolla_docker:"},{"line_number":32,"context_line":"    action: \"remove_volume\""},{"line_number":33,"context_line":"    volumes: \"{{ item.value.volumes }}\""},{"line_number":34,"context_line":"    name: \"{{ item.value.container_name }}\""},{"line_number":35,"context_line":"  when:"},{"line_number":36,"context_line":"    - inventory_hostname in groups[item.value.group]"},{"line_number":37,"context_line":"    - not item.value.enabled | bool"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"2312c5bd_a9dba34a","line":34,"range":{"start_line":33,"start_character":0,"end_line":34,"end_character":43},"updated":"2021-01-11 09:56:24.000000000","message":"Argument \u0027name\u0027 is the name of the volume, singular.","commit_id":"b8a050ba8303f85651561bc6ae6c3024ae3576fd"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"f677097a449b089cb0c90c38c39b310cdc7484bc","unresolved":false,"context_lines":[{"line_number":30,"context_line":"  become: true"},{"line_number":31,"context_line":"  kolla_docker:"},{"line_number":32,"context_line":"    action: \"remove_volume\""},{"line_number":33,"context_line":"    volumes: \"{{ item.value.volumes }}\""},{"line_number":34,"context_line":"    name: \"{{ item.value.container_name }}\""},{"line_number":35,"context_line":"  when:"},{"line_number":36,"context_line":"    - inventory_hostname in groups[item.value.group]"},{"line_number":37,"context_line":"    - not item.value.enabled | bool"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"6e4bd4a4_9982ff3c","line":34,"range":{"start_line":33,"start_character":0,"end_line":34,"end_character":43},"in_reply_to":"2312c5bd_a9dba34a","updated":"2021-02-17 13:46:22.000000000","message":"Done","commit_id":"b8a050ba8303f85651561bc6ae6c3024ae3576fd"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"2832b639288880175b3dce9d0615f50455ff4988","unresolved":true,"context_lines":[{"line_number":26,"context_line":"    - not item.value.enabled | bool"},{"line_number":27,"context_line":"  with_dict: \"{{ monasca_services }}\""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"- name: Remove volumes for disabled monasca services"},{"line_number":30,"context_line":"  become: true"},{"line_number":31,"context_line":"  kolla_docker:"},{"line_number":32,"context_line":"    action: \"remove_volume\""},{"line_number":33,"context_line":"    volumes: \"{{ item.value.volumes }}\""},{"line_number":34,"context_line":"    name: \"{{ item.value.container_name }}\""},{"line_number":35,"context_line":"  when:"},{"line_number":36,"context_line":"    - inventory_hostname in groups[item.value.group]"},{"line_number":37,"context_line":"    - not item.value.enabled | bool"},{"line_number":38,"context_line":"  with_dict: \"{{ monasca_services }}\""}],"source_content_type":"text/x-yaml","patch_set":2,"id":"484f255b_a2441581","line":38,"range":{"start_line":29,"start_character":0,"end_line":38,"end_character":37},"updated":"2021-01-11 09:56:24.000000000","message":"Could be risky. Also, how do we differentiate between removed services and temporarily disabled ones (you mentioned that the alert pipeline could be switched back on).\n\nThere are also bind mounts vs. named volumes to consider, and whether any volumes are shared with other containers.","commit_id":"b8a050ba8303f85651561bc6ae6c3024ae3576fd"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"f677097a449b089cb0c90c38c39b310cdc7484bc","unresolved":false,"context_lines":[{"line_number":26,"context_line":"    - not item.value.enabled | bool"},{"line_number":27,"context_line":"  with_dict: \"{{ monasca_services }}\""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"- name: Remove volumes for disabled monasca services"},{"line_number":30,"context_line":"  become: true"},{"line_number":31,"context_line":"  kolla_docker:"},{"line_number":32,"context_line":"    action: \"remove_volume\""},{"line_number":33,"context_line":"    volumes: \"{{ item.value.volumes }}\""},{"line_number":34,"context_line":"    name: \"{{ item.value.container_name }}\""},{"line_number":35,"context_line":"  when:"},{"line_number":36,"context_line":"    - inventory_hostname in groups[item.value.group]"},{"line_number":37,"context_line":"    - not item.value.enabled | bool"},{"line_number":38,"context_line":"  with_dict: \"{{ monasca_services }}\""}],"source_content_type":"text/x-yaml","patch_set":2,"id":"906e3753_1d59b0b8","line":38,"range":{"start_line":29,"start_character":0,"end_line":38,"end_character":37},"in_reply_to":"18e41962_93beaaf4","updated":"2021-02-17 13:46:22.000000000","message":"Done - in this case data is transient so I think it is reasonable to remove volumes. In the broader scope, there may be exceptions as you say.","commit_id":"b8a050ba8303f85651561bc6ae6c3024ae3576fd"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"80ca1b11f2a1e32a4bffc2595ac22c12f44bc69a","unresolved":true,"context_lines":[{"line_number":26,"context_line":"    - not item.value.enabled | bool"},{"line_number":27,"context_line":"  with_dict: \"{{ monasca_services }}\""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"- name: Remove volumes for disabled monasca services"},{"line_number":30,"context_line":"  become: true"},{"line_number":31,"context_line":"  kolla_docker:"},{"line_number":32,"context_line":"    action: \"remove_volume\""},{"line_number":33,"context_line":"    volumes: \"{{ item.value.volumes }}\""},{"line_number":34,"context_line":"    name: \"{{ item.value.container_name }}\""},{"line_number":35,"context_line":"  when:"},{"line_number":36,"context_line":"    - inventory_hostname in groups[item.value.group]"},{"line_number":37,"context_line":"    - not item.value.enabled | bool"},{"line_number":38,"context_line":"  with_dict: \"{{ monasca_services }}\""}],"source_content_type":"text/x-yaml","patch_set":2,"id":"18e41962_93beaaf4","line":38,"range":{"start_line":29,"start_character":0,"end_line":38,"end_character":37},"in_reply_to":"484f255b_a2441581","updated":"2021-01-11 11:06:40.000000000","message":"I\u0027ve got something in the works to address these points","commit_id":"b8a050ba8303f85651561bc6ae6c3024ae3576fd"}],"ansible/roles/monasca/templates/monasca-log-metrics/log-metrics.conf.j2":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"2832b639288880175b3dce9d0615f50455ff4988","unresolved":true,"context_lines":[{"line_number":10,"context_line":"input {"},{"line_number":11,"context_line":"    kafka {"},{"line_number":12,"context_line":"        bootstrap_servers \u003d\u003e \"{{ monasca_kafka_servers }}\""},{"line_number":13,"context_line":"        topics \u003d\u003e [\"{{ monasca_raw_logs_topic }}\"]"},{"line_number":14,"context_line":"        group_id \u003d\u003e \"log_metrics\""},{"line_number":15,"context_line":"        consumer_threads \u003d\u003e \"{{ monasca_log_pipeline_threads }}\""},{"line_number":16,"context_line":"        codec \u003d\u003e json"}],"source_content_type":"text/x-jinja2","patch_set":2,"id":"128d2d05_4bb658d7","line":13,"range":{"start_line":13,"start_character":23,"end_line":13,"end_character":45},"updated":"2021-01-11 09:56:24.000000000","message":"Do we need to consider providing some migration path and draining the transformed logs topic?","commit_id":"b8a050ba8303f85651561bc6ae6c3024ae3576fd"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"f677097a449b089cb0c90c38c39b310cdc7484bc","unresolved":true,"context_lines":[{"line_number":10,"context_line":"input {"},{"line_number":11,"context_line":"    kafka {"},{"line_number":12,"context_line":"        bootstrap_servers \u003d\u003e \"{{ monasca_kafka_servers }}\""},{"line_number":13,"context_line":"        topics \u003d\u003e [\"{{ monasca_raw_logs_topic }}\"]"},{"line_number":14,"context_line":"        group_id \u003d\u003e \"log_metrics\""},{"line_number":15,"context_line":"        consumer_threads \u003d\u003e \"{{ monasca_log_pipeline_threads }}\""},{"line_number":16,"context_line":"        codec \u003d\u003e json"}],"source_content_type":"text/x-jinja2","patch_set":2,"id":"81d56170_94bf435e","line":13,"range":{"start_line":13,"start_character":23,"end_line":13,"end_character":45},"in_reply_to":"128d2d05_4bb658d7","updated":"2021-02-17 13:46:22.000000000","message":"Fair point. I\u0027ve updated the release note. It would be a lot of effort to automate fully with only a small return, but a manual procedure can be used if required.","commit_id":"b8a050ba8303f85651561bc6ae6c3024ae3576fd"}],"ansible/site.yml":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"2832b639288880175b3dce9d0615f50455ff4988","unresolved":true,"context_lines":[{"line_number":881,"context_line":"    - monasca-agent-statsd"},{"line_number":882,"context_line":"    - monasca-api"},{"line_number":883,"context_line":"    - monasca-grafana"},{"line_number":884,"context_line":"    - monasca-log-transformer"},{"line_number":885,"context_line":"    - monasca-log-persister"},{"line_number":886,"context_line":"    - monasca-log-metrics"},{"line_number":887,"context_line":"    - monasca-thresh"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"60fd236c_290189cc","side":"PARENT","line":884,"range":{"start_line":884,"start_character":4,"end_line":884,"end_character":29},"updated":"2021-01-11 09:56:24.000000000","message":"Strictly this should still be here if we want to clean up.","commit_id":"7d7462f5e87f78b705713ced94f711805de56988"}],"doc/source/reference/logging-and-monitoring/monasca-guide.rst":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"33e284ab154f488b8d32b6d8444ca60d75151bc0","unresolved":true,"context_lines":[{"line_number":323,"context_line":"disabling certain parts of the Monasca pipeline. A full list of scenarios in"},{"line_number":324,"context_line":"which you must run the cleanup command is given below:"},{"line_number":325,"context_line":""},{"line_number":326,"context_line":"- Upgrading from Victoria to Wallaby to remove the unused Monasca Log"},{"line_number":327,"context_line":"  Transformer service"},{"line_number":328,"context_line":""},{"line_number":329,"context_line":"The cleanup command can be invoked from the Kolla Ansible CLI, for example:"},{"line_number":330,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"fff7a0ca_a1d2bd3a","line":327,"range":{"start_line":326,"start_character":0,"end_line":327,"end_character":21},"updated":"2021-03-02 10:25:51.000000000","message":"nit: no longer required","commit_id":"db27debdfd113b3797c8c2d96b838ad8d5bff298"},{"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":"14683e337db7b8d20e506c56212eb1011137892f","unresolved":true,"context_lines":[{"line_number":322,"context_line":"~~~~~~~"},{"line_number":323,"context_line":""},{"line_number":324,"context_line":"From time-to-time it may be necessary to manually invoke the Monasca cleanup"},{"line_number":325,"context_line":"command. If this is required during an upgrade it will be mentioned in the"},{"line_number":326,"context_line":"release notes. It may also be necessary to run the cleanup command when"},{"line_number":327,"context_line":"disabling certain parts of the Monasca pipeline. A full list of scenarios in"},{"line_number":328,"context_line":"which you must run the cleanup command is given below:"}],"source_content_type":"text/x-rst","patch_set":7,"id":"6e150a97_c4bb5f85","line":325,"range":{"start_line":325,"start_character":46,"end_line":325,"end_character":47},"updated":"2021-03-24 17:08:31.000000000","message":"nit: comma","commit_id":"0743a9bf4b8bdce0aec8ee8640574ce3ee6a6b35"},{"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":"14683e337db7b8d20e506c56212eb1011137892f","unresolved":true,"context_lines":[{"line_number":322,"context_line":"~~~~~~~"},{"line_number":323,"context_line":""},{"line_number":324,"context_line":"From time-to-time it may be necessary to manually invoke the Monasca cleanup"},{"line_number":325,"context_line":"command. If this is required during an upgrade it will be mentioned in the"},{"line_number":326,"context_line":"release notes. It may also be necessary to run the cleanup command when"},{"line_number":327,"context_line":"disabling certain parts of the Monasca pipeline. A full list of scenarios in"},{"line_number":328,"context_line":"which you must run the cleanup command is given below:"},{"line_number":329,"context_line":""},{"line_number":330,"context_line":"- Upgrading from Victoria to Wallaby to remove the unused Monasca Log"},{"line_number":331,"context_line":"  Transformer service"},{"line_number":332,"context_line":""},{"line_number":333,"context_line":"The cleanup command can be invoked from the Kolla Ansible CLI, for example:"},{"line_number":334,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"b295586f_0431edd5","line":331,"range":{"start_line":325,"start_character":9,"end_line":331,"end_character":21},"updated":"2021-03-24 17:08:31.000000000","message":"But... the cleanup is run as part of the upgrade. Where is the \"must\"?","commit_id":"0743a9bf4b8bdce0aec8ee8640574ce3ee6a6b35"}],"kolla_ansible/filters.py":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"98766aa74fa81a154a44d6b771b435e3beb2dc79","unresolved":true,"context_lines":[{"line_number":20,"context_line":""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"@jinja2.contextfilter"},{"line_number":23,"context_line":"def select_volumes_for_services(context, services, enabled\u003dTrue):"},{"line_number":24,"context_line":"    \"\"\"Return docker volumes associated with a top level service"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    Note that this may include volumes which are shared with"}],"source_content_type":"text/x-python","patch_set":3,"id":"0d621207_af668cff","line":23,"updated":"2021-01-25 11:41:40.000000000","message":"This could be simplified a bit by chaining existing filters, either in this filter or in the task.\n\nAlmost existing anyway: create select_services_disabled_and_mapped_to_host based on select_services_enabled_and_mapped_to_host. Then this filter doesn\u0027t need to worry about enabled flags, and doesn\u0027t need to return the groups.\n\nThe slightly tricky part is volumes that are shared between containers.","commit_id":"0c9cd74d8edfefeacd267711df04da43d542844e"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"98766aa74fa81a154a44d6b771b435e3beb2dc79","unresolved":true,"context_lines":[{"line_number":29,"context_line":"    :param context: Jinja2 Context object."},{"line_number":30,"context_line":"    :param service: Service definition, dict."},{"line_number":31,"context_line":"    :param enabled: Bool. When true, return volumes for only"},{"line_number":32,"context_line":"        enabled sub-services. Note that this is different to"},{"line_number":33,"context_line":"        whether the service is enabled at the top level by an"},{"line_number":34,"context_line":"        enable_foo_service flag. When false, return only volumes"},{"line_number":35,"context_line":"        for disabled sub-services. For example, if the Monasca"}],"source_content_type":"text/x-python","patch_set":3,"id":"5e6ca8f4_1a3fba6b","line":32,"range":{"start_line":32,"start_character":16,"end_line":32,"end_character":28},"updated":"2021-01-25 11:41:40.000000000","message":"I think we normally just overload and call them services :)","commit_id":"0c9cd74d8edfefeacd267711df04da43d542844e"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"98766aa74fa81a154a44d6b771b435e3beb2dc79","unresolved":true,"context_lines":[{"line_number":44,"context_line":"    service_volume_mappings \u003d []"},{"line_number":45,"context_line":"    for service in services:"},{"line_number":46,"context_line":"        service_state \u003d services[service][\u0027enabled\u0027]"},{"line_number":47,"context_line":"        assert isinstance(service_state, bool)"},{"line_number":48,"context_line":"        if service_state !\u003d enabled:"},{"line_number":49,"context_line":"            continue"},{"line_number":50,"context_line":"        for volume in services[service][\u0027volumes\u0027]:"}],"source_content_type":"text/x-python","patch_set":3,"id":"b11c51b0_8ec8c2c7","line":47,"range":{"start_line":47,"start_character":8,"end_line":47,"end_character":46},"updated":"2021-01-25 11:41:40.000000000","message":"_call_bool_filter(context, enabled)","commit_id":"0c9cd74d8edfefeacd267711df04da43d542844e"}]}
