)]}'
{"ansible-role-requirements.yml":[{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"2c2112bc6bb98e0dd3bd8fba719c9d9c5d6d963c","unresolved":false,"context_lines":[{"line_number":204,"context_line":"- name: nspawn_host"},{"line_number":205,"context_line":"  src: https://github.com/cloudnull/ansible-nspawn_host"},{"line_number":206,"context_line":"  scm: git"},{"line_number":207,"context_line":"  version: master"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa0c359_0b49145f","side":"PARENT","line":207,"updated":"2018-02-15 11:55:22.000000000","message":"Why is this being removed?","commit_id":"f7e22daa5e8b41296ae63518797e3ab870b1e4d1"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"4ae274414abe1345affd7ce0f35e197aafcf5302","unresolved":false,"context_lines":[{"line_number":69,"context_line":"- name: os_cinder"},{"line_number":70,"context_line":"  scm: git"},{"line_number":71,"context_line":"  src: https://git.openstack.org/openstack/openstack-ansible-os_cinder"},{"line_number":72,"context_line":"  version: 782c27cf60aa57cc2168ca51b6a8a7f2b43acfc6"},{"line_number":73,"context_line":"- name: os_congress"},{"line_number":74,"context_line":"  scm: git"},{"line_number":75,"context_line":"  src: https://git.openstack.org/openstack/openstack-ansible-os_congress"}],"source_content_type":"text/x-yaml","patch_set":25,"id":"3fa0c359_f2ced381","line":72,"range":{"start_line":72,"start_character":11,"end_line":72,"end_character":51},"updated":"2018-02-19 13:13:51.000000000","message":"Why is this changing?","commit_id":"a597b3b54b600e965b87ac42e2318ae8956c156d"}],"etc/openstack_deploy/user_secrets.yml":[{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"de8de8f8057df3f0fa408011a9ff7561430d5b75","unresolved":false,"context_lines":[{"line_number":162,"context_line":"tacker_container_mysql_password:"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"## Congress options"},{"line_number":165,"context_line":"congress_container_mysql_password:"}],"source_content_type":"text/x-yaml","patch_set":31,"id":"ff6b8bd7_c3447cba","line":165,"updated":"2018-03-05 09:11:42.000000000","message":"You\u0027re missing congress_service_password here.","commit_id":"4662ec4a0a9fce60e779ae89de19507a2e62ca6a"}],"group_vars/congress_all.yml":[{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"c76e027470db40af5f6c316bca8d31f35faef6bf","unresolved":false,"context_lines":[{"line_number":13,"context_line":"# See the License for the specific language governing permissions and"},{"line_number":14,"context_line":"# limitations under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"congress_service_publicuri: \"{{ openstack_service_publicuri_proto|default(congress_service_proto) }}://{{ external_lb_vip_address }}:{{ congress_service_port }}\""},{"line_number":17,"context_line":"congress_service_adminurl: \"{{ congress_service_adminuri }}/\""},{"line_number":18,"context_line":"congress_service_region: \"{{ service_region }}\""},{"line_number":19,"context_line":"congress_service_in_ldap: \"{{ service_ldap_backend_enabled }}\""},{"line_number":20,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":19,"id":"3fa0c359_65e7bc48","line":17,"range":{"start_line":16,"start_character":0,"end_line":17,"end_character":61},"updated":"2018-02-14 16:57:53.000000000","message":"I don\u0027t think that these are needed, given that the role defaults use the right group_var parameters already.","commit_id":"dab0b364096b1de3c17e23215a95c9b30c342895"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"c76e027470db40af5f6c316bca8d31f35faef6bf","unresolved":false,"context_lines":[{"line_number":23,"context_line":"congress_galera_database: congress"},{"line_number":24,"context_line":"congress_galera_address: \"{{ galera_address }}\""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"congress_aodh_enabled: \"{{ groups[\u0027aodh_all\u0027] is defined and groups[\u0027aodh_all\u0027] | length \u003e 0 }}\""},{"line_number":27,"context_line":"congress_gnocchi_enabled: \"{{ groups[\u0027gnocchi_all\u0027] is defined and groups[\u0027gnocchi_all\u0027] | length \u003e 0 }}\""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"# Ensure that the package state matches the global setting"},{"line_number":30,"context_line":"congress_package_state: \"{{ package_state }}\""}],"source_content_type":"text/x-yaml","patch_set":19,"id":"3fa0c359_654b3c5f","line":27,"range":{"start_line":26,"start_character":0,"end_line":27,"end_character":105},"updated":"2018-02-14 16:57:53.000000000","message":"These two variables do not exist in the role.","commit_id":"dab0b364096b1de3c17e23215a95c9b30c342895"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"c76e027470db40af5f6c316bca8d31f35faef6bf","unresolved":false,"context_lines":[{"line_number":34,"context_line":"congress_venv_download_url: \"{{ venv_base_download_url }}/congress-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz\""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"# locations for fetching the default files from the git source"},{"line_number":37,"context_line":"congress_git_config_lookup_location: \"{{ openstack_repo_url }}/openstackgit/congress\""}],"source_content_type":"text/x-yaml","patch_set":19,"id":"3fa0c359_a56144d6","line":37,"updated":"2018-02-14 16:57:53.000000000","message":"This mechanism does not exist in congress, so there\u0027s no need to set the var.","commit_id":"dab0b364096b1de3c17e23215a95c9b30c342895"}],"playbooks/defaults/repo_packages/openstack_services.yml":[{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"2c2112bc6bb98e0dd3bd8fba719c9d9c5d6d963c","unresolved":false,"context_lines":[{"line_number":238,"context_line":"tacker_git_repo: https://git.openstack.org/openstack/tacker"},{"line_number":239,"context_line":"tacker_git_install_branch: 6932f5642598d53d93f94514eaed55cc93ea19d7 # HEAD of \"stable/queens\" as of 10.02.2018"},{"line_number":240,"context_line":"tacker_git_project_group: tacker_all"},{"line_number":241,"context_line":""},{"line_number":242,"context_line":"## Congress service"},{"line_number":243,"context_line":"congress_git_repo: https://git.openstack.org/openstack/congress"},{"line_number":244,"context_line":"congress_git_install_branch: master"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa0c359_6b6538e1","line":241,"updated":"2018-02-15 11:55:22.000000000","message":"Add another line break - each service has a double line break between them.","commit_id":"033f2afbe8eaf90b2bb9dab11a1f250427dd17fe"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"0fad86833dfe94802aa776995beb9838b930ecbf","unresolved":false,"context_lines":[{"line_number":242,"context_line":""},{"line_number":243,"context_line":"## Congress service"},{"line_number":244,"context_line":"congress_git_repo: https://git.openstack.org/openstack/congress"},{"line_number":245,"context_line":"congress_git_install_branch: master"},{"line_number":246,"context_line":"congress_git_project_group: congress_all"}],"source_content_type":"text/x-yaml","patch_set":42,"id":"df7087c5_8f3c7793","line":245,"updated":"2018-03-16 11:39:26.000000000","message":"This will need to be a pinned SHA which matches the date on the other pins in repo_packages.","commit_id":"11eeb2729a7965cfe5d01863eb1979c8896ece68"}],"playbooks/inventory/env.d/congress.yml":[{"author":{"_account_id":17068,"name":"Jean-Philippe Evrard","email":"openstack@a.spamming.party","username":"evrardjp"},"change_message_id":"482ec9d3abe5f68114d2a140e8a1e93ae76d6520","unresolved":false,"context_lines":[{"line_number":32,"context_line":"    belongs_to:"},{"line_number":33,"context_line":"      - all_containers"},{"line_number":34,"context_line":"  policy_hosts:"},{"line_number":35,"context_line":"belongs_to:"},{"line_number":36,"context_line":"      - hosts"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"3f4b6375_9bbb1fc3","line":35,"updated":"2017-10-20 09:05:51.000000000","message":"belongs_to is misaligned. all the env.d will not work that way.","commit_id":"6a8a27ef0429356a6573976c4846c684e0afae37"}],"playbooks/os-congress-install.yml":[{"author":{"_account_id":17068,"name":"Jean-Philippe Evrard","email":"openstack@a.spamming.party","username":"evrardjp"},"change_message_id":"482ec9d3abe5f68114d2a140e8a1e93ae76d6520","unresolved":false,"context_lines":[{"line_number":29,"context_line":"        db_name: \"{{ congress_galera_database }}\""},{"line_number":30,"context_line":"      when: inventory_hostname \u003d\u003d groups[\u0027congress_all\u0027][0]"},{"line_number":31,"context_line":"  roles:"},{"line_number":32,"context_line":"- role: \"os_congress\""}],"source_content_type":"text/x-yaml","patch_set":6,"id":"3f4b6375_7bb2a3e8","line":32,"updated":"2017-10-20 09:05:51.000000000","message":"misaligned role.","commit_id":"6a8a27ef0429356a6573976c4846c684e0afae37"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"c76e027470db40af5f6c316bca8d31f35faef6bf","unresolved":false,"context_lines":[{"line_number":19,"context_line":"  max_fail_percentage: 20"},{"line_number":20,"context_line":"  user: root"},{"line_number":21,"context_line":"  pre_tasks:"},{"line_number":22,"context_line":"    - include: common-tasks/os-lxc-container-setup.yml"},{"line_number":23,"context_line":"    - include: common-tasks/mysql-db-user.yml"},{"line_number":24,"context_line":"      static: no"},{"line_number":25,"context_line":"      vars:"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"3fa0c359_a56b8483","line":22,"range":{"start_line":22,"start_character":15,"end_line":22,"end_character":54},"updated":"2018-02-14 16:57:53.000000000","message":"\"common-tasks/os-{{ container_tech | default(\u0027lxc\u0027) }}-container-setup.yml\"","commit_id":"dab0b364096b1de3c17e23215a95c9b30c342895"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"c76e027470db40af5f6c316bca8d31f35faef6bf","unresolved":false,"context_lines":[{"line_number":27,"context_line":"        password: \"{{ congress_container_mysql_password }}\""},{"line_number":28,"context_line":"        login_host: \"{{ congress_galera_address }}\""},{"line_number":29,"context_line":"        db_name: \"{{ congress_galera_database }}\""},{"line_number":30,"context_line":"      when: inventory_hostname \u003d\u003d groups[\u0027congress_all\u0027][0]"},{"line_number":31,"context_line":"  roles:"},{"line_number":32,"context_line":"    - role: \"os_congress\""}],"source_content_type":"text/x-yaml","patch_set":19,"id":"3fa0c359_4544001c","line":30,"range":{"start_line":30,"start_character":6,"end_line":30,"end_character":59},"updated":"2018-02-14 16:57:53.000000000","message":"Use this instead, and with it the \u0027static: no\u0027 can be removed:\n\nrun_once: yes","commit_id":"dab0b364096b1de3c17e23215a95c9b30c342895"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"c76e027470db40af5f6c316bca8d31f35faef6bf","unresolved":false,"context_lines":[{"line_number":28,"context_line":"        login_host: \"{{ congress_galera_address }}\""},{"line_number":29,"context_line":"        db_name: \"{{ congress_galera_database }}\""},{"line_number":30,"context_line":"      when: inventory_hostname \u003d\u003d groups[\u0027congress_all\u0027][0]"},{"line_number":31,"context_line":"  roles:"},{"line_number":32,"context_line":"    - role: \"os_congress\""}],"source_content_type":"text/x-yaml","patch_set":19,"id":"3fa0c359_8508c8d9","line":31,"updated":"2018-02-14 16:57:53.000000000","message":"Add to pre_tasks:\n\n    - name: Configure log directories (on metal)\n      include: common-tasks/os-log-dir-setup.yml\n      vars:\n        log_dirs:\n          - src: \"/openstack/log/{{ inventory_hostname }}-congress\"\n            dest: \"/var/log/congress\"\n\n    - include: common-tasks/unbound-clients.yml\n      static: no\n      when:\n        - hostvars[\u0027localhost\u0027][\u0027resolvconf_enabled\u0027] | bool\n\n    - name: Configure package proxy cache\n      include: common-tasks/package-cache-proxy.yml","commit_id":"dab0b364096b1de3c17e23215a95c9b30c342895"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"c76e027470db40af5f6c316bca8d31f35faef6bf","unresolved":false,"context_lines":[{"line_number":29,"context_line":"        db_name: \"{{ congress_galera_database }}\""},{"line_number":30,"context_line":"      when: inventory_hostname \u003d\u003d groups[\u0027congress_all\u0027][0]"},{"line_number":31,"context_line":"  roles:"},{"line_number":32,"context_line":"    - role: \"os_congress\""}],"source_content_type":"text/x-yaml","patch_set":19,"id":"3fa0c359_250d34e8","line":32,"updated":"2018-02-14 16:57:53.000000000","message":"Add to post_tasks:\n\n    - role: \"openstack_openrc\"\n      tags:\n        - openrc\n    - role: \"rsyslog_client\"\n      rsyslog_client_log_rotate_file: congress_log_rotate\n      rsyslog_client_log_dir: \"/var/log/congress\"\n      rsyslog_client_config_name: \"99-congress-rsyslog-client.conf\"\n      tags:\n        - rsyslog\n    - role: \"system_crontab_coordination\"\n      tags:\n        - crontab","commit_id":"dab0b364096b1de3c17e23215a95c9b30c342895"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"2c2112bc6bb98e0dd3bd8fba719c9d9c5d6d963c","unresolved":false,"context_lines":[{"line_number":26,"context_line":"        password: \"{{ congress_container_mysql_password }}\""},{"line_number":27,"context_line":"        login_host: \"{{ congress_galera_address }}\""},{"line_number":28,"context_line":"        db_name: \"{{ congress_galera_database }}\""},{"line_number":29,"context_line":"      when: inventory_hostname \u003d\u003d groups[\u0027congress_all\u0027][0]"},{"line_number":30,"context_line":"      run_once: yes"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    - name: Configure log directories (on metal)"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa0c359_2b5f300f","line":29,"range":{"start_line":29,"start_character":0,"end_line":29,"end_character":59},"updated":"2018-02-15 11:55:22.000000000","message":"With run_once this line must be removed.","commit_id":"033f2afbe8eaf90b2bb9dab11a1f250427dd17fe"}],"tests/bootstrap-aio.yml":[{"author":{"_account_id":17068,"name":"Jean-Philippe Evrard","email":"openstack@a.spamming.party","username":"evrardjp"},"change_message_id":"482ec9d3abe5f68114d2a140e8a1e93ae76d6520","unresolved":false,"context_lines":[{"line_number":70,"context_line":"        - name: heat.yml.aio"},{"line_number":71,"context_line":"        - name: tacker.yml.aio"},{"line_number":72,"context_line":"      congress:"},{"line_number":73,"context_line":"        - name: congress.yml.aio"},{"line_number":74,"context_line":"    pip_install_upper_constraints_proto: \"{{ ansible_python_version | version_compare(\u00272.7.9\u0027, \u0027\u003e\u003d\u0027) | ternary(\u0027https\u0027,\u0027http\u0027) }}\""},{"line_number":75,"context_line":"    sftp_subsystem:"},{"line_number":76,"context_line":"        \u0027apt\u0027: \u0027sftp /usr/lib/openssh/sftp-server\u0027"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"3f4b6375_9be0bfce","line":73,"updated":"2017-10-20 09:05:51.000000000","message":"these are the env.d you\u0027d need. You should probably install congress in its full context with neutron and all, so I suggest you select the other .yml.aio files too.\n\nBasically you are defining a new scenario that tests congress here.","commit_id":"6a8a27ef0429356a6573976c4846c684e0afae37"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"c76e027470db40af5f6c316bca8d31f35faef6bf","unresolved":false,"context_lines":[{"line_number":25,"context_line":"    ansible_python_interpreter: \"/usr/bin/python\""},{"line_number":26,"context_line":"    bootstrap_host_scenario: \"{{ lookup(\u0027env\u0027,\u0027SCENARIO\u0027) | default(\u0027aio_lxc\u0027, true) }}\""},{"line_number":27,"context_line":"    openstack_confd_entries: \"{{ confd_overrides[bootstrap_host_scenario] }}\""},{"line_number":28,"context_line":"    bootstrap_host_scenario: \"{{ lookup(\u0027env\u0027,\u0027SCENARIO\u0027) | default(\u0027aio\u0027, true) }}\""},{"line_number":29,"context_line":"    confd_overrides:"},{"line_number":30,"context_line":"      aio:"},{"line_number":31,"context_line":"        - name: cinder.yml.aio"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"3fa0c359_452ba02f","line":28,"updated":"2018-02-14 16:57:53.000000000","message":"This is reverting some changes that went in - the additional scenario should go into https://github.com/openstack/openstack-ansible/blob/master/tests/vars/bootstrap-aio-vars.yml","commit_id":"dab0b364096b1de3c17e23215a95c9b30c342895"}],"tests/roles/bootstrap-host/templates/user_variables_congress.yml.j2":[{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"0fad86833dfe94802aa776995beb9838b930ecbf","unresolved":false,"context_lines":[{"line_number":15,"context_line":"tempest_plugins:"},{"line_number":16,"context_line":"  - name: congress-tempest-plugin"},{"line_number":17,"context_line":"    repo: https://github.com/openstack/congress-tempest-plugin"},{"line_number":18,"context_line":"    branch: master"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"tempest_whitelist:"},{"line_number":21,"context_line":"  - congress_tempest_plugin.tests.scenario.test_congress_basic_ops"}],"source_content_type":"text/x-jinja2","patch_set":42,"id":"df7087c5_efc73395","line":18,"range":{"start_line":18,"start_character":12,"end_line":18,"end_character":18},"updated":"2018-03-16 11:39:26.000000000","message":"This will need to be a pinned SHA which matches the date on the other pins in repo_packages.","commit_id":"11eeb2729a7965cfe5d01863eb1979c8896ece68"}],"tests/vars/bootstrap-aio-vars.yml":[{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"2c2112bc6bb98e0dd3bd8fba719c9d9c5d6d963c","unresolved":false,"context_lines":[{"line_number":55,"context_line":"  congress:"},{"line_number":56,"context_line":"    - name: neutron.yml.aio"},{"line_number":57,"context_line":"    - name: glance.yml.aio"},{"line_number":58,"context_line":"    - name: heat.yml.aio"},{"line_number":59,"context_line":"    - name: congress.yml.aio"},{"line_number":60,"context_line":"  translations:"},{"line_number":61,"context_line":"    - name: haproxy.yml.aio"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa0c359_aba820db","line":58,"range":{"start_line":58,"start_character":0,"end_line":58,"end_character":24},"updated":"2018-02-15 11:55:22.000000000","message":"Doesn\u0027t heat require nova and cinder to work?","commit_id":"033f2afbe8eaf90b2bb9dab11a1f250427dd17fe"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"4ae274414abe1345affd7ce0f35e197aafcf5302","unresolved":false,"context_lines":[{"line_number":52,"context_line":"    - name: keystone.yml.aio"},{"line_number":53,"context_line":"    - name: neutron.yml.aio"},{"line_number":54,"context_line":"    - name: nova.yml.aio"},{"line_number":55,"context_line":"  congress:"},{"line_number":56,"context_line":"    - name: neutron.yml.aio"},{"line_number":57,"context_line":"    - name: nova.yml.aio"},{"line_number":58,"context_line":"    - name: cinder.yml.aio"}],"source_content_type":"text/x-yaml","patch_set":25,"id":"3fa0c359_128fbf2e","line":55,"range":{"start_line":55,"start_character":2,"end_line":55,"end_character":10},"updated":"2018-02-19 13:13:51.000000000","message":"I don\u0027t see this being exercised anywhere? See  https://github.com/openstack/openstack-ansible/tree/master/zuul.d for where the exercising of tests is added. I would recommend a non-voting test to start with.","commit_id":"a597b3b54b600e965b87ac42e2318ae8956c156d"},{"author":{"_account_id":17068,"name":"Jean-Philippe Evrard","email":"openstack@a.spamming.party","username":"evrardjp"},"change_message_id":"f1fca9c1fdb84f22f84ad95dd5cffc6d9d0fd53c","unresolved":false,"context_lines":[{"line_number":55,"context_line":"  congress:"},{"line_number":56,"context_line":"    - name: haproxy.yml.aio"},{"line_number":57,"context_line":"    - name: keystone.yml.aio"},{"line_number":58,"context_line":"    - name: nova.yml.aio"},{"line_number":59,"context_line":"    - name: neutron.yml.aio"},{"line_number":60,"context_line":"    - name: congress.yml.aio"},{"line_number":61,"context_line":"  translations:"},{"line_number":62,"context_line":"    - name: haproxy.yml.aio"}],"source_content_type":"text/x-yaml","patch_set":35,"id":"df7087c5_e8079681","line":59,"range":{"start_line":58,"start_character":0,"end_line":59,"end_character":27},"updated":"2018-03-13 07:47:28.000000000","message":"You can go progressively, start with haproxy, keystone, and congress and add tempest API testing, then add more components for more functional testing.","commit_id":"566e10a72cf8cecc09b95b0dd3c3fb58b1b9191e"}]}
