{ "info": { "author": "Marian Ignev", "author_email": "m@ignev.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Operating System :: POSIX", "Operating System :: POSIX :: BSD", "Operating System :: POSIX :: Linux", "Operating System :: Unix", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Topic :: System :: Shells", "Topic :: Utilities" ], "description": "Serf Membership\n=======\n\nThis is very simple script for election a leader (primary) from all members tagged with specific role.\n\n# How can i use it?\n\nIf you want to use this you should add 2 tags to every `serf agent`:\n\n1. role\n2. startedat // unixtimestamp `date +%Y%m%d%H%M%S%s%N`\n\nBased on these 2 tags `serf_membership` select single master from `role` group.\n\n## Usage Example\n\n```python\n>>> from serf_membership.client import SerfMembership\n>>> members = SerfMembership(role=\"web\")\n>>> members.primary()\n{'Status': 'alive', 'DelegateCur': 4, 'Addr': '127.0.0.1', 'Tags': {'startedat': 999999999999999999999999, 'role': 'web', 'dc': 'dc1'}, 'ProtocolMax': 3, 'DelegateMin': 2, 'ProtocolMin': 1, 'ProtocolCur': 2, 'Port': 7946, 'DelegateMax': 4, 'Name': 'os3-2.devnodes.eu-bg-sof.startappcloud.com'}\n```\n\n## Serf run example\n\n```\n/usr/local/bin/serf agent -config-dir=/etc/serf/ -tag startedat=`date +%Y%m%d%H%M%S%s%N`\n```\n\n# Installation\n\nfrom source\n\n # git clone git@github.com:mignev/serf-membership.git\n # cd serf-membership\n # python setup.py install\n\n\nwith pip\n\n # pip install serf_membership\n\n\n#Copyright\nCopyright (c) 2016 Marian Ignev. See LICENSE for further details.", "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/mignev/serf-membership", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "serf_membership", "package_url": "https://pypi.org/project/serf_membership/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/serf_membership/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/mignev/serf-membership" }, "release_url": "https://pypi.org/project/serf_membership/1.2/", "requires_dist": null, "requires_python": null, "summary": "This is very simple script for election a leader (primary) from all members tagged with specific role.", "version": "1.2" }, "last_serial": 2217740, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "fe3de2931bb1cb79b6f824b015d02f1d", "sha256": "2d1f40ba47ec5a684227141a4ecd22270f5f9f585012f006e341934598f507f2" }, "downloads": -1, "filename": "serf_membership-1.0.tar.gz", "has_sig": false, "md5_digest": "fe3de2931bb1cb79b6f824b015d02f1d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2140, "upload_time": "2016-07-11T12:12:19", "url": "https://files.pythonhosted.org/packages/cd/21/2fc3d2ac8be916dfcdce5ae1b1d4bac90e79b443bf799bb46ebc0637ee1c/serf_membership-1.0.tar.gz" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "33179ce3b46864fb7ec58ee81bc1fe6a", "sha256": "3330213814b88ec4b365195683969cd3fc9d8561d67e5840b8e0fc320004af2b" }, "downloads": -1, "filename": "serf_membership-1.1.tar.gz", "has_sig": false, "md5_digest": "33179ce3b46864fb7ec58ee81bc1fe6a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2610, "upload_time": "2016-07-11T12:24:33", "url": "https://files.pythonhosted.org/packages/ad/67/adb49a877aa436268e3436421d5a40eb8e0e50fa51e60d1de47124a2bea7/serf_membership-1.1.tar.gz" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "94978c6a96f4605048cf4d64fca6ee66", "sha256": "df0b888bb52827b9e58d792ba7cc3d04f69fa1e6f0f056afd8c3d885a562c331" }, "downloads": -1, "filename": "serf_membership-1.2.tar.gz", "has_sig": false, "md5_digest": "94978c6a96f4605048cf4d64fca6ee66", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2708, "upload_time": "2016-07-12T23:01:41", "url": "https://files.pythonhosted.org/packages/a2/e1/de5bc8b6428cad3db874de2eecb6f9265ad23698fe1e2b5a47b471c37df8/serf_membership-1.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "94978c6a96f4605048cf4d64fca6ee66", "sha256": "df0b888bb52827b9e58d792ba7cc3d04f69fa1e6f0f056afd8c3d885a562c331" }, "downloads": -1, "filename": "serf_membership-1.2.tar.gz", "has_sig": false, "md5_digest": "94978c6a96f4605048cf4d64fca6ee66", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2708, "upload_time": "2016-07-12T23:01:41", "url": "https://files.pythonhosted.org/packages/a2/e1/de5bc8b6428cad3db874de2eecb6f9265ad23698fe1e2b5a47b471c37df8/serf_membership-1.2.tar.gz" } ] }