{ "info": { "author": "Adam Jorgensen", "author_email": "adam.jorgensen.za@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Framework :: AsyncIO", "Framework :: Twisted", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: Jython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Utilities" ], "description": "OpenDNA Autobahn-Python Runners\n===============================\n\nThe OpenDNA Autobahn-Python Runners package provides a number of scripts that\ncan be used to launch Autobahn-Python components and connect them to a WAMP\nrouter.\n\n\nContents\n--------\n\n1. Installation\n2. Usage\n3. Command-line Parameters\n4. Twisted Runner\n5. AsyncIO Runner\n6. AsyncIO Multi-Runner\n7. Roadmap\n\n\nInstallation\n------------\n``pip install autobahn-python-runners``\n\nWhen the package is installed it will create the following scripts in your\nPython environment's scripts path:\n\n- ``run_twisted_component``\n- ``run_asyncio_component``\n- ``run_asyncio_components``\n\nOptionally, you ``pip install uvloop`` for enhanced event-loop perforance with\nthe AsyncIO runners. You will need ``libuv`` with installed in order to do this.\n\nUsage\n-----\nUsage can be achieved through one of two methods:\n\n0. Execute one of the scripts created during installation\n1. Execute one of the modules using the standard ``python -m`` method\n\n\nCommand-line Parameters\n-----------------------\nThe following command-line parameters are supported by all of the runners\nincluded in this package:\n\nRequired parameters:\n\n- ``-c`` or ``--component`` is a fully-qualified path to an Autobahn-Python\n component class E.g. ``some_org.some_package.some_module.SomeClass``. Can be\n alternatively specified using the ``WAMP_COMPONENT`` enviornment variable\n- ``-u`` or ``--url`` is a URL for the WAMP router to connect to\n E.g. ``ws://localhost:8080``. Can be alternatively specified using the\n ``WAMP_URL`` environment variable\n- ``-r`` or ``--realm`` is a Realm on the WAMP router you are connecting to. E.g.\n ``my.realm.name``. Can be alternatively specified using the ``WAMP_REALM``\n environment variable\n\nOptional parameters:\n\n- ``-e`` or ``--extra-file`` is a path to a JSON file which will be loaded and\n supplied to the component class instance via the config parameter of the\n class constructor method\n- ``-s`` or ``--use-ssl`` is value that will be cast to a boolean and used to\n specify whether or not SSL should be used for the WS connection. This\n parameter is usually unnecessary as the decision to use SSL is usually\n determined by the choice of WS protocol for the WAMP router URL. It is made\n available here simply for the purposes of completeness\n- ``-l`` or ``--loglevel`` is used to specify the logging level used by the runner.\n Defaults to ``info`` with other permitted values being ``critical``, ``error``,\n ``warning`` and ``debug``\n- ``--serializers`` is a fully qualified path to an Autobahn-Python serializer\n class. This parameter may be specified multiple times\n\n\nTwisted Runner\n--------------\nThe Twisted runner is provided by the ``opendna.autobahn.runners.run_twisted``\nmodule and can be used to run components that derive from the\n``autobahn.twisted.ApplicationSession`` class.\n\n\nAsyncIO Runner\n--------------\nThe AsyncIO runner is provided by the ``opendna.autobahn.runners.run_asyncio``\nmodule and can be used to run components that derive from the\n``autobahn.asyncio.ApplicationSession`` class.\n\n\nAsyncIO Multi-Runner\n--------------------\nThe AsyncIO multi-runner is provided by the ``opendna.autobahn.runners.multirun_asyncio``\nmodule and can be used to run multiple components that derive from the\n``autobahn.asyncio.ApplicationSession`` class within a single Python process.\n\nThese components will run within a single event-loop but each component will\nestablish a separate WS connection to the WAMP router.\n\nThe AsyncIO multi-runner makes the following changes to the parameter options:\n\n- ``-c``/``--component`` may be passed multiple times in order to specify\n multiple component classes. Each class instance will connect to the same\n WAMP router and realm specified using the relevant parameters\n- ``-e``/``--extra-file`` can still be used but behaves slightly differently in\n that it expects that the JSON file will contain a plain object where each\n key is a component class as specified using the ``-c``/``--component`` parameter\n and the value associated with each key is a plain object of data to be supplied\n to the relevant component class instance via the config parameter of the\n class constructor method\n- ``-n``/``--necromancy`` is used to enable the transport recovery feature. When\n enabled the multi-runner will periodically check to see if the WAMP connection\n between a component and the router has failed. If a failure is detected then\n a new component instance is created and will attempt to connect to the router\n- ``--necromancy-sleep`` accepts integers and defaults to ``10``. This parameter\n specifies how regularly the check for failed WAMP connections will be performed\n\n\nRoadmap\n-------\n\nDone:\n\n- Twisted runner\n- AsyncIO runner\n- AsyncIO multi-runner\n- Basic documentation\n- uvloop support for AsyncIO runners\n- Option for multi-runners to transparently restart crashed components\n\nTodo:\n\n- Tests\n\nMaybe:\n\n- Twisted multi-runner", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/opn-oss/autobahn-python-runners", "keywords": "autobahn crossbar twisted asyncio", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "autobahn-python-runners", "package_url": "https://pypi.org/project/autobahn-python-runners/", "platform": "", "project_url": "https://pypi.org/project/autobahn-python-runners/", "project_urls": { "Homepage": "https://github.com/opn-oss/autobahn-python-runners" }, "release_url": "https://pypi.org/project/autobahn-python-runners/18.3.15/", "requires_dist": null, "requires_python": "", "summary": "A collection of component runners for Autobahn Python", "version": "18.3.15" }, "last_serial": 3672013, "releases": { "17.7.11": [ { "comment_text": "", "digests": { "md5": "2d887a171202b0bc018d4bb466f238ff", "sha256": "0e95f7a59595c2f6b629b68be65ac745b029b0ea6c59b3fc02714816d1cab31f" }, "downloads": -1, "filename": "autobahn-python-runners-17.7.11.tar.gz", "has_sig": false, "md5_digest": "2d887a171202b0bc018d4bb466f238ff", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6644, "upload_time": "2017-07-11T13:55:45", "url": "https://files.pythonhosted.org/packages/ec/ca/bbac1822f08ef404350d89fa71d1812f96a566ddf58349e02c9329d57f92/autobahn-python-runners-17.7.11.tar.gz" } ], "17.7.12": [ { "comment_text": "", "digests": { "md5": "8a8d9f1603fdf8714d486abb56ee5108", "sha256": "1309d6526f413c25856232aa75ca8a91da7cec00f4f0aabb512c9e6bc9044fd9" }, "downloads": -1, "filename": "autobahn-python-runners-17.7.12.tar.gz", "has_sig": false, "md5_digest": "8a8d9f1603fdf8714d486abb56ee5108", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6692, "upload_time": "2017-07-12T08:16:39", "url": "https://files.pythonhosted.org/packages/82/e1/72b54049c80663f3c7ac6da298f1a7e072aa27762cc71e87c7b99d3aace8/autobahn-python-runners-17.7.12.tar.gz" } ], "17.8.4": [ { "comment_text": "", "digests": { "md5": "69d9de72100b2da8c9497b1a57f7d25a", "sha256": "964e03d50e986365faef7de7916769075c4c532e3d810039b5a10e631eca07af" }, "downloads": -1, "filename": "autobahn-python-runners-17.8.4.tar.gz", "has_sig": false, "md5_digest": "69d9de72100b2da8c9497b1a57f7d25a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7360, "upload_time": "2017-08-04T08:23:01", "url": "https://files.pythonhosted.org/packages/17/3f/5295fb67e8babef7108eccc279431b4b8e2f4c44601ed85eb3d4e22a9ddd/autobahn-python-runners-17.8.4.tar.gz" } ], "18.3.15": [ { "comment_text": "", "digests": { "md5": "77a2819dbf3efac9ca8a6ffd1553bc9d", "sha256": "3cea672c447245cbe7b49214e14de96b2a3938f0119df58043b86f814f6314b0" }, "downloads": -1, "filename": "autobahn-python-runners-18.3.15.tar.gz", "has_sig": false, "md5_digest": "77a2819dbf3efac9ca8a6ffd1553bc9d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6997, "upload_time": "2018-03-15T10:54:06", "url": "https://files.pythonhosted.org/packages/b7/68/0d56e145d7e0496b8ee6c21d696bbef7b5bdbe8c072e7b4756c1e6a1fbe8/autobahn-python-runners-18.3.15.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "77a2819dbf3efac9ca8a6ffd1553bc9d", "sha256": "3cea672c447245cbe7b49214e14de96b2a3938f0119df58043b86f814f6314b0" }, "downloads": -1, "filename": "autobahn-python-runners-18.3.15.tar.gz", "has_sig": false, "md5_digest": "77a2819dbf3efac9ca8a6ffd1553bc9d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6997, "upload_time": "2018-03-15T10:54:06", "url": "https://files.pythonhosted.org/packages/b7/68/0d56e145d7e0496b8ee6c21d696bbef7b5bdbe8c072e7b4756c1e6a1fbe8/autobahn-python-runners-18.3.15.tar.gz" } ] }