def get_subprocess_output(cls, command, ignore_stderr=True, **kwargs):
    """Get the output of an executed command.

    :param command: An iterable representing the command to execute (e.g. ['ls', '-al']).
    :param ignore_stderr: Whether or not to ignore stderr output vs interleave it with stdout.
    :raises: `ProcessManager.ExecutionError` on `OSError` or `CalledProcessError`.
    :returns: The output of the command.
    """
    if ignore_stderr is False:
      kwargs.setdefault('stderr', subprocess.STDOUT)

    try:
      return subprocess.check_output(command, **kwargs).decode('utf-8').strip()
    except (OSError, subprocess.CalledProcessError) as e:
      subprocess_output = getattr(e, 'output', '').strip()
      raise cls.ExecutionError(str(e), subprocess_output)
Get the output of an executed command.

    :param command: An iterable representing the command to execute (e.g. ['ls', '-al']).
    :param ignore_stderr: Whether or not to ignore stderr output vs interleave it with stdout.
    :raises: `ProcessManager.ExecutionError` on `OSError` or `CalledProcessError`.
    :returns: The output of the command.