class_docstr: Helper utils for Workflow Archiver tool.
  This class lists out all the methods such as validations for workflow archiving.
docstr: This method zips the dir and filters out some files based on a expression
  :param path:
  :param dst:
  :return:
docstr_tok: ["This","method","zips","the","dir","and","filters","out","some","files","based","on","a","expression",":","param","path",":",":","param","dst",":",":","return",":"]
code: def archive_dir(path, dst):
      """
      This method zips the dir and filters out some files based on a expression
      :param path:
      :param dst:
      :return:
      """
      unwanted_dirs = {"__MACOSX", "__pycache__"}
  
      for root, directories, files in os.walk(path):
          # Filter directories
          directories[:] = [
              d
              for d in directories
              if WorkflowExportUtils.directory_filter(d, unwanted_dirs)
          ]
          for f in files:
              file_path = os.path.join(root, f)
              dst.write(file_path, os.path.relpath(file_path, path))
  
imports: import logging
  import os
  import re
  import zipfile
  import shutil
  import tempfile
  from .workflow_archiver_error import WorkflowArchiverError
  from .manifest_components.manifest import Manifest
  from .manifest_components.workflow import Workflow
label_desc: Use image node_id 9 for calling the WorkflowExportUtils obj's underlying member method code with example usage: obj.archive_dir(path, dst) without return types