Port the plugins to the new API
This commit is contained in:
+53
-53
@@ -688,7 +688,7 @@ class IsoHandler(GenericExecutionStep, BuiltinHandlerMixin):
|
||||
|
||||
class LivecdSpec(GenericSpec):
|
||||
|
||||
PLUGIN_API_VERSION = 0
|
||||
PLUGIN_API_VERSION = 1
|
||||
|
||||
@staticmethod
|
||||
def execution_strategy():
|
||||
@@ -702,110 +702,110 @@ class LivecdSpec(GenericSpec):
|
||||
"destination_livecd_root",
|
||||
]
|
||||
|
||||
def parser_data_path(self):
|
||||
def parameters(self):
|
||||
return {
|
||||
'execution_strategy': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'prechroot': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_command_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'release_string': {
|
||||
'cb': self.ne_string, # validation callback
|
||||
've': self.ve_string_stripper, # value extractor
|
||||
'verifier': lambda x: len(x) != 0, # validation callback
|
||||
'parser': lambda x: x.strip(), # value extractor
|
||||
},
|
||||
'release_version': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'release_desc': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'release_file': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'source_chroot': {
|
||||
'cb': self.valid_dir,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': os.path.isdir,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'destination_chroot': {
|
||||
'cb': self.valid_path_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: "\0" not in x,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'extra_rsync_parameters': {
|
||||
'cb': self.always_valid,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: True,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'merge_destination_chroot': {
|
||||
'cb': self.valid_dir,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': os.path.isdir,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'error_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'outer_chroot_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'inner_source_chroot_script': {
|
||||
'cb': self.valid_path_string_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'inner_chroot_script': {
|
||||
'cb': self.valid_path_string_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'outer_chroot_script_after': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'destination_livecd_root': {
|
||||
'cb': self.valid_path_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: "\0" not in x,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'merge_livecd_root': {
|
||||
'cb': self.valid_dir,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': os.path.isdir,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'extra_mksquashfs_parameters': {
|
||||
'cb': self.always_valid,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: True,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'extra_mkisofs_parameters': {
|
||||
'cb': self.always_valid,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: True,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'pre_iso_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'post_iso_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'destination_iso_directory': {
|
||||
'cb': self.valid_dir,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': os.path.isdir,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'destination_iso_image_name': {
|
||||
'cb': self.valid_ascii,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'paths_to_remove': {
|
||||
'cb': self.ne_list,
|
||||
've': self.valid_path_list,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._comma_separate_path,
|
||||
},
|
||||
'paths_to_empty': {
|
||||
'cb': self.ne_list,
|
||||
've': self.valid_path_list,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._comma_separate_path,
|
||||
},
|
||||
|
||||
}
|
||||
|
||||
def get_execution_steps(self):
|
||||
def execution_steps(self):
|
||||
return [MirrorHandler, ChrootHandler, CdrootHandler, IsoHandler]
|
||||
|
||||
+69
-69
@@ -533,7 +533,7 @@ class FinalImageHandler(GenericExecutionStep, BuiltinHandlerMixin):
|
||||
|
||||
class IsoToImageSpec(GenericSpec):
|
||||
|
||||
PLUGIN_API_VERSION = 0
|
||||
PLUGIN_API_VERSION = 1
|
||||
|
||||
@staticmethod
|
||||
def execution_strategy():
|
||||
@@ -546,142 +546,142 @@ class IsoToImageSpec(GenericSpec):
|
||||
"image_mb",
|
||||
]
|
||||
|
||||
def parser_data_path(self):
|
||||
def parameters(self):
|
||||
return {
|
||||
'execution_strategy': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'prechroot': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_command_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'release_string': {
|
||||
'cb': self.ne_string, # validation callback
|
||||
've': self.ve_string_stripper, # value extractor
|
||||
'verifier': lambda x: len(x) != 0, # validation callback
|
||||
'parser': lambda x: x.strip(), # value extractor
|
||||
},
|
||||
'release_version': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'release_desc': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'release_file': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'source_iso': {
|
||||
'cb': self.valid_path_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: "\0" not in x,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'image_name': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'image_formatter': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'image_mounter': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'image_umounter': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'image_mb': {
|
||||
'cb': self.valid_integer,
|
||||
've': self.ve_integer_converter,
|
||||
'verifier': lambda x: x is not None,
|
||||
'parser': self._cast_integer,
|
||||
},
|
||||
'image_randomize': {
|
||||
'cb': self.valid_ascii,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'error_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'outer_chroot_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'inner_chroot_script': {
|
||||
'cb': self.valid_path_string_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'inner_chroot_script_after': {
|
||||
'cb': self.valid_path_string_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'outer_chroot_script_after': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'destination_image_directory': {
|
||||
'cb': self.valid_dir,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': os.path.isdir,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'pre_image_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'post_image_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'iso_mounter': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'iso_umounter': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'squash_mounter': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'squash_umounter': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'custom_packages_remove_cmd': {
|
||||
'cb': self.valid_ascii,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'custom_packages_add_cmd': {
|
||||
'cb': self.valid_ascii,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'packages_to_remove': {
|
||||
'cb': self.ne_list,
|
||||
've': self.valid_comma_sep_list,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._comma_separate,
|
||||
},
|
||||
'packages_to_add': {
|
||||
'cb': self.ne_list,
|
||||
've': self.valid_comma_sep_list,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._comma_separate,
|
||||
},
|
||||
'repositories_update_cmd': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'execute_repositories_update': {
|
||||
'cb': self.valid_ascii,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'paths_to_remove': {
|
||||
'cb': self.ne_list,
|
||||
've': self.valid_path_list,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._comma_separate_path,
|
||||
},
|
||||
'paths_to_empty': {
|
||||
'cb': self.ne_list,
|
||||
've': self.valid_path_list,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._comma_separate_path,
|
||||
},
|
||||
}
|
||||
|
||||
def get_execution_steps(self):
|
||||
def execution_steps(self):
|
||||
return [ImageHandler, ImageIsoUnpackHandler, ImageChrootHandler,
|
||||
FinalImageHandler]
|
||||
|
||||
+47
-47
@@ -377,7 +377,7 @@ class FinalImageHandler(GenericExecutionStep, BuiltinHandlerMixin):
|
||||
|
||||
class ChrootToMmcImageSpec(GenericSpec):
|
||||
|
||||
PLUGIN_API_VERSION = 0
|
||||
PLUGIN_API_VERSION = 1
|
||||
|
||||
@staticmethod
|
||||
def execution_strategy():
|
||||
@@ -397,97 +397,97 @@ class ChrootToMmcImageSpec(GenericSpec):
|
||||
"image_name",
|
||||
]
|
||||
|
||||
def parser_data_path(self):
|
||||
def parameters(self):
|
||||
return {
|
||||
'execution_strategy': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'prechroot': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_command_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'outer_source_chroot_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'inner_source_chroot_script': {
|
||||
'cb': self.valid_path_string_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'outer_source_chroot_script_after': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'release_string': {
|
||||
'cb': self.ne_string, # validation callback
|
||||
've': self.ve_string_stripper, # value extractor
|
||||
'verifier': lambda x: len(x) != 0, # validation callback
|
||||
'parser': lambda x: x.strip(), # value extractor
|
||||
},
|
||||
'release_version': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'release_desc': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'release_file': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'source_chroot': {
|
||||
'cb': self.valid_dir,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': os.path.isdir,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'image_name': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'image_mb': {
|
||||
'cb': self.valid_integer,
|
||||
've': self.ve_integer_converter,
|
||||
'verifier': lambda x: x is not None,
|
||||
'parser': self._cast_integer,
|
||||
},
|
||||
'image_generator_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'error_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'destination_image_directory': {
|
||||
'cb': self.valid_dir,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': os.path.isdir,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'source_boot_directory': {
|
||||
'cb': self.valid_dir,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': os.path.isdir,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'pre_image_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'post_image_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'packages_to_remove': {
|
||||
'cb': self.ne_list,
|
||||
've': self.valid_comma_sep_list,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._comma_separate,
|
||||
},
|
||||
'packages_to_add': {
|
||||
'cb': self.ne_list,
|
||||
've': self.valid_comma_sep_list,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._comma_separate,
|
||||
},
|
||||
'paths_to_remove': {
|
||||
'cb': self.ne_list,
|
||||
've': self.valid_path_list,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._comma_separate_path,
|
||||
},
|
||||
'paths_to_empty': {
|
||||
'cb': self.ne_list,
|
||||
've': self.valid_path_list,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._comma_separate_path,
|
||||
},
|
||||
}
|
||||
|
||||
def get_execution_steps(self):
|
||||
def execution_steps(self):
|
||||
return [ChrootHandler, ImageHandler, FinalImageHandler]
|
||||
|
||||
+67
-67
@@ -376,7 +376,7 @@ class IsoHandler(BuiltinIsoHandler):
|
||||
|
||||
class RemasterSpec(GenericSpec):
|
||||
|
||||
PLUGIN_API_VERSION = 0
|
||||
PLUGIN_API_VERSION = 1
|
||||
|
||||
@staticmethod
|
||||
def execution_strategy():
|
||||
@@ -388,137 +388,137 @@ class RemasterSpec(GenericSpec):
|
||||
"destination_iso_directory",
|
||||
]
|
||||
|
||||
def parser_data_path(self):
|
||||
def parameters(self):
|
||||
return {
|
||||
'execution_strategy': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'prechroot': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_command_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'release_string': {
|
||||
'cb': self.ne_string, # validation callback
|
||||
've': self.ve_string_stripper, # value extractor
|
||||
'verifier': lambda x: len(x) != 0, # validation callback
|
||||
'parser': lambda x: x.strip(), # value extractor
|
||||
},
|
||||
'release_version': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'release_desc': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'release_file': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'source_iso': {
|
||||
'cb': self.valid_path_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: "\0" not in x,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'iso_title': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'error_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'outer_chroot_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'inner_chroot_script': {
|
||||
'cb': self.valid_path_string_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'inner_chroot_script_after': {
|
||||
'cb': self.valid_path_string_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'outer_chroot_script_after': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'extra_mksquashfs_parameters': {
|
||||
'cb': self.always_valid,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: True,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'extra_mkisofs_parameters': {
|
||||
'cb': self.always_valid,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: True,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'pre_iso_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'post_iso_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'destination_iso_directory': {
|
||||
'cb': self.valid_dir,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': os.path.isdir,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'destination_iso_image_name': {
|
||||
'cb': self.valid_ascii,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'iso_mounter': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'iso_umounter': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'squash_mounter': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'squash_umounter': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'merge_livecd_root': {
|
||||
'cb': self.valid_dir,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': os.path.isdir,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'custom_packages_remove_cmd': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'custom_packages_add_cmd': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'packages_to_remove': {
|
||||
'cb': self.ne_list,
|
||||
've': self.valid_comma_sep_list,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._comma_separate,
|
||||
},
|
||||
'packages_to_add': {
|
||||
'cb': self.ne_list,
|
||||
've': self.valid_comma_sep_list,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._comma_separate,
|
||||
},
|
||||
'repositories_update_cmd': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'execute_repositories_update': {
|
||||
'cb': self.valid_ascii,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'paths_to_remove': {
|
||||
'cb': self.ne_list,
|
||||
've': self.valid_path_list,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._comma_separate_path,
|
||||
},
|
||||
'paths_to_empty': {
|
||||
'cb': self.ne_list,
|
||||
've': self.valid_path_list,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._comma_separate_path,
|
||||
},
|
||||
}
|
||||
|
||||
def get_execution_steps(self):
|
||||
def execution_steps(self):
|
||||
return [IsoUnpackHandler, ChrootHandler, CdrootHandler, IsoHandler]
|
||||
|
||||
+61
-61
@@ -169,7 +169,7 @@ class TarHandler(GenericExecutionStep, BuiltinHandlerMixin):
|
||||
|
||||
class IsoToTarSpec(GenericSpec):
|
||||
|
||||
PLUGIN_API_VERSION = 0
|
||||
PLUGIN_API_VERSION = 1
|
||||
|
||||
@staticmethod
|
||||
def execution_strategy():
|
||||
@@ -184,125 +184,125 @@ class IsoToTarSpec(GenericSpec):
|
||||
"destination_tar_directory",
|
||||
]
|
||||
|
||||
def parser_data_path(self):
|
||||
def parameters(self):
|
||||
return {
|
||||
'execution_strategy': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'prechroot': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_command_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'release_string': {
|
||||
'cb': self.ne_string, # validation callback
|
||||
've': self.ve_string_stripper, # value extractor
|
||||
'verifier': lambda x: len(x) != 0, # validation callback
|
||||
'parser': lambda x: x.strip(), # value extractor
|
||||
},
|
||||
'release_version': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'release_desc': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'release_file': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'source_iso': {
|
||||
'cb': self.valid_path_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: "\0" not in x,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'tar_name': {
|
||||
'cb': self.ne_string,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'compression_method': {
|
||||
'cb': self.supported_compression_method,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': self.supported_compression_method,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'error_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'outer_chroot_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'inner_chroot_script': {
|
||||
'cb': self.valid_path_string_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'inner_chroot_script_after': {
|
||||
'cb': self.valid_path_string_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'outer_chroot_script_after': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'destination_tar_directory': {
|
||||
'cb': self.valid_dir,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': os.path.isdir,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'pre_tar_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'post_tar_script': {
|
||||
'cb': self.valid_exec_first_list_item,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': self._verify_executable_arguments,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'iso_mounter': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'iso_umounter': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'squash_mounter': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'squash_umounter': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'custom_packages_remove_cmd': {
|
||||
'cb': self.valid_ascii,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'custom_packages_add_cmd': {
|
||||
'cb': self.valid_ascii,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'packages_to_remove': {
|
||||
'cb': self.ne_list,
|
||||
've': self.valid_comma_sep_list,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._comma_separate,
|
||||
},
|
||||
'packages_to_add': {
|
||||
'cb': self.ne_list,
|
||||
've': self.valid_comma_sep_list,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._comma_separate,
|
||||
},
|
||||
'repositories_update_cmd': {
|
||||
'cb': self.ne_list,
|
||||
've': self.ve_command_splitter,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._command_splitter,
|
||||
},
|
||||
'execute_repositories_update': {
|
||||
'cb': self.valid_ascii,
|
||||
've': self.ve_string_stripper,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': lambda x: x.strip(),
|
||||
},
|
||||
'paths_to_remove': {
|
||||
'cb': self.ne_list,
|
||||
've': self.valid_path_list,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._comma_separate_path,
|
||||
},
|
||||
'paths_to_empty': {
|
||||
'cb': self.ne_list,
|
||||
've': self.valid_path_list,
|
||||
'verifier': lambda x: len(x) != 0,
|
||||
'parser': self._comma_separate_path,
|
||||
},
|
||||
}
|
||||
|
||||
def get_execution_steps(self):
|
||||
def execution_steps(self):
|
||||
return [IsoUnpackHandler, ChrootHandler, TarHandler]
|
||||
|
||||
Reference in New Issue
Block a user