)]}'
{"rally/osclients.py":[{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"81cb8e6dc9f6fd65fc5a6c7f9d9dc6778459e065","unresolved":false,"context_lines":[{"line_number":693,"context_line":""},{"line_number":694,"context_line":""},{"line_number":695,"context_line":"@plugin.base()"},{"line_number":696,"context_line":"class Clients(plugin.Plugin):"},{"line_number":697,"context_line":""},{"line_number":698,"context_line":"    def __init__(self, env, system_config, **kwargs):"},{"line_number":699,"context_line":"        self.credential \u003d env"}],"source_content_type":"text/x-python","patch_set":13,"id":"da6895a0_1abbdec5","line":696,"range":{"start_line":696,"start_character":6,"end_line":696,"end_character":13},"updated":"2016-10-21 12:19:10.000000000","message":"It should be named \"Client\" without \"s\", since not all of systems have more than one client","commit_id":"3e192c2821dcdf6d27920842aeac6af9e4e4bc3e"},{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"e91bbe63c1b790e85ae161fa5ef9674e8b86e670","unresolved":false,"context_lines":[{"line_number":693,"context_line":""},{"line_number":694,"context_line":""},{"line_number":695,"context_line":"@plugin.base()"},{"line_number":696,"context_line":"class Clients(plugin.Plugin):"},{"line_number":697,"context_line":""},{"line_number":698,"context_line":"    def __init__(self, env, system_config, **kwargs):"},{"line_number":699,"context_line":"        self.credential \u003d env"}],"source_content_type":"text/x-python","patch_set":13,"id":"da6895a0_ca73614c","line":696,"updated":"2016-10-21 06:04:48.000000000","message":"Why was not this class removed?","commit_id":"3e192c2821dcdf6d27920842aeac6af9e4e4bc3e"},{"author":{"_account_id":23094,"name":"Staroverov Anton","email":"avstaroverov@gmail.com","username":"astaroverov"},"change_message_id":"1925ade0a274082823606827d4eaef583b41872f","unresolved":false,"context_lines":[{"line_number":693,"context_line":""},{"line_number":694,"context_line":""},{"line_number":695,"context_line":"@plugin.base()"},{"line_number":696,"context_line":"class Clients(plugin.Plugin):"},{"line_number":697,"context_line":""},{"line_number":698,"context_line":"    def __init__(self, env, system_config, **kwargs):"},{"line_number":699,"context_line":"        self.credential \u003d env"}],"source_content_type":"text/x-python","patch_set":13,"id":"da6895a0_8af93283","line":696,"range":{"start_line":696,"start_character":6,"end_line":696,"end_character":13},"in_reply_to":"da6895a0_1abbdec5","updated":"2016-10-24 11:59:44.000000000","message":"Done","commit_id":"3e192c2821dcdf6d27920842aeac6af9e4e4bc3e"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"81cb8e6dc9f6fd65fc5a6c7f9d9dc6778459e065","unresolved":false,"context_lines":[{"line_number":693,"context_line":""},{"line_number":694,"context_line":""},{"line_number":695,"context_line":"@plugin.base()"},{"line_number":696,"context_line":"class Clients(plugin.Plugin):"},{"line_number":697,"context_line":""},{"line_number":698,"context_line":"    def __init__(self, env, system_config, **kwargs):"},{"line_number":699,"context_line":"        self.credential \u003d env"}],"source_content_type":"text/x-python","patch_set":13,"id":"da6895a0_3a99826f","line":696,"in_reply_to":"da6895a0_ca73614c","updated":"2016-10-21 12:19:10.000000000","message":"it is a base class for different clients. In future we will have:\n\n   class Kubernetes(Client): pass\n   class OpenStackClients(Client): pass\n   class Docker(Client): pass\n   class WhateverYouWantClient(Client): pass\n\nPluggable main classes of clients will allow to remove all hardcode to particular classes.","commit_id":"3e192c2821dcdf6d27920842aeac6af9e4e4bc3e"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"81cb8e6dc9f6fd65fc5a6c7f9d9dc6778459e065","unresolved":false,"context_lines":[{"line_number":702,"context_line":"        self.cache \u003d {}"},{"line_number":703,"context_line":""},{"line_number":704,"context_line":""},{"line_number":705,"context_line":"class OpenStackClients(Clients):"},{"line_number":706,"context_line":"    \"\"\"This class simplify and unify work with OpenStack python clients.\"\"\""},{"line_number":707,"context_line":""},{"line_number":708,"context_line":"    def __init__(self, credential, api_info\u003dNone, **kwargs):"}],"source_content_type":"text/x-python","patch_set":13,"id":"da6895a0_fad2aa33","line":705,"range":{"start_line":705,"start_character":0,"end_line":705,"end_character":32},"updated":"2016-10-21 12:19:10.000000000","message":"it is not a plugin, until it is not wrapped with @plugin.configure(name\u003d\"\", namespace\u003d\"\")","commit_id":"3e192c2821dcdf6d27920842aeac6af9e4e4bc3e"},{"author":{"_account_id":12395,"name":"Roman Vasylets","email":"pomeo92@gmail.com","username":"rvasilets"},"change_message_id":"726c9f80b45fa016fbfedc29023e8bc972e6c95d","unresolved":false,"context_lines":[{"line_number":40,"context_line":"@plugin.base()"},{"line_number":41,"context_line":"class Client(plugin.Plugin):"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    def __init__(self, env, system_config, **kwargs):"},{"line_number":44,"context_line":"        self.credential \u003d env"},{"line_number":45,"context_line":"        self.api_info \u003d system_config or {}"},{"line_number":46,"context_line":"        self._kwargs \u003d kwargs"}],"source_content_type":"text/x-python","patch_set":17,"id":"9a629dbe_23d34cd6","line":43,"updated":"2016-11-11 23:49:14.000000000","message":"def __init__(self, credential, api_info\u003dNone, **kwargs):","commit_id":"5f5c3b4d5392d32274d31b1d20c978d9264934c5"},{"author":{"_account_id":12395,"name":"Roman Vasylets","email":"pomeo92@gmail.com","username":"rvasilets"},"change_message_id":"726c9f80b45fa016fbfedc29023e8bc972e6c95d","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        self.cache \u003d {}"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"@plugin.configure(name\u003d\"open_stack_clients\", namespace\u003d_NAMESPACE)"},{"line_number":51,"context_line":"class OpenStackClients(Client):"},{"line_number":52,"context_line":"    \"\"\"This class simplify and unify work with OpenStack python clients.\"\"\""},{"line_number":53,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"9a629dbe_43de80dd","line":50,"updated":"2016-11-11 23:49:14.000000000","message":"name\u003d\"openstack_clients\"","commit_id":"5f5c3b4d5392d32274d31b1d20c978d9264934c5"}],"rally/plugins/openstack/osclients.py":[{"author":{"_account_id":12395,"name":"Roman Vasylets","email":"pomeo92@gmail.com","username":"rvasilets"},"change_message_id":"726c9f80b45fa016fbfedc29023e8bc972e6c95d","unresolved":false,"context_lines":[{"line_number":37,"context_line":""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"def configure(name, default_version\u003dNone, default_service_type\u003dNone,"},{"line_number":40,"context_line":"              supported_versions\u003dNone):"},{"line_number":41,"context_line":"    \"\"\"OpenStack client class wrapper."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    Each client class has to be wrapped by configure() wrapper. It"}],"source_content_type":"text/x-python","patch_set":17,"id":"9a629dbe_71542ac9","line":40,"updated":"2016-11-11 23:49:14.000000000","message":"This decorator should be related to the base stuff. It is not only openstack specific","commit_id":"5f5c3b4d5392d32274d31b1d20c978d9264934c5"},{"author":{"_account_id":12395,"name":"Roman Vasylets","email":"pomeo92@gmail.com","username":"rvasilets"},"change_message_id":"726c9f80b45fa016fbfedc29023e8bc972e6c95d","unresolved":false,"context_lines":[{"line_number":65,"context_line":""},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"@plugin.base()"},{"line_number":68,"context_line":"class OSClient(plugin.Plugin):"},{"line_number":69,"context_line":"    def __init__(self, credential, api_info, cache_obj):"},{"line_number":70,"context_line":"        self.credential \u003d credential"},{"line_number":71,"context_line":"        self.api_info \u003d api_info"}],"source_content_type":"text/x-python","patch_set":17,"id":"9a629dbe_3142b2ae","line":68,"updated":"2016-11-11 23:49:14.000000000","message":"Guess it should be inherited from the base OpenStackClients class","commit_id":"5f5c3b4d5392d32274d31b1d20c978d9264934c5"}]}
