)]}'
{"docker/elemental.yml":[{"author":{"_account_id":16233,"name":"Mauricio Lima","email":"mauriciolimab@gmail.com","username":"limamauricio"},"change_message_id":"00f8ab2dd49d1ecd81f7a0b628a3b0c4ee5cae05","unresolved":false,"context_lines":[{"line_number":206,"context_line":"      - RUN cat /tmp/kolla_bashrc \u003e\u003e /root/.bashrc"},{"line_number":207,"context_line":"      - ENV PS1\u003d\"$(tput bold)($(printenv KOLLA_SERVICE_NAME))$(tput sgr0)[$(id -un)@$(hostname -s) $(pwd)]$\""},{"line_number":208,"context_line":"      - RUN cat /tmp/kolla_bashrc \u003e\u003e /etc/bashrc"},{"line_number":209,"context_line":"      - RUN yum -y update "},{"line_number":210,"context_line":"      - RUN yum clean all"},{"line_number":211,"context_line":"      - COPY versionlock.list /etc/yum/pluginconf.d/"},{"line_number":212,"context_line":"  ubuntu:"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"9abb7d3a_f1e2a49e","line":209,"updated":"2016-05-27 17:55:35.000000000","message":"remove whitespace","commit_id":"8b2733096f05e3ca3902244fa95e4458504e8390"},{"author":{"_account_id":16233,"name":"Mauricio Lima","email":"mauriciolimab@gmail.com","username":"limamauricio"},"change_message_id":"00f8ab2dd49d1ecd81f7a0b628a3b0c4ee5cae05","unresolved":false,"context_lines":[{"line_number":212,"context_line":"  ubuntu:"},{"line_number":213,"context_line":"    parent: ubuntu:14.04"},{"line_number":214,"context_line":"    repos:"},{"line_number":215,"context_line":"      - 199369E5404BD5FC7D2FE43BCBCB082A1BB943DB   "},{"line_number":216,"context_line":"      - 391A9AA2147192839E9DB0315EDB1B62EC4926EA"},{"line_number":217,"context_line":"      - 430BDF5C56E7C94E848EE60C1C4CBDCDCD2EFD2A"},{"line_number":218,"context_line":"      - 08B73419AC32B4E966C1A330E84AC2C0460F3994"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"9abb7d3a_31f38c75","line":215,"updated":"2016-05-27 17:55:35.000000000","message":"ditto","commit_id":"8b2733096f05e3ca3902244fa95e4458504e8390"},{"author":{"_account_id":19384,"name":"Serguei Bezverkhi","email":"sbezverk@cisco.com","username":"sbezverk"},"change_message_id":"8a7ddb2a87bf4ae83a28f0a81576572575e9e8dd","unresolved":false,"context_lines":[{"line_number":1,"context_line":"aodh-api:"},{"line_number":2,"context_line":"  all_common_commands:"},{"line_number":3,"context_line":"    - COPY extend_start.sh /usr/local/bin/kolla_extend_start"},{"line_number":4,"context_line":"    - RUN chmod 755 /usr/local/bin/kolla_extend_start"}],"source_content_type":"text/x-yaml","patch_set":13,"id":"9abb7d3a_85d672c3","line":1,"updated":"2016-05-27 19:34:53.000000000","message":"I think 1 file for everything is no go because of possible multiple merging conflicts, just imagine bunch of people doing changes on the same file, it is going to be a nightmare to resolve them. Hence my -1","commit_id":"871d6aa35150e92706d5e475c138aae459f8ef5b"}],"docker/load.py":[{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"430fb9e75e66c1fff0fbe045e17603f249016bdf","unresolved":false,"context_lines":[{"line_number":9,"context_line":"        self.build_type \u003d build_type"},{"line_number":10,"context_line":"        self.tag \u003d tag"},{"line_number":11,"context_line":"        self.output \u003d list()"},{"line_number":12,"context_line":"        with open(yml_filename) as f: self.yml_data \u003d yaml.load(f)"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"    def parse_repos(self, repo_data):"},{"line_number":15,"context_line":"        for value in repo_data:"}],"source_content_type":"text/x-python","patch_set":10,"id":"9abb7d3a_b5a028a7","line":12,"updated":"2016-05-27 06:22:34.000000000","message":"use yaml.safe_load\n\nfrom the python yaml docs\n\n  \u0027Warning: It is not safe to call yaml.load with any data received from an untrusted source! yaml.load is as powerful as pickle.load and so may call any Python function. Check the yaml.safe_load function though.\u0027\n\nI doubt u intended people to be able to run python functions...","commit_id":"8b2733096f05e3ca3902244fa95e4458504e8390"},{"author":{"_account_id":2834,"name":"Steven Dake","email":"steven.dake@gmail.com","username":"sdake"},"change_message_id":"1e950fc3527a1ded5f1f67099b29bbeda89e4c8d","unresolved":false,"context_lines":[{"line_number":9,"context_line":"        self.build_type \u003d build_type"},{"line_number":10,"context_line":"        self.tag \u003d tag"},{"line_number":11,"context_line":"        self.output \u003d list()"},{"line_number":12,"context_line":"        with open(yml_filename) as f: self.yml_data \u003d yaml.load(f)"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"    def parse_repos(self, repo_data):"},{"line_number":15,"context_line":"        for value in repo_data:"}],"source_content_type":"text/x-python","patch_set":10,"id":"9abb7d3a_3aa081f4","line":12,"in_reply_to":"9abb7d3a_b5a028a7","updated":"2016-05-27 18:41:38.000000000","message":"Done","commit_id":"8b2733096f05e3ca3902244fa95e4458504e8390"},{"author":{"_account_id":16233,"name":"Mauricio Lima","email":"mauriciolimab@gmail.com","username":"limamauricio"},"change_message_id":"00f8ab2dd49d1ecd81f7a0b628a3b0c4ee5cae05","unresolved":false,"context_lines":[{"line_number":81,"context_line":"            self.parse_native(container_data[\u0027native_commands\u0027])"},{"line_number":82,"context_line":"        self.parse_native(all_native)"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"    def parse_yml(self):"},{"line_number":85,"context_line":"        for value in self.yml_data:"},{"line_number":86,"context_line":"            del self.output[:]"},{"line_number":87,"context_line":"            if self.yml_data[value][self.distro][\u0027parent\u0027] \u003d\u003d \u0027centos:7\u0027:"}],"source_content_type":"text/x-python","patch_set":10,"id":"9abb7d3a_946ea6c7","line":84,"range":{"start_line":84,"start_character":8,"end_line":84,"end_character":17},"updated":"2016-05-27 17:55:35.000000000","message":"maybe can be a good idea change the name of this method to not confuse it with the class name.\n\nparse_yml_files","commit_id":"8b2733096f05e3ca3902244fa95e4458504e8390"},{"author":{"_account_id":2834,"name":"Steven Dake","email":"steven.dake@gmail.com","username":"sdake"},"change_message_id":"1e950fc3527a1ded5f1f67099b29bbeda89e4c8d","unresolved":false,"context_lines":[{"line_number":81,"context_line":"            self.parse_native(container_data[\u0027native_commands\u0027])"},{"line_number":82,"context_line":"        self.parse_native(all_native)"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"    def parse_yml(self):"},{"line_number":85,"context_line":"        for value in self.yml_data:"},{"line_number":86,"context_line":"            del self.output[:]"},{"line_number":87,"context_line":"            if self.yml_data[value][self.distro][\u0027parent\u0027] \u003d\u003d \u0027centos:7\u0027:"}],"source_content_type":"text/x-python","patch_set":10,"id":"9abb7d3a_5aff4501","line":84,"range":{"start_line":84,"start_character":8,"end_line":84,"end_character":17},"in_reply_to":"9abb7d3a_946ea6c7","updated":"2016-05-27 18:41:38.000000000","message":"Done","commit_id":"8b2733096f05e3ca3902244fa95e4458504e8390"},{"author":{"_account_id":16233,"name":"Mauricio Lima","email":"mauriciolimab@gmail.com","username":"limamauricio"},"change_message_id":"00f8ab2dd49d1ecd81f7a0b628a3b0c4ee5cae05","unresolved":false,"context_lines":[{"line_number":90,"context_line":"                self.output.append(\u0027FROM %s-%s-%s:%s\u0027 % \\"},{"line_number":91,"context_line":"                    (self.distro, self.build_type,"},{"line_number":92,"context_line":"                     self.yml_data[value][self.distro][\u0027parent\u0027], self.tag))"},{"line_number":93,"context_line":"                "},{"line_number":94,"context_line":"            self.parse_container(self.yml_data[value][self.distro],"},{"line_number":95,"context_line":"                self.yml_data[value][\u0027native_commands\u0027]) "},{"line_number":96,"context_line":"            print \u0027Writing Dockerfile in %s/Dockerfile\u0027 % self.yml_data[value][\u0027root\u0027]"}],"source_content_type":"text/x-python","patch_set":10,"id":"9abb7d3a_71a4f456","line":93,"range":{"start_line":93,"start_character":0,"end_line":93,"end_character":16},"updated":"2016-05-27 17:55:35.000000000","message":"remove whitespace","commit_id":"8b2733096f05e3ca3902244fa95e4458504e8390"},{"author":{"_account_id":2834,"name":"Steven Dake","email":"steven.dake@gmail.com","username":"sdake"},"change_message_id":"1e950fc3527a1ded5f1f67099b29bbeda89e4c8d","unresolved":false,"context_lines":[{"line_number":90,"context_line":"                self.output.append(\u0027FROM %s-%s-%s:%s\u0027 % \\"},{"line_number":91,"context_line":"                    (self.distro, self.build_type,"},{"line_number":92,"context_line":"                     self.yml_data[value][self.distro][\u0027parent\u0027], self.tag))"},{"line_number":93,"context_line":"                "},{"line_number":94,"context_line":"            self.parse_container(self.yml_data[value][self.distro],"},{"line_number":95,"context_line":"                self.yml_data[value][\u0027native_commands\u0027]) "},{"line_number":96,"context_line":"            print \u0027Writing Dockerfile in %s/Dockerfile\u0027 % self.yml_data[value][\u0027root\u0027]"}],"source_content_type":"text/x-python","patch_set":10,"id":"9abb7d3a_ff554b1d","line":93,"range":{"start_line":93,"start_character":0,"end_line":93,"end_character":16},"in_reply_to":"9abb7d3a_71a4f456","updated":"2016-05-27 18:41:38.000000000","message":"Done","commit_id":"8b2733096f05e3ca3902244fa95e4458504e8390"},{"author":{"_account_id":16233,"name":"Mauricio Lima","email":"mauriciolimab@gmail.com","username":"limamauricio"},"change_message_id":"00f8ab2dd49d1ecd81f7a0b628a3b0c4ee5cae05","unresolved":false,"context_lines":[{"line_number":92,"context_line":"                     self.yml_data[value][self.distro][\u0027parent\u0027], self.tag))"},{"line_number":93,"context_line":"                "},{"line_number":94,"context_line":"            self.parse_container(self.yml_data[value][self.distro],"},{"line_number":95,"context_line":"                self.yml_data[value][\u0027native_commands\u0027]) "},{"line_number":96,"context_line":"            print \u0027Writing Dockerfile in %s/Dockerfile\u0027 % self.yml_data[value][\u0027root\u0027]"},{"line_number":97,"context_line":"            f \u003d open(\u0027%s/Dockerfile\u0027 % self.yml_data[value][\u0027root\u0027], \u0027w\u0027)"},{"line_number":98,"context_line":"            for output_line in self.output:"}],"source_content_type":"text/x-python","patch_set":10,"id":"9abb7d3a_b1865cb7","line":95,"updated":"2016-05-27 17:55:35.000000000","message":"ditto","commit_id":"8b2733096f05e3ca3902244fa95e4458504e8390"},{"author":{"_account_id":2834,"name":"Steven Dake","email":"steven.dake@gmail.com","username":"sdake"},"change_message_id":"1e950fc3527a1ded5f1f67099b29bbeda89e4c8d","unresolved":false,"context_lines":[{"line_number":92,"context_line":"                     self.yml_data[value][self.distro][\u0027parent\u0027], self.tag))"},{"line_number":93,"context_line":"                "},{"line_number":94,"context_line":"            self.parse_container(self.yml_data[value][self.distro],"},{"line_number":95,"context_line":"                self.yml_data[value][\u0027native_commands\u0027]) "},{"line_number":96,"context_line":"            print \u0027Writing Dockerfile in %s/Dockerfile\u0027 % self.yml_data[value][\u0027root\u0027]"},{"line_number":97,"context_line":"            f \u003d open(\u0027%s/Dockerfile\u0027 % self.yml_data[value][\u0027root\u0027], \u0027w\u0027)"},{"line_number":98,"context_line":"            for output_line in self.output:"}],"source_content_type":"text/x-python","patch_set":10,"id":"9abb7d3a_1f592f5b","line":95,"in_reply_to":"9abb7d3a_b1865cb7","updated":"2016-05-27 18:41:38.000000000","message":"Done","commit_id":"8b2733096f05e3ca3902244fa95e4458504e8390"},{"author":{"_account_id":16233,"name":"Mauricio Lima","email":"mauriciolimab@gmail.com","username":"limamauricio"},"change_message_id":"00f8ab2dd49d1ecd81f7a0b628a3b0c4ee5cae05","unresolved":false,"context_lines":[{"line_number":97,"context_line":"            f \u003d open(\u0027%s/Dockerfile\u0027 % self.yml_data[value][\u0027root\u0027], \u0027w\u0027)"},{"line_number":98,"context_line":"            for output_line in self.output:"},{"line_number":99,"context_line":"                f.write(\u0027%s\\n\u0027 % output_line)"},{"line_number":100,"context_line":"        "},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"def main():"},{"line_number":103,"context_line":"    parse \u003d yml_parser(\u0027elemental.yml\u0027, \u0027centos\u0027, \u0027binary\u0027, \u00273.0.0\u0027)"}],"source_content_type":"text/x-python","patch_set":10,"id":"9abb7d3a_119488e0","line":100,"range":{"start_line":100,"start_character":0,"end_line":100,"end_character":8},"updated":"2016-05-27 17:55:35.000000000","message":"ditto","commit_id":"8b2733096f05e3ca3902244fa95e4458504e8390"},{"author":{"_account_id":2834,"name":"Steven Dake","email":"steven.dake@gmail.com","username":"sdake"},"change_message_id":"1e950fc3527a1ded5f1f67099b29bbeda89e4c8d","unresolved":false,"context_lines":[{"line_number":97,"context_line":"            f \u003d open(\u0027%s/Dockerfile\u0027 % self.yml_data[value][\u0027root\u0027], \u0027w\u0027)"},{"line_number":98,"context_line":"            for output_line in self.output:"},{"line_number":99,"context_line":"                f.write(\u0027%s\\n\u0027 % output_line)"},{"line_number":100,"context_line":"        "},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"def main():"},{"line_number":103,"context_line":"    parse \u003d yml_parser(\u0027elemental.yml\u0027, \u0027centos\u0027, \u0027binary\u0027, \u00273.0.0\u0027)"}],"source_content_type":"text/x-python","patch_set":10,"id":"9abb7d3a_df5e8744","line":100,"range":{"start_line":100,"start_character":0,"end_line":100,"end_character":8},"in_reply_to":"9abb7d3a_119488e0","updated":"2016-05-27 18:41:38.000000000","message":"Done","commit_id":"8b2733096f05e3ca3902244fa95e4458504e8390"},{"author":{"_account_id":16233,"name":"Mauricio Lima","email":"mauriciolimab@gmail.com","username":"limamauricio"},"change_message_id":"a32db269fd7199de6eb7d1a863fb4dab328c5801","unresolved":false,"context_lines":[{"line_number":38,"context_line":"                self.output.append(\u0027        %s \\\\\u0027 % value)"},{"line_number":39,"context_line":"            counter +\u003d 1"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def parse_native(self, native_data):"},{"line_number":42,"context_line":"        copy \u003d list()"},{"line_number":43,"context_line":"        env \u003d list()"},{"line_number":44,"context_line":"        run \u003d list()"}],"source_content_type":"text/x-python","patch_set":12,"id":"9abb7d3a_9a7c0d74","line":41,"range":{"start_line":41,"start_character":8,"end_line":41,"end_character":20},"updated":"2016-05-27 18:47:24.000000000","message":"In elemental.yml you changed native_commands to common_commands. Can you change parse_native to parse_common_commands?","commit_id":"edc9495a3f46d26278f9261950ab07ec7b69a8d3"},{"author":{"_account_id":2834,"name":"Steven Dake","email":"steven.dake@gmail.com","username":"sdake"},"change_message_id":"a515829278daa9a0dc55cbb99b60868cb76467bc","unresolved":false,"context_lines":[{"line_number":38,"context_line":"                self.output.append(\u0027        %s \\\\\u0027 % value)"},{"line_number":39,"context_line":"            counter +\u003d 1"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def parse_native(self, native_data):"},{"line_number":42,"context_line":"        copy \u003d list()"},{"line_number":43,"context_line":"        env \u003d list()"},{"line_number":44,"context_line":"        run \u003d list()"}],"source_content_type":"text/x-python","patch_set":12,"id":"9abb7d3a_0518c21c","line":41,"range":{"start_line":41,"start_character":8,"end_line":41,"end_character":20},"in_reply_to":"9abb7d3a_9a7c0d74","updated":"2016-05-27 19:21:11.000000000","message":"I added two things\n\n{all|bin|src}common_commands\nand\n{all|bin|src}commands\n\nI\u0027ll call the function parse_commands.","commit_id":"edc9495a3f46d26278f9261950ab07ec7b69a8d3"},{"author":{"_account_id":16233,"name":"Mauricio Lima","email":"mauriciolimab@gmail.com","username":"limamauricio"},"change_message_id":"a32db269fd7199de6eb7d1a863fb4dab328c5801","unresolved":false,"context_lines":[{"line_number":80,"context_line":"            if \u0027src_packages\u0027 in container_data:"},{"line_number":81,"context_line":"                self.parse_packages(container_data[\u0027src_packages\u0027])"},{"line_number":82,"context_line":"        if \u0027all_commands\u0027 in container_data:"},{"line_number":83,"context_line":"            self.parse_native(container_data[\u0027all_commands\u0027])"},{"line_number":84,"context_line":"        if self.build_type is \u0027binary\u0027:"},{"line_number":85,"context_line":"            if \u0027bin_commnads\u0027 in container_data:"},{"line_number":86,"context_line":"                self.parse_packages(container_data[\u0027bin_commands\u0027])"}],"source_content_type":"text/x-python","patch_set":12,"id":"9abb7d3a_fa69d98c","line":83,"range":{"start_line":83,"start_character":17,"end_line":83,"end_character":29},"updated":"2016-05-27 18:47:24.000000000","message":"ditto","commit_id":"edc9495a3f46d26278f9261950ab07ec7b69a8d3"},{"author":{"_account_id":16233,"name":"Mauricio Lima","email":"mauriciolimab@gmail.com","username":"limamauricio"},"change_message_id":"a32db269fd7199de6eb7d1a863fb4dab328c5801","unresolved":false,"context_lines":[{"line_number":87,"context_line":"        else:"},{"line_number":88,"context_line":"            if \u0027src_commands\u0027 in container_data:"},{"line_number":89,"context_line":"                self.parse_packages(container_data[\u0027src_commands\u0027])"},{"line_number":90,"context_line":"        self.parse_native(all_common)"},{"line_number":91,"context_line":"        self.parse_native(bin_common)"},{"line_number":92,"context_line":"        self.parse_native(src_common)"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"    def parse_and_output(self):"},{"line_number":95,"context_line":"        for value in self.yml_data:"}],"source_content_type":"text/x-python","patch_set":12,"id":"9abb7d3a_fa00b9ac","line":92,"range":{"start_line":90,"start_character":7,"end_line":92,"end_character":37},"updated":"2016-05-27 18:47:24.000000000","message":"ditto","commit_id":"edc9495a3f46d26278f9261950ab07ec7b69a8d3"}],"dockerdsl/dsl.yml":[{"author":{"_account_id":1390,"name":"Paul Bourke","email":"pauldbourke@proton.me","username":"pauldbourke"},"change_message_id":"81d85f158240a0a84d70682db564ca3c3a5193aa","unresolved":false,"context_lines":[{"line_number":1,"context_line":"base:"},{"line_number":2,"context_line":"  native_commands:"},{"line_number":3,"context_line":"    - COPY set_configs.py /usr/local/bin/kolla_set_configs"},{"line_number":4,"context_line":"    - COPY start.sh /usr/local/bin/kolla_start"},{"line_number":5,"context_line":"    - COPY sudoers /etc/sudoers"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_a290e396","line":2,"updated":"2016-05-27 11:50:33.000000000","message":"would \u0027common_commands\u0027 be a better name?","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"},{"author":{"_account_id":2834,"name":"Steven Dake","email":"steven.dake@gmail.com","username":"sdake"},"change_message_id":"2b53b8282966691c835269b1d69c0c89d18e715d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"base:"},{"line_number":2,"context_line":"  native_commands:"},{"line_number":3,"context_line":"    - COPY set_configs.py /usr/local/bin/kolla_set_configs"},{"line_number":4,"context_line":"    - COPY start.sh /usr/local/bin/kolla_start"},{"line_number":5,"context_line":"    - COPY sudoers /etc/sudoers"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_f190e4ee","line":2,"in_reply_to":"9abb7d3a_a290e396","updated":"2016-05-27 18:02:03.000000000","message":"I\u0027ll call this all_commands to match the syntax used with all_packages.","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"},{"author":{"_account_id":16036,"name":"Krzysztof Klimonda","email":"kklimonda@syntaxhighlighted.com","username":"kklimonda"},"change_message_id":"27dabb6a51af3c93981bddb7bb400311495d2ba9","unresolved":false,"context_lines":[{"line_number":1,"context_line":"base:"},{"line_number":2,"context_line":"  native_commands:"},{"line_number":3,"context_line":"    - COPY set_configs.py /usr/local/bin/kolla_set_configs"},{"line_number":4,"context_line":"    - COPY start.sh /usr/local/bin/kolla_start"},{"line_number":5,"context_line":"    - COPY sudoers /etc/sudoers"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_f11d84be","line":2,"in_reply_to":"9abb7d3a_a290e396","updated":"2016-05-27 17:57:27.000000000","message":"Perhaps create \"common\" (same as ubuntu and centos), rename native_commands to commands, and move them there? Doing that would make syntax more consistent.","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"},{"author":{"_account_id":2834,"name":"Steven Dake","email":"steven.dake@gmail.com","username":"sdake"},"change_message_id":"7f23cb2f7b50f8b36c6c536c8a3a629aa1457aec","unresolved":false,"context_lines":[{"line_number":1,"context_line":"base:"},{"line_number":2,"context_line":"  native_commands:"},{"line_number":3,"context_line":"    - COPY set_configs.py /usr/local/bin/kolla_set_configs"},{"line_number":4,"context_line":"    - COPY start.sh /usr/local/bin/kolla_start"},{"line_number":5,"context_line":"    - COPY sudoers /etc/sudoers"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_f49c526b","line":2,"in_reply_to":"9abb7d3a_f190e4ee","updated":"2016-05-29 23:36:24.000000000","message":"common_commands is fantastic!  Thanks for the suggestion.","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"},{"author":{"_account_id":1390,"name":"Paul Bourke","email":"pauldbourke@proton.me","username":"pauldbourke"},"change_message_id":"81d85f158240a0a84d70682db564ca3c3a5193aa","unresolved":false,"context_lines":[{"line_number":10,"context_line":"    - RUN rm -f /tmp/kolla_bashrc"},{"line_number":11,"context_line":"    - CMD [\"kolla_start\"]"},{"line_number":12,"context_line":"  centos:"},{"line_number":13,"context_line":"    version:"},{"line_number":14,"context_line":"        - 7"},{"line_number":15,"context_line":"    repos:"},{"line_number":16,"context_line":"      - elasticsearch.yum.repo"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_9d341edf","line":13,"updated":"2016-05-27 11:50:33.000000000","message":"version: 7","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"},{"author":{"_account_id":2834,"name":"Steven Dake","email":"steven.dake@gmail.com","username":"sdake"},"change_message_id":"2b53b8282966691c835269b1d69c0c89d18e715d","unresolved":false,"context_lines":[{"line_number":10,"context_line":"    - RUN rm -f /tmp/kolla_bashrc"},{"line_number":11,"context_line":"    - CMD [\"kolla_start\"]"},{"line_number":12,"context_line":"  centos:"},{"line_number":13,"context_line":"    version:"},{"line_number":14,"context_line":"        - 7"},{"line_number":15,"context_line":"    repos:"},{"line_number":16,"context_line":"      - elasticsearch.yum.repo"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_11abe81e","line":13,"in_reply_to":"9abb7d3a_9d341edf","updated":"2016-05-27 18:02:03.000000000","message":"my working copy removed version - but I added a couple other things instead to make the build work properly and have used key: value syntax there.","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"},{"author":{"_account_id":1390,"name":"Paul Bourke","email":"pauldbourke@proton.me","username":"pauldbourke"},"change_message_id":"81d85f158240a0a84d70682db564ca3c3a5193aa","unresolved":false,"context_lines":[{"line_number":19,"context_line":"      - http://repo.percona.com/release/7/RPMS/x86_64/percona-release-0.1-3.noarch.rpm"},{"line_number":20,"context_line":"      - http://trunk.rdoproject.org/centos7/current-passed-ci/delorean.repo"},{"line_number":21,"context_line":"      - http://trunk.rdoproject.org/centos7/delorean-deps.repo"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    all_packages:"},{"line_number":24,"context_line":"      - epel-release"},{"line_number":25,"context_line":"      - yum-plugin-priorities"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_42f657d8","line":22,"updated":"2016-05-27 11:50:33.000000000","message":"why space here","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"},{"author":{"_account_id":2834,"name":"Steven Dake","email":"steven.dake@gmail.com","username":"sdake"},"change_message_id":"2b53b8282966691c835269b1d69c0c89d18e715d","unresolved":false,"context_lines":[{"line_number":19,"context_line":"      - http://repo.percona.com/release/7/RPMS/x86_64/percona-release-0.1-3.noarch.rpm"},{"line_number":20,"context_line":"      - http://trunk.rdoproject.org/centos7/current-passed-ci/delorean.repo"},{"line_number":21,"context_line":"      - http://trunk.rdoproject.org/centos7/delorean-deps.repo"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    all_packages:"},{"line_number":24,"context_line":"      - epel-release"},{"line_number":25,"context_line":"      - yum-plugin-priorities"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_717234e7","line":22,"in_reply_to":"9abb7d3a_42f657d8","updated":"2016-05-27 18:02:03.000000000","message":"Done","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"},{"author":{"_account_id":1390,"name":"Paul Bourke","email":"pauldbourke@proton.me","username":"pauldbourke"},"change_message_id":"81d85f158240a0a84d70682db564ca3c3a5193aa","unresolved":false,"context_lines":[{"line_number":36,"context_line":"    src_packages:"},{"line_number":37,"context_line":"      - curl"},{"line_number":38,"context_line":"      - tar"},{"line_number":39,"context_line":"    gpg_keys:"},{"line_number":40,"context_line":"      - http://yum.mariadb.org/RPM-GPG-KEY-MariaDB"},{"line_number":41,"context_line":"      - https://packages.elastic.co/GPG-KEY-elasticsearch"},{"line_number":42,"context_line":"#      - /etc/pki/rpm-gpg/RPM-GPG-KEY-Percona"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_62e71b13","line":39,"updated":"2016-05-27 11:50:33.000000000","message":"move this under repos, or consider combining the two sections to pair up the repos + keys","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"},{"author":{"_account_id":2834,"name":"Steven Dake","email":"steven.dake@gmail.com","username":"sdake"},"change_message_id":"2b53b8282966691c835269b1d69c0c89d18e715d","unresolved":false,"context_lines":[{"line_number":36,"context_line":"    src_packages:"},{"line_number":37,"context_line":"      - curl"},{"line_number":38,"context_line":"      - tar"},{"line_number":39,"context_line":"    gpg_keys:"},{"line_number":40,"context_line":"      - http://yum.mariadb.org/RPM-GPG-KEY-MariaDB"},{"line_number":41,"context_line":"      - https://packages.elastic.co/GPG-KEY-elasticsearch"},{"line_number":42,"context_line":"#      - /etc/pki/rpm-gpg/RPM-GPG-KEY-Percona"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_319a6c15","line":39,"in_reply_to":"9abb7d3a_62e71b13","updated":"2016-05-27 18:02:03.000000000","message":"I could add enough ssmarts in the parser to search for RPM-GPG-KEYS and place these keys in the repos section.","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"},{"author":{"_account_id":1390,"name":"Paul Bourke","email":"pauldbourke@proton.me","username":"pauldbourke"},"change_message_id":"81d85f158240a0a84d70682db564ca3c3a5193aa","unresolved":false,"context_lines":[{"line_number":44,"context_line":"#      - /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7"},{"line_number":45,"context_line":"#      - /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-Storage"},{"line_number":46,"context_line":"#      - /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-Virtualization"},{"line_number":47,"context_line":"    native_commands:"},{"line_number":48,"context_line":"      - COPY kolla_bashrc /tmp/"},{"line_number":49,"context_line":"      - RUN cat /tmp/kolla_bashrc \u003e\u003e /etc/skel/.bashrc"},{"line_number":50,"context_line":"      - RUN cat /tmp/kolla_bashrc \u003e\u003e /root/.bashrc"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_42adb730","line":47,"updated":"2016-05-27 11:50:33.000000000","message":"maybe just \u0027commands\u0027 would be better, in any case don\u0027t copy the name from line 1","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"},{"author":{"_account_id":2834,"name":"Steven Dake","email":"steven.dake@gmail.com","username":"sdake"},"change_message_id":"2b53b8282966691c835269b1d69c0c89d18e715d","unresolved":false,"context_lines":[{"line_number":44,"context_line":"#      - /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7"},{"line_number":45,"context_line":"#      - /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-Storage"},{"line_number":46,"context_line":"#      - /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-Virtualization"},{"line_number":47,"context_line":"    native_commands:"},{"line_number":48,"context_line":"      - COPY kolla_bashrc /tmp/"},{"line_number":49,"context_line":"      - RUN cat /tmp/kolla_bashrc \u003e\u003e /etc/skel/.bashrc"},{"line_number":50,"context_line":"      - RUN cat /tmp/kolla_bashrc \u003e\u003e /root/.bashrc"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_51ee108c","line":47,"in_reply_to":"9abb7d3a_42adb730","updated":"2016-05-27 18:02:03.000000000","message":"I changed the syntax as follows:\nall_commands\nbin_commands\nsrc_commands\n\nThis matches the packages syntax as well.I am struggling to come up with  a different name here then all_commands.  I think it is ok to have keys of the same name at different levels, but I am not a yaml expert ;)","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"},{"author":{"_account_id":17609,"name":"steve","email":"ruansx@cn.ibm.com","username":"steve.ruan"},"change_message_id":"3ddf12a072c6799baa565da0f8622a437cf1b9ad","unresolved":false,"context_lines":[{"line_number":50,"context_line":"      - RUN cat /tmp/kolla_bashrc \u003e\u003e /root/.bashrc"},{"line_number":51,"context_line":"      - ENV PS1\u003d\"$(tput bold)($(printenv KOLLA_SERVICE_NAME))$(tput sgr0)[$(id -un)@$(hostname -s) $(pwd)]$\""},{"line_number":52,"context_line":"      - RUN cat /tmp/kolla_bashrc \u003e\u003e /etc/bashrc"},{"line_number":53,"context_line":"      - RUN yum -y update "},{"line_number":54,"context_line":"      - RUN yum clean all"},{"line_number":55,"context_line":"      - COPY versionlock.list /etc/yum/pluginconf.d/"},{"line_number":56,"context_line":"  ubuntu:"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_8fed1528","line":53,"range":{"start_line":53,"start_character":25,"end_line":53,"end_character":26},"updated":"2016-05-27 03:21:23.000000000","message":"Format error","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"},{"author":{"_account_id":2834,"name":"Steven Dake","email":"steven.dake@gmail.com","username":"sdake"},"change_message_id":"2b53b8282966691c835269b1d69c0c89d18e715d","unresolved":false,"context_lines":[{"line_number":50,"context_line":"      - RUN cat /tmp/kolla_bashrc \u003e\u003e /root/.bashrc"},{"line_number":51,"context_line":"      - ENV PS1\u003d\"$(tput bold)($(printenv KOLLA_SERVICE_NAME))$(tput sgr0)[$(id -un)@$(hostname -s) $(pwd)]$\""},{"line_number":52,"context_line":"      - RUN cat /tmp/kolla_bashrc \u003e\u003e /etc/bashrc"},{"line_number":53,"context_line":"      - RUN yum -y update "},{"line_number":54,"context_line":"      - RUN yum clean all"},{"line_number":55,"context_line":"      - COPY versionlock.list /etc/yum/pluginconf.d/"},{"line_number":56,"context_line":"  ubuntu:"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_146d9698","line":53,"range":{"start_line":53,"start_character":25,"end_line":53,"end_character":26},"in_reply_to":"9abb7d3a_8fed1528","updated":"2016-05-27 18:02:03.000000000","message":"Done","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"},{"author":{"_account_id":16036,"name":"Krzysztof Klimonda","email":"kklimonda@syntaxhighlighted.com","username":"kklimonda"},"change_message_id":"27dabb6a51af3c93981bddb7bb400311495d2ba9","unresolved":false,"context_lines":[{"line_number":57,"context_line":"    version:"},{"line_number":58,"context_line":"      -  14.04"},{"line_number":59,"context_line":"    repos:"},{"line_number":60,"context_line":"      - 199369E5404BD5FC7D2FE43BCBCB082A1BB943DB   "},{"line_number":61,"context_line":"      - 391A9AA2147192839E9DB0315EDB1B62EC4926EA"},{"line_number":62,"context_line":"      - 430BDF5C56E7C94E848EE60C1C4CBDCDCD2EFD2A"},{"line_number":63,"context_line":"      - 08B73419AC32B4E966C1A330E84AC2C0460F3994"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_b11dbc11","line":60,"updated":"2016-05-27 17:57:27.000000000","message":"Isn\u0027t it a GPG key, and not a repository? I assume that\u0027s a typo, this section should be renamed to \"gpg_keys\" and another section \"repos\" should be added with entries like that:\n- deb http://archive.ubuntu.com/ubuntu trusty main restricted","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"},{"author":{"_account_id":17609,"name":"steve","email":"ruansx@cn.ibm.com","username":"steve.ruan"},"change_message_id":"3ddf12a072c6799baa565da0f8622a437cf1b9ad","unresolved":false,"context_lines":[{"line_number":57,"context_line":"    version:"},{"line_number":58,"context_line":"      -  14.04"},{"line_number":59,"context_line":"    repos:"},{"line_number":60,"context_line":"      - 199369E5404BD5FC7D2FE43BCBCB082A1BB943DB   "},{"line_number":61,"context_line":"      - 391A9AA2147192839E9DB0315EDB1B62EC4926EA"},{"line_number":62,"context_line":"      - 430BDF5C56E7C94E848EE60C1C4CBDCDCD2EFD2A"},{"line_number":63,"context_line":"      - 08B73419AC32B4E966C1A330E84AC2C0460F3994"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_eff2e105","line":60,"range":{"start_line":60,"start_character":48,"end_line":60,"end_character":51},"updated":"2016-05-27 03:21:23.000000000","message":"format error","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"},{"author":{"_account_id":2834,"name":"Steven Dake","email":"steven.dake@gmail.com","username":"sdake"},"change_message_id":"2b53b8282966691c835269b1d69c0c89d18e715d","unresolved":false,"context_lines":[{"line_number":57,"context_line":"    version:"},{"line_number":58,"context_line":"      -  14.04"},{"line_number":59,"context_line":"    repos:"},{"line_number":60,"context_line":"      - 199369E5404BD5FC7D2FE43BCBCB082A1BB943DB   "},{"line_number":61,"context_line":"      - 391A9AA2147192839E9DB0315EDB1B62EC4926EA"},{"line_number":62,"context_line":"      - 430BDF5C56E7C94E848EE60C1C4CBDCDCD2EFD2A"},{"line_number":63,"context_line":"      - 08B73419AC32B4E966C1A330E84AC2C0460F3994"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_d4202e4c","line":60,"range":{"start_line":60,"start_character":48,"end_line":60,"end_character":51},"in_reply_to":"9abb7d3a_eff2e105","updated":"2016-05-27 18:02:03.000000000","message":"Done","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"},{"author":{"_account_id":16036,"name":"Krzysztof Klimonda","email":"kklimonda@syntaxhighlighted.com","username":"kklimonda"},"change_message_id":"eb0c6fb99d0cd3e5f14f68c3d09f3e9c31a836e3","unresolved":false,"context_lines":[{"line_number":81,"context_line":"    - RUN usermod -a -G kolla mysql"},{"line_number":82,"context_line":"    - USER mysql"},{"line_number":83,"context_line":"  centos:"},{"line_number":84,"context_line":"    version:"},{"line_number":85,"context_line":"      - 7"},{"line_number":86,"context_line":"    all_packages:"},{"line_number":87,"context_line":"      - MariaDB-Galera-server"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_1fa00f9f","line":84,"range":{"start_line":84,"start_character":4,"end_line":84,"end_character":11},"updated":"2016-05-27 18:27:23.000000000","message":"Why does mariadb container specify version of centos? Shouldn\u0027t it actually depend on the base image?\n\nI\u0027d try removing version from centos and ubuntu completely and add base container name directly instead, on the top level, pointing to the base image (for example base for mariadb, or openstack-base for keystone).","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"},{"author":{"_account_id":2834,"name":"Steven Dake","email":"steven.dake@gmail.com","username":"sdake"},"change_message_id":"7f23cb2f7b50f8b36c6c536c8a3a629aa1457aec","unresolved":false,"context_lines":[{"line_number":81,"context_line":"    - RUN usermod -a -G kolla mysql"},{"line_number":82,"context_line":"    - USER mysql"},{"line_number":83,"context_line":"  centos:"},{"line_number":84,"context_line":"    version:"},{"line_number":85,"context_line":"      - 7"},{"line_number":86,"context_line":"    all_packages:"},{"line_number":87,"context_line":"      - MariaDB-Galera-server"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9abb7d3a_47e3d605","line":84,"range":{"start_line":84,"start_character":4,"end_line":84,"end_character":11},"in_reply_to":"9abb7d3a_1fa00f9f","updated":"2016-05-29 23:36:24.000000000","message":"the idea was centos:7 or ubuntu:16:4 for the parent.  I have just added a parent field to the dsl instead.\n\nthe latest implementation under work hasall of theese changes.","commit_id":"bc095f58a8951e86e20b2c2837d729963c69a567"}]}
