504 |
504 |
help_title = "System Preperation Tasks"
|
505 |
505 |
sysprep_help = "%s\n%s\n\n" % (help_title, '=' * len(help_title))
|
506 |
506 |
|
507 |
|
if 'exec_syspreps' not in session:
|
508 |
|
session['exec_syspreps'] = []
|
509 |
507 |
|
510 |
|
all_syspreps = image.os.list_syspreps()
|
511 |
|
# Only give the user the choice between syspreps that have not ran yet
|
512 |
|
syspreps = [s for s in all_syspreps if s not in session['exec_syspreps']]
|
|
508 |
syspreps = image.os.list_syspreps()
|
513 |
509 |
|
514 |
510 |
if len(syspreps) == 0:
|
515 |
511 |
d.msgbox("No system preparation task available to run!",
|
... | ... | |
544 |
540 |
for i in range(len(syspreps)):
|
545 |
541 |
if str(i + 1) in tags:
|
546 |
542 |
image.os.enable_sysprep(syspreps[i])
|
547 |
|
session['exec_syspreps'].append(syspreps[i])
|
548 |
543 |
else:
|
549 |
544 |
image.os.disable_sysprep(syspreps[i])
|
550 |
545 |
|
|
546 |
if len([s for s in image.os.list_syspreps() if s.enabled]) == 0:
|
|
547 |
d.msgbox("No system preperation task is selected!",
|
|
548 |
title="System Preperation", width=SMALL_WIDTH)
|
|
549 |
continue
|
|
550 |
|
551 |
551 |
infobox = InfoBoxOutput(d, "Image Configuration")
|
552 |
552 |
try:
|
553 |
553 |
image.out.add(infobox)
|
554 |
554 |
try:
|
555 |
555 |
image.mount(readonly=False)
|
556 |
556 |
try:
|
557 |
|
err_msg = \
|
558 |
|
"Unable to execute the system preparation tasks."
|
|
557 |
err = "Unable to execute the system preparation " \
|
|
558 |
"tasks. Couldn't mount the media%s."
|
559 |
559 |
if not image.mounted:
|
560 |
|
d.msgbox(
|
561 |
|
"%s Couldn't mount the media." % err_msg,
|
562 |
|
title="System Preperation", width=SMALL_WIDTH)
|
|
560 |
d.msgbox(err % "", title="System Preperation",
|
|
561 |
width=SMALL_WIDTH)
|
563 |
562 |
return
|
564 |
563 |
elif image.mounted_ro:
|
565 |
564 |
d.msgbox(
|
566 |
|
"%s Couldn't mount the media read-write."
|
567 |
|
% err_msg, title="System Preperation",
|
568 |
|
width=SMALL_WIDTH)
|
|
565 |
err % " read-write",title="System Preperation",
|
|
566 |
width=SMALL_WIDTH
|
|
567 |
)
|
569 |
568 |
return
|
570 |
569 |
|
571 |
570 |
# The checksum is invalid. We have mounted the image rw
|
... | ... | |
577 |
576 |
image.os.do_sysprep()
|
578 |
577 |
infobox.finalize()
|
579 |
578 |
|
580 |
|
# Disable syspreps that have ran
|
581 |
|
for sysprep in session['exec_syspreps']:
|
582 |
|
image.os.disable_sysprep(sysprep)
|
583 |
579 |
finally:
|
584 |
580 |
image.umount()
|
585 |
581 |
finally:
|