Pythonic task execution
Project description
To find out what’s new in this version of Invoke, please see the changelog.
Invoke is a Python (2.6+ and 3.3+) task execution tool & library, drawing inspiration from various sources to arrive at a powerful & clean feature set.
Like Ruby’s Rake tool and Invoke’s own predecessor Fabric 1.x, it provides a clean, high level API for running shell commands and defining/organizing task functions from a tasks.py file:
from invoke import run, task @task def clean(docs=False, bytecode=False, extra=''): patterns = ['build'] if docs: patterns.append('docs/_build') if bytecode: patterns.append('**/*.pyc') if extra: patterns.append(extra) for pattern in patterns: run("rm -rf %s" % pattern) @task def build(docs=False): run("python setup.py build") if docs: run("sphinx-build docs docs/_build")
From GNU Make, it inherits an emphasis on minimal boilerplate for common patterns and the ability to run multiple tasks in a single invocation:
$ invoke clean build
Following the lead of most Unix CLI applications, it offers a traditional flag-based style of command-line parsing, deriving flag names and value types from task signatures (optionally, of course!):
$ invoke clean --docs --bytecode build --docs --extra='**/*.pyo' $ invoke clean -d -b build --docs -e '**/*.pyo' $ invoke clean -db build -de '**/*.pyo'
Like many of its predecessors, it offers advanced features as well – namespacing, task aliasing, before/after hooks, parallel execution and more.
For documentation, including detailed installation information, please see http://pyinvoke.org. Post-install usage information may be found in invoke --help.
You can install the development version via pip install invoke==dev --allow-unverified invoke.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for invoke-0.12.2-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9df8d03e251c962096457fc724d114f42bd57a13eefd1be11f56c30b8537b601 |
|
MD5 | c4ef0c34a94438c44c7a68a92d04792e |
|
BLAKE2b-256 | 8fc17a659d4752d7a4571416599c87fd93b22623a1a78f5a3395f1ee3d0f8633 |