class_docstr: ContextManager class for temporary or permanent directory.
  
  Parameters
  ----------
  experiment: ``orion.client.experiment.ExperimentClient``
      Experiment for which the working directory will be created
docstr: Create the a permanent directory or a temporary one.
docstr_tok: ["Create","the","a","permanent","directory","or","a","temporary","one","."]
code: def __enter__(self):
      """Create the a permanent directory or a temporary one."""
  
      self.tmp = bool(not self.experiment.working_dir)
  
      if self.tmp:
          base_path = os.path.join(tempfile.gettempdir(), "orion")
          os.makedirs(base_path, exist_ok=True)
          self._tmpdir = tempfile.TemporaryDirectory(
              prefix=f"{self.experiment.name}-v{self.experiment.version}",
              dir=self.experiment.working_dir,
          )
          self.experiment.working_dir = self._tmpdir.name
      else:
          os.makedirs(self.experiment.working_dir, exist_ok=True)
  
      log.debug(
          "Working directory at '%s':", self.experiment.working_dir
      )
  
      return self.experiment.working_dir
  
imports: import logging
  import os
  import tempfile
label_desc: Use image node_id 2 for calling the SetupWorkingDir obj's underlying member method code with example usage: obj.__enter__() and returns: self