{ "info": { "author": "Luca Sbardella", "author_email": "luca@quantmind.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Utilities" ], "description": "**Toolkit for agile development with python, git, github, docker and aws**\n\n:Badges: |license| |pyversions| |status| |pypiversion|\n:Master CI: |master-build| |coverage-master|\n:Downloads: http://pypi.python.org/pypi/pulsar-agile\n:Source: https://github.com/quantmind/pulsar-agile\n:Mailing list: `google user group`_\n:Design by: `Quantmind`_ and `Luca Sbardella`_\n:Platforms: Linux, OSX, Windows. Python 3.5 and above\n:Keywords: git, github, python, aws, release, documentation\n\n\n.. |pypiversion| image:: https://badge.fury.io/py/pulsar-agile.svg\n :target: https://pypi.python.org/pypi/pulsar-agile\n.. |pyversions| image:: https://img.shields.io/pypi/pyversions/pulsar-agile.svg\n :target: https://pypi.python.org/pypi/pulsar-agile\n.. |license| image:: https://img.shields.io/pypi/l/pulsar-agile.svg\n :target: https://pypi.python.org/pypi/pulsar-agile\n.. |status| image:: https://img.shields.io/pypi/status/pulsar-agile.svg\n :target: https://pypi.python.org/pypi/pulsar-agile\n.. |downloads| image:: https://img.shields.io/pypi/dd/pulsar-agile.svg\n :target: https://pypi.python.org/pypi/pulsar-agile\n.. |master-build| image:: https://travis-ci.org/quantmind/pulsar-agile.svg?branch=master\n :target: https://travis-ci.org/quantmind/pulsar-agile\n.. |coverage-master| image:: https://coveralls.io/repos/github/quantmind/pulsar-agile/badge.svg?branch=master\n :target: https://coveralls.io/github/quantmind/pulsar-agile?branch=master\n\n|\n\n.. contents:: **CONTENTS**\n\n\nInstall\n==========\n\nThis is a python package for aiding deployment and dev-ops type operations on the local machine.\nTo install the package you need python 3.5 or above::\n\n pip install -U pulsar-agile\n\n\nSetup\n-------\n\nOnce installed, create the ``play.py`` script inside of your repository:\n\n.. code:: python\n\n if __name__ == '__main__':\n from agile.app import AgileManager\n AgileManager(description='Release manager for my package').start()\n\n\nand create the agile.json_ file along side it.\n\n\nUsage\n---------\n\n**Check tasks available**::\n\n python play.py -l\n\n\nLogging\n----------\n\nWhen running tasks, the logging level is by default set to info. For a more\nverbose logging pass ``--log-level agile.debug``.\n\n\nCommands\n============\n\n\nGithub\n---------\n\nPulsar agile contains two commands which interacts with github:\n\n* **labels**\n* **release**\n\nConfiguration\n~~~~~~~~~~~~~~~~\n\nBefore using github commands one needs to configure the ``.gitconfig`` file by adding the ``username``\nand the ``token``. The ``token`` is obtained from github from the\n`personal access tokens `_ page::\n\n [user]\n email = ...\n username = lsbardel\n token = bqedoeunzplesw52tme00zwuj2lhbjr8emrbrxax\n\nLabels\n~~~~~~~~~~~\n\nKeep labels consistent across repositories.\nTo add a label command create the **labels** entry in the `agile.json` file:\n\n.. code:: json\n\n {\n \"labels\": {\n \"group1\": {\n \"repositories\": [\n \"quantmind/pulsar-agile\",\n \"quantmind/pulsar-cloud\"\n ],\n \"labels\": {\n \"aws\": \"e47911\",\n \"benchmark\": \"006b75\"\n }\n }\n },\n \"tasks\": {\n \"repo-labels\": {\n \"description\": \"Update labels in all repositories\",\n \"command\": [\"labels\"]\n }\n }\n }\n\nand run the ``repo-labels`` command::\n\n python play.py repo-labels\n\n\nRelease\n~~~~~~~~~~~~\n\n**Release dry run**::\n\n python play.py release\n\n**Release push**::\n\n python play.py release --push\n\n\nHttpCopy\n----------\n\nCopy files over an Http connection.\nFor example::\n\n \"httpcopy\": {\n \"sockjs\": {\n \"src\": \"https://cdnjs.cloudflare.com/ajax/libs/sockjs-client/{{ sockjs_version }}/sockjs.js\",\n \"target\": \"/media/\"\n }\n }\n\n\nSass\n------\n\nCompile scss files using SASS\n\n\nShell\n--------\n\nRun arbitrary commands on the shell\n\n\nTemplate\n------------\n\nTransform jinja2_ templates files into new files with context dictionary given in the `agile.json`\nor other `json` files. It can also replace ad-hoc string via the ``replace`` directive.\n\n\nTesting\n==========\n\nTo run unit tests, create a ``test_config.py`` file alongside this file and add\nthe following two entries:\n\n.. code:: python\n\n import os\n\n os.environ['GITHUB_USERNAME'] = \"\"\n os.environ['GITHUB_TOKEN'] = \"\"\n os.environ['GITHUB_TEST_REPO'] = \"/\"\n\nChangelog\n==============\n\n* `Versions 0.5 `_\n* `Versions 0.4 `_\n* `Versions 0.3 `_\n* `Versions 0.2 `_\n\n.. _`Luca Sbardella`: http://lucasbardella.com\n.. _`Quantmind`: http://quantmind.com\n.. _`google user group`: https://groups.google.com/forum/?fromgroups#!forum/python-pulsar\n.. _agile.json: https://github.com/quantmind/pulsar-agile/blob/master/agile.json\n.. _jinja2: https://github.com/pallets/jinja\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/quantmind/pulsar-agile", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "pulsar-agile", "package_url": "https://pypi.org/project/pulsar-agile/", "platform": "", "project_url": "https://pypi.org/project/pulsar-agile/", "project_urls": { "Homepage": "https://github.com/quantmind/pulsar-agile" }, "release_url": "https://pypi.org/project/pulsar-agile/0.5.0/", "requires_dist": null, "requires_python": "", "summary": "Python toolkit for agile release managing, building and issue tracking", "version": "0.5.0" }, "last_serial": 2418478, "releases": { "0.3.0": [ { "comment_text": "", "digests": { "md5": "4e67486f33ec04d201247db5cb1e4d99", "sha256": "286a5389c3319ff09976a04aa22a8006cf4fdf1cc00818dc1ad3e90e0f1670e7" }, "downloads": -1, "filename": "pulsar-agile-0.3.0.tar.gz", "has_sig": false, "md5_digest": "4e67486f33ec04d201247db5cb1e4d99", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 49212, "upload_time": "2016-02-23T16:55:00", "url": "https://files.pythonhosted.org/packages/67/ea/ca1c163bba1a829bf29f23207266bfc70a399ac8850cc499cce62e65d84b/pulsar-agile-0.3.0.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "07ae066ac367f2c04aaf0ae308945559", "sha256": "28d1fe9913f6b3b47626734f12062cc4cad137bc17201ce5e2b6c0cdf38fa233" }, "downloads": -1, "filename": "pulsar_agile-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "07ae066ac367f2c04aaf0ae308945559", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 23960, "upload_time": "2016-05-14T13:15:48", "url": "https://files.pythonhosted.org/packages/6d/51/a2f67bde31bcc097599adbd224e5cfc76244bc1ded48e984b35eb04c7bd8/pulsar_agile-0.4.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4ccd8da1392bdf6e818a3b7032271c5e", "sha256": "671f61e5ae3207d678a10f114c284019dc57cf232b20eafb5715fadfa82c344a" }, "downloads": -1, "filename": "pulsar-agile-0.4.0.tar.gz", "has_sig": false, "md5_digest": "4ccd8da1392bdf6e818a3b7032271c5e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 53644, "upload_time": "2016-05-14T13:15:40", "url": "https://files.pythonhosted.org/packages/ac/a7/0100839d1c88c627d187b54026be9172b6b2c68e06890eb50a4414844fc0/pulsar-agile-0.4.0.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "684e213d62ce7f0ab26545a4ed382ebf", "sha256": "a1ac3a14c58a609fec7914c48bc22e227e1237144540f125b23e9363e1470fe3" }, "downloads": -1, "filename": "pulsar_agile-0.5.0-py3-none-any.whl", "has_sig": false, "md5_digest": "684e213d62ce7f0ab26545a4ed382ebf", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 31277, "upload_time": "2016-10-23T16:51:16", "url": "https://files.pythonhosted.org/packages/cb/92/37aa0f7016589312953ab09d070a5a7423c850e07dc9366839cf6f6945d6/pulsar_agile-0.5.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "24590714c8f61837f459e5d22f4d89b6", "sha256": "7d1623d907def0a92586627243bd7d6fb313d18d7f8894842062989ff54ba62f" }, "downloads": -1, "filename": "pulsar-agile-0.5.0.tar.gz", "has_sig": false, "md5_digest": "24590714c8f61837f459e5d22f4d89b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23921, "upload_time": "2016-10-23T16:51:13", "url": "https://files.pythonhosted.org/packages/eb/11/c21ca565b9de20856e576e10e940058835a5d41619cd6597e32ad2f61161/pulsar-agile-0.5.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "684e213d62ce7f0ab26545a4ed382ebf", "sha256": "a1ac3a14c58a609fec7914c48bc22e227e1237144540f125b23e9363e1470fe3" }, "downloads": -1, "filename": "pulsar_agile-0.5.0-py3-none-any.whl", "has_sig": false, "md5_digest": "684e213d62ce7f0ab26545a4ed382ebf", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 31277, "upload_time": "2016-10-23T16:51:16", "url": "https://files.pythonhosted.org/packages/cb/92/37aa0f7016589312953ab09d070a5a7423c850e07dc9366839cf6f6945d6/pulsar_agile-0.5.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "24590714c8f61837f459e5d22f4d89b6", "sha256": "7d1623d907def0a92586627243bd7d6fb313d18d7f8894842062989ff54ba62f" }, "downloads": -1, "filename": "pulsar-agile-0.5.0.tar.gz", "has_sig": false, "md5_digest": "24590714c8f61837f459e5d22f4d89b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23921, "upload_time": "2016-10-23T16:51:13", "url": "https://files.pythonhosted.org/packages/eb/11/c21ca565b9de20856e576e10e940058835a5d41619cd6597e32ad2f61161/pulsar-agile-0.5.0.tar.gz" } ] }