{ "info": { "author": "Robert D. French", "author_email": "robert@robertdfrench.me", "bugtrack_url": null, "classifiers": [], "description": "Psychic Disco\n-----------------------------------\n\n- Are you a poor dope with a program to deploy? \n- Need to produce a demo, but haven't yet hit pay dirt?\n- Love python development, but not product delivery?\n\nThen let Psychic Disco be your principal delegate for publicly displaying your work!\n\nBy leveraging the pioneering domains of AWS Lambda and the Serverless Web, Psychic Disco allows even plebian dummies like you and I to scale the platforms of our dreams on the cheap.\n\nStinking Badges\n---------------\n\n.. image:: https://travis-ci.org/robertdfrench/psychic-disco.svg?branch=master\n :target: https://travis-ci.org/robertdfrench/psychic-disco\n.. image:: https://coveralls.io/repos/github/robertdfrench/psychic-disco/badge.svg?branch=master\n :target: https://coveralls.io/github/robertdfrench/psychic-disco?branch=master \n\nInstalling\n----------\n\nInstall like so::\n\n pip install psychic_disco\n\nAssumptions\n-----------\n\n * All your microservices live in python modules\n * All your entrypoints are decorated with @lambda_entry_point\n\nDeclaring Entrypoints and API methods\n-------------------------------------\nMake a new entrypoint::\n\n @lambda_entry_point\n def handler(event, context):\n # important code here\n\nMaking a new api method automatically registers the entrypoint::\n\n @api_method(\"POST\", \"/cereal\"):\n def create_cereal(event, context):\n # cereal creation logic here\n\nDefinitions for your API methods are available in ``psychic_disco.Api``.\n\nDiscovering Entrypoints\n-----------------------\n\nDo this thing::\n\n psychic_disco discover_entrypoints\n\nOr, if your code lives elsewhere::\n\n psychic_disco --repo path/to/st/elsewhere discover_entrypoints\n\nCreating a Deployment Package\n-----------------------------\nDo this thing::\n\n psychic_disco bundle\n\nThat will make a virtualenv, install your dependencies, and zip it all up for you. This assumes that you have ``psychic_disco.config.default_s3_bucket`` defined in your ``psychic_disco_config.py``\n\nDeploying Lambda Functions\n--------------------------\nOnce a deployment package has been uploaded to Amazon S3, you can install the lambda functions you defined like so::\n\n psychic_disco deploy_lambdas\n\nThis assumes that you have ``psychic_disco.config.default_iam_role`` defined in your ``psychic_disco_config.py``\n\nQuerying AWS\n------------\nYou can see what has already been configured on AWS by running::\n\n psychic_disoc show_installed_routes \n\nWhich will output something like:\n\n===== ======= ================\nverb path lambda-function\n===== ======= ================\nGET /users users-list_all\nPOST /users users-create_new\nPATCH /user/7 users-update\n===== ======= ================", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/robertdfrench/psychic-disco", "keywords": null, "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "psychic_disco", "package_url": "https://pypi.org/project/psychic_disco/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/psychic_disco/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://github.com/robertdfrench/psychic-disco" }, "release_url": "https://pypi.org/project/psychic_disco/0.10.2/", "requires_dist": null, "requires_python": null, "summary": "Pythonic Microservices on AWS Lambda", "version": "0.10.2" }, "last_serial": 2163790, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "2a7344cad428a40a0b79fe9fa346f01f", "sha256": "32b8f08492e430e1c25017f678c08daecfcca7bb59f616c37fa06f295aab0f2a" }, "downloads": -1, "filename": "psychic_disco-0.1.0.tar.gz", "has_sig": false, "md5_digest": "2a7344cad428a40a0b79fe9fa346f01f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1085, "upload_time": "2016-04-17T21:37:23", "url": "https://files.pythonhosted.org/packages/95/b5/d1f11b853bf8dc39f6e727205e8eba8eeaa1db22ae24d843cc87e6514e93/psychic_disco-0.1.0.tar.gz" } ], "0.10.0": [ { "comment_text": "", "digests": { "md5": "30ee76cf7a9a38908866adc7520dfb4e", "sha256": "ab2189a7bab2f06c8aa5308e329e4980d7f554063924289d9a8eecb52f9546aa" }, "downloads": -1, "filename": "psychic_disco-0.10.0.tar.gz", "has_sig": false, "md5_digest": "30ee76cf7a9a38908866adc7520dfb4e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9540, "upload_time": "2016-06-09T02:43:17", "url": "https://files.pythonhosted.org/packages/02/6d/82fd0a7de983398d7192ef9f2ff08646b1ad86b079a223d947a812cfb622/psychic_disco-0.10.0.tar.gz" } ], "0.10.2": [ { "comment_text": "", "digests": { "md5": "28346abfa1cf27f32be0c2523ce94ae3", "sha256": "49a8f6267e5e2de320712e2bd95353533d22ee1ccecd45b73e11890b798c1717" }, "downloads": -1, "filename": "psychic_disco-0.10.2.tar.gz", "has_sig": false, "md5_digest": "28346abfa1cf27f32be0c2523ce94ae3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10088, "upload_time": "2016-06-12T20:19:54", "url": "https://files.pythonhosted.org/packages/b5/06/9adcaaebeff63c1b34cf1a0dc1dd54784e1d0c3749e2301adc4d2c023ff0/psychic_disco-0.10.2.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "86982609617bdc6ff14040928fd0dc92", "sha256": "09f5bb4525728ded58bf7da53efcc719c490ba6513457502746ce84464e4f99b" }, "downloads": -1, "filename": "psychic_disco-0.2.0.tar.gz", "has_sig": false, "md5_digest": "86982609617bdc6ff14040928fd0dc92", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1385, "upload_time": "2016-04-17T22:38:45", "url": "https://files.pythonhosted.org/packages/29/f1/d1e1c1f1f10a3996623353bc7a90f22008e3480ea26bb0489fc167429f1b/psychic_disco-0.2.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "e08eb234774bbdd1f0cfdaff8027c7c3", "sha256": "f2c53bc362addbbc3ca5722103a4ac1b85fc95979f3dbb5ffcfa3907af118a09" }, "downloads": -1, "filename": "psychic_disco-0.3.1.tar.gz", "has_sig": false, "md5_digest": "e08eb234774bbdd1f0cfdaff8027c7c3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2329, "upload_time": "2016-04-19T03:42:25", "url": "https://files.pythonhosted.org/packages/2b/4b/08ea418b83b584e600047abea0fc556a3fd4924894ab0a793dd8a7aa752c/psychic_disco-0.3.1.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "64eac8cdcbfb48fc2830147eb2665d5f", "sha256": "d971f60c2be59f655e286f01eaad2172bab9af091c7a66f593fcaa4997ca5063" }, "downloads": -1, "filename": "psychic_disco-0.4.0.tar.gz", "has_sig": false, "md5_digest": "64eac8cdcbfb48fc2830147eb2665d5f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2470, "upload_time": "2016-04-20T11:17:41", "url": "https://files.pythonhosted.org/packages/c7/af/750d0937293b8942ef470322a665ecd376b57fae6801feca15450edee48a/psychic_disco-0.4.0.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "03f22aceb3d721ea6a2e0db3f3aac11e", "sha256": "eae471ef9f5d962fcd4636ed6b6e185357c518db752d8f03328fc8e3d6f63f29" }, "downloads": -1, "filename": "psychic_disco-0.5.0.tar.gz", "has_sig": false, "md5_digest": "03f22aceb3d721ea6a2e0db3f3aac11e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3152, "upload_time": "2016-04-27T22:02:23", "url": "https://files.pythonhosted.org/packages/08/8c/4318e537d7c3c3c227949b43634f07dbdc2b1dcb6db2d6446a48caf10e9a/psychic_disco-0.5.0.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "3153b9331d56da9d1a2e5284840ba7e9", "sha256": "c515c46a17cc520532e33373d81ed76ca99aec0b190608e168d821d46a4819f7" }, "downloads": -1, "filename": "psychic_disco-0.6.0.tar.gz", "has_sig": false, "md5_digest": "3153b9331d56da9d1a2e5284840ba7e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3569, "upload_time": "2016-05-08T02:27:01", "url": "https://files.pythonhosted.org/packages/2d/e6/ec8f051262b6ee32c816332d65c67614dd3a0c85d610b27726baa387d31c/psychic_disco-0.6.0.tar.gz" } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "5dc7f412e0a3337038eb64f8bac0a079", "sha256": "9548d6a950f0d8f6218a4055acd3a69b2a173ffd1001b4a568f227793736c850" }, "downloads": -1, "filename": "psychic_disco-0.6.1.tar.gz", "has_sig": false, "md5_digest": "5dc7f412e0a3337038eb64f8bac0a079", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3661, "upload_time": "2016-05-08T02:31:50", "url": "https://files.pythonhosted.org/packages/66/01/b255a17869eea1fdcebaf9c24f1cd26be89df9e0ce85eac31e68e6c6faaf/psychic_disco-0.6.1.tar.gz" } ], "0.6.2": [ { "comment_text": "", "digests": { "md5": "7f0c641c7710a7a3291b6454f54a2f85", "sha256": "a45764d1206f802e1e94259ca440dfe707a891d8ed77b94d9f42be73847f211d" }, "downloads": -1, "filename": "psychic_disco-0.6.2.tar.gz", "has_sig": false, "md5_digest": "7f0c641c7710a7a3291b6454f54a2f85", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4302, "upload_time": "2016-05-11T23:38:14", "url": "https://files.pythonhosted.org/packages/ee/b6/8495bdedf569274a9442bde3e041f96280872ed45cc7b343522960dd07fb/psychic_disco-0.6.2.tar.gz" } ], "0.6.3": [ { "comment_text": "", "digests": { "md5": "a5453340e66e26540b896652559ee8d0", "sha256": "4a18def59b9347b090e5e30158db0bfc0dc3a2eda2f0f44a8393f3c25e67cff8" }, "downloads": -1, "filename": "psychic_disco-0.6.3.tar.gz", "has_sig": false, "md5_digest": "a5453340e66e26540b896652559ee8d0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4356, "upload_time": "2016-05-12T02:21:42", "url": "https://files.pythonhosted.org/packages/3b/af/94029cf69cf367ea37c7bda81f8a9e89132e25f32e7d63de4b430aeda983/psychic_disco-0.6.3.tar.gz" } ], "0.6.5": [ { "comment_text": "", "digests": { "md5": "bdffad5419e96fc334ac4e2fbeccdf97", "sha256": "2927c5f1bfc7caf4c43eac2ed2d441f6069090324b75b8bc5e01c4d3742abb35" }, "downloads": -1, "filename": "psychic_disco-0.6.5.tar.gz", "has_sig": false, "md5_digest": "bdffad5419e96fc334ac4e2fbeccdf97", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4775, "upload_time": "2016-05-14T14:10:51", "url": "https://files.pythonhosted.org/packages/c1/e3/1e881cbac91668ba2bf9157d4ea0f61ba418b977dd60e5d4c5ec923818b2/psychic_disco-0.6.5.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "c6744cf2fc89d04590d0e64f8d51c226", "sha256": "7adf1a107ff12a9e547c0ee06d1eabea1080ceb231e55a64966e19e7336644cc" }, "downloads": -1, "filename": "psychic_disco-0.7.0.tar.gz", "has_sig": false, "md5_digest": "c6744cf2fc89d04590d0e64f8d51c226", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5853, "upload_time": "2016-05-15T00:03:33", "url": "https://files.pythonhosted.org/packages/73/d9/64e92d1b5ba890921544ca69b03e76a73efdc423a6ce965fde8ec85a76d3/psychic_disco-0.7.0.tar.gz" } ], "0.7.1": [ { "comment_text": "", "digests": { "md5": "398ee1e83a4768c4db46493800d5a2ea", "sha256": "c3a3b010d574c43d1e1390c87e9af1baabab4b7ec2436d5bd9d5f4285dc2479a" }, "downloads": -1, "filename": "psychic_disco-0.7.1.tar.gz", "has_sig": false, "md5_digest": "398ee1e83a4768c4db46493800d5a2ea", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6102, "upload_time": "2016-05-15T13:34:23", "url": "https://files.pythonhosted.org/packages/ed/7d/25db8a0a2a0192132957e7100ae697741cb820739cfe9fd7eaa216099544/psychic_disco-0.7.1.tar.gz" } ], "0.7.2": [ { "comment_text": "", "digests": { "md5": "b7920f833156bb8e5f86356d779d48cd", "sha256": "ce1eb7635a168a0bf579f61c53622585eb3980548431264550776bd87ae734db" }, "downloads": -1, "filename": "psychic_disco-0.7.2.tar.gz", "has_sig": false, "md5_digest": "b7920f833156bb8e5f86356d779d48cd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6291, "upload_time": "2016-05-15T14:01:24", "url": "https://files.pythonhosted.org/packages/c8/a9/2a3d326743264cc202d61f2f4c399436a2301649157c61304b84b360a22e/psychic_disco-0.7.2.tar.gz" } ], "0.7.3": [ { "comment_text": "", "digests": { "md5": "3939b7ab8450e93c2dcbce0709bed042", "sha256": "e668dd32bf9335f389c5c0a040590946f809eb04ba0312bcfecf2460a0eb8f66" }, "downloads": -1, "filename": "psychic_disco-0.7.3.tar.gz", "has_sig": false, "md5_digest": "3939b7ab8450e93c2dcbce0709bed042", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6296, "upload_time": "2016-05-15T14:10:17", "url": "https://files.pythonhosted.org/packages/74/6e/3385a7522fbe8857f5e6590850262daa110b889d73d51d75a913feca97a1/psychic_disco-0.7.3.tar.gz" } ], "0.7.4": [ { "comment_text": "", "digests": { "md5": "2c96f65effa906137e9aadbd58ec1326", "sha256": "74d504082d72ebb3f5c27be1f6d408ccba7f31ecc6057d329687fcf448c68f0e" }, "downloads": -1, "filename": "psychic_disco-0.7.4.tar.gz", "has_sig": false, "md5_digest": "2c96f65effa906137e9aadbd58ec1326", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6351, "upload_time": "2016-05-15T21:59:12", "url": "https://files.pythonhosted.org/packages/46/f7/daef953772373ed86941a01b9cd682a8e4df8ecd1053bf1d04cfe9c5bb72/psychic_disco-0.7.4.tar.gz" } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "3844f9d75bb5b480f42a9194f7f4e620", "sha256": "69645761652eeeba3bdfe271487fdeeecb343278ec215eff3eec49ef43bc5629" }, "downloads": -1, "filename": "psychic_disco-0.8.0.tar.gz", "has_sig": false, "md5_digest": "3844f9d75bb5b480f42a9194f7f4e620", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6412, "upload_time": "2016-05-15T22:35:09", "url": "https://files.pythonhosted.org/packages/cc/cd/29f9373171c20b599d2066ef42d2a4e340a0cf7dc460d6f6376b3ca6e513/psychic_disco-0.8.0.tar.gz" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "1acef2f08f916c2502d892c13449538f", "sha256": "01bbbad8a957e46129d53af9700bd607e7894e895d03779245c063993698561e" }, "downloads": -1, "filename": "psychic_disco-0.9.0.tar.gz", "has_sig": false, "md5_digest": "1acef2f08f916c2502d892c13449538f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7203, "upload_time": "2016-05-16T06:04:17", "url": "https://files.pythonhosted.org/packages/83/a6/845d30bc539f8a9c332e2167b9103981674488f559e19b215ba05c32a9b1/psychic_disco-0.9.0.tar.gz" } ], "0.9.1": [ { "comment_text": "", "digests": { "md5": "980fb34efc25c131be8f016b13ae902e", "sha256": "41994537c98d2ededc9bb8fef46ae01970b2802fe12cada5f5b0acaaacc93aa5" }, "downloads": -1, "filename": "psychic_disco-0.9.1.tar.gz", "has_sig": false, "md5_digest": "980fb34efc25c131be8f016b13ae902e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9460, "upload_time": "2016-05-16T14:45:49", "url": "https://files.pythonhosted.org/packages/bf/07/b5cd72d556b2e950160bd363c84e0324806ab54e56bdef34a9899492eaa9/psychic_disco-0.9.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "28346abfa1cf27f32be0c2523ce94ae3", "sha256": "49a8f6267e5e2de320712e2bd95353533d22ee1ccecd45b73e11890b798c1717" }, "downloads": -1, "filename": "psychic_disco-0.10.2.tar.gz", "has_sig": false, "md5_digest": "28346abfa1cf27f32be0c2523ce94ae3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10088, "upload_time": "2016-06-12T20:19:54", "url": "https://files.pythonhosted.org/packages/b5/06/9adcaaebeff63c1b34cf1a0dc1dd54784e1d0c3749e2301adc4d2c023ff0/psychic_disco-0.10.2.tar.gz" } ] }