[molecule] rewrite molecule.utils.exec_cmd() to not use shell=True

The following changes were required code-wide:
- use shlex.split() to split commands read from spec files
- use glob.glob() where required
- write command splitter function and make use of it instead of
  simple string splitter
This commit is contained in:
Fabio Erculiani
2011-09-04 11:52:02 +02:00
parent c2b0edc8d2
commit 7081598073
4 changed files with 61 additions and 58 deletions
+16 -16
View File
@@ -378,7 +378,7 @@ class RemasterSpec(GenericSpec):
},
'prechroot': {
'cb': self.valid_exec_first_list_item,
've': self.ve_string_splitter,
've': self.ve_command_splitter,
},
'release_string': {
'cb': self.ne_string, # validation callback
@@ -406,35 +406,35 @@ class RemasterSpec(GenericSpec):
},
'error_script': {
'cb': self.valid_exec_first_list_item,
've': self.ve_string_splitter,
've': self.ve_command_splitter,
},
'outer_chroot_script': {
'cb': self.valid_exec_first_list_item,
've': self.ve_string_splitter,
've': self.ve_command_splitter,
},
'inner_chroot_script': {
'cb': self.valid_path_string_first_list_item,
've': self.ve_string_splitter,
've': self.ve_command_splitter,
},
'inner_chroot_script_after': {
'cb': self.valid_path_string_first_list_item,
've': self.ve_string_splitter,
've': self.ve_command_splitter,
},
'outer_chroot_script_after': {
'cb': self.valid_exec_first_list_item,
've': self.ve_string_splitter,
've': self.ve_command_splitter,
},
'extra_mkisofs_parameters': {
'cb': self.always_valid,
've': self.ve_string_splitter,
've': self.ve_command_splitter,
},
'pre_iso_script': {
'cb': self.valid_exec_first_list_item,
've': self.ve_string_splitter,
've': self.ve_command_splitter,
},
'post_iso_script': {
'cb': self.valid_exec_first_list_item,
've': self.ve_string_splitter,
've': self.ve_command_splitter,
},
'destination_iso_directory': {
'cb': self.valid_dir,
@@ -446,19 +446,19 @@ class RemasterSpec(GenericSpec):
},
'iso_mounter': {
'cb': self.ne_list,
've': self.ve_string_splitter,
've': self.ve_command_splitter,
},
'iso_umounter': {
'cb': self.ne_list,
've': self.ve_string_splitter,
've': self.ve_command_splitter,
},
'squash_mounter': {
'cb': self.ne_list,
've': self.ve_string_splitter,
've': self.ve_command_splitter,
},
'squash_umounter': {
'cb': self.ne_list,
've': self.ve_string_splitter,
've': self.ve_command_splitter,
},
'merge_livecd_root': {
'cb': self.valid_dir,
@@ -466,11 +466,11 @@ class RemasterSpec(GenericSpec):
},
'custom_packages_remove_cmd': {
'cb': self.ne_list,
've': self.ve_string_splitter,
've': self.ve_command_splitter,
},
'custom_packages_add_cmd': {
'cb': self.ne_list,
've': self.ve_string_splitter,
've': self.ve_command_splitter,
},
'packages_to_remove': {
'cb': self.ne_list,
@@ -482,7 +482,7 @@ class RemasterSpec(GenericSpec):
},
'repositories_update_cmd': {
'cb': self.ne_list,
've': self.ve_string_splitter,
've': self.ve_command_splitter,
},
'execute_repositories_update': {
'cb': self.valid_ascii,