code: def _pack(self, fname, encoding):
          
          (fd, tmpfile) = tempfile.mkstemp()
          os.close(fd)
          try:
              self.save(tmpfile, mode='abs', validate=False)
              document_loader, processobj, metadata, uri = load_cwl(tmpfile)
          finally:
              # cleanup tmpfile
              os.remove(tmpfile)
  
          with codecs.open(fname, 'wb', encoding=encoding) as f:
              f.write(print_pack(document_loader, processobj, uri, metadata))
docs: Save workflow with ``--pack`` option
  
          This means that al tools and subworkflows are included in the workflow
          file that is created. A packed workflow cannot be loaded and used in
          scriptcwl.