)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"1f27efc8c7d02707f3ab0429d6cd338104b106f2","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Alexander Yeremko \u003calexander.yeremko@walmart.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2021-11-30 07:36:01 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"initial commit, Implements: blueprint protecting-plaintext-configs"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: I0c6bb8cf90650260dca082f1ebe217131f87e0a2"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"e3741b40_cd34ed27","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":15},"updated":"2021-12-10 13:36:11.000000000","message":"and it\u0027s not itial commit, and we would need valid commit message here","commit_id":"c9ee85ce25c7a5cd3dd620f1441c847dba4a3a4d"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"1f27efc8c7d02707f3ab0429d6cd338104b106f2","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Alexander Yeremko \u003calexander.yeremko@walmart.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2021-11-30 07:36:01 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"initial commit, Implements: blueprint protecting-plaintext-configs"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: I0c6bb8cf90650260dca082f1ebe217131f87e0a2"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"4538e213_e7847fd4","line":7,"range":{"start_line":7,"start_character":16,"end_line":7,"end_character":66},"updated":"2021-12-10 13:36:11.000000000","message":"and this should be on new line","commit_id":"c9ee85ce25c7a5cd3dd620f1441c847dba4a3a4d"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"38ddf9ba982e81a7488e7fed8f905a361d03274b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"6f916c9f_9f10401c","updated":"2021-12-10 13:35:18.000000000","message":"and ofc there\u0027s also merge conflict now","commit_id":"c9ee85ce25c7a5cd3dd620f1441c847dba4a3a4d"}],"defaults/main.yml":[{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"bf1b061b4f5ab2e1b305090b33b8f267938f8636","unresolved":true,"context_lines":[{"line_number":257,"context_line":"glance_optional_oslomsg_amqp1_pip_packages:"},{"line_number":258,"context_line":"  - oslo.messaging[amqp1]"},{"line_number":259,"context_line":""},{"line_number":260,"context_line":"secret_config_storage_optional_pip_packages:"},{"line_number":261,"context_line":"  - castellan"},{"line_number":262,"context_line":""},{"line_number":263,"context_line":"glance_api_init_overrides: {}"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"a0571693_b6a71772","line":260,"range":{"start_line":260,"start_character":0,"end_line":260,"end_character":43},"updated":"2021-10-26 15:45:32.000000000","message":"glance_secret_config_storage_optional_pip_packages","commit_id":"68ec951453a262c4b862645d60d3808c72b8b50f"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"bf1b061b4f5ab2e1b305090b33b8f267938f8636","unresolved":true,"context_lines":[{"line_number":259,"context_line":""},{"line_number":260,"context_line":"secret_config_storage_optional_pip_packages:"},{"line_number":261,"context_line":"  - castellan"},{"line_number":262,"context_line":""},{"line_number":263,"context_line":"glance_api_init_overrides: {}"},{"line_number":264,"context_line":""},{"line_number":265,"context_line":"# With enabled uwsgi glance has broken functionality of"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"bdf8640e_c7d138d4","line":262,"updated":"2021-10-26 15:45:32.000000000","message":"We should also add the following variable and use it in the scope of this role:\n\n  glance_use_secret_storage: \"{{ openstack_use_secret_storage | default(False) }}\"","commit_id":"68ec951453a262c4b862645d60d3808c72b8b50f"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"4bd3310b56416ec69b052ca5e20cfd8c94ca5a86","unresolved":true,"context_lines":[{"line_number":302,"context_line":""},{"line_number":303,"context_line":"glance_use_secret_storage: \"{{ openstack_use_secret_storage | default(False) }}\""},{"line_number":304,"context_line":""},{"line_number":305,"context_line":"glance_vault_setup_host: \"{{ groups[\u0027vault_all\u0027][0] }}\""}],"source_content_type":"text/x-yaml","patch_set":2,"id":"72b7c548_ea07a4d1","line":305,"range":{"start_line":305,"start_character":29,"end_line":305,"end_character":51},"updated":"2021-12-10 13:31:17.000000000","message":"openstack_vault_setup_host | default(localhost) (we assume that there might be no such group as vault_all) \n\n\nopenstack_vault_setup_host: \"{{ groups[\u0027vault_all\u0027][0] }}\"\n\nthat we will define in https://opendev.org/openstack/openstack-ansible/src/branch/master/inventory/group_vars/all/infra.yml","commit_id":"c9ee85ce25c7a5cd3dd620f1441c847dba4a3a4d"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"38ddf9ba982e81a7488e7fed8f905a361d03274b","unresolved":true,"context_lines":[{"line_number":302,"context_line":""},{"line_number":303,"context_line":"glance_use_secret_storage: \"{{ openstack_use_secret_storage | default(False) }}\""},{"line_number":304,"context_line":""},{"line_number":305,"context_line":"glance_vault_setup_host: \"{{ groups[\u0027vault_all\u0027][0] }}\""}],"source_content_type":"text/x-yaml","patch_set":2,"id":"220e75d3_5455bfa2","line":305,"range":{"start_line":305,"start_character":29,"end_line":305,"end_character":51},"in_reply_to":"72b7c548_ea07a4d1","updated":"2021-12-10 13:35:18.000000000","message":"Updated https://review.opendev.org/c/openstack/openstack-ansible/+/800787/9/inventory/group_vars/all/infra.yml to reflect that","commit_id":"c9ee85ce25c7a5cd3dd620f1441c847dba4a3a4d"}],"files/encrypt_secrets.py":[{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"bf1b061b4f5ab2e1b305090b33b8f267938f8636","unresolved":true,"context_lines":[{"line_number":1,"context_line":"#!/usr/bin/env python"},{"line_number":2,"context_line":"# Copyright 2021, City Network International AB"},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\");"},{"line_number":5,"context_line":"# you may not use this file except in compliance with the License."}],"source_content_type":"text/x-python","patch_set":1,"id":"64baaf60_b1c4e52f","line":2,"range":{"start_line":2,"start_character":0,"end_line":2,"end_character":47},"updated":"2021-10-26 15:45:32.000000000","message":"That is wrong license string","commit_id":"68ec951453a262c4b862645d60d3808c72b8b50f"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"4bd3310b56416ec69b052ca5e20cfd8c94ca5a86","unresolved":true,"context_lines":[{"line_number":1,"context_line":"#!/usr/bin/env python"},{"line_number":2,"context_line":"# Copyright 2021, Wal-Mart Stores, Inc."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\");"}],"source_content_type":"text/x-python","patch_set":2,"id":"b37ff6a4_97d45705","line":1,"updated":"2021-12-10 13:31:17.000000000","message":"We _really_ should make it as an ansible plugin and re-work logic","commit_id":"c9ee85ce25c7a5cd3dd620f1441c847dba4a3a4d"}],"tasks/glance_install.yml":[{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"bf1b061b4f5ab2e1b305090b33b8f267938f8636","unresolved":true,"context_lines":[{"line_number":138,"context_line":"      {{ glance_pip_packages |"},{"line_number":139,"context_line":"           union(glance_user_pip_packages) |"},{"line_number":140,"context_line":"             union(((glance_oslomsg_amqp1_enabled | bool) | ternary(glance_optional_oslomsg_amqp1_pip_packages, []))) |"},{"line_number":141,"context_line":"              union(((use_secret_storage | bool) | ternary(secret_config_storage_optional_pip_packages, []))) }}"},{"line_number":142,"context_line":"    venv_facts_when_changed:"},{"line_number":143,"context_line":"      - section: \"glance\""},{"line_number":144,"context_line":"        option: \"need_service_restart\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"ddd41f71_926ece4d","line":141,"range":{"start_line":141,"start_character":59,"end_line":141,"end_character":102},"updated":"2021-10-26 15:45:32.000000000","message":"glance_secret_config_storage_optional_pip_packages","commit_id":"68ec951453a262c4b862645d60d3808c72b8b50f"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"bf1b061b4f5ab2e1b305090b33b8f267938f8636","unresolved":true,"context_lines":[{"line_number":138,"context_line":"      {{ glance_pip_packages |"},{"line_number":139,"context_line":"           union(glance_user_pip_packages) |"},{"line_number":140,"context_line":"             union(((glance_oslomsg_amqp1_enabled | bool) | ternary(glance_optional_oslomsg_amqp1_pip_packages, []))) |"},{"line_number":141,"context_line":"              union(((use_secret_storage | bool) | ternary(secret_config_storage_optional_pip_packages, []))) }}"},{"line_number":142,"context_line":"    venv_facts_when_changed:"},{"line_number":143,"context_line":"      - section: \"glance\""},{"line_number":144,"context_line":"        option: \"need_service_restart\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"71bcca1f_0d56e087","line":141,"range":{"start_line":141,"start_character":22,"end_line":141,"end_character":40},"updated":"2021-10-26 15:45:32.000000000","message":"glance_use_secret_storage","commit_id":"68ec951453a262c4b862645d60d3808c72b8b50f"}],"tasks/main.yml":[{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"bf1b061b4f5ab2e1b305090b33b8f267938f8636","unresolved":true,"context_lines":[{"line_number":79,"context_line":"  tags:"},{"line_number":80,"context_line":"    - glance-install"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"- import_tasks: vault_setup.yml"},{"line_number":83,"context_line":"  when: use_secret_storage"},{"line_number":84,"context_line":"  tags:"},{"line_number":85,"context_line":"    - glance-vault-setup"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"ae0d3b1d_446978c4","line":82,"range":{"start_line":82,"start_character":2,"end_line":82,"end_character":14},"updated":"2021-10-26 15:45:32.000000000","message":"include_tasks\n\nthis makes sense because of the conditional nature of the action.","commit_id":"68ec951453a262c4b862645d60d3808c72b8b50f"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"bf1b061b4f5ab2e1b305090b33b8f267938f8636","unresolved":true,"context_lines":[{"line_number":80,"context_line":"    - glance-install"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"- import_tasks: vault_setup.yml"},{"line_number":83,"context_line":"  when: use_secret_storage"},{"line_number":84,"context_line":"  tags:"},{"line_number":85,"context_line":"    - glance-vault-setup"},{"line_number":86,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"b91f065f_31db67f4","line":83,"range":{"start_line":83,"start_character":8,"end_line":83,"end_character":26},"updated":"2021-10-26 15:45:32.000000000","message":"glance_use_secret_storage","commit_id":"68ec951453a262c4b862645d60d3808c72b8b50f"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"4bd3310b56416ec69b052ca5e20cfd8c94ca5a86","unresolved":true,"context_lines":[{"line_number":81,"context_line":""},{"line_number":82,"context_line":"- include_tasks: vault_setup.yml"},{"line_number":83,"context_line":"  when: glance_use_secret_storage"},{"line_number":84,"context_line":"  tags:"},{"line_number":85,"context_line":"    - glance-vault-setup"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"- import_tasks: glance_post_install.yml"},{"line_number":88,"context_line":"  tags:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"45d9b742_a6e8437e","line":85,"range":{"start_line":84,"start_character":0,"end_line":85,"end_character":24},"updated":"2021-12-10 13:31:17.000000000","message":"tags doesn\u0027t work that way with includes. please check examples https://docs.ansible.com/ansible/latest/collections/ansible/builtin/include_tasks_module.html#examples","commit_id":"c9ee85ce25c7a5cd3dd620f1441c847dba4a3a4d"}],"tasks/vault_setup.yml":[{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"bf1b061b4f5ab2e1b305090b33b8f267938f8636","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"# Copyright 2019, VEXXHOST, Inc."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\");"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"bdd7e5cd_57fada58","line":1,"updated":"2021-10-26 15:45:32.000000000","message":"I think that we should convert this file either to some common inlcude, like we do with db_setup, or move somewhere like indepenent role.\nProbably do like db_setup is the easy way forward.\nAnd anyway we should just delegate this to utility I believe.","commit_id":"68ec951453a262c4b862645d60d3808c72b8b50f"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"bf1b061b4f5ab2e1b305090b33b8f267938f8636","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"# Copyright 2019, VEXXHOST, Inc."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\");"},{"line_number":5,"context_line":"# you may not use this file except in compliance with the License."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"760acc8e_47f9bad2","line":2,"range":{"start_line":2,"start_character":0,"end_line":2,"end_character":32},"updated":"2021-10-26 15:45:32.000000000","message":"that is wrong license string","commit_id":"68ec951453a262c4b862645d60d3808c72b8b50f"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"bf1b061b4f5ab2e1b305090b33b8f267938f8636","unresolved":true,"context_lines":[{"line_number":23,"context_line":"- name: Setup Vault for Glance"},{"line_number":24,"context_line":"  tags:"},{"line_number":25,"context_line":"    - common-vault"},{"line_number":26,"context_line":"  block:"},{"line_number":27,"context_line":"    - name: Refresh local facts"},{"line_number":28,"context_line":"      setup:"},{"line_number":29,"context_line":"        filter: ansible_local"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"ae437dea_259d4b8c","line":26,"range":{"start_line":26,"start_character":0,"end_line":26,"end_character":8},"updated":"2021-10-26 15:45:32.000000000","message":"any reason for block?","commit_id":"68ec951453a262c4b862645d60d3808c72b8b50f"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"bf1b061b4f5ab2e1b305090b33b8f267938f8636","unresolved":true,"context_lines":[{"line_number":24,"context_line":"  tags:"},{"line_number":25,"context_line":"    - common-vault"},{"line_number":26,"context_line":"  block:"},{"line_number":27,"context_line":"    - name: Refresh local facts"},{"line_number":28,"context_line":"      setup:"},{"line_number":29,"context_line":"        filter: ansible_local"},{"line_number":30,"context_line":"        gather_subset: \"!all\""},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    - name: set fact vault token"},{"line_number":33,"context_line":"      set_fact:"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"a5ad0ae9_ceecafab","line":30,"range":{"start_line":27,"start_character":0,"end_line":30,"end_character":29},"updated":"2021-10-26 15:45:32.000000000","message":"any reason for this? You probably wanted to refresh facts for vault host, but you would need delegate here.","commit_id":"68ec951453a262c4b862645d60d3808c72b8b50f"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"bf1b061b4f5ab2e1b305090b33b8f267938f8636","unresolved":true,"context_lines":[{"line_number":29,"context_line":"        filter: ansible_local"},{"line_number":30,"context_line":"        gather_subset: \"!all\""},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    - name: set fact vault token"},{"line_number":33,"context_line":"      set_fact:"},{"line_number":34,"context_line":"        vault_root_token: \"{{ ansible_local[\u0027openstack_ansible\u0027][\u0027vault\u0027][\u0027root_token\u0027] }}\""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    - name: set fact vault host"},{"line_number":37,"context_line":"      set_fact:"},{"line_number":38,"context_line":"        vault_host: \"{{ ansible_local[\u0027openstack_ansible\u0027][\u0027vault\u0027][\u0027vault_host\u0027] }}\""},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    - name: set fact vault port"},{"line_number":41,"context_line":"      set_fact:"},{"line_number":42,"context_line":"        vault_port: \"{{ ansible_local[\u0027openstack_ansible\u0027][\u0027vault\u0027][\u0027vault_port\u0027] }}\""},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"    - name: set fact vault proto"},{"line_number":45,"context_line":"      set_fact:"},{"line_number":46,"context_line":"        vault_proto: \"{{ ansible_local[\u0027openstack_ansible\u0027][\u0027vault\u0027][\u0027vault_proto\u0027] }}\""},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    - name: Copy castellan configuration file"},{"line_number":49,"context_line":"      config_template:"},{"line_number":50,"context_line":"        src: \"castellan.conf.j2\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"807620d8_32b96440","line":47,"range":{"start_line":32,"start_character":0,"end_line":47,"end_character":0},"updated":"2021-10-26 15:45:32.000000000","message":"Any reason to set facts? I believe they are used only in castellan.conf so could be set just there with this logic in mind?\n\nHowever, I\u0027d prefer setting these variables in defaults so that they could be overriden if needed.\n\nAlso I believe that vault_host, vault_port and vault_proto should be set in different way. This makes sense only for vault_root_token","commit_id":"68ec951453a262c4b862645d60d3808c72b8b50f"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"4bd3310b56416ec69b052ca5e20cfd8c94ca5a86","unresolved":true,"context_lines":[{"line_number":23,"context_line":"        filter: ansible_local"},{"line_number":24,"context_line":"        gather_subset: \"!all\""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    - name: set fact vault token"},{"line_number":27,"context_line":"      set_fact:"},{"line_number":28,"context_line":"        vault_root_token: \"{{ ansible_local[\u0027openstack_ansible\u0027][\u0027vault\u0027][\u0027root_token\u0027] }}\""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"    - name: set fact vault host"},{"line_number":31,"context_line":"      set_fact:"},{"line_number":32,"context_line":"        vault_host: \"{{ ansible_local[\u0027openstack_ansible\u0027][\u0027vault\u0027][\u0027vault_host\u0027] }}\""},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    - name: set fact vault port"},{"line_number":35,"context_line":"      set_fact:"},{"line_number":36,"context_line":"        vault_port: \"{{ ansible_local[\u0027openstack_ansible\u0027][\u0027vault\u0027][\u0027vault_port\u0027] }}\""},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"    - name: set fact vault proto"},{"line_number":39,"context_line":"      set_fact:"},{"line_number":40,"context_line":"        vault_proto: \"{{ ansible_local[\u0027openstack_ansible\u0027][\u0027vault\u0027][\u0027vault_proto\u0027] }}\""},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"- name: Copy castellan configuration file"},{"line_number":43,"context_line":"  config_template:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"a3b082a4_64039f59","line":40,"range":{"start_line":26,"start_character":0,"end_line":40,"end_character":87},"updated":"2021-12-10 13:31:17.000000000","message":"this could be done with one task: https://docs.ansible.com/ansible/latest/collections/ansible/builtin/set_fact_module.html#examples\n\nBut eventually I\u0027d challange why we need this at all.\n\nvault_host/vault_port/vault_proto should come from defaults.yml and be defined same way as glance_vault_setup_host is (with openstack_vault_(host|port|proto) and some default value for fallback).\n\nWith vault_root_token it\u0027s harder indeed, so probably it\u0027s tho only one that valid here.","commit_id":"c9ee85ce25c7a5cd3dd620f1441c847dba4a3a4d"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"4bd3310b56416ec69b052ca5e20cfd8c94ca5a86","unresolved":true,"context_lines":[{"line_number":46,"context_line":"    owner: \"root\""},{"line_number":47,"context_line":"    group: \"{{ glance_system_group_name }}\""},{"line_number":48,"context_line":"    mode: \"0640\""},{"line_number":49,"context_line":"    config_overrides: {}"},{"line_number":50,"context_line":"    config_type: \"ini\""},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"- name: Copy mapping configuration files"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fde3b5b5_8064ceab","line":49,"range":{"start_line":49,"start_character":1,"end_line":49,"end_character":24},"updated":"2021-12-10 13:31:17.000000000","message":"if we\u0027re not planning to make possible to use overrides, we should just use template module","commit_id":"c9ee85ce25c7a5cd3dd620f1441c847dba4a3a4d"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"4bd3310b56416ec69b052ca5e20cfd8c94ca5a86","unresolved":true,"context_lines":[{"line_number":56,"context_line":"    owner: \"root\""},{"line_number":57,"context_line":"    group: \"{{ glance_system_group_name }}\""},{"line_number":58,"context_line":"    mode: \"0640\""},{"line_number":59,"context_line":"    config_overrides: {}"},{"line_number":60,"context_line":"    config_type: \"ini\""},{"line_number":61,"context_line":"  with_items:"},{"line_number":62,"context_line":"    - \"mapping-glance-api.conf\""}],"source_content_type":"text/x-yaml","patch_set":2,"id":"6bbf9f7f_5c1910f8","line":59,"range":{"start_line":59,"start_character":0,"end_line":59,"end_character":24},"updated":"2021-12-10 13:31:17.000000000","message":"ditto","commit_id":"c9ee85ce25c7a5cd3dd620f1441c847dba4a3a4d"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"4bd3310b56416ec69b052ca5e20cfd8c94ca5a86","unresolved":true,"context_lines":[{"line_number":39,"context_line":"      set_fact:"},{"line_number":40,"context_line":"        vault_proto: \"{{ ansible_local[\u0027openstack_ansible\u0027][\u0027vault\u0027][\u0027vault_proto\u0027] }}\""},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"- name: Copy castellan configuration file"},{"line_number":43,"context_line":"  config_template:"},{"line_number":44,"context_line":"    src: \"castellan.conf.j2\""},{"line_number":45,"context_line":"    dest: \"/etc/glance/castellan.conf\""},{"line_number":46,"context_line":"    owner: \"root\""},{"line_number":47,"context_line":"    group: \"{{ glance_system_group_name }}\""},{"line_number":48,"context_line":"    mode: \"0640\""},{"line_number":49,"context_line":"    config_overrides: {}"},{"line_number":50,"context_line":"    config_type: \"ini\""},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"- name: Copy mapping configuration files"},{"line_number":53,"context_line":"  config_template:"},{"line_number":54,"context_line":"    src: \"{{ item }}.j2\""},{"line_number":55,"context_line":"    dest: \"/etc/glance/{{ item }}\""},{"line_number":56,"context_line":"    owner: \"root\""},{"line_number":57,"context_line":"    group: \"{{ glance_system_group_name }}\""},{"line_number":58,"context_line":"    mode: \"0640\""},{"line_number":59,"context_line":"    config_overrides: {}"},{"line_number":60,"context_line":"    config_type: \"ini\""},{"line_number":61,"context_line":"  with_items:"},{"line_number":62,"context_line":"    - \"mapping-glance-api.conf\""},{"line_number":63,"context_line":"    - \"mapping-glance-cache.conf\""},{"line_number":64,"context_line":"    - \"mapping-glance-manage.conf\""},{"line_number":65,"context_line":"    - \"mapping-glance-swift-store.conf\""},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"- name: Put script to Glance container"},{"line_number":68,"context_line":"  copy:"},{"line_number":69,"context_line":"    src: \"encrypt_secrets.py\""}],"source_content_type":"text/x-yaml","patch_set":2,"id":"d60943e6_3361ddb3","line":66,"range":{"start_line":42,"start_character":0,"end_line":66,"end_character":0},"updated":"2021-12-10 13:31:17.000000000","message":"Why these are different tasks?","commit_id":"c9ee85ce25c7a5cd3dd620f1441c847dba4a3a4d"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"4bd3310b56416ec69b052ca5e20cfd8c94ca5a86","unresolved":true,"context_lines":[{"line_number":63,"context_line":"    - \"mapping-glance-cache.conf\""},{"line_number":64,"context_line":"    - \"mapping-glance-manage.conf\""},{"line_number":65,"context_line":"    - \"mapping-glance-swift-store.conf\""},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"- name: Put script to Glance container"},{"line_number":68,"context_line":"  copy:"},{"line_number":69,"context_line":"    src: \"encrypt_secrets.py\""},{"line_number":70,"context_line":"    dest: \"/etc/glance/encrypt_secrets.py\""},{"line_number":71,"context_line":"    owner: \"root\""},{"line_number":72,"context_line":"    group: \"root\""},{"line_number":73,"context_line":"    mode: \"0755\""},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"- name: Encrypt mapping-glance-api.conf.j2"},{"line_number":76,"context_line":"  command: \"{{ glance_bin }}/python /etc/glance/encrypt_secrets.py /etc/glance/castellan.conf /etc/glance/mapping-glance-api.conf\""},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"- name: Encrypt mapping-glance-cache.conf.j2"},{"line_number":79,"context_line":"  command: \"{{ glance_bin }}/python /etc/glance/encrypt_secrets.py /etc/glance/castellan.conf /etc/glance/mapping-glance-cache.conf\""},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"- name: Encrypt mapping-glance-manage.conf"},{"line_number":82,"context_line":"  command: \"{{ glance_bin }}/python /etc/glance/encrypt_secrets.py /etc/glance/castellan.conf /etc/glance/mapping-glance-manage.conf\""},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"- name: Encrypt mapping-glance-swift-store.conf"},{"line_number":85,"context_line":"  command: \"{{ glance_bin }}/python /etc/glance/encrypt_secrets.py /etc/glance/castellan.conf /etc/glance/mapping-glance-swift-store.conf\""}],"source_content_type":"text/x-yaml","patch_set":2,"id":"554f856e_17b76137","line":85,"range":{"start_line":66,"start_character":0,"end_line":85,"end_character":138},"updated":"2021-12-10 13:31:17.000000000","message":"should be reworked to ansible module and most likely will have different design behind this.","commit_id":"c9ee85ce25c7a5cd3dd620f1441c847dba4a3a4d"}],"templates/glance-api.conf.j2":[{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"bf1b061b4f5ab2e1b305090b33b8f267938f8636","unresolved":true,"context_lines":[{"line_number":3,"context_line":"[DEFAULT]"},{"line_number":4,"context_line":"{% if use_secret_storage %}"},{"line_number":5,"context_line":"config_source\u003dsecrets"},{"line_number":6,"context_line":"logging_default_format_string \u003d \u0027%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s\u0027"},{"line_number":7,"context_line":"logging_user_identity_format \u003d \u0027%(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s\u0027"},{"line_number":8,"context_line":"logging_context_format_string \u003d \u0027%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s\u0027"},{"line_number":9,"context_line":"{% endif %}"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"# Disable stderr logging"}],"source_content_type":"text/x-jinja2","patch_set":1,"id":"91040d61_ca293204","line":8,"range":{"start_line":6,"start_character":0,"end_line":8,"end_character":151},"updated":"2021-10-26 15:45:32.000000000","message":"I\u0027m not sure I see how that is related to the secret_storage","commit_id":"68ec951453a262c4b862645d60d3808c72b8b50f"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"4bd3310b56416ec69b052ca5e20cfd8c94ca5a86","unresolved":true,"context_lines":[{"line_number":3,"context_line":"[DEFAULT]"},{"line_number":4,"context_line":"{% if glance_use_secret_storage %}"},{"line_number":5,"context_line":"config_source\u003dsecrets"},{"line_number":6,"context_line":"logging_default_format_string \u003d \u0027%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s\u0027"},{"line_number":7,"context_line":"logging_user_identity_format \u003d \u0027%(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s\u0027"},{"line_number":8,"context_line":"logging_context_format_string \u003d \u0027%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s\u0027"},{"line_number":9,"context_line":"{% endif %}"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"# Disable stderr logging"}],"source_content_type":"text/x-jinja2","patch_set":2,"id":"030d2473_d5cfb883","line":8,"range":{"start_line":6,"start_character":0,"end_line":8,"end_character":151},"updated":"2021-12-10 13:31:17.000000000","message":"I\u0027m not sure it\u0027s related to the topic?","commit_id":"c9ee85ce25c7a5cd3dd620f1441c847dba4a3a4d"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"4bd3310b56416ec69b052ca5e20cfd8c94ca5a86","unresolved":true,"context_lines":[{"line_number":45,"context_line":"task_executor \u003d {{ glance_task_executor }}"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"[database]"},{"line_number":48,"context_line":"{% if not glance_use_secret_storage %}"},{"line_number":49,"context_line":"connection \u003d mysql+pymysql://{{ glance_galera_user }}:{{ glance_container_mysql_password }}@{{ glance_galera_address }}/{{ glance_galera_database }}?charset\u003dutf8{% if glance_galera_use_ssl | bool %}\u0026ssl_verify_cert\u003dtrue{% if glance_galera_ssl_ca_cert | length \u003e 0 %}\u0026ssl_ca\u003d{{ glance_galera_ssl_ca_cert }}{% endif %}{% endif %}"},{"line_number":50,"context_line":"{% endif %}"},{"line_number":51,"context_line":""}],"source_content_type":"text/x-jinja2","patch_set":2,"id":"4b581639_e6cbb080","line":48,"range":{"start_line":48,"start_character":0,"end_line":48,"end_character":38},"updated":"2021-12-10 13:31:17.000000000","message":"should we move that before database? or section must be defined?","commit_id":"c9ee85ce25c7a5cd3dd620f1441c847dba4a3a4d"}],"templates/glance-cache.conf.j2":[{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"bf1b061b4f5ab2e1b305090b33b8f267938f8636","unresolved":true,"context_lines":[{"line_number":3,"context_line":"[DEFAULT]"},{"line_number":4,"context_line":"{% if use_secret_storage %}"},{"line_number":5,"context_line":"config_source\u003dsecrets"},{"line_number":6,"context_line":"logging_default_format_string \u003d \u0027%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s\u0027"},{"line_number":7,"context_line":"logging_user_identity_format \u003d \u0027%(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s\u0027"},{"line_number":8,"context_line":"logging_context_format_string \u003d \u0027%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s\u0027"},{"line_number":9,"context_line":"{% endif %}"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"# Disable stderr logging"}],"source_content_type":"text/x-jinja2","patch_set":1,"id":"e61f4c96_684029b6","line":8,"range":{"start_line":6,"start_character":0,"end_line":8,"end_character":151},"updated":"2021-10-26 15:45:32.000000000","message":"I\u0027m not sure I see how that is related to the secret_storage","commit_id":"68ec951453a262c4b862645d60d3808c72b8b50f"}],"templates/glance-manage.conf.j2":[{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"bf1b061b4f5ab2e1b305090b33b8f267938f8636","unresolved":true,"context_lines":[{"line_number":1,"context_line":"[DEFAULT]"},{"line_number":2,"context_line":"{% if use_secret_storage %}"},{"line_number":3,"context_line":"config_source\u003dsecrets"},{"line_number":4,"context_line":"logging_default_format_string \u003d \u0027%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s\u0027"},{"line_number":5,"context_line":"logging_user_identity_format \u003d \u0027%(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s\u0027"},{"line_number":6,"context_line":"logging_context_format_string \u003d \u0027%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s\u0027"},{"line_number":7,"context_line":"{% endif %}"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"# Disable stderr logging"}],"source_content_type":"text/x-jinja2","patch_set":1,"id":"5c1bcc1b_72fbcfe4","line":6,"range":{"start_line":4,"start_character":0,"end_line":6,"end_character":151},"updated":"2021-10-26 15:45:32.000000000","message":"I\u0027m not sure I see how that is related to the secret_storage","commit_id":"68ec951453a262c4b862645d60d3808c72b8b50f"}],"templates/glance-swift-store.conf.j2":[{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"bf1b061b4f5ab2e1b305090b33b8f267938f8636","unresolved":true,"context_lines":[{"line_number":3,"context_line":"[DEFAULT]"},{"line_number":4,"context_line":"{% if use_secret_storage %}"},{"line_number":5,"context_line":"config_source\u003dsecrets"},{"line_number":6,"context_line":"logging_default_format_string \u003d \u0027%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s\u0027"},{"line_number":7,"context_line":"logging_user_identity_format \u003d \u0027%(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s\u0027"},{"line_number":8,"context_line":"logging_context_format_string \u003d \u0027%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s\u0027"},{"line_number":9,"context_line":"{% endif %}"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"[swift1]"}],"source_content_type":"text/x-jinja2","patch_set":1,"id":"0be6d5bf_d1c01d32","line":8,"range":{"start_line":6,"start_character":0,"end_line":8,"end_character":151},"updated":"2021-10-26 15:45:32.000000000","message":"I\u0027m not sure I see how that is related to the secret_storage","commit_id":"68ec951453a262c4b862645d60d3808c72b8b50f"}]}
