123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172 |
- from paver.easy import *
- from paver import doctools
- from paver.setuputils import setup
- options(
- sphinx=Bunch(builddir=".build"),
- )
- def sphinx_builddir(options):
- return path("docs") / options.sphinx.builddir / "html"
- @task
- def clean_docs(options):
- sphinx_builddir(options).rmtree()
- @task
- @needs("clean_docs", "paver.doctools.html")
- def html(options):
- destdir = path("Documentation")
- destdir.rmtree()
- builtdocs = sphinx_builddir(options)
- builtdocs.move(destdir)
- @task
- @needs("paver.doctools.html")
- def qhtml(options):
- destdir = path("Documentation")
- builtdocs = sphinx_builddir(options)
- sh("rsync -az %s/ %s" % (builtdocs, destdir))
- @task
- @needs("clean_docs", "paver.doctools.html")
- def ghdocs(options):
- builtdocs = sphinx_builddir(options)
- sh("sphinx-to-github", cwd=builtdocs)
- sh("git checkout gh-pages && \
- cp -r %s/* . && \
- git commit . -m 'Rendered documentation for Github Pages.' && \
- git push origin gh-pages && \
- git checkout master" % builtdocs)
- @task
- @needs("clean_docs", "paver.doctools.html")
- def upload_pypi_docs(options):
- builtdocs = path("docs") / options.builddir / "html"
- sh("python setup.py upload_sphinx --upload-dir='%s'" % (builtdocs))
- @task
- @needs("upload_pypi_docs", "ghdocs")
- def upload_docs(options):
- pass
- @task
- def autodoc(options):
- sh("contrib/release/doc4allmods celery")
- @task
- def verifyindex(options):
- sh("contrib/release/verify-reference-index.sh")
- @task
- def flakes(options):
- noerror = getattr(options, "noerror", False)
- sh("""find celery -name '*.py' | xargs pyflakes | perl -mstrict -nle'
- my $flake = $_;open(my $f, "contrib/release/flakesignore.txt");
- my $ignored = 0;
- PATTERN: foreach my $p (<$f>) { chomp($p);
- if ($p && $flake =~ /$p/m) {
- $ignored = 1; last PATTERN; } } close($f);
- if (! $ignored) { print $flake; our $FOUND_FLAKE = 1; }
- }{exit $FOUND_FLAKE;
- '""", ignore_error=noerror)
- @task
- def clean_readme(options):
- path("README").unlink()
- path("README.rst").unlink()
- @task
- @needs("clean_readme")
- def readme(options):
- sh("python contrib/release/sphinx-to-rst.py docs/templates/readme.txt \
- > README.rst")
- sh("ln -sf README.rst README")
- @task
- def bump(options):
- sh("bump -c celery")
- @task
- @cmdopts([
- ("coverage", "c", "Enable coverage"),
- ("quick", "q", "Quick test"),
- ("verbose", "V", "Make more noise"),
- ])
- def test(options):
- cmd = "CELERY_LOADER=default nosetests"
- if getattr(options, "coverage", False):
- cmd += " --with-coverage3"
- if getattr(options, "quick", False):
- cmd = "QUICKTEST=1 SKIP_RLIMITS=1 %s" % cmd
- if getattr(options, "verbose", False):
- cmd += " --verbosity=2"
- sh(cmd)
- @task
- @cmdopts([
- ("noerror", "E", "Ignore errors"),
- ])
- def pep8(options):
- noerror = getattr(options, "noerror", False)
- return sh("""find . -name "*.py" | xargs pep8 | perl -nle'\
- print; $a=1 if $_}{exit($a)'""", ignore_error=noerror)
- @task
- def removepyc(options):
- sh("find . -name '*.pyc' | xargs rm")
- @task
- @needs("removepyc")
- def gitclean(options):
- sh("git clean -xdn")
- @task
- @needs("removepyc")
- def gitcleanforce(options):
- sh("git clean -xdf")
- @task
- @needs("pep8", "flakes", "autodoc", "verifyindex", "test", "gitclean")
- def releaseok(options):
- pass
- @task
- @needs("releaseok", "removepyc", "upload_docs")
- def release(options):
- pass
- @task
- def coreloc(options):
- sh("xargs sloccount < contrib/release/core-modules.txt")
- @task
- def testloc(options):
- sh("sloccount celery/tests")
- @task
- def loc(options):
- sh("sloccount celery")
|