)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"29fc8dd5858dad937bd8289ac4eeb269518394e9","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"1. Add new entry point /experimental alongside v1."},{"line_number":10,"context_line":"2. Capsule will use this entrypoint for quickly"},{"line_number":11,"context_line":"development."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Part of blueprint introduce-compose"},{"line_number":14,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"9f436f4f_b59a96c2","line":11,"updated":"2017-08-08 16:36:33.000000000","message":"It looks the capsule commands are missing in the help page. I couldn\u0027t see them when typing \"zun help\"","commit_id":"6679514c96aa7ed13f5b732ec43b5bcedea35773"},{"author":{"_account_id":22076,"name":"Kevin Zhao","email":"kevin.zhao@linaro.org","username":"KevinZhao"},"change_message_id":"653cbf0c7fb8176b16714853b401563f6d1193c2","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"1. Add new entry point /experimental alongside v1."},{"line_number":10,"context_line":"2. Capsule will use this entrypoint for quickly"},{"line_number":11,"context_line":"development."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Part of blueprint introduce-compose"},{"line_number":14,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"9f436f4f_00842bd3","line":11,"in_reply_to":"9f436f4f_b59a96c2","updated":"2017-09-23 00:18:59.000000000","message":"Done","commit_id":"6679514c96aa7ed13f5b732ec43b5bcedea35773"}],"zunclient/common/template_utils.py":[{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"277b8e64d2bcc66c566645d563896d9c0c1a9ee9","unresolved":false,"context_lines":[{"line_number":31,"context_line":"    # Transform a bare file path to a file:// URL."},{"line_number":32,"context_line":"    if template_file:  # nosec"},{"line_number":33,"context_line":"        template_url \u003d utils.normalise_file_path_to_url(template_file)"},{"line_number":34,"context_line":"        if parse.urlparse(template_file).scheme:"},{"line_number":35,"context_line":"            path \u003d parse.urlparse(template_file).path"},{"line_number":36,"context_line":"            prefix \u003d parse.urlparse(template_file).scheme"},{"line_number":37,"context_line":"        else:"},{"line_number":38,"context_line":"            path \u003d os.path.abspath(template_file)"},{"line_number":39,"context_line":"            prefix \u003d \u0027file\u0027"},{"line_number":40,"context_line":"        tpl \u003d request.urlopen(\"%s://%s\" % (prefix, path)).read()"},{"line_number":41,"context_line":"    else:"},{"line_number":42,"context_line":"        raise exceptions.CommandErrorException(_(\u0027Need to specify exactly \u0027"}],"source_content_type":"text/x-python","patch_set":11,"id":"7f287b81_b4198b22","line":39,"range":{"start_line":34,"start_character":0,"end_line":39,"end_character":27},"updated":"2017-08-31 15:57:22.000000000","message":"It seems this is the same implementation as utils.normalise_file_path_to_url ?","commit_id":"c499c604523cbd27681e82e51728ba2f7543ba8e"},{"author":{"_account_id":22076,"name":"Kevin Zhao","email":"kevin.zhao@linaro.org","username":"KevinZhao"},"change_message_id":"b9f383c3ebc6dd496fdec0581ed10046893ed924","unresolved":false,"context_lines":[{"line_number":31,"context_line":"    # Transform a bare file path to a file:// URL."},{"line_number":32,"context_line":"    if template_file:  # nosec"},{"line_number":33,"context_line":"        template_url \u003d utils.normalise_file_path_to_url(template_file)"},{"line_number":34,"context_line":"        if parse.urlparse(template_file).scheme:"},{"line_number":35,"context_line":"            path \u003d parse.urlparse(template_file).path"},{"line_number":36,"context_line":"            prefix \u003d parse.urlparse(template_file).scheme"},{"line_number":37,"context_line":"        else:"},{"line_number":38,"context_line":"            path \u003d os.path.abspath(template_file)"},{"line_number":39,"context_line":"            prefix \u003d \u0027file\u0027"},{"line_number":40,"context_line":"        tpl \u003d request.urlopen(\"%s://%s\" % (prefix, path)).read()"},{"line_number":41,"context_line":"    else:"},{"line_number":42,"context_line":"        raise exceptions.CommandErrorException(_(\u0027Need to specify exactly \u0027"}],"source_content_type":"text/x-python","patch_set":11,"id":"7f287b81_8492cf4a","line":39,"range":{"start_line":34,"start_character":0,"end_line":39,"end_character":27},"in_reply_to":"7f287b81_b4198b22","updated":"2017-09-01 03:35:18.000000000","message":"Done","commit_id":"c499c604523cbd27681e82e51728ba2f7543ba8e"},{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"277b8e64d2bcc66c566645d563896d9c0c1a9ee9","unresolved":false,"context_lines":[{"line_number":37,"context_line":"        else:"},{"line_number":38,"context_line":"            path \u003d os.path.abspath(template_file)"},{"line_number":39,"context_line":"            prefix \u003d \u0027file\u0027"},{"line_number":40,"context_line":"        tpl \u003d request.urlopen(\"%s://%s\" % (prefix, path)).read()"},{"line_number":41,"context_line":"    else:"},{"line_number":42,"context_line":"        raise exceptions.CommandErrorException(_(\u0027Need to specify exactly \u0027"},{"line_number":43,"context_line":"                                                 \u0027one of %(arg1)s, %(arg2)s \u0027"}],"source_content_type":"text/x-python","patch_set":11,"id":"7f287b81_94e9efe3","line":40,"range":{"start_line":40,"start_character":30,"end_line":40,"end_character":56},"updated":"2017-08-31 15:57:22.000000000","message":"It seems this is the same as template_url?","commit_id":"c499c604523cbd27681e82e51728ba2f7543ba8e"},{"author":{"_account_id":22076,"name":"Kevin Zhao","email":"kevin.zhao@linaro.org","username":"KevinZhao"},"change_message_id":"b9f383c3ebc6dd496fdec0581ed10046893ed924","unresolved":false,"context_lines":[{"line_number":37,"context_line":"        else:"},{"line_number":38,"context_line":"            path \u003d os.path.abspath(template_file)"},{"line_number":39,"context_line":"            prefix \u003d \u0027file\u0027"},{"line_number":40,"context_line":"        tpl \u003d request.urlopen(\"%s://%s\" % (prefix, path)).read()"},{"line_number":41,"context_line":"    else:"},{"line_number":42,"context_line":"        raise exceptions.CommandErrorException(_(\u0027Need to specify exactly \u0027"},{"line_number":43,"context_line":"                                                 \u0027one of %(arg1)s, %(arg2)s \u0027"}],"source_content_type":"text/x-python","patch_set":11,"id":"7f287b81_6497e33c","line":40,"range":{"start_line":40,"start_character":30,"end_line":40,"end_character":56},"in_reply_to":"7f287b81_94e9efe3","updated":"2017-09-01 03:35:18.000000000","message":"Done","commit_id":"c499c604523cbd27681e82e51728ba2f7543ba8e"},{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"277b8e64d2bcc66c566645d563896d9c0c1a9ee9","unresolved":false,"context_lines":[{"line_number":64,"context_line":"    if files is None:"},{"line_number":65,"context_line":"        files \u003d {}"},{"line_number":66,"context_line":"    resolve_template_get_files(template, files, tmpl_base_url)"},{"line_number":67,"context_line":"    return files, template"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"def resolve_template_get_files(template, files, template_base_url):"}],"source_content_type":"text/x-python","patch_set":11,"id":"7f287b81_54c387ed","line":67,"range":{"start_line":67,"start_character":11,"end_line":67,"end_character":16},"updated":"2017-08-31 15:57:22.000000000","message":"It seems to me that capsule doesn\u0027t have additional \u0027files\u0027.","commit_id":"c499c604523cbd27681e82e51728ba2f7543ba8e"},{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"277b8e64d2bcc66c566645d563896d9c0c1a9ee9","unresolved":false,"context_lines":[{"line_number":67,"context_line":"    return files, template"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"def resolve_template_get_files(template, files, template_base_url):"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    def ignore_if(key, value):"},{"line_number":73,"context_line":"        if key !\u003d \u0027get_file\u0027 and key !\u003d \u0027type\u0027:"}],"source_content_type":"text/x-python","patch_set":11,"id":"7f287b81_f405d346","line":70,"range":{"start_line":70,"start_character":4,"end_line":70,"end_character":30},"updated":"2017-08-31 15:57:22.000000000","message":"It seems this is for the \u0027get_file\u0027 function in Heat template? I believe capsule doesn\u0027t have this function? If you confirm, these functions are not needed.","commit_id":"c499c604523cbd27681e82e51728ba2f7543ba8e"},{"author":{"_account_id":22076,"name":"Kevin Zhao","email":"kevin.zhao@linaro.org","username":"KevinZhao"},"change_message_id":"b9f383c3ebc6dd496fdec0581ed10046893ed924","unresolved":false,"context_lines":[{"line_number":67,"context_line":"    return files, template"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"def resolve_template_get_files(template, files, template_base_url):"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    def ignore_if(key, value):"},{"line_number":73,"context_line":"        if key !\u003d \u0027get_file\u0027 and key !\u003d \u0027type\u0027:"}],"source_content_type":"text/x-python","patch_set":11,"id":"7f287b81_648123c4","line":70,"range":{"start_line":70,"start_character":4,"end_line":70,"end_character":30},"in_reply_to":"7f287b81_f405d346","updated":"2017-09-01 03:35:18.000000000","message":"Done","commit_id":"c499c604523cbd27681e82e51728ba2f7543ba8e"}],"zunclient/experimental/capsules_shell.py":[{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"277b8e64d2bcc66c566645d563896d9c0c1a9ee9","unresolved":false,"context_lines":[{"line_number":22,"context_line":"    utils.print_dict(capsule._info)"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"@utils.arg(\u0027-f\u0027, \u0027--template-file\u0027, metavar\u003d\u0027\u003cfile\u003e\u0027,"},{"line_number":26,"context_line":"           help\u003d_(\u0027Path to the template.\u0027))"},{"line_number":27,"context_line":"def do_capsule_create(cs, args):"},{"line_number":28,"context_line":"    \"\"\"Create a capsule."}],"source_content_type":"text/x-python","patch_set":11,"id":"7f287b81_2ecae7a0","line":25,"range":{"start_line":25,"start_character":20,"end_line":25,"end_character":28},"updated":"2017-08-31 15:57:22.000000000","message":"I think it is better to make this argument as required\u003dTrue, because it doesn\u0027t make sense to create without a template file.","commit_id":"c499c604523cbd27681e82e51728ba2f7543ba8e"},{"author":{"_account_id":22076,"name":"Kevin Zhao","email":"kevin.zhao@linaro.org","username":"KevinZhao"},"change_message_id":"b9f383c3ebc6dd496fdec0581ed10046893ed924","unresolved":false,"context_lines":[{"line_number":22,"context_line":"    utils.print_dict(capsule._info)"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"@utils.arg(\u0027-f\u0027, \u0027--template-file\u0027, metavar\u003d\u0027\u003cfile\u003e\u0027,"},{"line_number":26,"context_line":"           help\u003d_(\u0027Path to the template.\u0027))"},{"line_number":27,"context_line":"def do_capsule_create(cs, args):"},{"line_number":28,"context_line":"    \"\"\"Create a capsule."}],"source_content_type":"text/x-python","patch_set":11,"id":"7f287b81_04d6dfc4","line":25,"range":{"start_line":25,"start_character":20,"end_line":25,"end_character":28},"in_reply_to":"7f287b81_2ecae7a0","updated":"2017-09-01 03:35:18.000000000","message":"Done","commit_id":"c499c604523cbd27681e82e51728ba2f7543ba8e"}],"zunclient/experimental/client.py":[{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"29fc8dd5858dad937bd8289ac4eeb269518394e9","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    def __init__(self, username\u003dNone, api_key\u003dNone, project_id\u003dNone,"},{"line_number":28,"context_line":"                 project_name\u003dNone, auth_url\u003dNone, zun_url\u003dNone,"},{"line_number":29,"context_line":"                 endpoint_type\u003dNone, endpoint_override\u003dNone,"},{"line_number":30,"context_line":"                 service_type\u003d\u0027container\u0027,"},{"line_number":31,"context_line":"                 region_name\u003dNone, input_auth_token\u003dNone,"},{"line_number":32,"context_line":"                 session\u003dNone, password\u003dNone, auth_type\u003d\u0027password\u0027,"},{"line_number":33,"context_line":"                 interface\u003d\u0027public\u0027, service_name\u003dNone, insecure\u003dFalse,"}],"source_content_type":"text/x-python","patch_set":7,"id":"9f436f4f_35558651","line":30,"range":{"start_line":30,"start_character":31,"end_line":30,"end_character":40},"updated":"2017-08-08 16:36:33.000000000","message":"container-experimental ?","commit_id":"6679514c96aa7ed13f5b732ec43b5bcedea35773"},{"author":{"_account_id":22076,"name":"Kevin Zhao","email":"kevin.zhao@linaro.org","username":"KevinZhao"},"change_message_id":"653cbf0c7fb8176b16714853b401563f6d1193c2","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    def __init__(self, username\u003dNone, api_key\u003dNone, project_id\u003dNone,"},{"line_number":28,"context_line":"                 project_name\u003dNone, auth_url\u003dNone, zun_url\u003dNone,"},{"line_number":29,"context_line":"                 endpoint_type\u003dNone, endpoint_override\u003dNone,"},{"line_number":30,"context_line":"                 service_type\u003d\u0027container\u0027,"},{"line_number":31,"context_line":"                 region_name\u003dNone, input_auth_token\u003dNone,"},{"line_number":32,"context_line":"                 session\u003dNone, password\u003dNone, auth_type\u003d\u0027password\u0027,"},{"line_number":33,"context_line":"                 interface\u003d\u0027public\u0027, service_name\u003dNone, insecure\u003dFalse,"}],"source_content_type":"text/x-python","patch_set":7,"id":"9f436f4f_1a50345d","line":30,"range":{"start_line":30,"start_character":31,"end_line":30,"end_character":40},"in_reply_to":"9f436f4f_35558651","updated":"2017-09-23 00:18:59.000000000","message":"Done","commit_id":"6679514c96aa7ed13f5b732ec43b5bcedea35773"}],"zunclient/shell.py":[{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"29fc8dd5858dad937bd8289ac4eeb269518394e9","unresolved":false,"context_lines":[{"line_number":621,"context_line":"                \u00271\u0027: client_v1,"},{"line_number":622,"context_line":"                \u0027experimental\u0027: client_experimental,"},{"line_number":623,"context_line":"            }"},{"line_number":624,"context_line":"            if \"capsule\" in args.func.__name__:"},{"line_number":625,"context_line":"                client \u003d client_repo.get(\u0027experimental\u0027, client_v1)"},{"line_number":626,"context_line":"            else:"},{"line_number":627,"context_line":"                client \u003d client_repo.get(str(api_version.ver_major), client_v1)"}],"source_content_type":"text/x-python","patch_set":7,"id":"9f436f4f_9b934150","line":624,"range":{"start_line":624,"start_character":16,"end_line":624,"end_character":23},"updated":"2017-08-08 16:36:33.000000000","message":"This looks like a hack. It would be better to have more elegant approach. For example:\n\n  $ zun --experimental-api capsule-list\n\nThen, here can check if --experimental-api is set.","commit_id":"6679514c96aa7ed13f5b732ec43b5bcedea35773"},{"author":{"_account_id":22076,"name":"Kevin Zhao","email":"kevin.zhao@linaro.org","username":"KevinZhao"},"change_message_id":"653cbf0c7fb8176b16714853b401563f6d1193c2","unresolved":false,"context_lines":[{"line_number":621,"context_line":"                \u00271\u0027: client_v1,"},{"line_number":622,"context_line":"                \u0027experimental\u0027: client_experimental,"},{"line_number":623,"context_line":"            }"},{"line_number":624,"context_line":"            if \"capsule\" in args.func.__name__:"},{"line_number":625,"context_line":"                client \u003d client_repo.get(\u0027experimental\u0027, client_v1)"},{"line_number":626,"context_line":"            else:"},{"line_number":627,"context_line":"                client \u003d client_repo.get(str(api_version.ver_major), client_v1)"}],"source_content_type":"text/x-python","patch_set":7,"id":"9f436f4f_6072d713","line":624,"range":{"start_line":624,"start_character":16,"end_line":624,"end_character":23},"in_reply_to":"9f436f4f_9b934150","updated":"2017-09-23 00:18:59.000000000","message":"Done","commit_id":"6679514c96aa7ed13f5b732ec43b5bcedea35773"},{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"29fc8dd5858dad937bd8289ac4eeb269518394e9","unresolved":false,"context_lines":[{"line_number":622,"context_line":"                \u0027experimental\u0027: client_experimental,"},{"line_number":623,"context_line":"            }"},{"line_number":624,"context_line":"            if \"capsule\" in args.func.__name__:"},{"line_number":625,"context_line":"                client \u003d client_repo.get(\u0027experimental\u0027, client_v1)"},{"line_number":626,"context_line":"            else:"},{"line_number":627,"context_line":"                client \u003d client_repo.get(str(api_version.ver_major), client_v1)"},{"line_number":628,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"9f436f4f_d54bdaad","line":625,"range":{"start_line":625,"start_character":57,"end_line":625,"end_character":66},"updated":"2017-08-08 16:36:33.000000000","message":"client_experimental?","commit_id":"6679514c96aa7ed13f5b732ec43b5bcedea35773"},{"author":{"_account_id":22076,"name":"Kevin Zhao","email":"kevin.zhao@linaro.org","username":"KevinZhao"},"change_message_id":"653cbf0c7fb8176b16714853b401563f6d1193c2","unresolved":false,"context_lines":[{"line_number":622,"context_line":"                \u0027experimental\u0027: client_experimental,"},{"line_number":623,"context_line":"            }"},{"line_number":624,"context_line":"            if \"capsule\" in args.func.__name__:"},{"line_number":625,"context_line":"                client \u003d client_repo.get(\u0027experimental\u0027, client_v1)"},{"line_number":626,"context_line":"            else:"},{"line_number":627,"context_line":"                client \u003d client_repo.get(str(api_version.ver_major), client_v1)"},{"line_number":628,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"9f436f4f_8077fb02","line":625,"range":{"start_line":625,"start_character":57,"end_line":625,"end_character":66},"in_reply_to":"9f436f4f_d54bdaad","updated":"2017-09-23 00:18:59.000000000","message":"Done","commit_id":"6679514c96aa7ed13f5b732ec43b5bcedea35773"},{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"29fc8dd5858dad937bd8289ac4eeb269518394e9","unresolved":false,"context_lines":[{"line_number":642,"context_line":"                                project_domain_id\u003dos_project_domain_id,"},{"line_number":643,"context_line":"                                project_domain_name\u003dos_project_domain_name,"},{"line_number":644,"context_line":"                                auth_url\u003dos_auth_url,"},{"line_number":645,"context_line":"                                service_type\u003dservice_type,"},{"line_number":646,"context_line":"                                region_name\u003dargs.os_region_name,"},{"line_number":647,"context_line":"                                zun_url\u003dbypass_url,"},{"line_number":648,"context_line":"                                endpoint_type\u003dendpoint_type,"}],"source_content_type":"text/x-python","patch_set":7,"id":"9f436f4f_bbb725d9","line":645,"range":{"start_line":645,"start_character":45,"end_line":645,"end_character":57},"updated":"2017-08-08 16:36:33.000000000","message":"The service_type is \"container\" by default. Need to set it as \"container-experimental\" in somewhere above.","commit_id":"6679514c96aa7ed13f5b732ec43b5bcedea35773"}]}
