)]}'
{"rally/plugins/openstack/context/vm/custom_image.py":[{"author":{"_account_id":12395,"name":"Roman Vasylets","email":"pomeo92@gmail.com","username":"rvasilets"},"change_message_id":"7e6e85b027b0ea06b9a213598e871e0572bea496","unresolved":false,"context_lines":[{"line_number":147,"context_line":"    def create_one_image(self, user, **kwargs):"},{"line_number":148,"context_line":"        \"\"\"Create one image for the user.\"\"\""},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"        vm_scenario, server, fip \u003d self.boot_server_for_user("},{"line_number":151,"context_line":"            user\u003duser,"},{"line_number":152,"context_line":"            image\u003dself.config[\"image\"],"},{"line_number":153,"context_line":"            flavor\u003dself.config[\"flavor\"],"}],"source_content_type":"text/x-python","patch_set":12,"id":"1a7b0d38_d5f57583","line":150,"range":{"start_line":150,"start_character":8,"end_line":150,"end_character":19},"updated":"2015-12-23 05:53:53.000000000","message":"You forgot to pass here context. Due to boot_runcommand_delete_custom_image function parameters","commit_id":"4bff7ee001bb51a359977798ced259f94be9a8c8"}],"rally/plugins/openstack/context/vm/utils.py":[{"author":{"_account_id":3012,"name":"Dina Belova","email":"dbelova@mirantis.com","username":"dbelova"},"change_message_id":"49444fc02dbc8dc5e5511120d3fefb5ce1a7f4f5","unresolved":false,"context_lines":[{"line_number":35,"context_line":"            kwargs.setdefault(\"security_groups\", [user[\"secgroup\"][\"name\"]])"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"        vm_scenario_cls \u003d kwargs.pop(\"vm_scenario_cls\", vm_utils.VMScenario)"},{"line_number":38,"context_line":"        vm_scenario \u003d vm_scenario_cls(self.context, clients\u003dclients)"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"        server, fip \u003d vm_scenario._boot_server_with_fip("},{"line_number":41,"context_line":"            image\u003dimage_id, flavor\u003dflavor_id, **kwargs)"}],"source_content_type":"text/x-python","patch_set":10,"id":"da85f559_3d91c3f1","line":38,"range":{"start_line":38,"start_character":43,"end_line":38,"end_character":50},"updated":"2015-11-11 10:59:32.000000000","message":"btw, can you please explain where should the context appear in the BootOneServerMixin object?","commit_id":"ccbc0335b4eda088c9f69310bedba9c60f49fc5c"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"b14e6fb1aca718fd59326eab3a9ce0caa48377c6","unresolved":false,"context_lines":[{"line_number":18,"context_line":"from rally.task import types"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"class BootOneServerMixin(object):"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    def _boot_server_for_user(self, user, image, flavor,"},{"line_number":24,"context_line":"                              vm_scenario_cls\u003dNone, **kwargs):"}],"source_content_type":"text/x-python","patch_set":11,"id":"ba8a016a_e0a3b99c","line":21,"updated":"2015-11-24 03:15:32.000000000","message":"IMHO this looks overdesigned: \n\n  - Making mixin that depends on parent class (and expect that parent class has something) is anti pattern and it should be avoided if it is possible \n\n  - Mixin in this case makes this method usable only withing context classes \n\n  -There is no need to depend in this class on Context classes, \"self\" is used only once for getting \"context\" information. \n\n\nIt will be much simpler just to make here method: \n\n  def boo_server_for_user(context, user, image, flavor, vm_scenario_cls, ...)\n\nBy the way why we need to pass vm_scenario_cls? doesn\u0027t seem that this will argument will be used ...","commit_id":"396d3fb25aa04ac474cf2548a8e9f67b3c60da1b"}],"tests/unit/plugins/openstack/context/vm/test_utils.py":[{"author":{"_account_id":11748,"name":"Chris St. Pierre","email":"cstpierr@cisco.com","username":"stpierre"},"change_message_id":"baa676c12ef900eba5f28ab5ed92653465727426","unresolved":false,"context_lines":[{"line_number":23,"context_line":"BASE \u003d \"rally.plugins.openstack.context.vm.utils\""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"class BootOneServerMixinTestCase(test.TestCase):"},{"line_number":27,"context_line":"    @mock.patch(\"%s.vm_utils.VMScenario\" % BASE)"},{"line_number":28,"context_line":"    @mock.patch(\"%s.osclients.Clients\" % BASE)"},{"line_number":29,"context_line":"    @mock.patch(\"%s.types.ImageResourceType.transform\" % BASE,"}],"source_content_type":"text/x-python","patch_set":8,"id":"5a2ca52d_0c58d4f9","line":26,"updated":"2015-10-13 16:36:14.000000000","message":"This class is a perfect use case for ddt.","commit_id":"1c86e061f817702d4cf8f11537d7838a3223e648"},{"author":{"_account_id":3012,"name":"Dina Belova","email":"dbelova@mirantis.com","username":"dbelova"},"change_message_id":"3a3cc974009013a51cb4ee0416852afd6a19ac3d","unresolved":false,"context_lines":[{"line_number":102,"context_line":"            mixin.context, clients\u003dmock_clients.return_value)"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"        vm_scenario_inst._boot_server_with_fip.assert_called_once_with("},{"line_number":105,"context_line":"            image\u003d\"image\", flavor\u003d\"flavor\", name\u003d\"foo_name\","},{"line_number":106,"context_line":"            **call_expected)"}],"source_content_type":"text/x-python","patch_set":10,"id":"da85f559_c7f0e769","line":105,"updated":"2015-11-11 09:44:44.000000000","message":"it looks like name\u003d\u0027foo_name\u0027 is not used in actual call - due to the errors in the y27 job..","commit_id":"ccbc0335b4eda088c9f69310bedba9c60f49fc5c"}]}
