summaryrefslogtreecommitdiff
path: root/sphinx/setup_command.py
diff options
context:
space:
mode:
authorTakayuki Shimizukawa <shimizukawa@gmail.com>2014-08-29 01:14:54 +0900
committerTakayuki Shimizukawa <shimizukawa@gmail.com>2014-08-29 01:14:54 +0900
commitad69dadd1446205152f7383e47fc6877e0f48e4d (patch)
treeb0a115eb37cf0918a140da7199940623861e8bb2 /sphinx/setup_command.py
parente9aae6563d645f56819e412481b40d21c3a7ba70 (diff)
downloadsphinx-git-ad69dadd1446205152f7383e47fc6877e0f48e4d.tar.gz
Now Sphinx exits with non-zero status code if builder status is not success. Closes #508.
Diffstat (limited to 'sphinx/setup_command.py')
-rw-r--r--sphinx/setup_command.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/sphinx/setup_command.py b/sphinx/setup_command.py
index e6b5b8f71..a487b2a2a 100644
--- a/sphinx/setup_command.py
+++ b/sphinx/setup_command.py
@@ -17,7 +17,7 @@ import os
import types
from StringIO import StringIO
from distutils.cmd import Command
-from distutils.errors import DistutilsOptionError
+from distutils.errors import DistutilsOptionError, DistutilsExecError
from sphinx.application import Sphinx
from sphinx.util.console import darkred, nocolor, color_terminal
@@ -159,6 +159,9 @@ class BuildDoc(Command):
try:
app.build(force_all=self.all_files)
+ if app.statuscode:
+ raise DistutilsExecError(
+ 'caused by %s builder.' % app.builder.name)
except Exception, err:
from docutils.utils import SystemMessage
if isinstance(err, SystemMessage):