)]}'
{"zun/container/docker/driver.py":[{"author":{"_account_id":22406,"name":"Kien Nguyen","email":"kiennt2609@gmail.com","username":"kiennt"},"change_message_id":"0f6b29c4c3b377f521f4d4e0cbad3a2e60f58dae","unresolved":false,"context_lines":[{"line_number":334,"context_line":""},{"line_number":335,"context_line":"    def _get_container_uuids(self, containers):"},{"line_number":336,"context_line":"        # The name of Docker container is of the form \u0027/zun-\u003cuuid\u003e\u0027"},{"line_number":337,"context_line":"        name_prefix \u003d \u0027/zun-\u0027"},{"line_number":338,"context_line":"        names \u003d [c[\u0027Names\u0027][0] for c in containers]"},{"line_number":339,"context_line":"        uuids \u003d [n.replace(name_prefix, \u0027\u0027, 1)"},{"line_number":340,"context_line":"                 for n in names if n.startswith(name_prefix)]"},{"line_number":341,"context_line":"        return [u for u in uuids if uuidutils.is_uuid_like(u)]"},{"line_number":342,"context_line":""},{"line_number":343,"context_line":"    def _get_local_containers(self, context, uuids):"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa0c359_21b91acb","line":340,"range":{"start_line":337,"start_character":8,"end_line":340,"end_character":61},"updated":"2018-02-21 07:27:54.000000000","message":"We can collapse these lines like:\n\nuuids \u003d [c[\u0027Names\u0027][0].replace(\u0027/zun-\u0027, \u0027\u0027, 1) for c in containers]\n\ndocker.list_containers() [1] already filterd containers with name contains \u0027zun-\u0027. So the check .startswith() is unnecessary.\n\n[1] https://github.com/openstack/zun/blob/master/zun/container/docker/utils.py#L75","commit_id":"af06864aba7b00deabdbd442c1e8480190ac9604"},{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"99f054289c9b5e18922c3c36a8d9b8251b906c5c","unresolved":false,"context_lines":[{"line_number":334,"context_line":""},{"line_number":335,"context_line":"    def _get_container_uuids(self, containers):"},{"line_number":336,"context_line":"        # The name of Docker container is of the form \u0027/zun-\u003cuuid\u003e\u0027"},{"line_number":337,"context_line":"        name_prefix \u003d \u0027/zun-\u0027"},{"line_number":338,"context_line":"        names \u003d [c[\u0027Names\u0027][0] for c in containers]"},{"line_number":339,"context_line":"        uuids \u003d [n.replace(name_prefix, \u0027\u0027, 1)"},{"line_number":340,"context_line":"                 for n in names if n.startswith(name_prefix)]"},{"line_number":341,"context_line":"        return [u for u in uuids if uuidutils.is_uuid_like(u)]"},{"line_number":342,"context_line":""},{"line_number":343,"context_line":"    def _get_local_containers(self, context, uuids):"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa0c359_0d42fa68","line":340,"range":{"start_line":337,"start_character":8,"end_line":340,"end_character":61},"in_reply_to":"3fa0c359_21b91acb","updated":"2018-02-22 04:24:58.000000000","message":"Done","commit_id":"af06864aba7b00deabdbd442c1e8480190ac9604"},{"author":{"_account_id":22406,"name":"Kien Nguyen","email":"kiennt2609@gmail.com","username":"kiennt"},"change_message_id":"0f6b29c4c3b377f521f4d4e0cbad3a2e60f58dae","unresolved":false,"context_lines":[{"line_number":341,"context_line":"        return [u for u in uuids if uuidutils.is_uuid_like(u)]"},{"line_number":342,"context_line":""},{"line_number":343,"context_line":"    def _get_local_containers(self, context, uuids):"},{"line_number":344,"context_line":"        containers \u003d objects.Container.list_by_host(context, CONF.host)"},{"line_number":345,"context_line":"        processed_uuids \u003d [c.uuid for c in containers]"},{"line_number":346,"context_line":"        uuids \u003d [u for u in uuids if u not in processed_uuids]"},{"line_number":347,"context_line":"        containers +\u003d objects.Container.list(context,"},{"line_number":348,"context_line":"                                             filters\u003d{\u0027uuid\u0027: uuids})"},{"line_number":349,"context_line":"        return containers"},{"line_number":350,"context_line":""},{"line_number":351,"context_line":"    def update_containers_states(self, context, containers):"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa0c359_c1ce3659","line":348,"range":{"start_line":344,"start_character":8,"end_line":348,"end_character":69},"updated":"2018-02-21 07:27:54.000000000","message":"How about getting both list_by_host \u0026 list by uuid, then combine them?\n\nhost_containers \u003d objects.Container.list_by_host(context, CONF.host)\ndocker_containers \u003d objects.Container.list(context, filters\u003d{\u0027uuid\u0027: uuids}\nreturn list(set(docker_containers + host_containers))","commit_id":"af06864aba7b00deabdbd442c1e8480190ac9604"},{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"99f054289c9b5e18922c3c36a8d9b8251b906c5c","unresolved":false,"context_lines":[{"line_number":341,"context_line":"        return [u for u in uuids if uuidutils.is_uuid_like(u)]"},{"line_number":342,"context_line":""},{"line_number":343,"context_line":"    def _get_local_containers(self, context, uuids):"},{"line_number":344,"context_line":"        containers \u003d objects.Container.list_by_host(context, CONF.host)"},{"line_number":345,"context_line":"        processed_uuids \u003d [c.uuid for c in containers]"},{"line_number":346,"context_line":"        uuids \u003d [u for u in uuids if u not in processed_uuids]"},{"line_number":347,"context_line":"        containers +\u003d objects.Container.list(context,"},{"line_number":348,"context_line":"                                             filters\u003d{\u0027uuid\u0027: uuids})"},{"line_number":349,"context_line":"        return containers"},{"line_number":350,"context_line":""},{"line_number":351,"context_line":"    def update_containers_states(self, context, containers):"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa0c359_ad52e633","line":348,"range":{"start_line":344,"start_character":8,"end_line":348,"end_character":69},"in_reply_to":"3fa0c359_c1ce3659","updated":"2018-02-22 04:24:58.000000000","message":"I like your approach and implement it with minor tweaks. I use set of uuids instead of using set of container objects because I am not sure if set will work for object.","commit_id":"af06864aba7b00deabdbd442c1e8480190ac9604"}]}
