{ "info": { "author": "Noorul Islam K M", "author_email": "noorul@noorul.com", "bugtrack_url": null, "classifiers": [ "Environment :: Console", "Intended Audience :: Information Technology", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Operating System :: POSIX :: Linux", "Programming Language :: Python", "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" ], "description": "Python client for Spark Jobserver\n=================================\n\n.. image:: https://travis-ci.org/spark-jobserver/python-sjsclient.svg?branch=master\n :target: https://travis-ci.org/spark-jobserver/python-sjsclient\n :align: right\n\n.. image:: https://coveralls.io/repos/spark-jobserver/python-sjsclient/badge.svg?branch=master&service=github\n :target: https://coveralls.io/github/spark-jobserver/python-sjsclient?branch=master\n :align: right\n\n.. image:: https://readthedocs.org/projects/python-sjsclient/badge/?version=latest\n :target: http://python-sjsclient.readthedocs.org/en/latest/?badge=latest\n :alt: Documentation Status\n\n.. image:: https://img.shields.io/pypi/v/python-sjsclient.svg\n :target: https://pypi.python.org/pypi/python-sjsclient\n :alt: Latest version\n\nFeatures\n--------\n\n- Supports Spark Jobserver 0.6.0+\n\n\nLibrary Installation\n--------------------\n\n::\n\n $ pip install python-sjsclient\n\n\nGetting started\n---------------\n\nFirst create a client instance::\n\n >>> from sjsclient import client\n >>> sjs = client.Client(\"http://JOB_SERVER_URL:PORT\")\n\nUploading a jar to Spark Jobserver::\n\n >>> jar_file_path = os.path.join(\"path\", \"to\", \"jar\")\n >>> jar_blob = open(jar_file_path, 'rb').read()\n >>> app = sjs.apps.create(\"test_app\", jar_blob)\n\nUploading a python egg to Spark Jobserver::\n\n >>> from sjsclient import app\n >>> egg_file_path = os.path.join(\"path\", \"to\", \"egg\")\n >>> egg_blob = open(egg_file_path, 'rb').read()\n >>> app = sjs.apps.create(\"test_python_app\", egg_blob, app.AppType.PYTHON)\n\nListing available apps::\n\n >>> for app in sjs.apps.list():\n ... print app.name\n ...\n test_app\n my_streaming_app\n\nCreating an adhoc job::\n\n >>> test_app = sjs.apps.get(\"test_app\")\n >>> class_path = \"spark.jobserver.VeryShortDoubleJob\"\n >>> config = {\"test_config\": \"test_config_value\"}\n >>> job = sjs.jobs.create(test_app, class_path, conf=config)\n >>> print(\"Job Status: \", job.status)\n Job Status: STARTED\n\nCreating a synchronous adhoc job::\n\n >>> job = sjs.jobs.create(test_app, class_path, conf=config, sync=True)\n >>> print(job.result)\n [2, 4, 6]\n\nPolling for job status::\n\n >>> job = sjs.jobs.create(...)\n >>> while job.status != \"FINISHED\":\n >>> time.sleep(2)\n >>> job = sjs.jobs.get(job.jobId)\n\nGetting job config::\n\n >>> config = {\"test_config\": \"test_config_value\"}\n >>> job = sjs.jobs.create(test_app, class_path, conf=config)\n >>> job_config = job.get_config()\n >>> print(\"test_config value: \", job_config[\"test_config\"])\n test_config_value: test_config_value\n\nListing jobs::\n\n >>> for job in sjs.jobs.list():\n ... print job.jobId\n ...\n 8c5bd52f-6486-44ee-9ac3-a8327ee40494\n 24b67573-3115-49c7-983c-d0eff0499b71\n 99c8be9e-a0ec-42dd-8a2c-9a8680bc5051\n bb82f712-d4b4-43a4-8e4d-e4bb272e85db\n\nLimiting jobs list::\n\n >>> for job in sjs.jobs.list(limit=1):\n ... print job.jobId\n ...\n 8c5bd52f-6486-44ee-9ac3-a8327ee40494\n\nCreating a named context::\n\n >>> ctx_config = {'num-cpu-cores': '1', 'memory-per-node': '512m'}\n >>> ctx = sjs.contexts.create(\"test_context\", ctx_config)\n\nRunning a job in a named context::\n\n >>> test_app = sjs.apps.get(\"test_app\")\n >>> test_ctx = sjs.contexts.get(\"test_context\")\n >>> config = {\"test_config\": \"test_config_value\"}\n >>> job = sjs.jobs.create(test_app, class_path, ctx=test_ctx, conf=config)\n >>> print(\"Job Status: \", job.status)\n Job Status: STARTED\n\n\nDocumentation\n-------------\n\nhttp://python-sjsclient.readthedocs.org\n\n\nDiscussion list\n---------------\n\n*spark-jobserver* google group: https://groups.google.com/forum/#!forum/spark-jobserver\n\nRequirements\n------------\n\n- Python >= 2.7.0\n\nLicense\n-------\n\n``python-sjsclient`` is offered under the Apache 2 license.\n\nSource code\n------------\n\nThe latest developer version is available in a github repository:\nhttps://github.com/spark-jobserver/python-sjsclient\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/spark-jobserver/python-sjsclient", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "python-sjsclient", "package_url": "https://pypi.org/project/python-sjsclient/", "platform": "", "project_url": "https://pypi.org/project/python-sjsclient/", "project_urls": { "Homepage": "http://github.com/spark-jobserver/python-sjsclient" }, "release_url": "https://pypi.org/project/python-sjsclient/0.9.0/", "requires_dist": null, "requires_python": "", "summary": "Python client for Spark Jobserver", "version": "0.9.0" }, "last_serial": 4943051, "releases": { "0.1.0.0b2": [ { "comment_text": "", "digests": { "md5": "1835f45b9e7d929039f36ccd6adcf03c", "sha256": "4ee6575e1db94df242c737860fa1e3728e24aec836e96c2c47de35bc9161b249" }, "downloads": -1, "filename": "python-sjsclient-0.1.0.0b2.tar.gz", "has_sig": false, "md5_digest": "1835f45b9e7d929039f36ccd6adcf03c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14324, "upload_time": "2015-12-08T04:48:08", "url": "https://files.pythonhosted.org/packages/e9/40/e61f01d02984e9e7d808adfe8e02961261867bc11bb01fcff4e859cde556/python-sjsclient-0.1.0.0b2.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "2889b6e7b8a9f6066fbfb3fd9fc8f18b", "sha256": "6dba609f9310dddcc1553be05b40c47b160d26f91db6e44dd0ed9efe6139b536" }, "downloads": -1, "filename": "python-sjsclient-0.1.1.tar.gz", "has_sig": false, "md5_digest": "2889b6e7b8a9f6066fbfb3fd9fc8f18b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14752, "upload_time": "2016-02-19T17:01:01", "url": "https://files.pythonhosted.org/packages/47/cf/30229654690443073fb77d98e020a2e6eee89ac634a6519af4f1e96babd5/python-sjsclient-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "fb653fea5693858b482338529b83a9f1", "sha256": "304794aa29cff147be7bb64d4f4880638d1b22c5c8529585ed4887b2e4ced7d7" }, "downloads": -1, "filename": "python-sjsclient-0.1.2.tar.gz", "has_sig": false, "md5_digest": "fb653fea5693858b482338529b83a9f1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14830, "upload_time": "2016-06-20T04:49:22", "url": "https://files.pythonhosted.org/packages/46/78/09e41126e8ddd7025e9ae6903f2b37c32905dbda97ead8eeba32dbc9905a/python-sjsclient-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "115cb9fb6318bb272c05615a86961dbc", "sha256": "758342fe194167f46ab56e279b6d17910d5f0d3357d2b3a5d1d4e78d9b61d3e2" }, "downloads": -1, "filename": "python-sjsclient-0.1.3.tar.gz", "has_sig": false, "md5_digest": "115cb9fb6318bb272c05615a86961dbc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15798, "upload_time": "2016-10-02T04:40:17", "url": "https://files.pythonhosted.org/packages/8d/dc/a1bed01cf5a59fc5b10a0581e0f6cc03ff1c1ff88e1f694c166cf0282d31/python-sjsclient-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "3e30539fd2f28db61961cd164e115ead", "sha256": "04505949eb97b23287a18243a391b6fea3131dbb83a3dd70f040c8ca49d77896" }, "downloads": -1, "filename": "python-sjsclient-0.1.4.tar.gz", "has_sig": false, "md5_digest": "3e30539fd2f28db61961cd164e115ead", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16105, "upload_time": "2016-10-06T14:14:40", "url": "https://files.pythonhosted.org/packages/21/e0/bf4ca32cb5bfca85af209ac4af04ac08c9dbedf729189a7a196119430c61/python-sjsclient-0.1.4.tar.gz" } ], "0.6.2": [ { "comment_text": "", "digests": { "md5": "7f9a622cdfda7dfd7ad92fbab6fcf9e1", "sha256": "2f7a0eead474d4db50ffe8e471607ebefbb8d5c90900a81f211a6f36c7a1e2c4" }, "downloads": -1, "filename": "python-sjsclient-0.6.2.tar.gz", "has_sig": false, "md5_digest": "7f9a622cdfda7dfd7ad92fbab6fcf9e1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16112, "upload_time": "2017-01-15T16:32:23", "url": "https://files.pythonhosted.org/packages/15/69/d3c5cf844692398231becfa3d0466eecd9397f5d1fc68bc0f319d08a99c3/python-sjsclient-0.6.2.tar.gz" } ], "0.6.3": [ { "comment_text": "", "digests": { "md5": "e3ff0af31b23d13d4da56c675a1604ad", "sha256": "430083b3a9aa4952e2c2abc150eea16264d3c6ed0687499e5d6908ed4d7fa1e8" }, "downloads": -1, "filename": "python-sjsclient-0.6.3.tar.gz", "has_sig": false, "md5_digest": "e3ff0af31b23d13d4da56c675a1604ad", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16164, "upload_time": "2017-02-23T07:17:36", "url": "https://files.pythonhosted.org/packages/9c/84/8ffd0ea3617d49217c7e3d84dbde0e29c44eb7e7bd08ffa3c618e77dc5fc/python-sjsclient-0.6.3.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "89613eb231dec01d41ed8f620219903a", "sha256": "e1da2ed70f266b7781b222b00c785e605baebe460933f06d1df46097d4efc623" }, "downloads": -1, "filename": "python-sjsclient-0.7.0.tar.gz", "has_sig": false, "md5_digest": "89613eb231dec01d41ed8f620219903a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22388, "upload_time": "2017-03-31T08:15:36", "url": "https://files.pythonhosted.org/packages/a1/a2/05cc79e9572b21b4d25b0f7439dbccb5ce91350bd3687e998227705df6fe/python-sjsclient-0.7.0.tar.gz" } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "d82b8f02e1bcfc6045d3e990ef46ade0", "sha256": "a41756cdb0f7b18ec1731e3db8d8d7b28535bfa7257c4a798313bf2647bf89c7" }, "downloads": -1, "filename": "python-sjsclient-0.8.0.tar.gz", "has_sig": false, "md5_digest": "d82b8f02e1bcfc6045d3e990ef46ade0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22694, "upload_time": "2017-11-27T01:00:18", "url": "https://files.pythonhosted.org/packages/bb/f2/e47b63ddb1623748e21a42a6f8ace61dc436af23a530cd4d6bc6e59c9674/python-sjsclient-0.8.0.tar.gz" } ], "0.8.1": [ { "comment_text": "", "digests": { "md5": "073fd0f44514fe6aa8d9fcd044a7bb88", "sha256": "84abfb3af72bd1ca69087dc12bcf07b67a09665afe69daa22ad368f5334ae934" }, "downloads": -1, "filename": "python-sjsclient-0.8.1.tar.gz", "has_sig": false, "md5_digest": "073fd0f44514fe6aa8d9fcd044a7bb88", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23606, "upload_time": "2019-01-18T06:32:03", "url": "https://files.pythonhosted.org/packages/da/31/f5fa9aaf09b62f1d665d65ee6b4cb2bd4e8c3ecbf1ee561c186987011620/python-sjsclient-0.8.1.tar.gz" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "1a5d4583e50e98dc79bde69a57a3964d", "sha256": "c3c0a3ad42fba27c86933eb63138a799f82425cc1997ca21eb831e7ca53d5636" }, "downloads": -1, "filename": "python-sjsclient-0.9.0.tar.gz", "has_sig": false, "md5_digest": "1a5d4583e50e98dc79bde69a57a3964d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23959, "upload_time": "2019-03-15T07:54:33", "url": "https://files.pythonhosted.org/packages/b3/cc/467c25f7ba0a9e7e38febf0eaf3c30fabf17aa718d8ae970ea92ef823c54/python-sjsclient-0.9.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "1a5d4583e50e98dc79bde69a57a3964d", "sha256": "c3c0a3ad42fba27c86933eb63138a799f82425cc1997ca21eb831e7ca53d5636" }, "downloads": -1, "filename": "python-sjsclient-0.9.0.tar.gz", "has_sig": false, "md5_digest": "1a5d4583e50e98dc79bde69a57a3964d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23959, "upload_time": "2019-03-15T07:54:33", "url": "https://files.pythonhosted.org/packages/b3/cc/467c25f7ba0a9e7e38febf0eaf3c30fabf17aa718d8ae970ea92ef823c54/python-sjsclient-0.9.0.tar.gz" } ] }