{ "info": { "author": "Vlad Calin", "author_email": "vlad.s.calin@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "Emerald - a service registry\n============================\n\nThis is a simple service registry compatible with [pymicroservice](http://github.com/vladcalin/pymicroservice) based \nservices which uses JSON RPC protocol for communication and sqlalchemy for data persistance.\n\nWhat is this?\n-------------\n\nThis service registry tracks microservices and helps them to identify\neach other with little knowledge (just the location of the service registry.\n\nThis service is implemented using te [pymicroservice](http://github.com/vladcalin/pymicroservice)\nlibrary and exposes the following methods:\n\n- ``ping(name, host, port)`` - registers the fact that at ``http://host:port/api``\n is a service running with the name ``name``. A service must call ping at least\n once every 60 seconds in order to be considered active.\n- ``locate_service(name)`` - locates a service based on a given pattern (glob-like pattern).\n returns a list of ``{host: ..., port: ...}` (multiple instances of the same service\n can run at the same time).\n \nInstallation\n------------\n\n\n```\n git clone https://github.com/vladcalin/emerald.git\n python emerald/setup.py install\n```\n\nTo run the tests, use the command\n\n```\n python emerald/setup.py test\n```\n\nStart the service\n-----------------\n\nIn order to start the service at ``http://0.0.0.0:5000/api``, use the command\n\n```\n emerald --host=0.0.0.0 --port=0.0.0.0 --dburl=sqlite:///:memory: --accesslog=access.log\n```\n\nThe following parameters can be specified:\n\n- ``--host`` = the address to bind\n- ``--port`` = the port to bind\n- ``--dburl`` = a database url (as in the \n [sqlalchemy](http://docs.sqlalchemy.org/en/latest/dialects/index.html) \n specifications). Here are some quick examples:\n - using SQLite: ``sqlite:///mydatabase.db``, \n ``sqlite:////etc/run/servreg/servreg.db``, ``sqlite://:memory:``\n - using MySQL: ``mysql+mysqldb://:@:/`` (requires mysql-python),\n ``mysql+pymysql://:@:/`` (requires pymysql)\n - using Oracle with cx_oracle: ``oracle+cx_oracle://user:pass@host:port/dbname``\n - using PostgreSQL with psycopg2: ``postgresql+psycopg2://user:password@host:port/dbname``\n - using PostgreSQL with pg8000: ``postgresql+pg8000://user:password@host:port/dbname``\n \n **Note** : you must install the database driver separately (except for sqlite).\n \n- ``--accesslog`` = the file where the access log will be stored\n\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/vladcalin/emerald", "keywords": "microservice", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "emerald", "package_url": "https://pypi.org/project/emerald/", "platform": "", "project_url": "https://pypi.org/project/emerald/", "project_urls": { "Homepage": "https://github.com/vladcalin/emerald" }, "release_url": "https://pypi.org/project/emerald/0.0.1.dev0/", "requires_dist": null, "requires_python": "", "summary": "Service registry using pymicroservice", "version": "0.0.1.dev0" }, "last_serial": 2569243, "releases": { "0.0.1.dev0": [ { "comment_text": "", "digests": { "md5": "80f421e49aefe0bb9e41e71343df19c8", "sha256": "59460f812102bb92847d7ae8ef5808a51223fdb933ea389d800993a0a4ab6f7e" }, "downloads": -1, "filename": "emerald-0.0.1.dev0.tar.gz", "has_sig": false, "md5_digest": "80f421e49aefe0bb9e41e71343df19c8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1098310, "upload_time": "2017-01-12T09:30:43", "url": "https://files.pythonhosted.org/packages/80/6a/5d0d861c2552e765116e591af0e3423b78339e797c7d6bb8f26e8d99947b/emerald-0.0.1.dev0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "80f421e49aefe0bb9e41e71343df19c8", "sha256": "59460f812102bb92847d7ae8ef5808a51223fdb933ea389d800993a0a4ab6f7e" }, "downloads": -1, "filename": "emerald-0.0.1.dev0.tar.gz", "has_sig": false, "md5_digest": "80f421e49aefe0bb9e41e71343df19c8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1098310, "upload_time": "2017-01-12T09:30:43", "url": "https://files.pythonhosted.org/packages/80/6a/5d0d861c2552e765116e591af0e3423b78339e797c7d6bb8f26e8d99947b/emerald-0.0.1.dev0.tar.gz" } ] }