Skip to main content
https://badge.fury.io/py/taskin.png https://travis-ci.org/ionrock/taskin.png?branch=master

Taskin provides simple task management. Tasks are simple callables that will be executed using a pool of resources. The pool can be a process or thread pool in order to achieve the required concurrency. The suite of tasks is called a flow. A flow is defined by defining a list of functions to run.

Here is an example:

import subprocess

from pprint import pprint

from taskin import IfTask, MapTask, do_flow


def foo(data):
    return 1


def check(v):
    return v == 1


def bar(data):
    return 'bar'


def baz(data):
    return 'baz'


def finish(data):
    result = {}

    for i in data:
        zone, ips = i
        result[zone] = ips

    return result


def dig_it(zone):
    cmd = 'dig +short %s' % zone
    print('running: %s' % cmd.strip())

    ips = subprocess.check_output(cmd.split()).strip().split('\n')
    return (zone, ips)


myflow = [
    foo,
    IfTask(
        check,
        [bar],
        [baz]
    ),
    MapTask(dig_it, [
        'ionrock.org',
        'google.com',
        'yahoo.com',
    ]),
    finish,
]


def main():
    results = do_flow(myflow, {})
    pprint(results)
    print('Done')

if __name__ == '__main__':
    main()

Metadata

Release files for taskin 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for taskin 0.1.0
File Size Uploaded
taskin-0.1.0.tar.gz 3.1 kB Details

Release files / taskin-0.1.0.tar.gz

Download URL taskin-0.1.0.tar.gz
Size 3.1 kB
Tags Source
SHA-256 checksum
How to use checksums
1c865fbec4e9aa3a78b71e721aebb3093ab0967933159e3b57214d299df7c63a
BLAKE2b-256 checksum
How to use checksums
760573960148c339579a37223423ad4d06b0de46e0ea93c32a4a440658e821e3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.1.0 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page