{ "info": { "author": "Eric Larson", "author_email": "eric@ionrock.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Natural Language :: English", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4" ], "description": "======\ntaskin\n======\n\n.. image:: https://badge.fury.io/py/taskin.png\n :target: http://badge.fury.io/py/taskin\n\n.. image:: https://travis-ci.org/ionrock/taskin.png?branch=master\n :target: https://travis-ci.org/ionrock/taskin\n\n\nTaskin provides simple task management. Tasks are simple callables\nthat will be executed using a pool of resources. The pool can be a\nprocess or thread pool in order to achieve the required\nconcurrency. The suite of tasks is called a `flow`. A flow is defined\nby defining a list of functions to run.\n\nHere is an example:\n\n::\n\n import subprocess\n\n from pprint import pprint\n\n from taskin import IfTask, MapTask, do_flow\n\n\n def foo(data):\n return 1\n\n\n def check(v):\n return v == 1\n\n\n def bar(data):\n return 'bar'\n\n\n def baz(data):\n return 'baz'\n\n\n def finish(data):\n result = {}\n\n for i in data:\n zone, ips = i\n result[zone] = ips\n\n return result\n\n\n def dig_it(zone):\n cmd = 'dig +short %s' % zone\n print('running: %s' % cmd.strip())\n\n ips = subprocess.check_output(cmd.split()).strip().split('\\n')\n return (zone, ips)\n\n\n myflow = [\n foo,\n IfTask(\n check,\n [bar],\n [baz]\n ),\n MapTask(dig_it, [\n 'ionrock.org',\n 'google.com',\n 'yahoo.com',\n ]),\n finish,\n ]\n\n\n def main():\n results = do_flow(myflow, {})\n pprint(results)\n print('Done')\n\n if __name__ == '__main__':\n main()\n\n\n* Free software: BSD license\n* Documentation: https://taskin.readthedocs.org.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/ionrock/taskin", "keywords": "taskin", "license": "BSD", "maintainer": null, "maintainer_email": null, "name": "taskin", "package_url": "https://pypi.org/project/taskin/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/taskin/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/ionrock/taskin" }, "release_url": "https://pypi.org/project/taskin/0.1.0/", "requires_dist": null, "requires_python": null, "summary": "Simple task management", "version": "0.1.0" }, "last_serial": 2300203, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "45107ee2c8d1b9da829c194c6d27b146", "sha256": "1c865fbec4e9aa3a78b71e721aebb3093ab0967933159e3b57214d299df7c63a" }, "downloads": -1, "filename": "taskin-0.1.0.tar.gz", "has_sig": false, "md5_digest": "45107ee2c8d1b9da829c194c6d27b146", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3063, "upload_time": "2016-08-24T10:32:14", "url": "https://files.pythonhosted.org/packages/76/05/73960148c339579a37223423ad4d06b0de46e0ea93c32a4a440658e821e3/taskin-0.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "45107ee2c8d1b9da829c194c6d27b146", "sha256": "1c865fbec4e9aa3a78b71e721aebb3093ab0967933159e3b57214d299df7c63a" }, "downloads": -1, "filename": "taskin-0.1.0.tar.gz", "has_sig": false, "md5_digest": "45107ee2c8d1b9da829c194c6d27b146", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3063, "upload_time": "2016-08-24T10:32:14", "url": "https://files.pythonhosted.org/packages/76/05/73960148c339579a37223423ad4d06b0de46e0ea93c32a4a440658e821e3/taskin-0.1.0.tar.gz" } ] }