)]}'
{"contrib/docker/Dockerfile":[{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"c48fb6fe9031760cccd13822b201da2cc3fc9d38","unresolved":false,"context_lines":[{"line_number":4,"context_line":"RUN apt update"},{"line_number":5,"context_line":"RUN apt-get install -y python-dev libssl-dev python-pip libxml2-dev \\"},{"line_number":6,"context_line":"                     libxslt-dev git git-review libffi-dev gettext \\"},{"line_number":7,"context_line":"                     python-tox python-memcache vim crudini "},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"### Clone searchlight source code"},{"line_number":10,"context_line":"RUN apt-get install wget -y "}],"source_content_type":"text/x-dockerfile","patch_set":4,"id":"9fdfeff1_1e8cfad5","line":7,"range":{"start_line":7,"start_character":59,"end_line":7,"end_character":60},"updated":"2019-03-04 14:58:13.000000000","message":"Remove blank space","commit_id":"df02b981c7cbdb58da623bcb3720f13b773a4c55"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"c48fb6fe9031760cccd13822b201da2cc3fc9d38","unresolved":false,"context_lines":[{"line_number":7,"context_line":"                     python-tox python-memcache vim crudini "},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"### Clone searchlight source code"},{"line_number":10,"context_line":"RUN apt-get install wget -y "},{"line_number":11,"context_line":"WORKDIR /home"},{"line_number":12,"context_line":"RUN git clone https://git.openstack.org/openstack/searchlight"},{"line_number":13,"context_line":"WORKDIR /home/searchlight"}],"source_content_type":"text/x-dockerfile","patch_set":4,"id":"9fdfeff1_3e00de35","line":10,"range":{"start_line":10,"start_character":27,"end_line":10,"end_character":28},"updated":"2019-03-04 14:58:13.000000000","message":"ditto","commit_id":"df02b981c7cbdb58da623bcb3720f13b773a4c55"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"c48fb6fe9031760cccd13822b201da2cc3fc9d38","unresolved":false,"context_lines":[{"line_number":22,"context_line":"RUN cp etc/api-paste.ini /etc/searchlight/"},{"line_number":23,"context_line":"COPY searchlight.conf /etc/searchlight/"},{"line_number":24,"context_line":"COPY entrypoint.sh /home/"},{"line_number":25,"context_line":"RUN chmod 775 /home/*"},{"line_number":26,"context_line":"EXPOSE 9393"},{"line_number":27,"context_line":"WORKDIR /home"},{"line_number":28,"context_line":"ENTRYPOINT [\"./entrypoint.sh\"]"}],"source_content_type":"text/x-dockerfile","patch_set":4,"id":"9fdfeff1_fe8ed6cf","line":25,"range":{"start_line":25,"start_character":0,"end_line":25,"end_character":21},"updated":"2019-03-04 14:58:13.000000000","message":"Should only apply to /home/searchlight dir","commit_id":"df02b981c7cbdb58da623bcb3720f13b773a4c55"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"5cf9bcbb05c42e5ababcf9e0168e76665a8d7bc7","unresolved":false,"context_lines":[{"line_number":2,"context_line":"MAINTAINER saphi070@gmail.com"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"RUN apt update"},{"line_number":5,"context_line":"RUN apt-get install -y python-dev libssl-dev python-pip libxml2-dev \\"},{"line_number":6,"context_line":"                     libxslt-dev git git-review libffi-dev gettext \\"},{"line_number":7,"context_line":"                     python-tox python-memcache vim crudini"},{"line_number":8,"context_line":""}],"source_content_type":"text/x-dockerfile","patch_set":6,"id":"9fdfeff1_8ae3bad8","line":5,"range":{"start_line":5,"start_character":4,"end_line":5,"end_character":10},"updated":"2019-03-05 01:38:14.000000000","message":"Better use apt for consistency","commit_id":"25eae483d2bfa9f975cdc919b5b788acd6db1621"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"5cf9bcbb05c42e5ababcf9e0168e76665a8d7bc7","unresolved":false,"context_lines":[{"line_number":4,"context_line":"RUN apt update"},{"line_number":5,"context_line":"RUN apt-get install -y python-dev libssl-dev python-pip libxml2-dev \\"},{"line_number":6,"context_line":"                     libxslt-dev git git-review libffi-dev gettext \\"},{"line_number":7,"context_line":"                     python-tox python-memcache vim crudini"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"### Clone searchlight source code"},{"line_number":10,"context_line":"RUN apt-get install wget -y"}],"source_content_type":"text/x-dockerfile","patch_set":6,"id":"9fdfeff1_8afc1a73","line":7,"range":{"start_line":7,"start_character":48,"end_line":7,"end_character":51},"updated":"2019-03-05 01:38:14.000000000","message":"I don\u0027t think we need vim for the container :)","commit_id":"25eae483d2bfa9f975cdc919b5b788acd6db1621"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"5cf9bcbb05c42e5ababcf9e0168e76665a8d7bc7","unresolved":false,"context_lines":[{"line_number":7,"context_line":"                     python-tox python-memcache vim crudini"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"### Clone searchlight source code"},{"line_number":10,"context_line":"RUN apt-get install wget -y"},{"line_number":11,"context_line":"WORKDIR /home"},{"line_number":12,"context_line":"RUN git clone https://git.openstack.org/openstack/searchlight"},{"line_number":13,"context_line":"WORKDIR /home/searchlight"}],"source_content_type":"text/x-dockerfile","patch_set":6,"id":"9fdfeff1_ea2cc602","line":10,"range":{"start_line":10,"start_character":4,"end_line":10,"end_character":11},"updated":"2019-03-05 01:38:14.000000000","message":"Better use apt for consistency","commit_id":"25eae483d2bfa9f975cdc919b5b788acd6db1621"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"5cf9bcbb05c42e5ababcf9e0168e76665a8d7bc7","unresolved":false,"context_lines":[{"line_number":20,"context_line":""},{"line_number":21,"context_line":"### Copy Configure files"},{"line_number":22,"context_line":"RUN cp etc/api-paste.ini /etc/searchlight/"},{"line_number":23,"context_line":"COPY searchlight.conf /etc/searchlight/"},{"line_number":24,"context_line":"COPY entrypoint.sh /home/"},{"line_number":25,"context_line":"RUN chmod 775 /home/entrypoint.sh"},{"line_number":26,"context_line":"EXPOSE 9393"}],"source_content_type":"text/x-dockerfile","patch_set":6,"id":"9fdfeff1_aa5d5e7a","line":23,"range":{"start_line":23,"start_character":5,"end_line":23,"end_character":21},"updated":"2019-03-05 01:38:14.000000000","message":"First, we need to generate the configuration:\n\noslo-config-generator --config-file etc/oslo-config-generator/searchlight.conf\n\nThan, copy it:\n\ncp etc/searchlight.conf.sample /etc/searchlight/searchlight.conf","commit_id":"25eae483d2bfa9f975cdc919b5b788acd6db1621"},{"author":{"_account_id":27488,"name":"sapd","email":"saphi070@gmail.com","username":"sapd"},"change_message_id":"e84df7215c8fc48b420d08d229234edfbbe5eb94","unresolved":false,"context_lines":[{"line_number":20,"context_line":""},{"line_number":21,"context_line":"### Copy Configure files"},{"line_number":22,"context_line":"RUN cp etc/api-paste.ini /etc/searchlight/"},{"line_number":23,"context_line":"COPY searchlight.conf /etc/searchlight/"},{"line_number":24,"context_line":"COPY entrypoint.sh /home/"},{"line_number":25,"context_line":"RUN chmod 775 /home/entrypoint.sh"},{"line_number":26,"context_line":"EXPOSE 9393"}],"source_content_type":"text/x-dockerfile","patch_set":6,"id":"9fdfeff1_7d32d9f4","line":23,"range":{"start_line":23,"start_character":5,"end_line":23,"end_character":21},"in_reply_to":"9fdfeff1_aa5d5e7a","updated":"2019-03-05 14:32:30.000000000","message":"\u003e First, we need to generate the configuration:\n \u003e \n \u003e oslo-config-generator --config-file etc/oslo-config-generator/searchlight.conf\n \u003e \n \u003e Than, copy it:\n \u003e \n \u003e cp etc/searchlight.conf.sample /etc/searchlight/searchlight.conf","commit_id":"25eae483d2bfa9f975cdc919b5b788acd6db1621"}],"contrib/docker/README.rst":[{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"c48fb6fe9031760cccd13822b201da2cc3fc9d38","unresolved":false,"context_lines":[{"line_number":1,"context_line":"Running Searchlight in containers"},{"line_number":2,"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\u003d\u003d\u003d\u003d"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"This contrib include Dockerfile, docker-compose file and some configure to running Searchlight project in Docker container."},{"line_number":5,"context_line":""},{"line_number":6,"context_line":"Requirements"},{"line_number":7,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"9fdfeff1_990a441e","line":4,"range":{"start_line":4,"start_character":0,"end_line":4,"end_character":123},"updated":"2019-03-04 14:58:13.000000000","message":"The line should have only 80 characters as maximum","commit_id":"df02b981c7cbdb58da623bcb3720f13b773a4c55"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"c48fb6fe9031760cccd13822b201da2cc3fc9d38","unresolved":false,"context_lines":[{"line_number":6,"context_line":"Requirements"},{"line_number":7,"context_line":"------------"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"You have already installed docker and docker-compose, Follow guides in [1], [2] to install docker and docker-compose"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":""},{"line_number":12,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"9fdfeff1_d900cc03","line":9,"range":{"start_line":9,"start_character":0,"end_line":9,"end_character":116},"updated":"2019-03-04 14:58:13.000000000","message":"The line should have only 80 characters as maximum","commit_id":"df02b981c7cbdb58da623bcb3720f13b773a4c55"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"c48fb6fe9031760cccd13822b201da2cc3fc9d38","unresolved":false,"context_lines":[{"line_number":21,"context_line":""},{"line_number":22,"context_line":"- Ajust variables in your `docker-compose.example.yml` about authentication for Searchlight"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Example in my environment"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"::"},{"line_number":27,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"9fdfeff1_1e015a07","line":24,"range":{"start_line":24,"start_character":8,"end_line":24,"end_character":25},"updated":"2019-03-04 14:58:13.000000000","message":"delete","commit_id":"df02b981c7cbdb58da623bcb3720f13b773a4c55"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"c48fb6fe9031760cccd13822b201da2cc3fc9d38","unresolved":false,"context_lines":[{"line_number":61,"context_line":"---------------------"},{"line_number":62,"context_line":""},{"line_number":63,"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\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\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\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\u003d"},{"line_number":64,"context_line":"        Name                    Description                                                        Example "},{"line_number":65,"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\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\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\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\u003d"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"TRANSPORT_URL           RabbitMQ URL                                        rabbitmq://openstack:openstack@192.168.53.31"}],"source_content_type":"text/x-rst","patch_set":4,"id":"9fdfeff1_fe2a568f","line":64,"range":{"start_line":64,"start_character":106,"end_line":64,"end_character":107},"updated":"2019-03-04 14:58:13.000000000","message":"blank space","commit_id":"df02b981c7cbdb58da623bcb3720f13b773a4c55"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"c48fb6fe9031760cccd13822b201da2cc3fc9d38","unresolved":false,"context_lines":[{"line_number":60,"context_line":"Environment Variables"},{"line_number":61,"context_line":"---------------------"},{"line_number":62,"context_line":""},{"line_number":63,"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\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\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\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\u003d"},{"line_number":64,"context_line":"        Name                    Description                                                        Example "},{"line_number":65,"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\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\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\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\u003d"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"TRANSPORT_URL           RabbitMQ URL                                        rabbitmq://openstack:openstack@192.168.53.31"},{"line_number":68,"context_line":"REGION_NAME             Openstack Region Name                               RegionOne"},{"line_number":69,"context_line":"AUTH_URL                Keystone Auth URL                                   http://192.168.53.31:5000"},{"line_number":70,"context_line":"SEARCHLIGHT_USER        Username of searchlight in Keystone                 searchlight"},{"line_number":71,"context_line":"SEARCHLIGHT_PASS        Password of searchlight in Keystone                 openstack"},{"line_number":72,"context_line":"PROJECT_NAME            Name of project for searchlight                     service"},{"line_number":73,"context_line":"DOMAIN_NAME             Domain name                                         default"},{"line_number":74,"context_line":"ELASTICSEARCH_HOST      Host and port of Elasticsearch                      192.168.53.31:9200"},{"line_number":75,"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\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\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\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\u003d"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"References"}],"source_content_type":"text/x-rst","patch_set":4,"id":"9fdfeff1_1916544b","line":75,"range":{"start_line":63,"start_character":0,"end_line":75,"end_character":129},"updated":"2019-03-04 14:58:13.000000000","message":"Don\u0027t have to put those vars in a table like this. You could use bullet points and keep the 80 chars per line rule.","commit_id":"df02b981c7cbdb58da623bcb3720f13b773a4c55"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"c48fb6fe9031760cccd13822b201da2cc3fc9d38","unresolved":false,"context_lines":[{"line_number":79,"context_line":"----------"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"- [1] Install docker on Ubuntu: https://docs.docker.com/install/linux/docker-ce/ubuntu/"},{"line_number":82,"context_line":"- [2] Install docker-compose: https://docs.docker.com/compose/install/"}],"source_content_type":"text/x-rst","patch_set":4,"id":"9fdfeff1_7e10a65a","line":82,"updated":"2019-03-04 14:58:13.000000000","message":"add one blank line","commit_id":"df02b981c7cbdb58da623bcb3720f13b773a4c55"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"05a57a4c9e2b5fec7043eee57eeca789e391c5b7","unresolved":false,"context_lines":[{"line_number":1,"context_line":"Running Searchlight in containers"},{"line_number":2,"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\u003d\u003d\u003d\u003d"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"This contrib include Dockerfile, docker-compose file and some configure to running "},{"line_number":5,"context_line":"Searchlight project in Docker container."},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Requirements"}],"source_content_type":"text/x-rst","patch_set":5,"id":"9fdfeff1_6e5c734c","line":4,"range":{"start_line":4,"start_character":62,"end_line":4,"end_character":71},"updated":"2019-03-04 17:44:10.000000000","message":"configurations","commit_id":"d2d8a5e2633b45be1a7a11f65515b8a62fa18c54"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"05a57a4c9e2b5fec7043eee57eeca789e391c5b7","unresolved":false,"context_lines":[{"line_number":1,"context_line":"Running Searchlight in containers"},{"line_number":2,"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\u003d\u003d\u003d\u003d"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"This contrib include Dockerfile, docker-compose file and some configure to running "},{"line_number":5,"context_line":"Searchlight project in Docker container."},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Requirements"}],"source_content_type":"text/x-rst","patch_set":5,"id":"9fdfeff1_ae425b67","line":4,"range":{"start_line":4,"start_character":82,"end_line":4,"end_character":83},"updated":"2019-03-04 17:44:10.000000000","message":"delete trailing space","commit_id":"d2d8a5e2633b45be1a7a11f65515b8a62fa18c54"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"05a57a4c9e2b5fec7043eee57eeca789e391c5b7","unresolved":false,"context_lines":[{"line_number":1,"context_line":"Running Searchlight in containers"},{"line_number":2,"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\u003d\u003d\u003d\u003d"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"This contrib include Dockerfile, docker-compose file and some configure to running "},{"line_number":5,"context_line":"Searchlight project in Docker container."},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Requirements"}],"source_content_type":"text/x-rst","patch_set":5,"id":"9fdfeff1_0e4e0796","line":4,"range":{"start_line":4,"start_character":13,"end_line":4,"end_character":20},"updated":"2019-03-04 17:44:10.000000000","message":"includes","commit_id":"d2d8a5e2633b45be1a7a11f65515b8a62fa18c54"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"05a57a4c9e2b5fec7043eee57eeca789e391c5b7","unresolved":false,"context_lines":[{"line_number":2,"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\u003d\u003d\u003d\u003d"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"This contrib include Dockerfile, docker-compose file and some configure to running "},{"line_number":5,"context_line":"Searchlight project in Docker container."},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Requirements"},{"line_number":8,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"9fdfeff1_8e59975c","line":5,"range":{"start_line":5,"start_character":30,"end_line":5,"end_character":39},"updated":"2019-03-04 17:44:10.000000000","message":"containers","commit_id":"d2d8a5e2633b45be1a7a11f65515b8a62fa18c54"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"05a57a4c9e2b5fec7043eee57eeca789e391c5b7","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Requirements"},{"line_number":8,"context_line":"------------"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"You have already installed docker and docker-compose, Follow guides in [1], [2] "},{"line_number":11,"context_line":"to install docker and docker-compose"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"9fdfeff1_2e7d0bb2","line":10,"range":{"start_line":10,"start_character":79,"end_line":10,"end_character":80},"updated":"2019-03-04 17:44:10.000000000","message":"ditto","commit_id":"d2d8a5e2633b45be1a7a11f65515b8a62fa18c54"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"05a57a4c9e2b5fec7043eee57eeca789e391c5b7","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Requirements"},{"line_number":8,"context_line":"------------"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"You have already installed docker and docker-compose, Follow guides in [1], [2] "},{"line_number":11,"context_line":"to install docker and docker-compose"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"9fdfeff1_2e566b2c","line":10,"range":{"start_line":10,"start_character":54,"end_line":10,"end_character":55},"updated":"2019-03-04 17:44:10.000000000","message":"f","commit_id":"d2d8a5e2633b45be1a7a11f65515b8a62fa18c54"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"05a57a4c9e2b5fec7043eee57eeca789e391c5b7","unresolved":false,"context_lines":[{"line_number":8,"context_line":"------------"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"You have already installed docker and docker-compose, Follow guides in [1], [2] "},{"line_number":11,"context_line":"to install docker and docker-compose"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":""},{"line_number":14,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"9fdfeff1_4e53af3a","line":11,"updated":"2019-03-04 17:44:10.000000000","message":".","commit_id":"d2d8a5e2633b45be1a7a11f65515b8a62fa18c54"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"05a57a4c9e2b5fec7043eee57eeca789e391c5b7","unresolved":false,"context_lines":[{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    docker-compose -f docker-compose.example.yml build"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"- Ajust variables in your `docker-compose.example.yml` about authentication for Searchlight"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Example"},{"line_number":27,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"9fdfeff1_ae101b5b","line":24,"range":{"start_line":24,"start_character":2,"end_line":24,"end_character":91},"updated":"2019-03-04 17:44:10.000000000","message":"Adjust the authentication variables in your `docker-compose.example.yml`.","commit_id":"d2d8a5e2633b45be1a7a11f65515b8a62fa18c54"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"05a57a4c9e2b5fec7043eee57eeca789e391c5b7","unresolved":false,"context_lines":[{"line_number":68,"context_line":"- SEARCHLIGHT_USER: Username of searchlight. Example: searchlight"},{"line_number":69,"context_line":"- SEARCHLIGHT_PASS: Password of searchlight. Example: openstack"},{"line_number":70,"context_line":"- PROJECT_NAME: Name of project for searchlight. Example: service"},{"line_number":71,"context_line":"- DOMAIN_NAME: Domain name: Example: default"},{"line_number":72,"context_line":"- ELASTICSEARCH_HOST: Host and port of Elasticsearch. Example: 192.168.53.31:9200"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"9fdfeff1_2e042b18","line":71,"range":{"start_line":71,"start_character":15,"end_line":71,"end_character":27},"updated":"2019-03-04 17:44:10.000000000","message":"?","commit_id":"d2d8a5e2633b45be1a7a11f65515b8a62fa18c54"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"46d81b137d52deb533f2dd0d9bbcdb2ec2f8e5ca","unresolved":false,"context_lines":[{"line_number":1,"context_line":"Running Searchlight in containers"},{"line_number":2,"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\u003d\u003d\u003d\u003d"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"This contrib includes Dockerfile, docker-compose file and some configurations to running"},{"line_number":5,"context_line":"Searchlight project in Docker containers."},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Requirements"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9fdfeff1_aad23ed0","line":4,"range":{"start_line":4,"start_character":81,"end_line":4,"end_character":88},"updated":"2019-03-05 01:40:34.000000000","message":"run","commit_id":"25eae483d2bfa9f975cdc919b5b788acd6db1621"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"46d81b137d52deb533f2dd0d9bbcdb2ec2f8e5ca","unresolved":false,"context_lines":[{"line_number":2,"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\u003d\u003d\u003d\u003d"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"This contrib includes Dockerfile, docker-compose file and some configurations to running"},{"line_number":5,"context_line":"Searchlight project in Docker containers."},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Requirements"},{"line_number":8,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9fdfeff1_6afd363a","line":5,"range":{"start_line":5,"start_character":12,"end_line":5,"end_character":19},"updated":"2019-03-05 01:40:34.000000000","message":"delete","commit_id":"25eae483d2bfa9f975cdc919b5b788acd6db1621"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"46d81b137d52deb533f2dd0d9bbcdb2ec2f8e5ca","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Requirements"},{"line_number":8,"context_line":"------------"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"You have already installed docker and docker-compose, follow guides in [1], [2]"},{"line_number":11,"context_line":"to install docker and docker-compose"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"9fdfeff1_2ade4eda","line":10,"range":{"start_line":10,"start_character":0,"end_line":10,"end_character":54},"updated":"2019-03-05 01:40:34.000000000","message":"I guess we can remove this.","commit_id":"25eae483d2bfa9f975cdc919b5b788acd6db1621"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"46d81b137d52deb533f2dd0d9bbcdb2ec2f8e5ca","unresolved":false,"context_lines":[{"line_number":9,"context_line":""},{"line_number":10,"context_line":"You have already installed docker and docker-compose, follow guides in [1], [2]"},{"line_number":11,"context_line":"to install docker and docker-compose"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":""},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Usage"},{"line_number":16,"context_line":"-----"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9fdfeff1_4a007236","line":13,"range":{"start_line":12,"start_character":0,"end_line":13,"end_character":0},"updated":"2019-03-05 01:40:34.000000000","message":"Delete these 2 blank lines.","commit_id":"25eae483d2bfa9f975cdc919b5b788acd6db1621"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"d2507ddee0af84b0db9cbd1bcbaa157096f093e6","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"    docker-compose -f docker-compose.example.yml build"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"- Ajust the authentication variables in your `docker-compose.example.yml`."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Example"},{"line_number":24,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9fdfeff1_d74f1ebc","line":21,"range":{"start_line":21,"start_character":2,"end_line":21,"end_character":7},"updated":"2019-03-05 13:55:46.000000000","message":"Adjust","commit_id":"c1550522f7007a10f535415013acb77cd28b6a42"}],"contrib/docker/entrypoint.sh":[{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"c48fb6fe9031760cccd13822b201da2cc3fc9d38","unresolved":false,"context_lines":[{"line_number":5,"context_line":""},{"line_number":6,"context_line":"DOMAIN_NAME\u003d${DOMAIN_NAME:-default}"},{"line_number":7,"context_line":"PROJECT_NAME\u003d${PROJECT_NAME:-service}"},{"line_number":8,"context_line":"SEARCHLIGHT_USER\u003d${SEARCHLIGHT_USER-searchlight}"},{"line_number":9,"context_line":"SEARCHLIGHT_PASS\u003d${SEARCHLIGHT_PASS-openstack}"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":""}],"source_content_type":"text/x-sh","patch_set":4,"id":"9fdfeff1_9e6eaafe","line":8,"updated":"2019-03-04 14:58:13.000000000","message":":","commit_id":"df02b981c7cbdb58da623bcb3720f13b773a4c55"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"c48fb6fe9031760cccd13822b201da2cc3fc9d38","unresolved":false,"context_lines":[{"line_number":6,"context_line":"DOMAIN_NAME\u003d${DOMAIN_NAME:-default}"},{"line_number":7,"context_line":"PROJECT_NAME\u003d${PROJECT_NAME:-service}"},{"line_number":8,"context_line":"SEARCHLIGHT_USER\u003d${SEARCHLIGHT_USER-searchlight}"},{"line_number":9,"context_line":"SEARCHLIGHT_PASS\u003d${SEARCHLIGHT_PASS-openstack}"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"crudini --set $searchlight_conf DEFAULT transport_url $TRANSPORT_URL"}],"source_content_type":"text/x-sh","patch_set":4,"id":"9fdfeff1_5e7042db","line":9,"updated":"2019-03-04 14:58:13.000000000","message":":","commit_id":"df02b981c7cbdb58da623bcb3720f13b773a4c55"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"c48fb6fe9031760cccd13822b201da2cc3fc9d38","unresolved":false,"context_lines":[{"line_number":49,"context_line":""},{"line_number":50,"context_line":"if [ ! -d /var/log/searchlight ]; then"},{"line_number":51,"context_line":"    mkdir /var/log/searchlight"},{"line_number":52,"context_line":"fi "},{"line_number":53,"context_line":"searchlight-$PROCESS --log-file\u003d/var/log/searchlight/searchlight-$PROCESS --config-file $searchlight_conf"}],"source_content_type":"text/x-sh","patch_set":4,"id":"9fdfeff1_5eab621d","line":52,"range":{"start_line":52,"start_character":2,"end_line":52,"end_character":3},"updated":"2019-03-04 14:58:13.000000000","message":"remove the blank space","commit_id":"df02b981c7cbdb58da623bcb3720f13b773a4c55"},{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"05a57a4c9e2b5fec7043eee57eeca789e391c5b7","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"if [ ! -f /opt/searchlight-synced ];then"},{"line_number":34,"context_line":"    echo \"Sync index to elasticsearch\""},{"line_number":35,"context_line":"    echo \"Testing elasticsearch endpoint\""},{"line_number":36,"context_line":"    while true;"},{"line_number":37,"context_line":"    do"},{"line_number":38,"context_line":"        curl -s $ELASTICSEARCH_HOST \u003e /dev/null"}],"source_content_type":"text/x-sh","patch_set":5,"id":"9fdfeff1_710f742f","line":35,"range":{"start_line":35,"start_character":4,"end_line":35,"end_character":41},"updated":"2019-03-04 17:44:10.000000000","message":"I guess we can remove this line.","commit_id":"d2d8a5e2633b45be1a7a11f65515b8a62fa18c54"}],"contrib/docker/searchlight.conf":[{"author":{"_account_id":27068,"name":"Trinh Nguyen","email":"dangtrinhnt@gmail.com","username":"dangtrinhnt"},"change_message_id":"c48fb6fe9031760cccd13822b201da2cc3fc9d38","unresolved":false,"context_lines":[{"line_number":7,"context_line":"auth_url \u003d https://keystone:35357"},{"line_number":8,"context_line":"password \u003d openstack"},{"line_number":9,"context_line":"project_name \u003d service"},{"line_number":10,"context_line":"user_domain_name \u003d Default "},{"line_number":11,"context_line":"project_domain_name \u003d Default"},{"line_number":12,"context_line":"username \u003d searchlight"},{"line_number":13,"context_line":"auth_type \u003d  password"}],"source_content_type":"text/plain","patch_set":4,"id":"9fdfeff1_7e42e66a","line":10,"range":{"start_line":10,"start_character":26,"end_line":10,"end_character":27},"updated":"2019-03-04 14:58:13.000000000","message":"remove the blank space","commit_id":"df02b981c7cbdb58da623bcb3720f13b773a4c55"}]}
