Skip to content

Commit b49be2a

Browse files
committed
Add argument to enhance portability: --log-directory
1 parent 1c25f00 commit b49be2a

File tree

1 file changed

+14
-7
lines changed

1 file changed

+14
-7
lines changed

build_docs.py

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,8 @@ def shell_out(cmd):
6464

6565

6666
def build_one(version, isdev, quick, sphinxbuild, build_root, www_root,
67-
skip_cache_invalidation=False, group='docs', git=False):
67+
skip_cache_invalidation=False, group='docs', git=False,
68+
log_directory='/var/log/docsbuild/'):
6869
checkout = build_root + "/python" + str(version).replace('.', '')
6970
target = www_root + "/" + str(version)
7071
logging.info("Doc autobuild started in %s", checkout)
@@ -80,8 +81,8 @@ def build_one(version, isdev, quick, sphinxbuild, build_root, www_root,
8081
maketarget = "autobuild-" + ("dev" if isdev else "stable") + ("-html" if quick else "")
8182
logging.info("Running make %s", maketarget)
8283
logname = os.path.basename(checkout) + ".log"
83-
shell_out("cd Doc; make SPHINXBUILD=%s %s >> /var/log/docsbuild/%s 2>&1" %
84-
(sphinxbuild, maketarget, logname))
84+
shell_out("cd Doc; make SPHINXBUILD=%s %s >> %s 2>&1" %
85+
(sphinxbuild, maketarget, os.path.join(log_directory, logname)))
8586

8687
logging.info("Computing changed files")
8788
changed = []
@@ -184,30 +185,36 @@ def parse_args():
184185
"--git",
185186
help="Use git instead of mercurial.",
186187
action="store_true")
188+
parser.add_argument(
189+
"--log-directory",
190+
help="Directory used to store logs.",
191+
default="/var/log/docsbuild/")
187192
return parser.parse_args()
188193

189194

190195
if __name__ == '__main__':
196+
args = parse_args()
191197
if sys.stderr.isatty():
192198
logging.basicConfig(format="%(levelname)s:%(message)s",
193199
stream=sys.stderr)
194200
else:
195201
logging.basicConfig(format="%(levelname)s:%(asctime)s:%(message)s",
196-
filename="/var/log/docsbuild/docsbuild.log")
202+
filename=os.path.join(args.log_directory,
203+
"docsbuild.log"))
197204
logging.root.setLevel(logging.DEBUG)
198-
args = parse_args()
199205
sphinxbuild = os.path.join(args.build_root, "environment/bin/sphinx-build")
200206
try:
201207
if args.branch:
202208
build_one(args.branch, args.devel, args.quick, sphinxbuild,
203209
args.build_root, args.www_root,
204210
args.skip_cache_invalidation,
205-
args.group, args.git)
211+
args.group, args.git, args.log_directory)
206212
else:
207213
for version, devel in BRANCHES:
208214
build_one(version, devel, args.quick, sphinxbuild,
209215
args.build_root, args.www_root,
210-
args.skip_cache_invalidation, args.group, args.git)
216+
args.skip_cache_invalidation, args.group, args.git,
217+
args.log_directory)
211218
build_devguide(args.devguide_checkout, args.devguide_target,
212219
sphinxbuild, args.skip_cache_invalidation)
213220
except Exception:

0 commit comments

Comments
 (0)