[Kimchi-devel] [PATCH] Remove '.iso' extension checking when create new template

Royce Lv lvroyce at linux.vnet.ibm.com
Mon May 26 02:42:44 UTC 2014


For incoming path param, I think I don't mind ignore the suffix '.iso'.
But in deep scanning, we filtered other suffix because we don't want to 
scan every file head in a directory tree, that is very time consuming,

iso_info.py:

def probe_iso():
.....
for name in files:
if not name.lower().endswith('.iso'):
continue

And in scan.py, we assumed suffix 'iso' to resolve duplicate.
scan.py:

def start_scan(self, cb, params):
def updater(iso_info):
iso_name = os.path.basename(iso_info['path'])[:-3]

duplicates = "%s/%s*" % (params['pool_path'], iso_name)

If these can be resolved I'm definitely OK with your proposal.
Or if you put file with a '.iso.1' I'm afraid deep scan will not able to 
discover it.
But if you just want to cover scenario "specified cdrom path to create 
template", I think this patch is OK.

On 2014年05月24日 02:08, Rodrigo Trujillo wrote:
> Libvirt accepts iso files with names that do not end with '.iso'
> extension. Also, Kimchi discovers ISOs stored in storagepools by the
> file format, it does not care about file name.
> This patch removes the .iso checking from API.json schema, then files
> ending with '.iso.1', '.iso.bkp' or any other, can be used.
>
> Signed-off-by: Rodrigo Trujillo <rodrigo.trujillo at linux.vnet.ibm.com>
> ---
>   src/kimchi/API.json | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/src/kimchi/API.json b/src/kimchi/API.json
> index b9d371a..44a1439 100644
> --- a/src/kimchi/API.json
> +++ b/src/kimchi/API.json
> @@ -361,7 +361,7 @@
>                   "cdrom": {
>                       "description": "Path for cdrom",
>                       "type": "string",
> -                    "pattern": "^((/)|(http)[s]?:|[t]?(ftp)[s]?:)+.*([.]iso)$",
> +                    "pattern": "^((/)|(http)[s]?:|[t]?(ftp)[s]?:)+.*$",
>                       "required": true,
>                       "error": "KCHTMPL0014E"
>                   },
> @@ -532,7 +532,7 @@
>                   "cdrom": {
>                       "description": "Path for cdrom",
>                       "type": "string",
> -                    "pattern": "^((/)|(http)[s]?:|[t]?(ftp)[s]?:)+.*([.]iso)$",
> +                    "pattern": "^((/)|(http)[s]?:|[t]?(ftp)[s]?:)+.*$",
>                       "error": "KCHTMPL0014E"
>                   },
>                   "disks": {




More information about the Kimchi-devel mailing list