-#!/usr/bin/env python
-
+# -*- coding: utf-8 -*-
+#
# Copyright 2012 GRNET S.A. All rights reserved.
#
# Redistribution and use in source and binary forms, with or
# interpreted as representing official policies, either expressed
# or implied, of GRNET S.A.
+"""This module implements the "wizard" mode of the dialog-based version of
+snf-image-creator.
+"""
+
import time
import StringIO
if init_token is None:
init_token = ""
+ distro = session['image'].distro
+ ostype = session['image'].ostype
name = WizardInputPage(
"ImageName", "Image Name", "Please provide a name for the image:",
- title="Image Name", init=session['image'].distro)
+ title="Image Name", init=ostype if distro == "unknown" else distro)
descr = WizardInputPage(
"ImageDescription", "Image Description",
out.clear()
#Sysprep
- image.mount(False)
- err_msg = "Unable to execute the system preparation tasks."
- if not image.mounted:
- raise FatalError("%s Couldn't mount the media." % err_msg)
- elif image.mounted_ro:
- raise FatalError("%s Couldn't mount the media read-write."
- % err_msg)
image.os.do_sysprep()
metadata = image.os.meta
- image.umount()
#Shrink
size = image.shrink()
kamaki.register(wizard['ImageName'], pithos_file, metadata,
is_public)
out.success('done')
+ if is_public:
+ out.output("Sharing md5sum file ...", False)
+ kamaki.share("%s.md5sum" % name)
+ out.success('done')
+ out.output("Sharing metadata file ...", False)
+ kamaki.share("%s.meta" % name)
+ out.success('done')
+
out.output()
except ClientError as e: