{ "info": { "author": "Bearstech", "author_email": "py@bearstech.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Operating System :: POSIX", "Programming Language :: Python :: 3.5", "Topic :: System :: Systems Administration" ], "description": ".. Do not edit this file. It is generated from docs/index.rst. See docs/utils.py\n\n================================\nnuka - a provisioning tool\n================================\n\n.. image:: https://img.shields.io/pypi/l/nuka.svg\n :target: https://pypi.python.org/pypi/nuka\n\n.. image:: https://img.shields.io/pypi/pyversions/nuka.svg\n :target: https://pypi.python.org/pypi/nuka\n\n.. image:: https://travis-ci.org/bearstech/nuka.png?branch=master\n :target: https://travis-ci.org/bearstech/nuka\n\nBecause ops can dev.\n\nnuka is a provisioning tool focused on performance. It massively uses Asyncio and SSH.\nIt is compatible with docker vagrant and apache-libcloud.\n\n\nFull documentation is available at http://doc.bearstech.com/nuka\n\nQuickstart\n==========\n\nInstall nuka (See `Installation `_\nfor detailled steps)::\n\n $ pip install \"nuka[full]\"\n\nThen start a script:\n\n\n::\n\n #!/usr/bin/env python3.5\n import nuka\n from nuka.hosts import DockerContainer\n from nuka.tasks import (shell, file)\n\n # setup a docker container using the default image\n host = DockerContainer('mycontainer')\n\n\n async def do_something(host):\n\n # we just echoing something using the shell.command task\n await shell.command(['echo', 'it works'], host=host)\n\n # if no host is provided, then a var named `host` is searched\n # from the stack. Mean that this will works to\n await shell.command(['echo', 'it works too'])\n\n\n async def do_something_else(host):\n\n # log /etc/resolv.conf content\n res = await file.cat('/etc/resolv.conf')\n host.log.info(res.content)\n\n\n # those coroutines will run in parallell\n nuka.run(\n do_something(host),\n do_something_else(host),\n )\n\nRun it using::\n\n $ chmod +x your_file.py\n $ ./your_file.py -v\n\nThe first run will be slow because we have to pull the docker image.\nThe next run will take approximately 1s.\n\nGet some help::\n\n $ ./your_file.py -h\n\nLook at the generated gantt of your deployement::\n\n $ firefox .nuka/reports/your_file_gantt.html\n\nYou'll get a dynamic report like this screenshot:\n\n.. image:: https://doc.bearstech.com/nuka/_images/gantt.png\n :align: center\n\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "", "keywords": "devops docker vagrant gce", "license": "GPLv3", "maintainer": "", "maintainer_email": "", "name": "nuka", "package_url": "https://pypi.org/project/nuka/", "platform": "", "project_url": "https://pypi.org/project/nuka/", "project_urls": null, "release_url": "https://pypi.org/project/nuka/0.3/", "requires_dist": [ "pyaml", "jinja2", "uvloop", "asyncssh", "python-novaclient; extra == 'cloud'", "apache-libcloud; extra == 'cloud'", "PyCrypto; extra == 'cloud'", "docker-compose; extra == 'docker'", "tox; extra == 'full'", "ujson; extra == 'full'", "docker-compose; extra == 'full'", "python-novaclient; extra == 'full'", "apache-libcloud; extra == 'full'", "PyCrypto; extra == 'full'", "pytest; extra == 'full'", "pytest-asyncio; extra == 'full'", "coverage; extra == 'full'", "ujson; extra == 'speedup'", "ujson; extra == 'test'", "docker-compose; extra == 'test'", "python-novaclient; extra == 'test'", "apache-libcloud; extra == 'test'", "PyCrypto; extra == 'test'", "pytest; extra == 'test'", "pytest-asyncio; extra == 'test'", "coverage; extra == 'test'" ], "requires_python": "", "summary": "provisioning tool focused on performance.", "version": "0.3" }, "last_serial": 3557152, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "8b9d72a074b9a29071108efefcfbb536", "sha256": "db5ac17f4f082c947cde72c90636ed43233591b99fc213426e491ed6c30ec219" }, "downloads": -1, "filename": "nuka-0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "8b9d72a074b9a29071108efefcfbb536", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 61390, "upload_time": "2017-02-03T10:57:35", "url": "https://files.pythonhosted.org/packages/8c/e6/9312dc2c8ee4fd71931ee1aa28a08f3695e1b95b6c4599378699d7c755d1/nuka-0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "14eeb5b248df3801fd1c0364e9c79c6f", "sha256": "1962c7c20d3904ad5eb2ee3bb92df39d1a48bd5993eadd505f7c68bc184c5403" }, "downloads": -1, "filename": "nuka-0.1.tar.gz", "has_sig": false, "md5_digest": "14eeb5b248df3801fd1c0364e9c79c6f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 71173, "upload_time": "2017-02-03T10:57:32", "url": "https://files.pythonhosted.org/packages/7a/f2/581434ae6c2a8cfd89c9290e2f8b30e5466389cac44b8d312f71b950a7f4/nuka-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "3fd441228da60b856e8bde809898890f", "sha256": "89e5c31144740533383f06dcb6ae4a9044ee8d39ee782ba50032a8eceb326171" }, "downloads": -1, "filename": "nuka-0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "3fd441228da60b856e8bde809898890f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 73640, "upload_time": "2017-09-24T08:47:40", "url": "https://files.pythonhosted.org/packages/c8/57/63092cde9a9eb7519999544eb8fd9c76df8f31964e9118e64fc5b3d6ab44/nuka-0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "872752eee2a842692c8ec93f5bbc07d3", "sha256": "99c9b426df4ba84a652c19afa5a0e14a7c5beadabb6dd3e4ae1c53ac17943215" }, "downloads": -1, "filename": "nuka-0.2.tar.gz", "has_sig": false, "md5_digest": "872752eee2a842692c8ec93f5bbc07d3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 84397, "upload_time": "2017-09-24T08:47:38", "url": "https://files.pythonhosted.org/packages/db/d6/0b41e55c75363ccbba0b85695c0b461afd72452803f20c061e31548aefd0/nuka-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "8373f083afaadc1e5dc55c3f071b4439", "sha256": "5f49c685bad596fd2cd011ba15be36f0bb97af68302a4db09891150d8ea354ab" }, "downloads": -1, "filename": "nuka-0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "8373f083afaadc1e5dc55c3f071b4439", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 75069, "upload_time": "2018-02-06T14:02:39", "url": "https://files.pythonhosted.org/packages/5a/08/2aaef3ed9e5ed342539f5d3a5a6ff7729ed7a3559504891b57c293ca0c00/nuka-0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6875d04f4c3812d35af7bd99b3929d80", "sha256": "01265cb2d2ec2eb629b22523bf2f0ebefee202ab635bc8f433853b928d064f11" }, "downloads": -1, "filename": "nuka-0.3.tar.gz", "has_sig": false, "md5_digest": "6875d04f4c3812d35af7bd99b3929d80", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 85909, "upload_time": "2018-02-06T14:02:42", "url": "https://files.pythonhosted.org/packages/5a/77/3bbcfb6062c615d2d8dbd7d1d4d53a861a191d1ae5009b76eb414a58334f/nuka-0.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8373f083afaadc1e5dc55c3f071b4439", "sha256": "5f49c685bad596fd2cd011ba15be36f0bb97af68302a4db09891150d8ea354ab" }, "downloads": -1, "filename": "nuka-0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "8373f083afaadc1e5dc55c3f071b4439", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 75069, "upload_time": "2018-02-06T14:02:39", "url": "https://files.pythonhosted.org/packages/5a/08/2aaef3ed9e5ed342539f5d3a5a6ff7729ed7a3559504891b57c293ca0c00/nuka-0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6875d04f4c3812d35af7bd99b3929d80", "sha256": "01265cb2d2ec2eb629b22523bf2f0ebefee202ab635bc8f433853b928d064f11" }, "downloads": -1, "filename": "nuka-0.3.tar.gz", "has_sig": false, "md5_digest": "6875d04f4c3812d35af7bd99b3929d80", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 85909, "upload_time": "2018-02-06T14:02:42", "url": "https://files.pythonhosted.org/packages/5a/77/3bbcfb6062c615d2d8dbd7d1d4d53a861a191d1ae5009b76eb414a58334f/nuka-0.3.tar.gz" } ] }