from image_creator import __version__ as version
from image_creator import util
from image_creator.disk import Disk
from image_creator import __version__ as version
from image_creator import util
from image_creator.disk import Disk
from image_creator.os_type import os_cls
from image_creator.kamaki_wrapper import Kamaki, ClientError
import sys
from image_creator.os_type import os_cls
from image_creator.kamaki_wrapper import Kamaki, ClientError
import sys
else None
parser.add_option("-o", "--outfile", type="string", dest="outfile",
else None
parser.add_option("-o", "--outfile", type="string", dest="outfile",
- default=None, action="callback", callback=check_writable_dir,
- help="dump image to FILE", metavar="FILE")
+ default=None, action="callback",
+ callback=check_writable_dir, help="dump image to FILE",
+ metavar="FILE")
parser.add_option("-f", "--force", dest="force", default=False,
parser.add_option("-f", "--force", dest="force", default=False,
parser.add_option("-s", "--silent", dest="silent", default=False,
parser.add_option("-s", "--silent", dest="silent", default=False,
parser.add_option("-u", "--upload", dest="upload", type="string",
parser.add_option("-u", "--upload", dest="upload", type="string",
parser.add_option("-r", "--register", dest="register", type="string",
parser.add_option("-r", "--register", dest="register", type="string",
parser.add_option("-a", "--account", dest="account", type="string",
parser.add_option("-a", "--account", dest="account", type="string",
parser.add_option("-m", "--metadata", dest="metadata", default=[],
parser.add_option("-m", "--metadata", dest="metadata", default=[],
- help="Add custom KEY=VALUE metadata to the image", action="append",
- metavar="KEY=VALUE")
+ help="Add custom KEY=VALUE metadata to the image",
+ action="append", metavar="KEY=VALUE")
parser.add_option("-t", "--token", dest="token", type="string",
parser.add_option("-t", "--token", dest="token", type="string",
parser.add_option("--print-sysprep", dest="print_sysprep", default=False,
parser.add_option("--print-sysprep", dest="print_sysprep", default=False,
- help="print the enabled and disabled system preparation operations "
- "for this input media", action="store_true")
+ help="print the enabled and disabled system preparation "
+ "operations for this input media", action="store_true")
parser.add_option("--enable-sysprep", dest="enabled_syspreps", default=[],
parser.add_option("--enable-sysprep", dest="enabled_syspreps", default=[],
- help="run SYSPREP operation on the input media",
- action="append", metavar="SYSPREP")
+ help="run SYSPREP operation on the input media",
+ action="append", metavar="SYSPREP")
- help="prevent SYSPREP operation from running on the input media",
- default=[], action="append", metavar="SYSPREP")
+ help="prevent SYSPREP operation from running on the "
+ "input media", default=[], action="append",
+ metavar="SYSPREP")
parser.add_option("--no-sysprep", dest="sysprep", default=True,
parser.add_option("--no-sysprep", dest="sysprep", default=True,
parser.add_option("--no-shrink", dest="shrink", default=True,
parser.add_option("--no-shrink", dest="shrink", default=True,
if not os.path.exists(options.source):
raise FatalError("Input media `%s' is not accessible" % options.source)
if not os.path.exists(options.source):
raise FatalError("Input media `%s' is not accessible" % options.source)
raise FatalError("You also need to set -u when -r option is set")
if options.upload and options.account is None:
raise FatalError("Image uploading cannot be performed. No ~okeanos "
raise FatalError("You also need to set -u when -r option is set")
if options.upload and options.account is None:
raise FatalError("Image uploading cannot be performed. No ~okeanos "
if options.upload and options.token is None:
raise FatalError("Image uploading cannot be performed. No ~okeanos "
if options.upload and options.token is None:
raise FatalError("Image uploading cannot be performed. No ~okeanos "
meta = {}
for m in options.metadata:
try:
key, value = m.split('=', 1)
except ValueError:
meta = {}
for m in options.metadata:
try:
key, value = m.split('=', 1)
except ValueError:
- if options.outfile is None and not options.upload \
- and not options.print_sysprep:
- raise FatalError("At least one of `-o', `-u' or `--print-sysprep' " \
- "must be set")
+ if options.outfile is None and not options.upload and not \
+ options.print_sysprep:
+ raise FatalError("At least one of `-o', `-u' or `--print-sysprep' "
+ "must be set")
if not options.force and options.outfile is not None:
for extension in ('', '.meta', '.md5sum'):
filename = "%s%s" % (options.outfile, extension)
if os.path.exists(filename):
raise FatalError("Output file %s exists "
if not options.force and options.outfile is not None:
for extension in ('', '.meta', '.md5sum'):
filename = "%s%s" % (options.outfile, extension)
if os.path.exists(filename):
raise FatalError("Output file %s exists "
out.output('Dumping md5sum file...', False)
with open('%s.%s' % (options.outfile, 'md5sum'), 'w') as f:
out.output('Dumping md5sum file...', False)
with open('%s.%s' % (options.outfile, 'md5sum'), 'w') as f:
- f.write('%s %s\n' % (checksum, \
- os.path.basename(options.outfile)))
+ f.write('%s %s\n' % (checksum,
+ os.path.basename(options.outfile)))
kamaki = Kamaki(options.account, options.token, out)
with open(snapshot, 'rb') as f:
uploaded_obj = kamaki.upload(f, size, options.upload,
kamaki = Kamaki(options.account, options.token, out)
with open(snapshot, 'rb') as f:
uploaded_obj = kamaki.upload(f, size, options.upload,
- "(1/4) Calculating block hashes",
- "(2/4) Uploading missing blocks")
+ "(1/4) Calculating block "
+ "hashes",
+ "(2/4) Uploading missing "
+ "blocks")
out.output("(3/4) Uploading metadata file...", False)
kamaki.upload(StringIO.StringIO(metastring),
out.output("(3/4) Uploading metadata file...", False)
kamaki.upload(StringIO.StringIO(metastring),
remote_path="%s.%s" % (options.upload, 'meta'))
out.success('done')
out.output("(4/4) Uploading md5sum file...", False)
remote_path="%s.%s" % (options.upload, 'meta'))
out.success('done')
out.output("(4/4) Uploading md5sum file...", False)
- md5sumstr = '%s %s\n' % (
- checksum, os.path.basename(options.upload))
+ md5sumstr = '%s %s\n' % (checksum,
+ os.path.basename(options.upload))
kamaki.upload(StringIO.StringIO(md5sumstr),
size=len(md5sumstr),
remote_path="%s.%s" % (options.upload, 'md5sum'))
kamaki.upload(StringIO.StringIO(md5sumstr),
size=len(md5sumstr),
remote_path="%s.%s" % (options.upload, 'md5sum'))