To find out what’s new in this version of Invoke, please see the changelog.
Invoke is a Python (2.7 and 3.4+) 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 task @task def clean(c, 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: c.run("rm -rf {}".format(pattern)) @task def build(c, docs=False): c.run("python setup.py build") if docs: c.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
Where Fabric 1.x considered the command-line approach the default mode of use, Invoke (and tools built on it) are equally at home embedded in your own Python code or a REPL:
>>> from invoke import run >>> cmd = "pip install -r requirements.txt" >>> result = run(cmd, hide=True, warn=True) >>> print(result.ok) True >>> print(result.stdout.splitlines()[-1]) Successfully installed invocations-0.13.0 pep8-1.5.7 spec-1.3.1Following 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 -e git+https://github.com/pyinvoke/invoke#egg=invoke.
Metadata
Release files for invoke 1.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| invoke-1.1.0.tar.gz | 309.8 kB | Details |
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| invoke-1.1.0-py3-none-any.whl | Python 3 | none | any | Details |
| invoke-1.1.0-py2-none-any.whl | Python 2 | none | any | Details |
Total release size: 630.6 kB
Release files / invoke-1.1.0.tar.gz
| Download URL | invoke-1.1.0.tar.gz |
|---|---|
| Size | 309.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
265eead8c89805a2ac5083200842db6da7636ac63fb4fe0d1121b930770f3e2a
|
|
BLAKE2b-256 checksum How to use checksums |
5c54bb21679f58d85574fe2a17addef3c9b619217758856b6ba1a7cbbdec26dd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / invoke-1.1.0-py3-none-any.whl
| Download URL | invoke-1.1.0-py3-none-any.whl |
|---|---|
| Size | 160.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1db6cf918e5df10efe4d61101b19763abe1510b6b2fe8c553daba25476de8044
|
|
BLAKE2b-256 checksum How to use checksums |
d049d7e5bc7fba721c7dc8d9ace297eeb67be1eee226d2abb9d89849cb167a23
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / invoke-1.1.0-py2-none-any.whl
| Download URL | invoke-1.1.0-py2-none-any.whl |
|---|---|
| Size | 160.8 kB |
| Tags | Python 2 |
|
SHA-256 checksum How to use checksums |
3e8e2c2e69493227e210a1d19ccc7c44189240385dda4c9b8eb5d98fa0f68a3e
|
|
BLAKE2b-256 checksum How to use checksums |
799e6e54f429bad815e009cf175c6038561ae257ae0ea82c67804b0501cdaf83
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |