{ "info": { "author": "MP team", "author_email": "matproj-develop@googlegroups.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Information Technology", "Intended Audience :: Science/Research", "Intended Audience :: System Administrators", "Operating System :: OS Independent", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Topic :: Database :: Front-Ends", "Topic :: Other/Nonlisted Topic", "Topic :: Scientific/Engineering" ], "description": "Propjockey helps you queue up workflows and dynamically change their priorities for running;\nit's like having a [slipmat](https://en.wikipedia.org/wiki/Slipmat) for scientific computing.\n\nPropjockey is a tool for staff managing scientific computing\nresources to facilitate a user community voting to prioritize\ncalculation of properties across a database of known entities. For\nexample, across a database of entities corresponding to known\ncrystalline materials, the full elastic tensor may not already be\ncalculated for each material because such a calculation is\ncomputationally expensive, not of interest for all materials, etc.\n\nThe staff managing the growth and dissemination of this database of\nmaterial structures and properties wishes to empower the community of\nusers consuming the data to help prioritize computational jobs in a\nway that will dovetail with in-house priorities. Propjockey helps with\nthis, connecting users to details of running workflows and providing\nemail notification when property calculations complete.\n\n* Former name: Interactive Leaderboard for Property Requests and Notification (ILPRN).\n\nExample deployment: http://elastic.pj.materialsproject.org/.\n\n[Science Gateways 2016](http://sciencegateways.org/gateways2016/) conference: [extended abstract](docs/gateways2016-extended-abstract.pdf) and [talk slides](docs/gateways2016-talk-slides.pdf).\n\n## Development\n\nIn a fresh virtualenv:\n\n```\npip install -e .\nexport FLASK_APP=propjockey\nexport FLASK_DEBUG=1\nexport PROPJOCKEY_SETTINGS=$(pwd)/local_settings.py\nflask run\n```\n\nThere is a provided `local_settings.example.py` to serve as a template\nfor your `local_settings.py`, which if stored at the root level will\nbe `.gitignore`d.\n\nEnsure local settings are appropriate for your use case. Function\ndefinitions are part of the settings. Hopefully, many of the various\nsettings, including some of the functions, will not need to change for\nyou to get started.\n\n## Testing\n\nYou can make a test database derived from your real, live data. The\ndatabase will be located at mongodb://localhost:27017/propjockey_test and\nhave entries, votes, and workflows collections. All user emails in\nyour real data will be aliased to protect user identities. To drop any\nexisting test database and generate a new one using your data:\n\n```\nflask make_test_db\n```\n\nThen, to test the code against the test database:\n\n```\npython setup.py test\n```\n\nThe `USE_TEST_CLIENTS` local setting enables you to use your test\ndatabase during development and not just when running automated\ntests. This is nice when lacking a reliable/fast network connection.\n\nTo save your test database to a file for backup/sharing:\n\n```\nmongodump --db=propjockey_test --gzip --archive=propjockey_test.gz\n```\n\nand to restore it during development / on a testing server:\n\n```\nmongorestore --drop db=propjockey_test --gzip --archive=propjockey_test.gz\n```\n\n## Deployment\n\nThere are many officially documented\n[options](http://flask.pocoo.org/docs/0.11/deploying/) for deploying a\nFlask app such as this, for example [gunicorn](http://gunicorn.org/)\nbehind an [nginx](https://nginx.org/en/) proxy, e.g.\n\n```\n# activate the virtualenv\ngunicorn -w 4 -b 0.0.0.0:4000 propjockey:app\n# and ensure your nginx configuration `proxy_pass`es to 0.0.0.0:4000\n```\n\nAn example proxy setup is described at the official Flask\ndocumentation\n[here](http://flask.pocoo.org/docs/0.11/deploying/wsgi-standalone/#proxy-setups).\n\n## Running Email Notification as a Cron Job\n\n```\n# activate the virtualenv\n# cd to directory with local_settings.py\n# Ensure `USE_TEST_CLIENTS` local setting is False\nexport PROPJOCKEY_SETTINGS=$(pwd)/local_settings.py\npython -m propjockey.notify\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/materialsproject/propjockey", "keywords": "", "license": "modified BSD", "maintainer": "", "maintainer_email": "", "name": "propjockey", "package_url": "https://pypi.org/project/propjockey/", "platform": "", "project_url": "https://pypi.org/project/propjockey/", "project_urls": { "Homepage": "https://github.com/materialsproject/propjockey" }, "release_url": "https://pypi.org/project/propjockey/0.1.0/", "requires_dist": null, "requires_python": "", "summary": "Spinning property workflows. Taking requests.", "version": "0.1.0" }, "last_serial": 3356602, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "d36e39a2e6c02853b3f73d09e9d4a8bc", "sha256": "89b85a61beb9e84d2c4ff3be0ca2e906a7511e473958eb9421602ea7915b0571" }, "downloads": -1, "filename": "propjockey-0.1.0-py2.7.egg", "has_sig": false, "md5_digest": "d36e39a2e6c02853b3f73d09e9d4a8bc", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 35225, "upload_time": "2017-11-22T23:01:21", "url": "https://files.pythonhosted.org/packages/cc/7c/4329a99dd6e4dee32aa1629e7e4ec066090695a31256800261bd7d64a023/propjockey-0.1.0-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "eb50cb31217535188cacf1e8ff8a7d8b", "sha256": "353d1857d34699fc9feb40684fcd132cbc4fe557533243e5bec6017ffff42485" }, "downloads": -1, "filename": "propjockey-0.1.0-py2-none-any.whl", "has_sig": false, "md5_digest": "eb50cb31217535188cacf1e8ff8a7d8b", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 21334, "upload_time": "2017-11-22T23:03:05", "url": "https://files.pythonhosted.org/packages/77/1e/a8adff0d6cafa2c3fc6f4ca23e82d10d4a7d9c08f96c7952a1b0fc89b554/propjockey-0.1.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "60c6658231343fac800c2a2017959435", "sha256": "ce78858cab4e62560745e59a452edfd8be1271a993dd3ac7bae89a0124f02b42" }, "downloads": -1, "filename": "propjockey-0.1.0.tar.gz", "has_sig": false, "md5_digest": "60c6658231343fac800c2a2017959435", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17282, "upload_time": "2017-11-22T23:00:18", "url": "https://files.pythonhosted.org/packages/01/56/6edd6531c4cd5800d1bb3603ca24733ca48373a5665b5a2f10c60e9978ef/propjockey-0.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d36e39a2e6c02853b3f73d09e9d4a8bc", "sha256": "89b85a61beb9e84d2c4ff3be0ca2e906a7511e473958eb9421602ea7915b0571" }, "downloads": -1, "filename": "propjockey-0.1.0-py2.7.egg", "has_sig": false, "md5_digest": "d36e39a2e6c02853b3f73d09e9d4a8bc", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 35225, "upload_time": "2017-11-22T23:01:21", "url": "https://files.pythonhosted.org/packages/cc/7c/4329a99dd6e4dee32aa1629e7e4ec066090695a31256800261bd7d64a023/propjockey-0.1.0-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "eb50cb31217535188cacf1e8ff8a7d8b", "sha256": "353d1857d34699fc9feb40684fcd132cbc4fe557533243e5bec6017ffff42485" }, "downloads": -1, "filename": "propjockey-0.1.0-py2-none-any.whl", "has_sig": false, "md5_digest": "eb50cb31217535188cacf1e8ff8a7d8b", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 21334, "upload_time": "2017-11-22T23:03:05", "url": "https://files.pythonhosted.org/packages/77/1e/a8adff0d6cafa2c3fc6f4ca23e82d10d4a7d9c08f96c7952a1b0fc89b554/propjockey-0.1.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "60c6658231343fac800c2a2017959435", "sha256": "ce78858cab4e62560745e59a452edfd8be1271a993dd3ac7bae89a0124f02b42" }, "downloads": -1, "filename": "propjockey-0.1.0.tar.gz", "has_sig": false, "md5_digest": "60c6658231343fac800c2a2017959435", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17282, "upload_time": "2017-11-22T23:00:18", "url": "https://files.pythonhosted.org/packages/01/56/6edd6531c4cd5800d1bb3603ca24733ca48373a5665b5a2f10c60e9978ef/propjockey-0.1.0.tar.gz" } ] }