)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1390,"name":"Paul Bourke","email":"pauldbourke@proton.me","username":"pauldbourke"},"change_message_id":"b9c78b2af1eeaf08c97e9ef9c376d3c33a8c206f","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Proposal spec for universal containers"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This is a meta specification to discuss potential direction for Kolla to"},{"line_number":10,"context_line":"provide universal deployment tool agnostic OpenStack containers in a"},{"line_number":11,"context_line":"standarized way as a separate artifact."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I18b319cb796192a1e61ecd516a485dc82d52652f"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5a9d85d2_6aafe5e3","line":11,"range":{"start_line":9,"start_character":70,"end_line":11,"end_character":38},"updated":"2016-06-20 09:53:46.000000000","message":"Sorry but this makes no sense? Can you rephase?","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"}],"specs/universal-containers.rst":[{"author":{"_account_id":1390,"name":"Paul Bourke","email":"pauldbourke@proton.me","username":"pauldbourke"},"change_message_id":"b9c78b2af1eeaf08c97e9ef9c376d3c33a8c206f","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/kolla/+spec/universal-containers"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This is a meta specification to discuss potential direction for Kolla to"},{"line_number":14,"context_line":"provide universal deployment tool agnostic OpenStack containers in a"},{"line_number":15,"context_line":"standarized way as a separate artifact."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Problem description"},{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5a9d85d2_2a7cbd71","line":15,"range":{"start_line":13,"start_character":0,"end_line":15,"end_character":39},"updated":"2016-06-20 09:53:46.000000000","message":"I don\u0027t know what you mean by this","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":9237,"name":"Kevin Fox","email":"kevin@efox.cc","username":"kfox1111"},"change_message_id":"58d5d048e12964dfb50e4c266e2ee3c6ad67df4f","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/kolla/+spec/universal-containers"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This is a meta specification to discuss potential direction for Kolla to"},{"line_number":14,"context_line":"provide universal deployment tool agnostic OpenStack containers in a"},{"line_number":15,"context_line":"standarized way as a separate artifact."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Problem description"},{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_91b76cd7","line":15,"range":{"start_line":13,"start_character":0,"end_line":15,"end_character":39},"in_reply_to":"5a9d85d2_2a7cbd71","updated":"2016-06-29 16:26:36.000000000","message":"I believe the disconnect is a lot of kolla devs think this is already achieved.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},"change_message_id":"b70cf3a31b1864b712a302c8603b5888a77d8e79","unresolved":false,"context_lines":[{"line_number":23,"context_line":"* Kolla-Ansible"},{"line_number":24,"context_line":"* Kolla-K8s"},{"line_number":25,"context_line":"* Kolla-Mesos (abandoned, but still good example)"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"and that others that could potentially use them as an option:"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"* Puppet"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_e9c8c3aa","line":26,"updated":"2016-06-16 15:18:17.000000000","message":"Tripleo is also a current consumer","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":9237,"name":"Kevin Fox","email":"kevin@efox.cc","username":"kfox1111"},"change_message_id":"58d5d048e12964dfb50e4c266e2ee3c6ad67df4f","unresolved":false,"context_lines":[{"line_number":23,"context_line":"* Kolla-Ansible"},{"line_number":24,"context_line":"* Kolla-K8s"},{"line_number":25,"context_line":"* Kolla-Mesos (abandoned, but still good example)"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"and that others that could potentially use them as an option:"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"* Puppet"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_88e904ba","line":26,"in_reply_to":"7aa08908_e9c8c3aa","updated":"2016-06-29 16:26:36.000000000","message":"I\u0027m currently consuming some of the raw containers and deploying with kubelet standalone.\n\nThis is a stepping stone towards migrating a production cloud to kolla-k8s when its ready. I\u0027m guessing I\u0027m not the only one doing this.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":1390,"name":"Paul Bourke","email":"pauldbourke@proton.me","username":"pauldbourke"},"change_message_id":"b9c78b2af1eeaf08c97e9ef9c376d3c33a8c206f","unresolved":false,"context_lines":[{"line_number":31,"context_line":"* Chef"},{"line_number":32,"context_line":"* and etc."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"Due to the number of potential consumers of OpenStack containers it\u0027ll be great"},{"line_number":35,"context_line":"to have a single approach for containerizing all OpenStack services and have a"},{"line_number":36,"context_line":"CI pipeline that will produce well tested images and publish them to make"},{"line_number":37,"context_line":"different deployment tools be able to re-use the same containers. The main"},{"line_number":38,"context_line":"benefit is that there will be huge community working on the same set of the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5a9d85d2_aaf1cdcf","line":35,"range":{"start_line":34,"start_character":0,"end_line":35,"end_character":67},"updated":"2016-06-20 09:53:46.000000000","message":"We have that with Kolla. Assuming there is something lacking with the current approach, can you be more specific?","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":11105,"name":"Swapnil Kulkarni","email":"coolsvap@gmail.com","username":"coolsvap"},"change_message_id":"6b9a1cc3f78e08601789d48f0290104d201b4275","unresolved":false,"context_lines":[{"line_number":31,"context_line":"* Chef"},{"line_number":32,"context_line":"* and etc."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"Due to the number of potential consumers of OpenStack containers it\u0027ll be great"},{"line_number":35,"context_line":"to have a single approach for containerizing all OpenStack services and have a"},{"line_number":36,"context_line":"CI pipeline that will produce well tested images and publish them to make"},{"line_number":37,"context_line":"different deployment tools be able to re-use the same containers. The main"},{"line_number":38,"context_line":"benefit is that there will be huge community working on the same set of the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5a9d85d2_133bc639","line":35,"range":{"start_line":34,"start_character":0,"end_line":35,"end_character":67},"in_reply_to":"5a9d85d2_aaf1cdcf","updated":"2016-06-21 09:45:36.000000000","message":"+1.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},"change_message_id":"b70cf3a31b1864b712a302c8603b5888a77d8e79","unresolved":false,"context_lines":[{"line_number":42,"context_line":"Use cases"},{"line_number":43,"context_line":"---------"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"1. Provide reusable universal containers with standarized characteristics,"},{"line_number":46,"context_line":"   layers, versions, paths and etc. to make any deployment tool be able to"},{"line_number":47,"context_line":"   consume them."},{"line_number":48,"context_line":"2. CI pipeline that will build, test and publish containers for supported"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_89eadf0c","line":45,"range":{"start_line":45,"start_character":3,"end_line":45,"end_character":40},"updated":"2016-06-16 15:18:17.000000000","message":"In my mind this was one of the biggest attributes of kolla.  If the community has moved away from that then there needs to be further discussion so that we can get back to it. Thanks for bringing it up.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":9237,"name":"Kevin Fox","email":"kevin@efox.cc","username":"kfox1111"},"change_message_id":"58d5d048e12964dfb50e4c266e2ee3c6ad67df4f","unresolved":false,"context_lines":[{"line_number":42,"context_line":"Use cases"},{"line_number":43,"context_line":"---------"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"1. Provide reusable universal containers with standarized characteristics,"},{"line_number":46,"context_line":"   layers, versions, paths and etc. to make any deployment tool be able to"},{"line_number":47,"context_line":"   consume them."},{"line_number":48,"context_line":"2. CI pipeline that will build, test and publish containers for supported"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_4866fc51","line":45,"in_reply_to":"3aaa91ec_ed425a3d","updated":"2016-06-29 16:26:36.000000000","message":"I agree it would be nice to spin out kolla-ansible from the kolla-containers repo\u0027s some day. but I don\u0027t think they currently are coupled in the way you think. They reside in different directories and you can use one without the other. I do that on one of my clouds today.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":6786,"name":"Sergey Lukjanov","email":"me@slukjanov.name","username":"slukjanov"},"change_message_id":"36a0c8bb10ae9956454e6cea1198a77ddd29e036","unresolved":false,"context_lines":[{"line_number":42,"context_line":"Use cases"},{"line_number":43,"context_line":"---------"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"1. Provide reusable universal containers with standarized characteristics,"},{"line_number":46,"context_line":"   layers, versions, paths and etc. to make any deployment tool be able to"},{"line_number":47,"context_line":"   consume them."},{"line_number":48,"context_line":"2. CI pipeline that will build, test and publish containers for supported"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_ed425a3d","line":45,"in_reply_to":"5a9d85d2_0a40e155","updated":"2016-06-29 15:40:54.000000000","message":"From my point of view it\u0027s now mixed together with Ansible deployer - it\u0027s not bad or good, but it makes containers not deployment tool agnostic and it\u0027ll always require to develop both deployer and containers together.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":1390,"name":"Paul Bourke","email":"pauldbourke@proton.me","username":"pauldbourke"},"change_message_id":"b9c78b2af1eeaf08c97e9ef9c376d3c33a8c206f","unresolved":false,"context_lines":[{"line_number":42,"context_line":"Use cases"},{"line_number":43,"context_line":"---------"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"1. Provide reusable universal containers with standarized characteristics,"},{"line_number":46,"context_line":"   layers, versions, paths and etc. to make any deployment tool be able to"},{"line_number":47,"context_line":"   consume them."},{"line_number":48,"context_line":"2. CI pipeline that will build, test and publish containers for supported"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5a9d85d2_0a40e155","line":45,"range":{"start_line":45,"start_character":3,"end_line":45,"end_character":40},"in_reply_to":"7aa08908_89eadf0c","updated":"2016-06-20 09:53:46.000000000","message":"+1","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":11105,"name":"Swapnil Kulkarni","email":"coolsvap@gmail.com","username":"coolsvap"},"change_message_id":"6b9a1cc3f78e08601789d48f0290104d201b4275","unresolved":false,"context_lines":[{"line_number":45,"context_line":"1. Provide reusable universal containers with standarized characteristics,"},{"line_number":46,"context_line":"   layers, versions, paths and etc. to make any deployment tool be able to"},{"line_number":47,"context_line":"   consume them."},{"line_number":48,"context_line":"2. CI pipeline that will build, test and publish containers for supported"},{"line_number":49,"context_line":"   stable and master branches with minimal latency to be consumed by different"},{"line_number":50,"context_line":"   deployment tools."},{"line_number":51,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"5a9d85d2_f35a7a82","line":48,"range":{"start_line":48,"start_character":3,"end_line":48,"end_character":60},"updated":"2016-06-21 09:45:36.000000000","message":"This is already implemented and CI cannot use it due to time constraints for each docker push to docker hub and we do not have internal registry in openstack infrastructure to use. And even in this case it is perfectly well managed by the Kolla team.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":9237,"name":"Kevin Fox","email":"kevin@efox.cc","username":"kfox1111"},"change_message_id":"58d5d048e12964dfb50e4c266e2ee3c6ad67df4f","unresolved":false,"context_lines":[{"line_number":45,"context_line":"1. Provide reusable universal containers with standarized characteristics,"},{"line_number":46,"context_line":"   layers, versions, paths and etc. to make any deployment tool be able to"},{"line_number":47,"context_line":"   consume them."},{"line_number":48,"context_line":"2. CI pipeline that will build, test and publish containers for supported"},{"line_number":49,"context_line":"   stable and master branches with minimal latency to be consumed by different"},{"line_number":50,"context_line":"   deployment tools."},{"line_number":51,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_481efc70","line":48,"range":{"start_line":48,"start_character":3,"end_line":48,"end_character":60},"in_reply_to":"5a9d85d2_f35a7a82","updated":"2016-06-29 16:26:36.000000000","message":"I agree with Sergey here. As an Op, it would be awesome not to have to maintain all (or at least the majority) of the containers locally. These artefacts should be tested and kept up to date in the docker hub, or if its not fast enough, somewhere else. google? quay.io?\n\nI think the technical challenge of \u0027how\u0027 to make it work is out of scope for this spec, but the requirement is reasonable.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"1415de1f3c36414a24f96eeea60cb31530bc0e76","unresolved":false,"context_lines":[{"line_number":58,"context_line":"Separate containers definitions and deployment tools"},{"line_number":59,"context_line":"----------------------------------------------------"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"We should separate Docker container definitions from Ansible deployment code."},{"line_number":62,"context_line":"We should not mix \"packaging\" of OpenStack services with one of the possible"},{"line_number":63,"context_line":"deployment tools that will be consuming them. From a technical point of view -"},{"line_number":64,"context_line":"it\u0027s the only way to implement separate core teams and releasing model for the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_dffdab6f","line":61,"updated":"2016-06-16 20:03:08.000000000","message":"+1 (ansible may be a reference impl, but it probably shouldn\u0027t be the only impl, cause ya, sadly, or for better/worse not everyone has jumped on the ansible deployment train)","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":9237,"name":"Kevin Fox","email":"kevin@efox.cc","username":"kfox1111"},"change_message_id":"58d5d048e12964dfb50e4c266e2ee3c6ad67df4f","unresolved":false,"context_lines":[{"line_number":58,"context_line":"Separate containers definitions and deployment tools"},{"line_number":59,"context_line":"----------------------------------------------------"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"We should separate Docker container definitions from Ansible deployment code."},{"line_number":62,"context_line":"We should not mix \"packaging\" of OpenStack services with one of the possible"},{"line_number":63,"context_line":"deployment tools that will be consuming them. From a technical point of view -"},{"line_number":64,"context_line":"it\u0027s the only way to implement separate core teams and releasing model for the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_4e1ba573","line":61,"in_reply_to":"3aaa91ec_2db7423b","updated":"2016-06-29 16:26:36.000000000","message":"same repo, different directories. But they aren\u0027t coupled.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":6786,"name":"Sergey Lukjanov","email":"me@slukjanov.name","username":"slukjanov"},"change_message_id":"36a0c8bb10ae9956454e6cea1198a77ddd29e036","unresolved":false,"context_lines":[{"line_number":58,"context_line":"Separate containers definitions and deployment tools"},{"line_number":59,"context_line":"----------------------------------------------------"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"We should separate Docker container definitions from Ansible deployment code."},{"line_number":62,"context_line":"We should not mix \"packaging\" of OpenStack services with one of the possible"},{"line_number":63,"context_line":"deployment tools that will be consuming them. From a technical point of view -"},{"line_number":64,"context_line":"it\u0027s the only way to implement separate core teams and releasing model for the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_2db7423b","line":61,"in_reply_to":"3aaa91ec_82b1ee03","updated":"2016-06-29 15:40:54.000000000","message":"From my point of view - no. They are in a single repository. Bootstraping implemented using Ansible.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":16620,"name":"Alicja Kwasniewska","email":"alicja.kwasniewska@intel.com","username":"akwasnie"},"change_message_id":"59db65357523a6c189c6be698a1a3e8329aad9f6","unresolved":false,"context_lines":[{"line_number":58,"context_line":"Separate containers definitions and deployment tools"},{"line_number":59,"context_line":"----------------------------------------------------"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"We should separate Docker container definitions from Ansible deployment code."},{"line_number":62,"context_line":"We should not mix \"packaging\" of OpenStack services with one of the possible"},{"line_number":63,"context_line":"deployment tools that will be consuming them. From a technical point of view -"},{"line_number":64,"context_line":"it\u0027s the only way to implement separate core teams and releasing model for the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_82b1ee03","line":61,"in_reply_to":"5a9d85d2_4a22e9ba","updated":"2016-06-29 12:59:18.000000000","message":"IMO they are already separate.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":1390,"name":"Paul Bourke","email":"pauldbourke@proton.me","username":"pauldbourke"},"change_message_id":"b9c78b2af1eeaf08c97e9ef9c376d3c33a8c206f","unresolved":false,"context_lines":[{"line_number":58,"context_line":"Separate containers definitions and deployment tools"},{"line_number":59,"context_line":"----------------------------------------------------"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"We should separate Docker container definitions from Ansible deployment code."},{"line_number":62,"context_line":"We should not mix \"packaging\" of OpenStack services with one of the possible"},{"line_number":63,"context_line":"deployment tools that will be consuming them. From a technical point of view -"},{"line_number":64,"context_line":"it\u0027s the only way to implement separate core teams and releasing model for the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5a9d85d2_4a22e9ba","line":61,"in_reply_to":"7aa08908_dffdab6f","updated":"2016-06-20 09:53:46.000000000","message":"They\u0027re already separate?","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":1390,"name":"Paul Bourke","email":"pauldbourke@proton.me","username":"pauldbourke"},"change_message_id":"b9c78b2af1eeaf08c97e9ef9c376d3c33a8c206f","unresolved":false,"context_lines":[{"line_number":59,"context_line":"----------------------------------------------------"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"We should separate Docker container definitions from Ansible deployment code."},{"line_number":62,"context_line":"We should not mix \"packaging\" of OpenStack services with one of the possible"},{"line_number":63,"context_line":"deployment tools that will be consuming them. From a technical point of view -"},{"line_number":64,"context_line":"it\u0027s the only way to implement separate core teams and releasing model for the"},{"line_number":65,"context_line":"deployment tool that will not affect lifecycle of the OpenStack"},{"line_number":66,"context_line":"containerization. From implementation point of view it means we should move all"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5a9d85d2_f5fe1a04","line":63,"range":{"start_line":62,"start_character":0,"end_line":63,"end_character":44},"updated":"2016-06-20 09:53:46.000000000","message":"Can you give an example of where we\u0027re doing this?","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":11105,"name":"Swapnil Kulkarni","email":"coolsvap@gmail.com","username":"coolsvap"},"change_message_id":"6b9a1cc3f78e08601789d48f0290104d201b4275","unresolved":false,"context_lines":[{"line_number":59,"context_line":"----------------------------------------------------"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"We should separate Docker container definitions from Ansible deployment code."},{"line_number":62,"context_line":"We should not mix \"packaging\" of OpenStack services with one of the possible"},{"line_number":63,"context_line":"deployment tools that will be consuming them. From a technical point of view -"},{"line_number":64,"context_line":"it\u0027s the only way to implement separate core teams and releasing model for the"},{"line_number":65,"context_line":"deployment tool that will not affect lifecycle of the OpenStack"},{"line_number":66,"context_line":"containerization. From implementation point of view it means we should move all"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5a9d85d2_d3d49ebe","line":63,"range":{"start_line":62,"start_character":0,"end_line":63,"end_character":44},"in_reply_to":"5a9d85d2_f5fe1a04","updated":"2016-06-21 09:45:36.000000000","message":"+1","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},"change_message_id":"b70cf3a31b1864b712a302c8603b5888a77d8e79","unresolved":false,"context_lines":[{"line_number":64,"context_line":"it\u0027s the only way to implement separate core teams and releasing model for the"},{"line_number":65,"context_line":"deployment tool that will not affect lifecycle of the OpenStack"},{"line_number":66,"context_line":"containerization. From implementation point of view it means we should move all"},{"line_number":67,"context_line":"Ansible related code and wrappers to a separate repository."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"One Repository per OpenStack component"},{"line_number":70,"context_line":"--------------------------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_ee0d69e9","line":67,"range":{"start_line":67,"start_character":1,"end_line":67,"end_character":58},"updated":"2016-06-16 15:18:17.000000000","message":"This was a hot topic at summit and will be a hot topic for the midcycle in a few weeks. The community needs to hear all perspectives of this in order the make the best decision on the topic. Thanks for the perspective.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":16620,"name":"Alicja Kwasniewska","email":"alicja.kwasniewska@intel.com","username":"akwasnie"},"change_message_id":"59db65357523a6c189c6be698a1a3e8329aad9f6","unresolved":false,"context_lines":[{"line_number":64,"context_line":"it\u0027s the only way to implement separate core teams and releasing model for the"},{"line_number":65,"context_line":"deployment tool that will not affect lifecycle of the OpenStack"},{"line_number":66,"context_line":"containerization. From implementation point of view it means we should move all"},{"line_number":67,"context_line":"Ansible related code and wrappers to a separate repository."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"One Repository per OpenStack component"},{"line_number":70,"context_line":"--------------------------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_a2c86a56","line":67,"range":{"start_line":67,"start_character":1,"end_line":67,"end_character":58},"in_reply_to":"7aa08908_51f7fd8b","updated":"2016-06-29 12:59:18.000000000","message":"Some details of this discussion can be found here https://etherpad.openstack.org/p/kolla-newton-summit-kolla-ansible-repo-split","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":9237,"name":"Kevin Fox","email":"kevin@efox.cc","username":"kfox1111"},"change_message_id":"a9961dbcb0fb93e9bf8ed45b520a47bde0bec2a3","unresolved":false,"context_lines":[{"line_number":64,"context_line":"it\u0027s the only way to implement separate core teams and releasing model for the"},{"line_number":65,"context_line":"deployment tool that will not affect lifecycle of the OpenStack"},{"line_number":66,"context_line":"containerization. From implementation point of view it means we should move all"},{"line_number":67,"context_line":"Ansible related code and wrappers to a separate repository."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"One Repository per OpenStack component"},{"line_number":70,"context_line":"--------------------------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_51f7fd8b","line":67,"range":{"start_line":67,"start_character":1,"end_line":67,"end_character":58},"in_reply_to":"7aa08908_ee0d69e9","updated":"2016-06-16 16:09:15.000000000","message":"Yeah, this was discussed at length at the summit.\n\nThe discussion was around:\n * does kolla have one repo or many?\n\nIt settled out into:\n * we don\u0027t know, lets wait a bit and see\n * we keep kolla-kubernetes separate until it stabilizes, and at that point one of:\n   * decide to move it into the main kolla repo\n   * decide to move the ansible stuff to a kolla-ansible repo\n\nAlso, we discussed that other non kolla projects might want to consume the containers. The general consensus was:\n * Sure, that\u0027s a great idea.\n * If we go with a unified kolla repo in the end, everyone\u0027s welcome there.\n * If you don\u0027t want to keep your code there, then you can just use the containers and ignore the ansible/k8s stuff.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":6786,"name":"Sergey Lukjanov","email":"me@slukjanov.name","username":"slukjanov"},"change_message_id":"36a0c8bb10ae9956454e6cea1198a77ddd29e036","unresolved":false,"context_lines":[{"line_number":66,"context_line":"containerization. From implementation point of view it means we should move all"},{"line_number":67,"context_line":"Ansible related code and wrappers to a separate repository."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"One Repository per OpenStack component"},{"line_number":70,"context_line":"--------------------------------------"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Split Docker container definitions the same way as it is done for Puppet and"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_4d0baed6","line":69,"updated":"2016-06-29 15:40:54.000000000","message":"I think it could be moved to the separated spec as it seems to be the most arguable thing.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":9237,"name":"Kevin Fox","email":"kevin@efox.cc","username":"kfox1111"},"change_message_id":"58d5d048e12964dfb50e4c266e2ee3c6ad67df4f","unresolved":false,"context_lines":[{"line_number":66,"context_line":"containerization. From implementation point of view it means we should move all"},{"line_number":67,"context_line":"Ansible related code and wrappers to a separate repository."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"One Repository per OpenStack component"},{"line_number":70,"context_line":"--------------------------------------"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Split Docker container definitions the same way as it is done for Puppet and"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_8e9c6dc1","line":69,"in_reply_to":"3aaa91ec_4d0baed6","updated":"2016-06-29 16:26:36.000000000","message":"+1 to a new spec for this.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":16620,"name":"Alicja Kwasniewska","email":"alicja.kwasniewska@intel.com","username":"akwasnie"},"change_message_id":"59db65357523a6c189c6be698a1a3e8329aad9f6","unresolved":false,"context_lines":[{"line_number":74,"context_line":"precise versioning schema of container image manifests and enable more"},{"line_number":75,"context_line":"intelligent testing and maintenance as we will have ability to have specific"},{"line_number":76,"context_line":"jobs and separate core subteams for different repositories. Due to the fact"},{"line_number":77,"context_line":"that there will be huge umber or repositories (few dozens), the preferred way"},{"line_number":78,"context_line":"of their definition is to use some DSL. It\u0027ll allow managing same standartized"},{"line_number":79,"context_line":"way of the images defintion across all repositories and implemented validation."},{"line_number":80,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_427a66f2","line":77,"range":{"start_line":77,"start_character":24,"end_line":77,"end_character":32},"updated":"2016-06-29 12:59:18.000000000","message":"nit:number of","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":6786,"name":"Sergey Lukjanov","email":"me@slukjanov.name","username":"slukjanov"},"change_message_id":"36a0c8bb10ae9956454e6cea1198a77ddd29e036","unresolved":false,"context_lines":[{"line_number":74,"context_line":"precise versioning schema of container image manifests and enable more"},{"line_number":75,"context_line":"intelligent testing and maintenance as we will have ability to have specific"},{"line_number":76,"context_line":"jobs and separate core subteams for different repositories. Due to the fact"},{"line_number":77,"context_line":"that there will be huge umber or repositories (few dozens), the preferred way"},{"line_number":78,"context_line":"of their definition is to use some DSL. It\u0027ll allow managing same standartized"},{"line_number":79,"context_line":"way of the images defintion across all repositories and implemented validation."},{"line_number":80,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_adf052fe","line":77,"in_reply_to":"3aaa91ec_427a66f2","updated":"2016-06-29 15:40:54.000000000","message":"Thx, will fix in new patch set after some more discussion in comments. I just don\u0027t want to upload new patch set right now to avoid resetting comments.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":10787,"name":"Michal Jastrzebski (inc0)","email":"michal.jastrzebski@intel.com","username":"inc0"},"change_message_id":"45013c4b3732f14a41815daf23deade664ab3ed0","unresolved":false,"context_lines":[{"line_number":76,"context_line":"jobs and separate core subteams for different repositories. Due to the fact"},{"line_number":77,"context_line":"that there will be huge umber or repositories (few dozens), the preferred way"},{"line_number":78,"context_line":"of their definition is to use some DSL. It\u0027ll allow managing same standartized"},{"line_number":79,"context_line":"way of the images defintion across all repositories and implemented validation."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"Avoid bootstrap code in containers"},{"line_number":82,"context_line":"----------------------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_d4e75b44","line":79,"updated":"2016-06-16 16:17:40.000000000","message":"So I\u0027m reluctant towards this as it is harder to maintain/review. We\u0027ll need to provide versioning map of tested mixture of container versions. With single repo we don\u0027t have this issue. I understand need to customize images, but we are working on full customizations right now [1]. Please help me understand need for separate repos, what problem it\u0027s meant to be solving.\n\n[1] https://review.openstack.org/#/q/topic:bp/third-party-plugin-support","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":11105,"name":"Swapnil Kulkarni","email":"coolsvap@gmail.com","username":"coolsvap"},"change_message_id":"6b9a1cc3f78e08601789d48f0290104d201b4275","unresolved":false,"context_lines":[{"line_number":76,"context_line":"jobs and separate core subteams for different repositories. Due to the fact"},{"line_number":77,"context_line":"that there will be huge umber or repositories (few dozens), the preferred way"},{"line_number":78,"context_line":"of their definition is to use some DSL. It\u0027ll allow managing same standartized"},{"line_number":79,"context_line":"way of the images defintion across all repositories and implemented validation."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"Avoid bootstrap code in containers"},{"line_number":82,"context_line":"----------------------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5a9d85d2_9685e45a","line":79,"in_reply_to":"5a9d85d2_4ebca66c","updated":"2016-06-21 09:45:36.000000000","message":"I fail to see any advantages for multiple repos w.r.t. different components in kolla. completely agree on all points with inc0.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":16620,"name":"Alicja Kwasniewska","email":"alicja.kwasniewska@intel.com","username":"akwasnie"},"change_message_id":"59db65357523a6c189c6be698a1a3e8329aad9f6","unresolved":false,"context_lines":[{"line_number":76,"context_line":"jobs and separate core subteams for different repositories. Due to the fact"},{"line_number":77,"context_line":"that there will be huge umber or repositories (few dozens), the preferred way"},{"line_number":78,"context_line":"of their definition is to use some DSL. It\u0027ll allow managing same standartized"},{"line_number":79,"context_line":"way of the images defintion across all repositories and implemented validation."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"Avoid bootstrap code in containers"},{"line_number":82,"context_line":"----------------------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_059d0866","line":79,"in_reply_to":"5a9d85d2_9685e45a","updated":"2016-06-29 12:59:18.000000000","message":"I also agree with inc0, with multiple repos per each service testing/modifications will become much harder.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"81714b5c90a80fb14266b28257a738aa88633386","unresolved":false,"context_lines":[{"line_number":76,"context_line":"jobs and separate core subteams for different repositories. Due to the fact"},{"line_number":77,"context_line":"that there will be huge umber or repositories (few dozens), the preferred way"},{"line_number":78,"context_line":"of their definition is to use some DSL. It\u0027ll allow managing same standartized"},{"line_number":79,"context_line":"way of the images defintion across all repositories and implemented validation."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"Avoid bootstrap code in containers"},{"line_number":82,"context_line":"----------------------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_809554e5","line":79,"in_reply_to":"7aa08908_7f14779e","updated":"2016-06-17 15:23:10.000000000","message":"Bogdan provides some insight below, but in puppet-openstack we have this exact situation. So to handle this duplicate items, we\u0027ve improved and added additional modules like puppet-openstacklib, puppet-oslo and puppet-openstack_rspec_helper where we pull in these shared items so they can be managed individually. Additionally we manage the puppet-openstack-integration which is where all of our integration test cases can be managed in a single location.  We also use cookiecutter for new modules and modulesync to do batch operations across the projects.  This concept can be extended to kolla and would probably make it easier to manage in the longer term allowing individuals to specialize in specific containers or allowing new projects to help bootstrap their container process. Much like we\u0027ve seen with the recent addition of the vitrage, congress, barbican puppet modules.  There\u0027s some advantage to forcing this separation because it also makes people think how can things be reused where today it might get buried in a single repo and forces people to think about how they integration with the other pieces.  It also allows much simpler overriding of a single item. So if i want to use upstream for projects W,X,Y,Z today and then need to replace Y with my own custom one, I can simply use a different source repo and continue. Where as if you have a single repository you end up having to do some odd patching or hacks to try and provide this replacement.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":10787,"name":"Michal Jastrzebski (inc0)","email":"michal.jastrzebski@intel.com","username":"inc0"},"change_message_id":"3d20c214eec117b10a6c93412f27bbc6bc901b8f","unresolved":false,"context_lines":[{"line_number":76,"context_line":"jobs and separate core subteams for different repositories. Due to the fact"},{"line_number":77,"context_line":"that there will be huge umber or repositories (few dozens), the preferred way"},{"line_number":78,"context_line":"of their definition is to use some DSL. It\u0027ll allow managing same standartized"},{"line_number":79,"context_line":"way of the images defintion across all repositories and implemented validation."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"Avoid bootstrap code in containers"},{"line_number":82,"context_line":"----------------------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5a9d85d2_4ebca66c","line":79,"in_reply_to":"7aa08908_809554e5","updated":"2016-06-20 16:49:44.000000000","message":"So while we see need for customization, we have different strategy to get it. Namely jinja2. Problem with \"have your own repo\" is that it easily gets out of sync with trunk and provides world of pain to keep up. Don\u0027t forget that docker provides inheritance between images, and we use it. If you support your own container X that is based on our base image, which would be the way to do it, when we change our base image you might run into problems. Rather than that we provide integrated customization mechanism which should work for majority of use cases. If we separate containers per service tho, doing any change to base container will be super problematic. Imagine that we\u0027re doing breaking change in base container that will require change in every sub-containers. With single repo we can do this in one big patch, with multiple repo we\u0027ll end up in tons of cross-repo dependencies and potentially broken codebase between merge in base and merge in sub-containers.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"1415de1f3c36414a24f96eeea60cb31530bc0e76","unresolved":false,"context_lines":[{"line_number":76,"context_line":"jobs and separate core subteams for different repositories. Due to the fact"},{"line_number":77,"context_line":"that there will be huge umber or repositories (few dozens), the preferred way"},{"line_number":78,"context_line":"of their definition is to use some DSL. It\u0027ll allow managing same standartized"},{"line_number":79,"context_line":"way of the images defintion across all repositories and implemented validation."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"Avoid bootstrap code in containers"},{"line_number":82,"context_line":"----------------------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_7f14779e","line":79,"in_reply_to":"7aa08908_d4e75b44","updated":"2016-06-16 20:03:08.000000000","message":"Ya, I\u0027d agree with inc0, seems a little to premature to do this (if ever). From history with anvil and its package building, having X repos would of really made uniformity and changing things harder. IMHO things that belong together should be together, things that shouldn\u0027t be shouldn\u0027t be (thus why I think docker image files should be together, but ansible stuff shouldn\u0027t).","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":9237,"name":"Kevin Fox","email":"kevin@efox.cc","username":"kfox1111"},"change_message_id":"a9961dbcb0fb93e9bf8ed45b520a47bde0bec2a3","unresolved":false,"context_lines":[{"line_number":77,"context_line":"that there will be huge umber or repositories (few dozens), the preferred way"},{"line_number":78,"context_line":"of their definition is to use some DSL. It\u0027ll allow managing same standartized"},{"line_number":79,"context_line":"way of the images defintion across all repositories and implemented validation."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"Avoid bootstrap code in containers"},{"line_number":82,"context_line":"----------------------------------"},{"line_number":83,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_b17aa1ee","line":80,"updated":"2016-06-16 16:09:15.000000000","message":"This is a difference in management styles. It has its advantages and disadvantages. Its complicated enough that this may deserve its own spec.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},"change_message_id":"14470d506c7093dd2ec8e06df491bcde8fae11c0","unresolved":false,"context_lines":[{"line_number":77,"context_line":"that there will be huge umber or repositories (few dozens), the preferred way"},{"line_number":78,"context_line":"of their definition is to use some DSL. It\u0027ll allow managing same standartized"},{"line_number":79,"context_line":"way of the images defintion across all repositories and implemented validation."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"Avoid bootstrap code in containers"},{"line_number":82,"context_line":"----------------------------------"},{"line_number":83,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_d4611b13","line":80,"in_reply_to":"7aa08908_b17aa1ee","updated":"2016-06-16 16:25:59.000000000","message":"Ya I think we need to come up with a detailed plan for this so we can debate pros and cons.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":6786,"name":"Sergey Lukjanov","email":"me@slukjanov.name","username":"slukjanov"},"change_message_id":"36a0c8bb10ae9956454e6cea1198a77ddd29e036","unresolved":false,"context_lines":[{"line_number":77,"context_line":"that there will be huge umber or repositories (few dozens), the preferred way"},{"line_number":78,"context_line":"of their definition is to use some DSL. It\u0027ll allow managing same standartized"},{"line_number":79,"context_line":"way of the images defintion across all repositories and implemented validation."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"Avoid bootstrap code in containers"},{"line_number":82,"context_line":"----------------------------------"},{"line_number":83,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_ad3e9288","line":80,"in_reply_to":"7aa08908_d4611b13","updated":"2016-06-29 15:40:54.000000000","message":"Yeah, I agree that it should be moved to separated spec as it\u0027s one of the most arguable things.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},"change_message_id":"b70cf3a31b1864b712a302c8603b5888a77d8e79","unresolved":false,"context_lines":[{"line_number":78,"context_line":"of their definition is to use some DSL. It\u0027ll allow managing same standartized"},{"line_number":79,"context_line":"way of the images defintion across all repositories and implemented validation."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"Avoid bootstrap code in containers"},{"line_number":82,"context_line":"----------------------------------"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"Move bootstrapping scripts from the container itself to the deployment tool."}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_e839e1f3","line":81,"range":{"start_line":81,"start_character":1,"end_line":81,"end_character":34},"updated":"2016-06-16 15:18:17.000000000","message":"This is something I\u0027ve been thinking about while working on kolla-kubernetes.  Kubernetes has clearly a different means of orchestration.  Bootstrapping is different per deployment tool and I think we should evaluate this further.  It was something I planned to bring up at the mid cycle.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":10787,"name":"Michal Jastrzebski (inc0)","email":"michal.jastrzebski@intel.com","username":"inc0"},"change_message_id":"065611426fdc5ab7709677a8e9fbb53b5222a4d0","unresolved":false,"context_lines":[{"line_number":78,"context_line":"of their definition is to use some DSL. It\u0027ll allow managing same standartized"},{"line_number":79,"context_line":"way of the images defintion across all repositories and implemented validation."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"Avoid bootstrap code in containers"},{"line_number":82,"context_line":"----------------------------------"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"Move bootstrapping scripts from the container itself to the deployment tool."}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_bda6b20c","line":81,"in_reply_to":"7aa08908_a93e9426","updated":"2016-06-17 18:51:14.000000000","message":"Well, truth is, Kolla mission is to supply containers, ansible is outside of it. We have recurring discussion of pulling out ansible bits out of kolla repo, and that\u0027s a call we have to make one day. Having every container in separate repo? That\u0027s different discussion. Truth be told, I fail to see value in this approach really. What problem it\u0027s supposed to fix really?","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":6926,"name":"Bogdan Dobrelya","email":"bdobreli@redhat.com","username":"bogdando"},"change_message_id":"874e3cfce50dd84d36adeba42cded1c6fb3229b1","unresolved":false,"context_lines":[{"line_number":78,"context_line":"of their definition is to use some DSL. It\u0027ll allow managing same standartized"},{"line_number":79,"context_line":"way of the images defintion across all repositories and implemented validation."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"Avoid bootstrap code in containers"},{"line_number":82,"context_line":"----------------------------------"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"Move bootstrapping scripts from the container itself to the deployment tool."}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_a93e9426","line":81,"in_reply_to":"7aa08908_b14bc185","updated":"2016-06-17 08:44:21.000000000","message":"Separate repos to become a burden to maintain, indeed, although I strongly believe that\u0027s must be done as that\u0027s the only way to go, like puppet-openstack commuity does. Imagine what a mess would\u0027ve been created there - in tests and providers at least - if all modules were put into a single repo!\n\nAlso I recommend to leverage a PO approach, which is \"we give you recipes, but won\u0027t cook for you\" to become \"we give you containers, but won\u0027t toss them around for you\" for Kolla as well. For a PO that ended up in the puppet-openstack, which was a hyper-over-engineered super composition layer, to be just dismissed. For Kolla, I see the same to be done to the anything which makes you thinking there is a sense to put things into a single repo.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":9237,"name":"Kevin Fox","email":"kevin@efox.cc","username":"kfox1111"},"change_message_id":"a9961dbcb0fb93e9bf8ed45b520a47bde0bec2a3","unresolved":false,"context_lines":[{"line_number":78,"context_line":"of their definition is to use some DSL. It\u0027ll allow managing same standartized"},{"line_number":79,"context_line":"way of the images defintion across all repositories and implemented validation."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"Avoid bootstrap code in containers"},{"line_number":82,"context_line":"----------------------------------"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"Move bootstrapping scripts from the container itself to the deployment tool."}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_b14bc185","line":81,"range":{"start_line":81,"start_character":1,"end_line":81,"end_character":34},"in_reply_to":"7aa08908_e839e1f3","updated":"2016-06-16 16:09:15.000000000","message":"Yeah, this bit is tricky to me...\n\nI think the bootstrap scripts should be in a container, or be in a parallel container. Doing the bootstrap outside of a container requires you to then manage all the binaries outside of the containers and you loose a lot of stuff the containers bring to the table.\n\nNow, if this is about doing bootstrapping as part of the container bring up, I agree, that work flow really needs to be separate. that\u0027s why I\u0027ve been pushing k8s jobs, with something shepherding the process.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":6926,"name":"Bogdan Dobrelya","email":"bdobreli@redhat.com","username":"bogdando"},"change_message_id":"e6154f646ab068174137e73657bbc5bd8ae59d8b","unresolved":false,"context_lines":[{"line_number":81,"context_line":"Avoid bootstrap code in containers"},{"line_number":82,"context_line":"----------------------------------"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"Move bootstrapping scripts from the container itself to the deployment tool."},{"line_number":85,"context_line":"There are different options for implementing it - could be done using the"},{"line_number":86,"context_line":"entry point script that will fetch needed boostrap scripts (and probably config"},{"line_number":87,"context_line":"files) to the container and execute them or using the native features of the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_8420ddf9","line":84,"updated":"2016-06-17 08:55:56.000000000","message":"This! Yes, please do. Shaping data flows for bootstrapping containers is too much implementation specific and there are too many options exist. Just leave that to deployment tools instead.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":9237,"name":"Kevin Fox","email":"kevin@efox.cc","username":"kfox1111"},"change_message_id":"6ceaf784cd3b600f38ed2f5c6a5999f507f67f7d","unresolved":false,"context_lines":[{"line_number":81,"context_line":"Avoid bootstrap code in containers"},{"line_number":82,"context_line":"----------------------------------"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"Move bootstrapping scripts from the container itself to the deployment tool."},{"line_number":85,"context_line":"There are different options for implementing it - could be done using the"},{"line_number":86,"context_line":"entry point script that will fetch needed boostrap scripts (and probably config"},{"line_number":87,"context_line":"files) to the container and execute them or using the native features of the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_9ba02944","line":84,"in_reply_to":"7aa08908_8420ddf9","updated":"2016-06-17 15:41:59.000000000","message":"This needs clarification/rewording...\n\nThe workflow belongs outside of the containers, to be driven by the deployment tools. The containers themselves or parallel containers should contain the binaries/scripts required by the workflow that are software specific though. For example, for ceph, the ceph binary from the container should be used to manage the ceph cluster, otherwise there is a risk of the ceph in the container and ceph on the host being different/incompatible.\n\nso, for example, puppet could call something like:\ndocker run -it --rm kolla-ceph-image ceph auth add client.john mon \u0027allow r\u0027 osd \u0027allow rw pool\u003dliverpool\u0027\n\nif it needed a ceph user created.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":6786,"name":"Sergey Lukjanov","email":"me@slukjanov.name","username":"slukjanov"},"change_message_id":"36a0c8bb10ae9956454e6cea1198a77ddd29e036","unresolved":false,"context_lines":[{"line_number":81,"context_line":"Avoid bootstrap code in containers"},{"line_number":82,"context_line":"----------------------------------"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"Move bootstrapping scripts from the container itself to the deployment tool."},{"line_number":85,"context_line":"There are different options for implementing it - could be done using the"},{"line_number":86,"context_line":"entry point script that will fetch needed boostrap scripts (and probably config"},{"line_number":87,"context_line":"files) to the container and execute them or using the native features of the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_0dbfe6aa","line":84,"in_reply_to":"7aa08908_9ba02944","updated":"2016-06-29 15:40:54.000000000","message":"Kevin, I agree that all needed CLI, clients, tools, etc. should be in the docker containers to be used by command like you specified. Seems like I\u0027ve missed this part and this section sounds not clear.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},"change_message_id":"b70cf3a31b1864b712a302c8603b5888a77d8e79","unresolved":false,"context_lines":[{"line_number":83,"context_line":""},{"line_number":84,"context_line":"Move bootstrapping scripts from the container itself to the deployment tool."},{"line_number":85,"context_line":"There are different options for implementing it - could be done using the"},{"line_number":86,"context_line":"entry point script that will fetch needed boostrap scripts (and probably config"},{"line_number":87,"context_line":"files) to the container and execute them or using the native features of the"},{"line_number":88,"context_line":"deployment tools like ConfigMap in Kubernetes."},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"Unified paths and endpoints"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_03908e95","line":87,"range":{"start_line":86,"start_character":73,"end_line":87,"end_character":5},"updated":"2016-06-16 15:18:17.000000000","message":"config files are determined by the deployment tool by specifying which configs are mounted into the containers.  Kubernetes uses the same ABI along with any deployment tool.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":10787,"name":"Michal Jastrzebski (inc0)","email":"michal.jastrzebski@intel.com","username":"inc0"},"change_message_id":"45013c4b3732f14a41815daf23deade664ab3ed0","unresolved":false,"context_lines":[{"line_number":85,"context_line":"There are different options for implementing it - could be done using the"},{"line_number":86,"context_line":"entry point script that will fetch needed boostrap scripts (and probably config"},{"line_number":87,"context_line":"files) to the container and execute them or using the native features of the"},{"line_number":88,"context_line":"deployment tools like ConfigMap in Kubernetes."},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"Unified paths and endpoints"},{"line_number":91,"context_line":"----------------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_94195325","line":88,"updated":"2016-06-16 16:17:40.000000000","message":"We can think about it, but we also need to keep it compatible and upgradable from our current deployment strategy. We already have prod we can\u0027t left out. Right now bootstrapping is done inside container ran in bootstrap mode. That\u0027s just where workflow is running.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":10787,"name":"Michal Jastrzebski (inc0)","email":"michal.jastrzebski@intel.com","username":"inc0"},"change_message_id":"65d6ec5ef6af7bf359f8721506d82853de966b04","unresolved":false,"context_lines":[{"line_number":85,"context_line":"There are different options for implementing it - could be done using the"},{"line_number":86,"context_line":"entry point script that will fetch needed boostrap scripts (and probably config"},{"line_number":87,"context_line":"files) to the container and execute them or using the native features of the"},{"line_number":88,"context_line":"deployment tools like ConfigMap in Kubernetes."},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"Unified paths and endpoints"},{"line_number":91,"context_line":"----------------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_d06da0cd","line":88,"in_reply_to":"7aa08908_94195325","updated":"2016-06-16 17:52:58.000000000","message":"So I played a bit with idea of bootstrap outside of containers, and there will be few things we need to consider:\n1. Deployment node might (and should from security standpoiunt) not have access to APIs themselves. We run docker exec on node to connect to mysql for example because of that. In our security arch mysql will only listen on IP of mgmt network, not 0.0.0.0, so if you use different network for ssh, this will lock out deployment from accessing mariadb\n2. We want to minimize footprint kolla leaves on nodes, therefore we dont want nodes to have mysql client installed. Hence docker exec to mariadb container\n3. Playing with entrypoints might be solution to this problem","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":10787,"name":"Michal Jastrzebski (inc0)","email":"michal.jastrzebski@intel.com","username":"inc0"},"change_message_id":"45013c4b3732f14a41815daf23deade664ab3ed0","unresolved":false,"context_lines":[{"line_number":95,"context_line":"deployment tools will be able to rely on the contract provided by Kolla and"},{"line_number":96,"context_line":"don\u0027t depend on base OS or installation type. Additionally, it\u0027ll simplify"},{"line_number":97,"context_line":"consumption of images from different sources such as builds from custom sources"},{"line_number":98,"context_line":"and etc."},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"CI pipeline"},{"line_number":101,"context_line":"-----------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_34c85f75","line":98,"updated":"2016-06-16 16:17:40.000000000","message":"Now we can use full rich of jinja2 templates. We can use stuff like macros to enable better multi-os support. For example https://review.openstack.org/#/c/326734/","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":11105,"name":"Swapnil Kulkarni","email":"coolsvap@gmail.com","username":"coolsvap"},"change_message_id":"6b9a1cc3f78e08601789d48f0290104d201b4275","unresolved":false,"context_lines":[{"line_number":95,"context_line":"deployment tools will be able to rely on the contract provided by Kolla and"},{"line_number":96,"context_line":"don\u0027t depend on base OS or installation type. Additionally, it\u0027ll simplify"},{"line_number":97,"context_line":"consumption of images from different sources such as builds from custom sources"},{"line_number":98,"context_line":"and etc."},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"CI pipeline"},{"line_number":101,"context_line":"-----------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5a9d85d2_36deb06d","line":98,"in_reply_to":"7aa08908_34c85f75","updated":"2016-06-21 09:45:36.000000000","message":"+1","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},"change_message_id":"b70cf3a31b1864b712a302c8603b5888a77d8e79","unresolved":false,"context_lines":[{"line_number":100,"context_line":"CI pipeline"},{"line_number":101,"context_line":"-----------"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"CI should act as a pipeline that produces well tested container images with"},{"line_number":104,"context_line":"the OpenStack services for all supported stable branches and current master."},{"line_number":105,"context_line":"All published containers should be never overriden to allow deployment tools"},{"line_number":106,"context_line":"implement continuously upgradable clouds. In that case \"well tested\" means that"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_8e3825a1","line":103,"range":{"start_line":103,"start_character":0,"end_line":103,"end_character":2},"updated":"2016-06-16 15:18:17.000000000","message":"With all the services in separate repos we could test the building of each container, but the functionality may be more challenging. We would have to have a deployment gate per repo to test if the changes didn\u0027t break anything in deployment.  But, with all different repos, gates would build based on the latest stuff and could break on anything.  There will be some redundancy here when paired with a service per repo.\n\nI\u0027m all for lots of CI, but it\u0027s just something to consider when paired with split repos.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"1415de1f3c36414a24f96eeea60cb31530bc0e76","unresolved":false,"context_lines":[{"line_number":102,"context_line":""},{"line_number":103,"context_line":"CI should act as a pipeline that produces well tested container images with"},{"line_number":104,"context_line":"the OpenStack services for all supported stable branches and current master."},{"line_number":105,"context_line":"All published containers should be never overriden to allow deployment tools"},{"line_number":106,"context_line":"implement continuously upgradable clouds. In that case \"well tested\" means that"},{"line_number":107,"context_line":"there should be OpenStack deployment jobs running some functional tests and"},{"line_number":108,"context_line":"OpenStack components tests to ensure that OpenStack is up and running well."}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_df82cbc7","line":105,"updated":"2016-06-16 20:03:08.000000000","message":"I just want to clarify, which CI, the openstack-infra one?","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":10787,"name":"Michal Jastrzebski (inc0)","email":"michal.jastrzebski@intel.com","username":"inc0"},"change_message_id":"45013c4b3732f14a41815daf23deade664ab3ed0","unresolved":false,"context_lines":[{"line_number":107,"context_line":"there should be OpenStack deployment jobs running some functional tests and"},{"line_number":108,"context_line":"OpenStack components tests to ensure that OpenStack is up and running well."},{"line_number":109,"context_line":"Tempest tests with filters based on the set of deployed OpenStack services"},{"line_number":110,"context_line":"could be used as the main tool for container images verification."},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"Security impact"},{"line_number":113,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_d4b47bd5","line":110,"updated":"2016-06-16 16:17:40.000000000","message":"That is gating issue which is big for us. One of biggest problems for our project right now imho, so agree.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"1415de1f3c36414a24f96eeea60cb31530bc0e76","unresolved":false,"context_lines":[{"line_number":112,"context_line":"Security impact"},{"line_number":113,"context_line":"---------------"},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"No changes. In general it should simplify audit of the containers securite"},{"line_number":116,"context_line":"because of the separation to different repositories and extraction of"},{"line_number":117,"context_line":"additional software (such as Ansible) and bootstrap scripts."},{"line_number":118,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_ff67c74e","line":115,"updated":"2016-06-16 20:03:08.000000000","message":"securite -\u003e security","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":6786,"name":"Sergey Lukjanov","email":"me@slukjanov.name","username":"slukjanov"},"change_message_id":"36a0c8bb10ae9956454e6cea1198a77ddd29e036","unresolved":false,"context_lines":[{"line_number":112,"context_line":"Security impact"},{"line_number":113,"context_line":"---------------"},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"No changes. In general it should simplify audit of the containers securite"},{"line_number":116,"context_line":"because of the separation to different repositories and extraction of"},{"line_number":117,"context_line":"additional software (such as Ansible) and bootstrap scripts."},{"line_number":118,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_8d8596d0","line":115,"in_reply_to":"7aa08908_ff67c74e","updated":"2016-06-29 15:40:54.000000000","message":"Thx, I\u0027ll fix it in the new PS, I\u0027m just not doing it now to avoid resetting discussion in comments.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":10787,"name":"Michal Jastrzebski (inc0)","email":"michal.jastrzebski@intel.com","username":"inc0"},"change_message_id":"45013c4b3732f14a41815daf23deade664ab3ed0","unresolved":false,"context_lines":[{"line_number":114,"context_line":""},{"line_number":115,"context_line":"No changes. In general it should simplify audit of the containers securite"},{"line_number":116,"context_line":"because of the separation to different repositories and extraction of"},{"line_number":117,"context_line":"additional software (such as Ansible) and bootstrap scripts."},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"Performance Impact"},{"line_number":120,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_d402bb71","line":117,"updated":"2016-06-16 16:17:40.000000000","message":"but separation of containers to different repos will complicate version management, that might be affecting security","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":10419,"name":"Ryan Hallisey","email":"rhallise@redhat.com","username":"rhallisey"},"change_message_id":"b70cf3a31b1864b712a302c8603b5888a77d8e79","unresolved":false,"context_lines":[{"line_number":129,"context_line":"Keep everything as is."},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"The most clear negative side of the proposal is that it will require testing"},{"line_number":132,"context_line":"images with different deplyment tools and make any changes to image much more"},{"line_number":133,"context_line":"difficult to make."},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"Implementation"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_e96c43d2","line":132,"range":{"start_line":132,"start_character":12,"end_line":132,"end_character":37},"updated":"2016-06-16 15:18:17.000000000","message":"Kolla hopes to have as many different deployment tools consuming it as possible.  The community is open to changes so that consumption can be easier.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":9237,"name":"Kevin Fox","email":"kevin@efox.cc","username":"kfox1111"},"change_message_id":"58d5d048e12964dfb50e4c266e2ee3c6ad67df4f","unresolved":false,"context_lines":[{"line_number":129,"context_line":"Keep everything as is."},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"The most clear negative side of the proposal is that it will require testing"},{"line_number":132,"context_line":"images with different deplyment tools and make any changes to image much more"},{"line_number":133,"context_line":"difficult to make."},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"Implementation"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_ae6fa9fa","line":132,"range":{"start_line":132,"start_character":12,"end_line":132,"end_character":37},"in_reply_to":"7aa08908_e96c43d2","updated":"2016-06-29 16:26:36.000000000","message":"+1","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":11105,"name":"Swapnil Kulkarni","email":"coolsvap@gmail.com","username":"coolsvap"},"change_message_id":"6b9a1cc3f78e08601789d48f0290104d201b4275","unresolved":false,"context_lines":[{"line_number":129,"context_line":"Keep everything as is."},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"The most clear negative side of the proposal is that it will require testing"},{"line_number":132,"context_line":"images with different deplyment tools and make any changes to image much more"},{"line_number":133,"context_line":"difficult to make."},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"Implementation"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5a9d85d2_966164ab","line":132,"range":{"start_line":132,"start_character":12,"end_line":132,"end_character":37},"in_reply_to":"7aa08908_e96c43d2","updated":"2016-06-21 09:45:36.000000000","message":"+1","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":10787,"name":"Michal Jastrzebski (inc0)","email":"michal.jastrzebski@intel.com","username":"inc0"},"change_message_id":"45013c4b3732f14a41815daf23deade664ab3ed0","unresolved":false,"context_lines":[{"line_number":130,"context_line":""},{"line_number":131,"context_line":"The most clear negative side of the proposal is that it will require testing"},{"line_number":132,"context_line":"images with different deplyment tools and make any changes to image much more"},{"line_number":133,"context_line":"difficult to make."},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"Implementation"},{"line_number":136,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7aa08908_b413afb6","line":133,"updated":"2016-06-16 16:17:40.000000000","message":"Well, customizations will help you. As for different deployment tools, it\u0027s about separation of bootstrap and such, this we can work on, I agree.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":9237,"name":"Kevin Fox","email":"kevin@efox.cc","username":"kfox1111"},"change_message_id":"58d5d048e12964dfb50e4c266e2ee3c6ad67df4f","unresolved":false,"context_lines":[{"line_number":130,"context_line":""},{"line_number":131,"context_line":"The most clear negative side of the proposal is that it will require testing"},{"line_number":132,"context_line":"images with different deplyment tools and make any changes to image much more"},{"line_number":133,"context_line":"difficult to make."},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"Implementation"},{"line_number":136,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_2e53b93a","line":133,"in_reply_to":"3aaa91ec_451390b8","updated":"2016-06-29 16:26:36.000000000","message":"+1","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":16620,"name":"Alicja Kwasniewska","email":"alicja.kwasniewska@intel.com","username":"akwasnie"},"change_message_id":"59db65357523a6c189c6be698a1a3e8329aad9f6","unresolved":false,"context_lines":[{"line_number":130,"context_line":""},{"line_number":131,"context_line":"The most clear negative side of the proposal is that it will require testing"},{"line_number":132,"context_line":"images with different deplyment tools and make any changes to image much more"},{"line_number":133,"context_line":"difficult to make."},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"Implementation"},{"line_number":136,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3aaa91ec_451390b8","line":133,"in_reply_to":"5a9d85d2_36fa30be","updated":"2016-06-29 12:59:18.000000000","message":"+1","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"},{"author":{"_account_id":11105,"name":"Swapnil Kulkarni","email":"coolsvap@gmail.com","username":"coolsvap"},"change_message_id":"6b9a1cc3f78e08601789d48f0290104d201b4275","unresolved":false,"context_lines":[{"line_number":130,"context_line":""},{"line_number":131,"context_line":"The most clear negative side of the proposal is that it will require testing"},{"line_number":132,"context_line":"images with different deplyment tools and make any changes to image much more"},{"line_number":133,"context_line":"difficult to make."},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"Implementation"},{"line_number":136,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5a9d85d2_36fa30be","line":133,"in_reply_to":"7aa08908_b413afb6","updated":"2016-06-21 09:45:36.000000000","message":"+1 completely agree.","commit_id":"33d4112ff11dfe00cdeeae5eaec75a89588a049a"}]}
