)]}'
{"nova/virt/hyperv/constants.py":[{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"claudiu.belu@canonical.com","username":"claudiub"},"change_message_id":"5ee622a6e9c1ca3f7c185279869ab023c0cf2cb6","unresolved":false,"context_lines":[{"line_number":94,"context_line":"HOST_POWER_ACTION_REBOOT \u003d \"reboot\""},{"line_number":95,"context_line":"HOST_POWER_ACTION_STARTUP \u003d \"startup\""},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"IMAGE_PROP_VM_GEN \u003d \"hw_machine_type\""},{"line_number":98,"context_line":"IMAGE_PROP_VM_GEN_1 \u003d \"hyperv-gen1\""},{"line_number":99,"context_line":"IMAGE_PROP_VM_GEN_2 \u003d \"hyperv-gen2\""},{"line_number":100,"context_line":""}],"source_content_type":"text/x-python","patch_set":23,"id":"fa1b9901_dcab3d1d","side":"PARENT","line":97,"updated":"2015-08-24 14:35:00.000000000","message":"why is it removed?","commit_id":"82ffc7288fe9e2cdeca8177a13de258c0d80a182"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"claudiu.belu@canonical.com","username":"claudiub"},"change_message_id":"af307456da523708ea38b4877f132291b2e3cfc8","unresolved":false,"context_lines":[{"line_number":94,"context_line":"HOST_POWER_ACTION_REBOOT \u003d \"reboot\""},{"line_number":95,"context_line":"HOST_POWER_ACTION_STARTUP \u003d \"startup\""},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"IMAGE_PROP_VM_GEN \u003d \"hw_machine_type\""},{"line_number":98,"context_line":"IMAGE_PROP_VM_GEN_1 \u003d \"hyperv-gen1\""},{"line_number":99,"context_line":"IMAGE_PROP_VM_GEN_2 \u003d \"hyperv-gen2\""},{"line_number":100,"context_line":""}],"source_content_type":"text/x-python","patch_set":23,"id":"fa1b9901_84c55c3e","side":"PARENT","line":97,"in_reply_to":"fa1b9901_3f602835","updated":"2015-08-24 18:12:42.000000000","message":"I see, thanks for the info.","commit_id":"82ffc7288fe9e2cdeca8177a13de258c0d80a182"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"3b9b1154ac980b0cb0a7c470c1c0693b29993699","unresolved":false,"context_lines":[{"line_number":94,"context_line":"HOST_POWER_ACTION_REBOOT \u003d \"reboot\""},{"line_number":95,"context_line":"HOST_POWER_ACTION_STARTUP \u003d \"startup\""},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"IMAGE_PROP_VM_GEN \u003d \"hw_machine_type\""},{"line_number":98,"context_line":"IMAGE_PROP_VM_GEN_1 \u003d \"hyperv-gen1\""},{"line_number":99,"context_line":"IMAGE_PROP_VM_GEN_2 \u003d \"hyperv-gen2\""},{"line_number":100,"context_line":""}],"source_content_type":"text/x-python","patch_set":23,"id":"fa1b9901_3f602835","side":"PARENT","line":97,"in_reply_to":"fa1b9901_dcab3d1d","updated":"2015-08-24 15:09:14.000000000","message":"The ImageMeta object formally validates attribute names now, so defining constants for them is pointless.","commit_id":"82ffc7288fe9e2cdeca8177a13de258c0d80a182"}],"nova/virt/hyperv/driver.py":[{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"claudiu.belu@canonical.com","username":"claudiub"},"change_message_id":"5ee622a6e9c1ca3f7c185279869ab023c0cf2cb6","unresolved":false,"context_lines":[{"line_number":81,"context_line":""},{"line_number":82,"context_line":"    def spawn(self, context, instance, image_meta, injected_files,"},{"line_number":83,"context_line":"              admin_password, network_info\u003dNone, block_device_info\u003dNone):"},{"line_number":84,"context_line":"        image_meta \u003d objects.ImageMeta.from_dict(image_meta)"},{"line_number":85,"context_line":"        self._vmops.spawn(context, instance, image_meta, injected_files,"},{"line_number":86,"context_line":"                          admin_password, network_info, block_device_info)"},{"line_number":87,"context_line":""}],"source_content_type":"text/x-python","patch_set":23,"id":"fa1b9901_b7dd4272","line":84,"updated":"2015-08-24 14:35:00.000000000","message":"wondering why isn\u0027t this done at a higher level - e.g.  compute manager level?","commit_id":"7c161c85bca8b1538947c3fb3cb95f077eefa981"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"claudiu.belu@canonical.com","username":"claudiub"},"change_message_id":"af307456da523708ea38b4877f132291b2e3cfc8","unresolved":false,"context_lines":[{"line_number":81,"context_line":""},{"line_number":82,"context_line":"    def spawn(self, context, instance, image_meta, injected_files,"},{"line_number":83,"context_line":"              admin_password, network_info\u003dNone, block_device_info\u003dNone):"},{"line_number":84,"context_line":"        image_meta \u003d objects.ImageMeta.from_dict(image_meta)"},{"line_number":85,"context_line":"        self._vmops.spawn(context, instance, image_meta, injected_files,"},{"line_number":86,"context_line":"                          admin_password, network_info, block_device_info)"},{"line_number":87,"context_line":""}],"source_content_type":"text/x-python","patch_set":23,"id":"fa1b9901_0492ac4b","line":84,"in_reply_to":"fa1b9901_5f7cfcea","updated":"2015-08-24 18:12:42.000000000","message":"cool, makes sense.","commit_id":"7c161c85bca8b1538947c3fb3cb95f077eefa981"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"3b9b1154ac980b0cb0a7c470c1c0693b29993699","unresolved":false,"context_lines":[{"line_number":81,"context_line":""},{"line_number":82,"context_line":"    def spawn(self, context, instance, image_meta, injected_files,"},{"line_number":83,"context_line":"              admin_password, network_info\u003dNone, block_device_info\u003dNone):"},{"line_number":84,"context_line":"        image_meta \u003d objects.ImageMeta.from_dict(image_meta)"},{"line_number":85,"context_line":"        self._vmops.spawn(context, instance, image_meta, injected_files,"},{"line_number":86,"context_line":"                          admin_password, network_info, block_device_info)"},{"line_number":87,"context_line":""}],"source_content_type":"text/x-python","patch_set":23,"id":"fa1b9901_5f7cfcea","line":84,"in_reply_to":"fa1b9901_b7dd4272","updated":"2015-08-24 15:09:14.000000000","message":"Doing it at the compute manager level makes the patches enormous. So we convert each virt driver in separate patches, and then push it into the compute manager as the last patch in this series.","commit_id":"7c161c85bca8b1538947c3fb3cb95f077eefa981"}],"nova/virt/hyperv/vmops.py":[{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"claudiu.belu@canonical.com","username":"claudiub"},"change_message_id":"5ee622a6e9c1ca3f7c185279869ab023c0cf2cb6","unresolved":false,"context_lines":[{"line_number":348,"context_line":"    def get_image_vm_generation(self, root_vhd_path, image_meta):"},{"line_number":349,"context_line":"        default_vm_gen \u003d self._hostutils.get_default_vm_generation()"},{"line_number":350,"context_line":"        image_prop_vm \u003d image_meta.properties.get("},{"line_number":351,"context_line":"            \u0027hw_machine_type\u0027, default_vm_gen)"},{"line_number":352,"context_line":"        if image_prop_vm not in self._hostutils.get_supported_vm_types():"},{"line_number":353,"context_line":"            LOG.error(_LE(\u0027Requested VM Generation %s is not supported on \u0027"},{"line_number":354,"context_line":"                         \u0027 this OS.\u0027), image_prop_vm)"}],"source_content_type":"text/x-python","patch_set":23,"id":"fa1b9901_7ce551a6","line":351,"updated":"2015-08-24 14:35:00.000000000","message":"why not constants.IMAGE_PROP_VM_GEN?","commit_id":"7c161c85bca8b1538947c3fb3cb95f077eefa981"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"3b9b1154ac980b0cb0a7c470c1c0693b29993699","unresolved":false,"context_lines":[{"line_number":348,"context_line":"    def get_image_vm_generation(self, root_vhd_path, image_meta):"},{"line_number":349,"context_line":"        default_vm_gen \u003d self._hostutils.get_default_vm_generation()"},{"line_number":350,"context_line":"        image_prop_vm \u003d image_meta.properties.get("},{"line_number":351,"context_line":"            \u0027hw_machine_type\u0027, default_vm_gen)"},{"line_number":352,"context_line":"        if image_prop_vm not in self._hostutils.get_supported_vm_types():"},{"line_number":353,"context_line":"            LOG.error(_LE(\u0027Requested VM Generation %s is not supported on \u0027"},{"line_number":354,"context_line":"                         \u0027 this OS.\u0027), image_prop_vm)"}],"source_content_type":"text/x-python","patch_set":23,"id":"fa1b9901_1fd444bb","line":351,"in_reply_to":"fa1b9901_7ce551a6","updated":"2015-08-24 15:09:14.000000000","message":"It obscures the code hiding what attribute is used.","commit_id":"7c161c85bca8b1538947c3fb3cb95f077eefa981"}]}
