Skip to main content

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 task
    
    @task
    def clean(ctx, 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:
            ctx.run("rm -rf %s" % pattern)
    
    @task
    def build(ctx, docs=False):
        ctx.run("python setup.py build")
        if docs:
            ctx.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 -e git+https://github.com/pyinvoke/invoke#egg=invoke.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

invoke-0.14.0.tar.gz (247.3 kB view details)

Uploaded Source

Built Distributions

invoke-0.14.0-py3-none-any.whl (131.4 kB view details)

Uploaded Python 3

invoke-0.14.0-py2-none-any.whl (132.2 kB view details)

Uploaded Python 2

File details

Details for the file invoke-0.14.0.tar.gz.

File metadata

  • Download URL: invoke-0.14.0.tar.gz
  • Upload date:
  • Size: 247.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for invoke-0.14.0.tar.gz
Algorithm Hash digest
SHA256 5daa0882831ab56611b870851a7ad4025152623f83812ff32fd70dbf62fc1bee
MD5 2951e97007f9490710c5123aa57f6881
BLAKE2b-256 de83a8d5f2fb626bd79c84260be1dd4a05821fa59299bb261131ba07d80c1bf8

See more details on using hashes here.

File details

Details for the file invoke-0.14.0-py3-none-any.whl.

File metadata

File hashes

Hashes for invoke-0.14.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cac781c81206150d3ba6d23ce2c3ef01cea6872aba06baa025136c926422595d
MD5 ada12e96929b1be9e194ade453c333b7
BLAKE2b-256 16ce63df8915bc373f068b47dd336088c7c0d90ecfdc73ad83aff127fe7b0566

See more details on using hashes here.

File details

Details for the file invoke-0.14.0-py2-none-any.whl.

File metadata

File hashes

Hashes for invoke-0.14.0-py2-none-any.whl
Algorithm Hash digest
SHA256 c8e937b8bea2eea5b27320c606371e5a1b8e27d4b2b3eddbd21d3ebb2419939b
MD5 5022da278412a147022b857806efc74f
BLAKE2b-256 40cae1b2f0fdd451afa56f3c9a32a1c8f1186b1583b164cddd8eb020a5d69bc5

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page