diff --git a/bootstrapvz/plugins/minimize_size/__init__.py b/bootstrapvz/plugins/minimize_size/__init__.py index 48cc4d0..9b6aa4c 100644 --- a/bootstrapvz/plugins/minimize_size/__init__.py +++ b/bootstrapvz/plugins/minimize_size/__init__.py @@ -18,10 +18,10 @@ def resolve_tasks(taskset, manifest): tasks.mounts.RemoveFolderMounts, ]) if manifest.plugins['minimize_size'].get('zerofree', False): - taskset.add(tasks.shrink.AddRequiredCommands) + taskset.add(tasks.shrink.AddRequiredZeroFreeCommand) taskset.add(tasks.shrink.Zerofree) if manifest.plugins['minimize_size'].get('shrink', False): - taskset.add(tasks.shrink.AddRequiredCommands) + taskset.add(tasks.shrink.AddRequiredVDiskManagerCommand) taskset.add(tasks.shrink.ShrinkVolume) if 'apt' in manifest.plugins['minimize_size']: apt = manifest.plugins['minimize_size']['apt'] diff --git a/bootstrapvz/plugins/minimize_size/tasks/shrink.py b/bootstrapvz/plugins/minimize_size/tasks/shrink.py index 66497d2..26ef241 100644 --- a/bootstrapvz/plugins/minimize_size/tasks/shrink.py +++ b/bootstrapvz/plugins/minimize_size/tasks/shrink.py @@ -8,18 +8,25 @@ from bootstrapvz.common.tools import log_check_call import os -class AddRequiredCommands(Task): - description = 'Adding commands required for reducing volume size' +class AddRequiredZeroFreeCommand(Task): + description = 'Adding command required for zero-ing volume' phase = phases.validation successors = [host.CheckExternalCommands] @classmethod def run(cls, info): - if info.manifest.plugins['minimize_size'].get('zerofree', False): - info.host_dependencies['zerofree'] = 'zerofree' - if info.manifest.plugins['minimize_size'].get('shrink', False): - link = 'https://my.vmware.com/web/vmware/info/slug/desktop_end_user_computing/vmware_workstation/10_0' - info.host_dependencies['vmware-vdiskmanager'] = link + info.host_dependencies['zerofree'] = 'zerofree' + + +class AddRequiredVDiskManagerCommand(Task): + description = 'Adding command required for reducing volume size' + phase = phases.validation + successors = [host.CheckExternalCommands] + + @classmethod + def run(cls, info): + link = 'https://my.vmware.com/web/vmware/info/slug/desktop_end_user_computing/vmware_workstation/10_0' + info.host_dependencies['vmware-vdiskmanager'] = link class Zerofree(Task):