Add new release task w/ API doc prebuilding

This commit is contained in:
Jeff Forcier 2014-03-03 17:27:10 -08:00
parent d97d28e4e2
commit c05b065777
1 changed files with 20 additions and 7 deletions

View File

@ -1,23 +1,26 @@
from os.path import join
from shutil import rmtree, move
from invoke import Collection, ctask as task
from invocations import docs as _docs
from invocations.packaging import publish
d = 'sites'
# Usage doc/API site (published as docs.paramiko.org)
path = join(d, 'docs')
docs_path = join(d, 'docs')
docs_build = join(docs_path, '_build')
docs = Collection.from_module(_docs, name='docs', config={
'sphinx.source': path,
'sphinx.target': join(path, '_build'),
'sphinx.source': docs_path,
'sphinx.target': docs_build,
})
# Main/about/changelog site ((www.)?paramiko.org)
path = join(d, 'www')
www_path = join(d, 'www')
www = Collection.from_module(_docs, name='www', config={
'sphinx.source': path,
'sphinx.target': join(path, '_build'),
'sphinx.source': www_path,
'sphinx.target': join(www_path, '_build'),
})
@ -31,4 +34,14 @@ def coverage(ctx):
ctx.run("coverage run --source=paramiko test.py --verbose")
ns = Collection(test, coverage, docs=docs, www=www)
# Until we stop bundling docs w/ releases. Need to discover use cases first.
@task('docs') # Will invoke the API doc site build
def release(ctx):
# Move the built docs into where Epydocs used to live
rmtree('docs')
move(docs_build, 'docs')
# Publish
publish(ctx)
ns = Collection(test, coverage, release, docs=docs, www=www)