)]}'
{"doc/source/install-guide/app-advanced-role-docs.rst":[{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":1,"context_line":".. _role-docs:"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":"Individual role documentation"},{"line_number":5,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"- `apt_package_pinning \u003chttp://docs.openstack.org/developer/openstack-ansible-apt_package_pinning/\u003e`_"}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_60b1f146","line":4,"range":{"start_line":4,"start_character":0,"end_line":4,"end_character":29},"updated":"2016-09-16 15:34:17.000000000","message":"Maybe something along the lines of \u0027Advanced Service Configuration\u0027, then add an intro that says something along the lines of...\n\nOpenStack-Ansible has many options which can be used for the advanced configuration of services. Each role\u0027s documentation provides more insight into the options available and what they are used for.\n\nNone of these options are necessary to set - they are entirely optional.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Individual role documentation"},{"line_number":5,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"- `apt_package_pinning \u003chttp://docs.openstack.org/developer/openstack-ansible-apt_package_pinning/\u003e`_"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"- `pip_install \u003chttp://docs.openstack.org/developer/openstack-ansible-pip_install/\u003e`_"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_e000a103","line":7,"updated":"2016-09-16 15:34:17.000000000","message":"Add this to a heading called something like \u0027Other Roles\u0027.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"- `apt_package_pinning \u003chttp://docs.openstack.org/developer/openstack-ansible-apt_package_pinning/\u003e`_"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"- `pip_install \u003chttp://docs.openstack.org/developer/openstack-ansible-pip_install/\u003e`_"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"- `galera_client \u003chttp://docs.openstack.org/developer/openstack-ansible-galera_client\u003e`_"},{"line_number":12,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_400cf53a","line":9,"updated":"2016-09-16 15:34:17.000000000","message":"Add this to a heading called something like \u0027Other Roles\u0027.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"- `pip_install \u003chttp://docs.openstack.org/developer/openstack-ansible-pip_install/\u003e`_"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"- `galera_client \u003chttp://docs.openstack.org/developer/openstack-ansible-galera_client\u003e`_"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"- `galera_server \u003chttp://docs.openstack.org/developer/openstack-ansible-galera_server\u003e`_"},{"line_number":14,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_80127d55","line":11,"updated":"2016-09-16 15:34:17.000000000","message":"Add this to a heading called something like \u0027Other Roles\u0027.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"- `galera_client \u003chttp://docs.openstack.org/developer/openstack-ansible-galera_client\u003e`_"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"- `galera_server \u003chttp://docs.openstack.org/developer/openstack-ansible-galera_server\u003e`_"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"- `ceph_client \u003chttp://docs.openstack.org/developer/openstack-ansible-ceph_client\u003e`_"},{"line_number":16,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_9d566a28","line":13,"updated":"2016-09-16 15:34:17.000000000","message":"Add this to a heading called something like \u0027Infrastructure Service Roles\u0027.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"- `galera_server \u003chttp://docs.openstack.org/developer/openstack-ansible-galera_server\u003e`_"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"- `ceph_client \u003chttp://docs.openstack.org/developer/openstack-ansible-ceph_client\u003e`_"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"- `haproxy_server \u003chttp://docs.openstack.org/developer/openstack-ansible-haproxy_server\u003e`_"},{"line_number":18,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_c0180578","line":15,"updated":"2016-09-16 15:34:17.000000000","message":"Add this to a heading called something like \u0027Other Roles\u0027.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"- `ceph_client \u003chttp://docs.openstack.org/developer/openstack-ansible-ceph_client\u003e`_"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"- `haproxy_server \u003chttp://docs.openstack.org/developer/openstack-ansible-haproxy_server\u003e`_"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"-  `lxc_container_create \u003chttp://docs.openstack.org/developer/openstack-ansible-lxc_container_create\u003e`_"},{"line_number":20,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_dd32b20f","line":17,"updated":"2016-09-16 15:34:17.000000000","message":"Add this to a heading called something like \u0027Infrastructure Service Roles\u0027.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":16,"context_line":""},{"line_number":17,"context_line":"- `haproxy_server \u003chttp://docs.openstack.org/developer/openstack-ansible-haproxy_server\u003e`_"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"-  `lxc_container_create \u003chttp://docs.openstack.org/developer/openstack-ansible-lxc_container_create\u003e`_"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"-  `lxc_hosts \u003chttp://docs.openstack.org/developer/openstack-ansible-lxc_hosts\u003e`_"},{"line_number":22,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_201e095f","line":19,"updated":"2016-09-16 15:34:17.000000000","message":"Add this to a heading called something like \u0027Other Roles\u0027.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"-  `lxc_container_create \u003chttp://docs.openstack.org/developer/openstack-ansible-lxc_container_create\u003e`_"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"-  `lxc_hosts \u003chttp://docs.openstack.org/developer/openstack-ansible-lxc_hosts\u003e`_"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"-  `memcached_server \u003chttp://docs.openstack.org/developer/openstack-ansible-memcached_server\u003e`_"},{"line_number":24,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_c02f2586","line":21,"updated":"2016-09-16 15:34:17.000000000","message":"Add this to a heading called something like \u0027Other Roles\u0027.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":20,"context_line":""},{"line_number":21,"context_line":"-  `lxc_hosts \u003chttp://docs.openstack.org/developer/openstack-ansible-lxc_hosts\u003e`_"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"-  `memcached_server \u003chttp://docs.openstack.org/developer/openstack-ansible-memcached_server\u003e`_"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"-  `-ansible-security \u003chttp://docs.openstack.org/developer/openstack-ansible-security\u003e`_"},{"line_number":26,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_5d606201","line":23,"updated":"2016-09-16 15:34:17.000000000","message":"Add this to a heading called something like \u0027Infrastructure Service Roles\u0027.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"-  `memcached_server \u003chttp://docs.openstack.org/developer/openstack-ansible-memcached_server\u003e`_"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"-  `-ansible-security \u003chttp://docs.openstack.org/developer/openstack-ansible-security\u003e`_"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"-  `openstack_hosts \u003chttp://docs.openstack.org/developer/openstack-ansible-openstack_hosts\u003e`_"},{"line_number":28,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_bd4966b9","line":25,"range":{"start_line":25,"start_character":0,"end_line":25,"end_character":88},"updated":"2016-09-16 15:34:17.000000000","message":"I think this is referenced in the Security appendix, so no need to re-reference it here.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":"-  `-ansible-security \u003chttp://docs.openstack.org/developer/openstack-ansible-security\u003e`_"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"-  `openstack_hosts \u003chttp://docs.openstack.org/developer/openstack-ansible-openstack_hosts\u003e`_"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"-  `os_keystone \u003chttp://docs.openstack.org/developer/openstack-ansible-os_keystone\u003e`_"},{"line_number":30,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_0054adfc","line":27,"updated":"2016-09-16 15:34:17.000000000","message":"Add this to a heading called something like \u0027Other Roles\u0027.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":28,"context_line":""},{"line_number":29,"context_line":"-  `os_keystone \u003chttp://docs.openstack.org/developer/openstack-ansible-os_keystone\u003e`_"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"-  `openstack_openrc \u003chttp://docs.openstack.org/developer/openstack-ansible-openstack_openrc\u003e`_"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"-  `os_aodh \u003chttp://docs.openstack.org/developer/openstack-ansible-os_aodh\u003e`_"},{"line_number":34,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_e0750198","line":31,"updated":"2016-09-16 15:34:17.000000000","message":"Add this to a heading called something like \u0027Other Roles\u0027.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":"-  `openstack_hosts \u003chttp://docs.openstack.org/developer/openstack-ansible-openstack_hosts\u003e`_"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"-  `os_keystone \u003chttp://docs.openstack.org/developer/openstack-ansible-os_keystone\u003e`_"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"-  `openstack_openrc \u003chttp://docs.openstack.org/developer/openstack-ansible-openstack_openrc\u003e`_"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"-  `os_aodh \u003chttp://docs.openstack.org/developer/openstack-ansible-os_aodh\u003e`_"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"-  `os_ceilometer \u003chttp://docs.openstack.org/developer/openstack-ansible-os_ceilometer\u003e`_"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"-  `os_cinder \u003chttp://docs.openstack.org/developer/openstack-ansible-os_cinder\u003e`_"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"-  `os_glance \u003chttp://docs.openstack.org/developer/openstack-ansible-os_glance\u003e`_"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"-  `os_gnocchi \u003chttp://docs.openstack.org/developer/openstack-ansible-os_gnocchi\u003e`_"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"-  `os_heat \u003chttp://docs.openstack.org/developer/openstack-ansible-os_heat\u003e`_"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"-  `os_horizon \u003chttp://docs.openstack.org/developer/openstack-ansible-os_horizon\u003e`_"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"-  `os_ironic \u003chttp://docs.openstack.org/developer/openstack-ansible-os_ironic\u003e`_"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"-  `os_magnum \u003chttp://docs.openstack.org/developer/openstack-ansible-os_magnum\u003e`_"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"-  `os_neutron \u003chttp://docs.openstack.org/developer/openstack-ansible-os_neutron\u003e`_"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"-  `os_nova \u003chttp://docs.openstack.org/developer/openstack-ansible-os_nova\u003e`_"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"-  `os_rally \u003chttp://docs.openstack.org/developer/openstack-ansible-os_rally\u003e`_"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"-  `os_sahara \u003chttp://docs.openstack.org/developer/openstack-ansible-os_sahara\u003e`_"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"-  `os_swift \u003chttp://docs.openstack.org/developer/openstack-ansible-os_swift\u003e`_"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"-  `os_tempest \u003chttp://docs.openstack.org/developer/openstack-ansible-os_tempest\u003e`_"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"-  `plugins \u003chttp://docs.openstack.org/developer/openstack-ansible-plugins\u003e`_"},{"line_number":64,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_9d910af4","line":61,"range":{"start_line":29,"start_character":0,"end_line":61,"end_character":83},"updated":"2016-09-16 15:34:17.000000000","message":"Sort these and put them under the heading \u0027OpenStack Service Roles\u0027. We should perhaps also refer to the right names too - eg:\n\nSahara: Data Processing","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":60,"context_line":""},{"line_number":61,"context_line":"-  `os_tempest \u003chttp://docs.openstack.org/developer/openstack-ansible-os_tempest\u003e`_"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"-  `plugins \u003chttp://docs.openstack.org/developer/openstack-ansible-plugins\u003e`_"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"-  `rabbitmq_server \u003chttp://docs.openstack.org/developer/openstack-ansible-rabbitmq_server\u003e`_"},{"line_number":66,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_3db9d679","line":63,"range":{"start_line":63,"start_character":4,"end_line":63,"end_character":11},"updated":"2016-09-16 15:34:17.000000000","message":"Ansible plugins\nAdd this to a heading called something like \u0027Other Roles\u0027.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"-  `plugins \u003chttp://docs.openstack.org/developer/openstack-ansible-plugins\u003e`_"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"-  `rabbitmq_server \u003chttp://docs.openstack.org/developer/openstack-ansible-rabbitmq_server\u003e`_"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"-  `repo_build \u003chttp://docs.openstack.org/developer/openstack-ansible-repo_build\u003e`_"},{"line_number":68,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_1d6b3af2","line":65,"updated":"2016-09-16 15:34:17.000000000","message":"Add this to a heading called something like \u0027Infrastructure Service Roles\u0027.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":64,"context_line":""},{"line_number":65,"context_line":"-  `rabbitmq_server \u003chttp://docs.openstack.org/developer/openstack-ansible-rabbitmq_server\u003e`_"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"-  `repo_build \u003chttp://docs.openstack.org/developer/openstack-ansible-repo_build\u003e`_"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"-  `repo_server \u003chttp://docs.openstack.org/developer/openstack-ansible-repo_server\u003e`_"},{"line_number":70,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_bd7c06b6","line":67,"updated":"2016-09-16 15:34:17.000000000","message":"Add this to a heading called something like \u0027Infrastructure Service Roles\u0027.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":66,"context_line":""},{"line_number":67,"context_line":"-  `repo_build \u003chttp://docs.openstack.org/developer/openstack-ansible-repo_build\u003e`_"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"-  `repo_server \u003chttp://docs.openstack.org/developer/openstack-ansible-repo_server\u003e`_"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"-  `rsyslog_client \u003chttp://docs.openstack.org/developer/openstack-ansible-rsyslog_client\u003e`_"},{"line_number":72,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_7d76fed7","line":69,"updated":"2016-09-16 15:34:17.000000000","message":"Add this to a heading called something like \u0027Infrastructure Service Roles\u0027.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":68,"context_line":""},{"line_number":69,"context_line":"-  `repo_server \u003chttp://docs.openstack.org/developer/openstack-ansible-repo_server\u003e`_"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"-  `rsyslog_client \u003chttp://docs.openstack.org/developer/openstack-ansible-rsyslog_client\u003e`_"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"-  `rsyslog_server \u003chttp://docs.openstack.org/developer/openstack-ansible-rsyslog_server\u003e`_"},{"line_number":74,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_3d471678","line":71,"updated":"2016-09-16 15:34:17.000000000","message":"Add this to a heading called something like \u0027Infrastructure Service Roles\u0027.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":70,"context_line":""},{"line_number":71,"context_line":"-  `rsyslog_client \u003chttp://docs.openstack.org/developer/openstack-ansible-rsyslog_client\u003e`_"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"-  `rsyslog_server \u003chttp://docs.openstack.org/developer/openstack-ansible-rsyslog_server\u003e`_"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"-  `sshd \u003chttp://docs.openstack.org/developer/openstack-ansible-sshd\u003e`_"},{"line_number":76,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_1d425a68","line":73,"updated":"2016-09-16 15:34:17.000000000","message":"Add this to a heading called something like \u0027Infrastructure Service Roles\u0027.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":72,"context_line":""},{"line_number":73,"context_line":"-  `rsyslog_server \u003chttp://docs.openstack.org/developer/openstack-ansible-rsyslog_server\u003e`_"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"-  `sshd \u003chttp://docs.openstack.org/developer/openstack-ansible-sshd\u003e`_"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"-  `bird \u003chttp://docs.openstack.org/developer/openstack-ansible-bird\u003e`_"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"-  `etcd \u003chttp://docs.openstack.org/developer/openstack-ansible-etcd\u003e`_"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"-  `unbound \u003chttp://docs.openstack.org/developer/openstack-ansible-unbound\u003e`_"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"-  `resolvconf \u003chttp://docs.openstack.org/developer/openstack-ansible-resolvconf\u003e`_"},{"line_number":84,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_9d758afb","line":83,"range":{"start_line":75,"start_character":0,"end_line":83,"end_character":83},"updated":"2016-09-16 15:34:17.000000000","message":"remove these - they\u0027re external and don\u0027t have published docs","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"70dd6ed377958fa31fd49d5fb29091a39e592916","unresolved":false,"context_lines":[{"line_number":13,"context_line":"Infrastructure service roles"},{"line_number":14,"context_line":"~~~~~~~~~~~~~~~~~~~~~~~~~~~~"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"- `galera_server \u003chttp://docs.openstack.org/developer/openstack-ansible-galera_server\u003e`_"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"- `haproxy_server \u003chttp://docs.openstack.org/developer/openstack-ansible-haproxy_server\u003e`_"},{"line_number":19,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"7a8ec9b2_d1c8d924","line":16,"updated":"2016-09-16 16:24:13.000000000","message":"Please sort all the role names per section alphabetically.","commit_id":"5c8cae788cc785d0a4f051e5add301d98a2801cc"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"70dd6ed377958fa31fd49d5fb29091a39e592916","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"- `haproxy_server \u003chttp://docs.openstack.org/developer/openstack-ansible-haproxy_server\u003e`_"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"-  `memcached_server \u003chttp://docs.openstack.org/developer/openstack-ansible-memcached_server\u003e`_"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"-  `rabbitmq_server \u003chttp://docs.openstack.org/developer/openstack-ansible-rabbitmq_server\u003e`_"},{"line_number":23,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"7a8ec9b2_f17f95dd","line":20,"updated":"2016-09-16 16:24:13.000000000","message":"spacing issue","commit_id":"5c8cae788cc785d0a4f051e5add301d98a2801cc"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"70dd6ed377958fa31fd49d5fb29091a39e592916","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"-  `repo_server \u003chttp://docs.openstack.org/developer/openstack-ansible-repo_server\u003e`_"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"-  `rsyslog_client \u003chttp://docs.openstack.org/developer/openstack-ansible-rsyslog_client\u003e`_"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"-  `rsyslog_server \u003chttp://docs.openstack.org/developer/openstack-ansible-rsyslog_server\u003e`_"},{"line_number":31,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"7a8ec9b2_b1442db7","line":28,"updated":"2016-09-16 16:24:13.000000000","message":"move to \u0027Other roles\u0027","commit_id":"5c8cae788cc785d0a4f051e5add301d98a2801cc"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"70dd6ed377958fa31fd49d5fb29091a39e592916","unresolved":false,"context_lines":[{"line_number":84,"context_line":""},{"line_number":85,"context_line":"-  `openstack_hosts \u003chttp://docs.openstack.org/developer/openstack-ansible-openstack_hosts\u003e`_"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"-  `plugins \u003chttp://docs.openstack.org/developer/openstack-ansible-plugins\u003e`_"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":""},{"line_number":90,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"7a8ec9b2_315d7d79","line":87,"range":{"start_line":87,"start_character":4,"end_line":87,"end_character":11},"updated":"2016-09-16 16:24:13.000000000","message":"call this \u0027Ansible plugins\u0027","commit_id":"5c8cae788cc785d0a4f051e5add301d98a2801cc"}],"doc/source/install-guide/configure.rst":[{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":35,"context_line":"   ``/opt/openstack-ansible/etc/openstack_deploy`` directory to the"},{"line_number":36,"context_line":"   ``/etc/openstack_deploy`` directory."},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"   .. note::"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"      As of Newton, the ``env.d`` directory has been moved from this source"},{"line_number":41,"context_line":"      directory to ``playbooks/inventory/``."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"#. Change to the ``/etc/openstack_deploy`` directory."},{"line_number":44,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_00d74d4b","line":41,"range":{"start_line":38,"start_character":0,"end_line":41,"end_character":44},"updated":"2016-09-16 15:34:17.000000000","message":"Remove this note - no-one needs to know about this. It\u0027s an advanced configuration topic and there are docs elsewhere informing people about it.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"}],"doc/source/install-guide/deploymenthost.rst":[{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":".. code::"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"   # apt-get dist-upgrade"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"#. Install additional software packages if not already installed"},{"line_number":41,"context_line":"   during operating system installation:"}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_200d29e8","line":38,"range":{"start_line":38,"start_character":0,"end_line":38,"end_character":25},"updated":"2016-09-16 15:34:17.000000000","message":"if you execute this, you should reboot afterwards.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"a3d935c3b3a9dd23ae74a7d6ed75bbd9d905ee2d","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":".. code::"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"   # apt-get dist-upgrade"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"Reboot before you continue."},{"line_number":41,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"7a8ec9b2_0c0dc6e7","line":38,"updated":"2016-09-16 16:31:17.000000000","message":"Add an apt-get update before the dist-upgrade similar to https://review.openstack.org/370893","commit_id":"5c8cae788cc785d0a4f051e5add301d98a2801cc"}],"doc/source/install-guide/installation.rst":[{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":158,"context_line":".. TODO Add procedures to test different layers of the OpenStack environment"},{"line_number":159,"context_line":""},{"line_number":160,"context_line":"The utility container provides a CLI environment for additional"},{"line_number":161,"context_line":"configuration and testing. The following instructions are to be done on the"},{"line_number":162,"context_line":"infra host."},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"#. Determine the utility container name:"}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_80719d78","line":161,"range":{"start_line":161,"start_character":72,"end_line":161,"end_character":75},"updated":"2016-09-16 15:34:17.000000000","message":"an","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"}],"doc/source/install-guide/targethosts-prepare.rst":[{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"07318d9a81c8fa94bd5ec27736646591acab9a67","unresolved":false,"context_lines":[{"line_number":59,"context_line":"#. Copy the contents of the public key file on the deployment host to"},{"line_number":60,"context_line":"   the ``/root/.ssh/authorized_keys`` file on each target host."},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"#. Use the Ansible `ping module \u003chttp://docs.ansible.com/ansible/ping_module.html\u003e`_"},{"line_number":63,"context_line":"   to test public key authentication from the deployment host to each"},{"line_number":64,"context_line":"   target host. SSH provides a shell without asking for a"},{"line_number":65,"context_line":"   password."}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_60a571a0","line":62,"range":{"start_line":62,"start_character":3,"end_line":62,"end_character":84},"updated":"2016-09-16 15:34:17.000000000","message":"This is going to be hard because at this stage you have no Ansible inventory setup, so it\u0027d be better to test in an alternative way.\n\nA simple method is to ssh to the target host from the deployment host. If you\u0027re able to connect and get the shell without authenticating, then it\u0027s working.","commit_id":"c84392ba06be201b048722b09f8a6b00de6eae8c"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"0e4a7bcd168099a067374d20e11f36e1481bc21c","unresolved":false,"context_lines":[{"line_number":28,"context_line":""},{"line_number":29,"context_line":"   .. code-block:: shell-session"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"       # apt-get dist-upgrade"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"#. Ensure the kernel version is ``3.13.0-34-generic`` or later."},{"line_number":34,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"7a8ec9b2_9191f1f3","line":31,"updated":"2016-09-16 16:25:34.000000000","message":"There should be a note to reboot after this task.","commit_id":"5c8cae788cc785d0a4f051e5add301d98a2801cc"}]}
