code: def compress(self, input_path):
          
          self.log([u"Compressing '%s' into this container", input_path])
  
          if self.file_path is None:
              self.log_exc(u"The container path has not been set", None, True, TypeError)
          if self.actual_container is None:
              self.log_exc(u"The actual container object has not been set", None, True, TypeError)
          if not gf.directory_exists(input_path):
              self.log_exc(u"The input path is not an existing directory", None, True, ValueError)
          gf.ensure_parent_directory(input_path)
          self.actual_container.compress(input_path)
docs: Compress the contents of the given directory.
  
          :param string input_path: path of the input directory
          :raises: TypeError: if the container path has not been set
          :raises: ValueError: if ``input_path`` is not an existing directory
          :raises: OSError: if an error occurred compressing the given container
                            (e.g., empty file, damaged file, etc.)