diff --git a/readthedocs/vcs_support/base.py b/readthedocs/vcs_support/base.py index 1b7da2017d0..b482f0796d5 100644 --- a/readthedocs/vcs_support/base.py +++ b/readthedocs/vcs_support/base.py @@ -1,10 +1,11 @@ -# -*- coding: utf-8 -*- - """Base classes for VCS backends.""" import logging import os import shutil +from readthedocs.doc_builder.exceptions import BuildEnvironmentWarning +from readthedocs.projects.exceptions import RepositoryError + log = logging.getLogger(__name__) @@ -102,7 +103,13 @@ def run(self, *cmd, **kwargs): 'shell': False, }) - build_cmd = self.environment.run(*cmd, **kwargs) + try: + build_cmd = self.environment.run(*cmd, **kwargs) + except BuildEnvironmentWarning as e: + # Re raise as RepositoryError, + # so isn't logged as ERROR. + raise RepositoryError(str(e)) + # Return a tuple to keep compatibility return (build_cmd.exit_code, build_cmd.output, build_cmd.error)