def run_sphinx(builder, sconf, conf): dirpath = os.path.join(conf.paths.projectroot, conf.paths.branch_output, builder) if not os.path.exists(dirpath): os.makedirs(dirpath) logger.info('created directories "{1}" for sphinx builder {0}'.format( builder, dirpath)) if 'language' in sconf and sconf.language is not None: command('sphinx-intl build --language=' + sconf.language) logger.info('compiled all PO files for translated build.') logger.info('starting sphinx build {0} at {1}'.format( builder, timestamp())) cmd = 'sphinx-build {0} -d {1}/doctrees-{2} {3} {4}' # per-builder-doctreea sphinx_cmd = cmd.format( get_sphinx_args(sconf, conf), os.path.join(conf.paths.projectroot, conf.paths.branch_output), os.path.basename(sconf.build_output), os.path.join(conf.paths.projectroot, conf.paths.branch_source), sconf.build_output) logger.debug(sphinx_cmd) out = command(sphinx_cmd, capture=True, ignore=True) # out = sphinx_native_worker(sphinx_cmd) logger.info('completed sphinx build {0} at {1}'.format( builder, timestamp())) if True: # out.return_code == 0: logger.info('successfully completed {0} sphinx build at {1}'.format( builder, timestamp())) finalizer_app = BuildApp(conf) finalizer_app.root_app = False finalize_sphinx_build(sconf, conf, finalizer_app) finalizer_app.run() else: logger.warning( 'the sphinx build {0} was not successful. not running finalize operation' .format(builder)) output = '\n'.join([out.err, out.out]) return out.return_code, output
def run_sphinx(builder, sconf, conf): if safe_create_directory(sconf.fq_build_output): logger.info('created directory "{1}" for sphinx builder {0}'.format( builder, sconf.fq_build_output)) if 'language' in sconf and sconf.language is not None: command('sphinx-intl build --language=' + sconf.language) logger.info('compiled all PO files for translated build.') logger.info('starting sphinx build {0}'.format(builder)) cmd = 'sphinx-build {0} -d {1}/doctrees-{2} {3} {4}' # per-builder-doctree sphinx_cmd = cmd.format( get_sphinx_args(sconf, conf), os.path.join(conf.paths.projectroot, conf.paths.branch_output), sconf.build_output, os.path.join(conf.paths.projectroot, conf.paths.branch_source), sconf.fq_build_output) logger.debug(sphinx_cmd) with Timer("running sphinx build for: {0}, {1}, {2}".format( builder, sconf.language, sconf.edition)): out = command(sphinx_cmd, capture=True, ignore=True) logger.info('completed sphinx build {0}'.format(builder)) if True: # out.return_code == 0: logger.info('successfully completed {0} sphinx build ({1})'.format( builder, out.return_code)) finalizer_app = BuildApp(conf) finalizer_app.pool = "thread" finalizer_app.root_app = False finalize_sphinx_build(sconf, conf, finalizer_app) with Timer("finalize sphinx {0} build".format(builder)): finalizer_app.run() else: logger.warning( 'the sphinx build {0} was not successful. not running finalize operation' .format(builder)) output = '\n'.join([out.err, out.out]) return out.return_code, output
def run_sphinx(builder, sconf, conf): dirpath = os.path.join(conf.paths.projectroot, conf.paths.branch_output, builder) if not os.path.exists(dirpath): os.makedirs(dirpath) logger.info('created directories "{1}" for sphinx builder {0}'.format(builder, dirpath)) if 'language' in sconf and sconf.language is not None: command('sphinx-intl build --language=' + sconf.language) logger.info('compiled all PO files for translated build.') logger.info('starting sphinx build {0} at {1}'.format(builder, timestamp())) cmd = 'sphinx-build {0} -d {1}/doctrees-{2} {3} {4}' # per-builder-doctreea sphinx_cmd = cmd.format(get_sphinx_args(sconf, conf), os.path.join(conf.paths.projectroot, conf.paths.branch_output), os.path.basename(sconf.build_output), os.path.join(conf.paths.projectroot, conf.paths.branch_source), sconf.build_output) logger.debug(sphinx_cmd) out = command(sphinx_cmd, capture=True, ignore=True) # out = sphinx_native_worker(sphinx_cmd) logger.info('completed sphinx build {0} at {1}'.format(builder, timestamp())) if True: # out.return_code == 0: logger.info('successfully completed {0} sphinx build at {1}'.format(builder, timestamp())) finalizer_app = BuildApp(conf) finalizer_app.root_app = False finalize_sphinx_build(sconf, conf, finalizer_app) finalizer_app.run() else: logger.warning('the sphinx build {0} was not successful. not running finalize operation'.format(builder)) output = '\n'.join([out.err, out.out]) return out.return_code, output