)]}'
{"Engine/swift/storlet_middleware/storlet_handler.py":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"9efcae955641403c32555018125989bec0339c1c","unresolved":false,"context_lines":[{"line_number":689,"context_line":"    for key, val in additional_items:"},{"line_number":690,"context_line":"        storlet_conf[key] \u003d val"},{"line_number":691,"context_line":""},{"line_number":692,"context_line":"    swift_info \u003d {\u0027storlet_container\u0027: storlet_conf[\u0027storlet_container\u0027],"},{"line_number":693,"context_line":"                  \u0027storlet_dependency\u0027: storlet_conf[\u0027storlet_dependency\u0027],"},{"line_number":694,"context_line":"                  \u0027storlet_gateway_class\u0027: cl}"},{"line_number":695,"context_line":""},{"line_number":696,"context_line":"    storlet_conf[\"gateway_module\"] \u003d the_class"},{"line_number":697,"context_line":"    register_swift_info(\u0027storlet_handler\u0027, False, **swift_info)"}],"source_content_type":"text/x-python","patch_set":3,"id":"bab6814e_cc3f0b24","line":694,"range":{"start_line":692,"start_character":0,"end_line":694,"end_character":46},"updated":"2016-05-18 13:32:01.000000000","message":"As the future work, we should expose the following information.\n\n* languages are supported to create storlet applications\n* supported storlet api version","commit_id":"335ef8a81a79baa13153a0d6e218f5c8ea5ab052"}],"common/cluster_config_parser.py":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"9efcae955641403c32555018125989bec0339c1c","unresolved":false,"context_lines":[{"line_number":41,"context_line":"        return self.conf[\u0027all\u0027][\u0027keystone_public_url\u0027]"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    @property"},{"line_number":44,"context_line":"    def account_name(self):"},{"line_number":45,"context_line":"        return self.conf[\u0027all\u0027][\u0027storlets_default_tenant_name\u0027]"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    @property"}],"source_content_type":"text/x-python","patch_set":3,"id":"bab6814e_2c6337b3","line":44,"range":{"start_line":44,"start_character":8,"end_line":44,"end_character":15},"updated":"2016-05-18 13:32:01.000000000","message":"s/account/tenant/","commit_id":"335ef8a81a79baa13153a0d6e218f5c8ea5ab052"}],"common/utils.py":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"9efcae955641403c32555018125989bec0339c1c","unresolved":false,"context_lines":[{"line_number":72,"context_line":""},{"line_number":73,"context_line":"def storlet_get_auth(conf):"},{"line_number":74,"context_line":"    auth_url \u003d conf.auth_uri"},{"line_number":75,"context_line":"    account \u003d conf.account_name"},{"line_number":76,"context_line":"    user \u003d conf.user"},{"line_number":77,"context_line":"    passwd \u003d conf.password"},{"line_number":78,"context_line":"    os_options \u003d {\u0027tenant_name\u0027: account}"}],"source_content_type":"text/x-python","patch_set":3,"id":"bab6814e_0c1bd31c","line":75,"range":{"start_line":75,"start_character":4,"end_line":75,"end_character":11},"updated":"2016-05-18 13:32:01.000000000","message":"s/account/tenant/","commit_id":"335ef8a81a79baa13153a0d6e218f5c8ea5ab052"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"9efcae955641403c32555018125989bec0339c1c","unresolved":false,"context_lines":[{"line_number":81,"context_line":"                            account + \u0027:\u0027 + user,"},{"line_number":82,"context_line":"                            passwd,"},{"line_number":83,"context_line":"                            os_options\u003dos_options,"},{"line_number":84,"context_line":"                            auth_version\u003dconf.auth_version)"},{"line_number":85,"context_line":"    return url, token"}],"source_content_type":"text/x-python","patch_set":3,"id":"bab6814e_6cb09ff5","line":84,"range":{"start_line":84,"start_character":41,"end_line":84,"end_character":58},"updated":"2016-05-18 13:32:01.000000000","message":"(nit) why we don\u0027t use local variable only for auth_version?","commit_id":"335ef8a81a79baa13153a0d6e218f5c8ea5ab052"}],"install/storlets/roles/ansible_storlet_management/templates/add_new_tenant_py_file":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"9efcae955641403c32555018125989bec0339c1c","unresolved":false,"context_lines":[{"line_number":27,"context_line":"                    \u0027-e\u0027, \u0027tenant_name\u003d\u0027 + tenant_name,"},{"line_number":28,"context_line":"                    \u0027-e\u0027, \u0027user_name\u003d\u0027 + user_name,"},{"line_number":29,"context_line":"                    \u0027-e\u0027, \u0027user_password\u003d\u0027 + user_password,"},{"line_number":30,"context_line":"                    \u0027-e\u0027, \u0027storlets_image_name_suffix\u003d\u0027 + "},{"line_number":31,"context_line":"                        \u0027{{ storlets_image_name_suffix }}\u0027],"},{"line_number":32,"context_line":"                    env\u003d{\"ANSIBLE_HOST_KEY_CHECKING\" : \"False\"},"},{"line_number":33,"context_line":"                    stdout\u003dsubprocess.PIPE,"}],"source_content_type":"application/octet-stream","patch_set":3,"id":"bab6814e_2e5fae73","line":30,"range":{"start_line":30,"start_character":57,"end_line":30,"end_character":58},"updated":"2016-05-18 13:32:01.000000000","message":"Can you remove this unnecessary space?","commit_id":"335ef8a81a79baa13153a0d6e218f5c8ea5ab052"}],"tests/functional/test_capabilities.py":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"9efcae955641403c32555018125989bec0339c1c","unresolved":false,"context_lines":[{"line_number":18,"context_line":"from swiftclient import client as c"},{"line_number":19,"context_line":"from common.cluster_config_parser import ClusterConfig"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"CONFIG_FILE \u003d \u0027../../cluster_config.json\u0027"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"class TestCapabilities(unittest.TestCase):"}],"source_content_type":"text/x-python","patch_set":3,"id":"bab6814e_2e720ee6","line":21,"range":{"start_line":21,"start_character":0,"end_line":21,"end_character":41},"updated":"2016-05-18 13:32:01.000000000","message":"This config path is also defined in __init__.py.\nI think we had better create a new base class to define this config path, and use that class for all test cases which require cluster_config.\n(This can be done as the future work, just note)","commit_id":"335ef8a81a79baa13153a0d6e218f5c8ea5ab052"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"9efcae955641403c32555018125989bec0339c1c","unresolved":false,"context_lines":[{"line_number":26,"context_line":"        self.conf \u003d ClusterConfig(CONFIG_FILE)"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    def test_get_capabilities(self):"},{"line_number":29,"context_line":"        conn \u003d c.Connection(self.conf.auth_uri,"},{"line_number":30,"context_line":"                            self.conf.user,"},{"line_number":31,"context_line":"                            self.conf.password,"},{"line_number":32,"context_line":"                            insecure\u003dTrue,"}],"source_content_type":"text/x-python","patch_set":3,"id":"bab6814e_2c2b3784","line":29,"range":{"start_line":29,"start_character":15,"end_line":29,"end_character":16},"updated":"2016-05-18 13:32:01.000000000","message":"(nit) I think c is too short to find what it is. Can we change it to something a little bit longer, like client?","commit_id":"335ef8a81a79baa13153a0d6e218f5c8ea5ab052"}],"tests/functional/test_deploy_storlet.py":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"9efcae955641403c32555018125989bec0339c1c","unresolved":false,"context_lines":[{"line_number":35,"context_line":"                                                CONF_PATH))"},{"line_number":36,"context_line":"        try:"},{"line_number":37,"context_line":"            child.expect(\u0027Enter absolute path to storlet jar file.*:\u0027,"},{"line_number":38,"context_line":"                         timeout\u003d2)"},{"line_number":39,"context_line":"            child.sendline(EXECDEP_STORLET_PATH)"},{"line_number":40,"context_line":"            child.expect(\u0027com.ibm.storlet.execdep.ExecDepStorlet\u0027,"},{"line_number":41,"context_line":"                         timeout\u003d2)"}],"source_content_type":"text/x-python","patch_set":3,"id":"bab6814e_ce1a6217","line":38,"range":{"start_line":38,"start_character":25,"end_line":38,"end_character":34},"updated":"2016-05-18 13:32:01.000000000","message":"If we only need one common value for timeout, how about defining it at one place?","commit_id":"335ef8a81a79baa13153a0d6e218f5c8ea5ab052"}]}
