From c05b06577785bdf34f1fcd051ecf6d4398d2f77e Mon Sep 17 00:00:00 2001 From: Jeff Forcier Date: Mon, 3 Mar 2014 17:27:10 -0800 Subject: [PATCH] Add new release task w/ API doc prebuilding --- tasks.py | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/tasks.py b/tasks.py index f8f4017..d48a0de 100644 --- a/tasks.py +++ b/tasks.py @@ -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)