diff --git a/Tools/PyJobTransforms/python/trfExe.py b/Tools/PyJobTransforms/python/trfExe.py
index f8920425c94fb3ef56e4fa9c2cc69d70594d061e..311211946fb4440ec3825530599dc3ef78a58b3a 100755
--- a/Tools/PyJobTransforms/python/trfExe.py
+++ b/Tools/PyJobTransforms/python/trfExe.py
@@ -1869,11 +1869,8 @@ class archiveExecutor(scriptExecutor):
         self.setPreExeStart()
         self._memMonitor = False
 
-        if 'exe' in self.conf.argdict:
-            self._exe = self.conf.argdict['exe']
-
         #unpack archived inputs
-        import tarfile, zipfile
+        import zipfile
         if 'inputDataFile' in self.conf.argdict:
             for f in self.conf.argdict['inputDataFile'].value:
                 if zipfile.is_zipfile(f):
@@ -1881,57 +1878,9 @@ class archiveExecutor(scriptExecutor):
                     print 'Extracting input zip file {0} to temporary directory {1}'.format(f,'tmp')
                     archive.extractall('tmp')
                     archive.close()
-                elif tarfile.is_tarfile(f):
-                    archive = tarfile.open(f, 'r:*')
-                    print 'Extracting input tar file {0} to temporary directory {1}'.format(f,'tmp')
-                    archive.extractall('tmp')
-                    archive.close()
-
-        #proceed to archive
-        if self._exe == 'tar':
-            #this is needed to keep the transform from scheduling two sub-steps
-            if 'outputArchFile' not in self.conf.argdict:
-                raise trfExceptions.TransformExecutionException(trfExit.nameToCode('TRF_ARG_MISSING'), 'Missing output file name')
-
-            self._cmd = ['python']
-            try:
-                with open('tar_wrapper.py', 'w') as tar_wrapper:
-                    print >> tar_wrapper, "import zipfile, tarfile, os, shutil"
-                    if os.path.exists(self.conf.argdict['outputArchFile'].value[0]):
-                        #appending input file(s) to existing archive. Compressed writing in append mode is not possible
-                        print >> tar_wrapper, "tar = tarfile.open('{}', 'a:')".format(self.conf.argdict['outputArchFile'].value[0])
-                    else:
-                        #creating new archive
-                        if 'compressionType' in self.conf.argdict:
-                            if self.conf.argdict['compressionType'] == 'gzip':
-                                print >> tar_wrapper, "tar = tarfile.open('{}', 'w:gz')".format(self.conf.argdict['outputArchFile'].value[0])
-                            elif self.conf.argdict['compressionType'] == 'bzip2':
-                                  print >> tar_wrapper, "tar = tarfile.open('{}', 'w:bz2')".format(self.conf.argdict['outputArchFile'].value[0])
-                            elif self.conf.argdict['compressionType'] == 'none':
-                                  print >> tar_wrapper, "tar = tarfile.open('{}', 'w:')".format(self.conf.argdict['outputArchFile'].value[0])
-                    print >> tar_wrapper, "for f in {}:".format(self.conf.argdict['inputDataFile'].value)
-                    print >> tar_wrapper, "    if not zipfile.is_zipfile(f) and not tarfile.is_tarfile(f):"
-                    print >> tar_wrapper, "        print 'Tarring {}'.format(os.path.basename(f))"
-                    print >> tar_wrapper, "        tar.add(f)"
-                    print >> tar_wrapper, "if os.path.isdir('tmp'):"
-                    print >> tar_wrapper, "    for root, dirs, files in os.walk('tmp'):"
-                    print >> tar_wrapper, "        for name in files:"
-                    print >> tar_wrapper, "            print 'Tarring {}'.format(name)"
-                    print >> tar_wrapper, "            tar.add(os.path.join(root, name),name)"
-                    print >> tar_wrapper, "    shutil.rmtree('tmp')"
-                    print >> tar_wrapper, "tar.close()"
-                os.chmod('tar_wrapper.py', 0755)
-            except (IOError, OSError) as e:
-                errMsg = 'error writing tar wrapper {fileName}: {error}'.format(fileName = 'tar_wrapper.py',
-                    error = e
-                )
-                msg.error(errMsg)
-                raise trfExceptions.TransformExecutionException(trfExit.nameToCode('TRF_EXEC_SETUP_WRAPPER'),
-                    errMsg
-                )
-            self._cmd.append('tar_wrapper.py')
 
-        elif self._exe == 'zip':
+        #archiving
+        if self._exe == 'zip':
             if 'outputArchFile' not in self.conf.argdict:
                 raise trfExceptions.TransformExecutionException(trfExit.nameToCode('TRF_ARG_MISSING'), 'Missing output file name')
 
@@ -1946,9 +1895,12 @@ class archiveExecutor(scriptExecutor):
                         #creating new archive
                         print >> zip_wrapper, "zf = zipfile.ZipFile('{}', mode='w', allowZip64=True)".format(self.conf.argdict['outputArchFile'].value[0])
                     print >> zip_wrapper, "for f in {}:".format(self.conf.argdict['inputDataFile'].value)
-                    print >> zip_wrapper, "    if not zipfile.is_zipfile(f) and not tarfile.is_tarfile(f):"
+                    print >> zip_wrapper, "    if not zipfile.is_zipfile(f):"
                     print >> zip_wrapper, "        print 'Zipping {}'.format(os.path.basename(f))"
                     print >> zip_wrapper, "        zf.write(f, arcname=os.path.basename(f), compress_type=zipfile.ZIP_STORED)"
+                    print >> zip_wrapper, "    if os.access(f, os.F_OK):"
+                    print >> zip_wrapper, "        print 'Removing input file {}'.format(f)"
+                    print >> zip_wrapper, "        os.unlink(f)"
                     print >> zip_wrapper, "if os.path.isdir('tmp'):"
                     print >> zip_wrapper, "    for root, dirs, files in os.walk('tmp'):"
                     print >> zip_wrapper, "        for name in files:"
@@ -1967,19 +1919,18 @@ class archiveExecutor(scriptExecutor):
                 )
             self._cmd.append('zip_wrapper.py')
 
+        #unarchiving
         elif self._exe == 'unarchive':
-            if not zipfile.is_zipfile(self.conf.argdict['inputArchFile'].value[0]) and not tarfile.is_tarfile(self.conf.argdict['inputArchFile'].value[0]):
-                raise trfExceptions.TransformExecutionException(trfExit.nameToCode('TRF_INPUT_FILE_ERROR'),
-                                                                'The input file is not a zip or tar archive - aborting unpacking')
+            for infile in self.conf.argdict['inputArchFile'].value:
+                 if not zipfile.is_zipfile(infile):
+                     raise trfExceptions.TransformExecutionException(trfExit.nameToCode('TRF_INPUT_FILE_ERROR'),
+                                                                     'An input file is not a zip archive - aborting unpacking')
             self._cmd = ['python']
             try:
                 with open('unarchive_wrapper.py', 'w') as unarchive_wrapper:
-                    print >> unarchive_wrapper, "import zipfile, tarfile"
+                    print >> unarchive_wrapper, "import zipfile"
                     print >> unarchive_wrapper, "for f in {}:".format(self.conf.argdict['inputArchFile'].value)
-                    print >> unarchive_wrapper, "     if zipfile.is_zipfile(f):"
-                    print >> unarchive_wrapper, "         archive = zipfile.ZipFile(f, mode='r')"
-                    print >> unarchive_wrapper, "     elif tarfile.is_tarfile(f):"
-                    print >> unarchive_wrapper, "         archive = tarfile.open(f, 'r:*')"
+                    print >> unarchive_wrapper, "     archive = zipfile.ZipFile(f, mode='r')"
                     print >> unarchive_wrapper, "     path = '{}'".format(self.conf.argdict['path'])
                     print >> unarchive_wrapper, "     print 'Extracting archive {0} to {1}'.format(f,path)"
                     print >> unarchive_wrapper, "     archive.extractall(path)"
diff --git a/Tools/PyJobTransforms/scripts/Archive_tf.py b/Tools/PyJobTransforms/scripts/Archive_tf.py
index 2798ca5be0863301dc24b4fc24754a442662124e..83753708fc520e3bfd8145a1f736edd4453ad54d 100755
--- a/Tools/PyJobTransforms/scripts/Archive_tf.py
+++ b/Tools/PyJobTransforms/scripts/Archive_tf.py
@@ -49,9 +49,6 @@ def addMyArgs(parser):
     # Use arggroup to get these arguments in their own sub-section (of --help)
     parser.defineArgGroup('Archiver', 'Options')
     parser.defineArgGroup('Unarchiver', 'Options')
-    parser.defineArgGroup('Tar archiver', 'Options')
-    parser.add_argument('--exe', group='Archiver',
-                        help='Archiving command, default is zip', choices=['zip', 'tar'])
     parser.add_argument('--inputDataFile', '--inputFile', nargs='+',
                         type=trfArgClasses.argFactory(trfArgClasses.argFile, io='input', type='misc'),
                         help='Input file(s)', group='Archiver')
@@ -63,9 +60,6 @@ def addMyArgs(parser):
     parser.add_argument('--outputArchFile', '--outputFile', 
                         type=trfArgClasses.argFactory(trfArgClasses.argFile, io='output', type='misc'),
                         help='Output archive file', group='Archiver')
-    parser.add_argument('--compressionType', group='Tar archiver',
-                        help='Underlying compression type of tar. The default is none', choices=['gzip', 'bzip2', 'none'],
-                        default='none')
 
 if __name__ == '__main__':
     main()