docs: def get_metadata(self, refresh=True):
          """
          return cached metadata by default
  
          :param refresh: bool, returns up to date metadata if set to True
          :return: dict
          """
          if refresh or not self._metadata:
              ident = self._id or self.name
              if not ident:
                  raise ConuException(
                      "This container does not have a valid identifier.")
              out = run_cmd(["machinectl", "--no-pager", "show", ident], return_output=True, ignore_status=True)
              if "Could not get path to machine" in out:
                  self._metadata = {}
              else:
                  self._metadata = convert_kv_to_dict(out)
          return self._metadata