)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6735,"name":"Bob Ball","email":"bob.ball@citrix.com","username":"bob-ball"},"change_message_id":"ee838e23304bc4d6b36374777654e5aa4bec9adf","unresolved":false,"context_lines":[{"line_number":10,"context_line":"single VHD file, we should be able to upload it as-is."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I08ff2a96b827b2ee359390df42af063114b7fff6"},{"line_number":13,"context_line":"Closes-Bug: #1519615"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"9a8ffd7b_d8162158","line":13,"updated":"2015-11-30 14:20:40.000000000","message":"I think this should be a spec-less blueprint, not a bug.\n\nIt is definitely an \"added feature\" but is so simple it doesn\u0027t need design discussions.","commit_id":"422263d0dd23efa6121a58e261256cc460839cde"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"a42199c4c6e69d4267c76238a7ae568a51f4c90b","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Currently only VHD chains in a tarball are supported. If we have a"},{"line_number":10,"context_line":"single VHD file, we should be able to upload it as-is."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Implements: bare-vhd-image"},{"line_number":13,"context_line":"Change-Id: I08ff2a96b827b2ee359390df42af063114b7fff6"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":11,"id":"9a8ffd7b_6c3aa9e9","line":12,"updated":"2015-12-01 10:06:47.000000000","message":"I can\u0027t see the blueprint anywhere:\nhttps://blueprints.launchpad.net/nova/+spec/bare-vhd-image\n\nIt should really be:\n\nImplements blueprint bare-vhd-image","commit_id":"4e047bb6a6eb12dadd5d0ba9c4efb30f6348eb82"}],"nova/virt/xenapi/client/session.py":[{"author":{"_account_id":6735,"name":"Bob Ball","email":"bob.ball@citrix.com","username":"bob-ball"},"change_message_id":"ee838e23304bc4d6b36374777654e5aa4bec9adf","unresolved":false,"context_lines":[{"line_number":82,"context_line":"    # changed in development environments."},{"line_number":83,"context_line":"    # MAJOR VERSION: Incompatible changes with the plugins"},{"line_number":84,"context_line":"    # MINOR VERSION: Compatible changes, new plguins, etc"},{"line_number":85,"context_line":"    PLUGIN_REQUIRED_VERSION \u003d \u00271.3\u0027"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    def __init__(self, url, user, pw):"},{"line_number":88,"context_line":"        version_string \u003d version.version_string_with_package()"}],"source_content_type":"text/x-python","patch_set":9,"id":"9a8ffd7b_a333f261","line":85,"updated":"2015-11-30 14:20:40.000000000","message":"I\u0027m not convinced that, in its current form, the plugin change is backward compatible.\nLooking at utils._handle_serialization (which provides a wrapper around the glance plugin function) it should work if you provide a default value in the glance plugin: http://paste.openstack.org/show/480372/","commit_id":"422263d0dd23efa6121a58e261256cc460839cde"}],"nova/virt/xenapi/vm_utils.py":[{"author":{"_account_id":6735,"name":"Bob Ball","email":"bob.ball@citrix.com","username":"bob-ball"},"change_message_id":"5aa643eff97be50daf55418903ec41582a7514f1","unresolved":false,"context_lines":[{"line_number":1426,"context_line":"    LOG.debug(\"Asking xapi to fetch vhd image %s\", image_id,"},{"line_number":1427,"context_line":"              instance\u003dinstance)"},{"line_number":1428,"context_line":""},{"line_number":1429,"context_line":"    handler \u003d _choose_download_handler(context, instance)"},{"line_number":1430,"context_line":""},{"line_number":1431,"context_line":"    try:"},{"line_number":1432,"context_line":"        vdis \u003d handler.download_image("}],"source_content_type":"text/x-python","patch_set":4,"id":"9a8ffd7b_6d081e92","line":1429,"updated":"2015-11-26 09:00:54.000000000","message":"What happens if a different handler is used?  I think it will fail because the length of arguments don\u0027t match.\nYou\u0027ve only changed the glance handler.","commit_id":"81397fdbde6caf93995c1c070706f8dc6d14fe74"}],"nova/virt/xenapi/vmops.py":[{"author":{"_account_id":6735,"name":"Bob Ball","email":"bob.ball@citrix.com","username":"bob-ball"},"change_message_id":"ee838e23304bc4d6b36374777654e5aa4bec9adf","unresolved":false,"context_lines":[{"line_number":358,"context_line":"            if image_meta.obj_attr_is_set(\"container_format\"):"},{"line_number":359,"context_line":"                container_format \u003d image_meta.container_format"},{"line_number":360,"context_line":"            else:"},{"line_number":361,"context_line":"                container_format \u003d \"ovf\""},{"line_number":362,"context_line":"            create_image_vdis \u003d vm_utils.create_image(context, self._session,"},{"line_number":363,"context_line":"                    instance, name_label, image_meta.id, image_type,"},{"line_number":364,"context_line":"                    container_format)"}],"source_content_type":"text/x-python","patch_set":9,"id":"9a8ffd7b_63af4a2c","line":361,"updated":"2015-11-30 14:20:40.000000000","message":"We should explain why ovf is the default here.  Something like \"Previously, only OVF was supported, so this is the default container format\"","commit_id":"422263d0dd23efa6121a58e261256cc460839cde"}],"plugins/xenserver/xenapi/etc/xapi.d/plugins/glance":[{"author":{"_account_id":6735,"name":"Bob Ball","email":"bob.ball@citrix.com","username":"bob-ball"},"change_message_id":"5aa643eff97be50daf55418903ec41582a7514f1","unresolved":false,"context_lines":[{"line_number":385,"context_line":""},{"line_number":386,"context_line":""},{"line_number":387,"context_line":"def download_vhd(session, image_id, container_format, glance_host,"},{"line_number":388,"context_line":"                      glance_port, glance_use_ssl, uuid_stack, sr_path, extra_headers):"},{"line_number":389,"context_line":"    \"\"\"Download an image from Glance, unbundle it, and then deposit the VHDs"},{"line_number":390,"context_line":"    into the storage repository"},{"line_number":391,"context_line":"    \"\"\""}],"source_content_type":"application/octet-stream","patch_set":4,"id":"9a8ffd7b_0d9ab263","line":388,"updated":"2015-11-26 09:00:54.000000000","message":"I think the new argument should be last - I think that\u0027s the normal convention for adding arguments to calls?","commit_id":"81397fdbde6caf93995c1c070706f8dc6d14fe74"},{"author":{"_account_id":6735,"name":"Bob Ball","email":"bob.ball@citrix.com","username":"bob-ball"},"change_message_id":"ee838e23304bc4d6b36374777654e5aa4bec9adf","unresolved":false,"context_lines":[{"line_number":135,"context_line":"    \"\"\"Download the vhd image from Glance and put it into the staging"},{"line_number":136,"context_line":"    area. Retry if there is any failure."},{"line_number":137,"context_line":"    \"\"\""},{"line_number":138,"context_line":"    if glance_use_ssl:"},{"line_number":139,"context_line":"        scheme \u003d \u0027https\u0027"},{"line_number":140,"context_line":"    else:"},{"line_number":141,"context_line":"        scheme \u003d \u0027http\u0027"}],"source_content_type":"application/octet-stream","patch_set":9,"id":"9a8ffd7b_5ef8d9c4","line":138,"updated":"2015-11-30 14:20:40.000000000","message":"I think this is the wrong place.\nEffectively the difference between the two is that in the case of the tarball, we need to extract as a post-process whereas for the direct download we do not.\n\nI think we shoud try and keep most of the existing logic for download tar?\n\nI think a better approach would be to create a new callback (similar to \"extract_tarball\" which is simply \"copy_to\"; then we can be calculating the MD5 sum along the way as well, and make use of the above _download_tarball_and_verify function (renamed to _download_and_verify and taking a new parameter which is the callback function to use)","commit_id":"422263d0dd23efa6121a58e261256cc460839cde"},{"author":{"_account_id":6735,"name":"Bob Ball","email":"bob.ball@citrix.com","username":"bob-ball"},"change_message_id":"ee838e23304bc4d6b36374777654e5aa4bec9adf","unresolved":false,"context_lines":[{"line_number":385,"context_line":""},{"line_number":386,"context_line":""},{"line_number":387,"context_line":"def download_vhd(session, image_id, glance_host, glance_port, glance_use_ssl,"},{"line_number":388,"context_line":"                      uuid_stack, sr_path, extra_headers, container_format):"},{"line_number":389,"context_line":"    \"\"\"Download an image from Glance, unbundle it, and then deposit the VHDs"},{"line_number":390,"context_line":"    into the storage repository"},{"line_number":391,"context_line":"    \"\"\""}],"source_content_type":"application/octet-stream","patch_set":9,"id":"9a8ffd7b_9e1e415e","line":388,"updated":"2015-11-30 14:20:40.000000000","message":"This should have \"container_format\u003d\u0027ovf\u0027\" so we can maintain plugin compatability (i.e. you can use the new plugins with an older nova)","commit_id":"422263d0dd23efa6121a58e261256cc460839cde"}]}
