← Back to team overview

cloud-init-dev team mailing list archive

Re: [Merge] ~raharper/cloud-init:ds-ovf-use-util-find-devs-with into cloud-init:master

 

I'm pretty sure that we end up trying to mount everything with:
   mount -t iso966o <device> </tmp/mountpoint>

so i'd have thought that that would fail really early, i'm not sure how this would cause issues with other mounts, unless there was actually iso9660 filesystems on those devices. which would be odd.

also, please file a bug


Diff comments:

> diff --git a/cloudinit/sources/DataSourceOVF.py b/cloudinit/sources/DataSourceOVF.py
> index 24b45d5..021f2b9 100644
> --- a/cloudinit/sources/DataSourceOVF.py
> +++ b/cloudinit/sources/DataSourceOVF.py
> @@ -406,21 +406,9 @@ def transport_iso9660(require_iso=True):
>      else:
>          mtype = None
>  
> -    devs = os.listdir("/dev/")
> -    devs.sort()
> +    # generate a list of devices with mtype filesystem
> +    devs = util.find_devs_with("TYPE=%" % mtype)

you should respect require_iso here (even though i'm not sure its ever called with require_iso=False)

>      for dev in devs:
> -        fullp = os.path.join("/dev/", dev)
> -
> -        if (fullp in mounts or
> -                not cdmatch.match(dev) or os.path.isdir(fullp)):
> -            continue
> -
> -        try:
> -            # See if we can read anything at all...??
> -            util.peek_file(fullp, 512)
> -        except IOError:
> -            continue
> -
>          try:
>              (fname, contents) = util.mount_cb(fullp, get_ovf_env, mtype=mtype)
>          except util.MountFailedError:


-- 
https://code.launchpad.net/~raharper/cloud-init/+git/cloud-init/+merge/330995
Your team cloud-init commiters is requested to review the proposed merge of ~raharper/cloud-init:ds-ovf-use-util-find-devs-with into cloud-init:master.


References