{ "info": { "author": "Kyle Lahnakoski", "author_email": "kyle@lahnakoski.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.6", "Topic :: Internet :: Proxy Servers" ], "description": "# esFrontLine\n\nLimit restful requests to backend ElasticSearch cluster: Queries for the public, \n\n\n## Requirements\n\n * Python 2.7 or 3.6.2+\n * An ElasticSearch cluster to forward queries to\n\n\n## Install\n\nI will assume you have Python installed (if not, here are [Windows7 instructions](https://github.com/klahnakoski/pyLibrary#windows-7-install-instructions-))\n\n pip install esFrontLine\n\n## Setup\n\nYou must write your own setting.json file with the following properties set:\n\n * **elasticsearch** - (Array of) ElasticSearch nodes\n * **elasticsearch.host** - URL of the ElasticSearch node that will accept query requests\n * **elasticsearch.port** - port for ES (default = 9200)\n * **flask** - flask.run() parameters (default port = 5000)\n * **whitelist** - list of indexes that are allowed\n * **users** - list of allowed HAWK users, with their linked resources\n * **users.resources** - list of indexes the user is allowed\n * **users.hawk** - object of [Hawk credentials](https://github.com/hueniverse/hawk/blob/master/README.md)\n * **users.hawk.id** - any human readable name to identify the user or application\n * **users.hawk.key** - the secret value held by both endpoints and not shared with anyone\n * **users.hawk.algorithm**: always \"sha256\" for now\n * **debug** - for debugging\n\nHere is an example of my ```settings.json``` file\n\n {\n \"elasticsearch\":[{\n \"host\":\"http://elasticsearch4.metrics.scl3.mozilla.com\",\n \"port\":9200\n },{\n \"host\":\"http://elasticsearch5.metrics.scl3.mozilla.com\",\n \"port\":9200\n },{\n \"host\":\"http://elasticsearch7.metrics.scl3.mozilla.com\",\n \"port\":9200\n },{\n \"host\":\"http://elasticsearch8.metrics.scl3.mozilla.com\",\n \"port\":9200\n }],\n \"flask\":{\n \"host\":\"0.0.0.0\",\n \"port\":9292,\n \"debug\":false,\n \"threaded\":true,\n \"processes\":1\n },\n \"users\": [\n {\n \"hawk\": {\n \"id\": \"kyle@example.com\",\n \"key\": \"secret\",\n \"algorithm\": \"sha256\"\n },\n \"resources\": [\n \"testing\"\n ]\n }\n ],\n \"whitelist\":[\"bugs\", \"org_chart\", \"bug_summary\", \"reviews\"],\n \"debug\":{\n \"log\":[{\n \"filename\": \"./tests/results/logs/app.log\",\n \"maxBytes\": 10000000,\n \"backupCount\": 200,\n \"encoding\": \"utf8\"\n },{\n \"stream\":\"sys.stdout\"\n }]\n }\n\n }\n\n## Execution\n\n python app.py --settings-file \n\n## Code Source\n\n[https://github.com/klahnakoski/esFrontLine](https://github.com/klahnakoski/esFrontLine)", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/klahnakoski/esFrontLine", "keywords": "", "license": "MPL 2.0", "maintainer": "", "maintainer_email": "", "name": "esFrontLine", "package_url": "https://pypi.org/project/esFrontLine/", "platform": "", "project_url": "https://pypi.org/project/esFrontLine/", "project_urls": { "Homepage": "https://github.com/klahnakoski/esFrontLine" }, "release_url": "https://pypi.org/project/esFrontLine/2.11.18154/", "requires_dist": null, "requires_python": "", "summary": "Limit restful requests to backend ElasticSearch cluster: Queries only.", "version": "2.11.18154" }, "last_serial": 3926472, "releases": { "0.9.13316": [ { "comment_text": "", "digests": { "md5": "0f6f4d7d6a905ad2c2c3cf5c3c15cb9e", "sha256": "1a5191da13cf56b0611aeecdfbbda3cd7638e8344bb037416974dddd8ee22ace" }, "downloads": -1, "filename": "esFrontLine-0.9.13316-py2.7.egg", "has_sig": false, "md5_digest": "0f6f4d7d6a905ad2c2c3cf5c3c15cb9e", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 8230, "upload_time": "2013-11-12T13:18:56", "url": "https://files.pythonhosted.org/packages/92/80/ddad08017815ded82ca259a4787408c09d5a0d3b7cfac20bbce264bfa420/esFrontLine-0.9.13316-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "aae3f8cedb9e5a59de99379d5591afd5", "sha256": "0cb5c2341d67a07422ab5ebebb66fa89abb6153f13d6c3faf6c874c125dcb1b1" }, "downloads": -1, "filename": "esFrontLine-0.9.13316.win32-py2.7.exe", "has_sig": false, "md5_digest": "aae3f8cedb9e5a59de99379d5591afd5", "packagetype": "bdist_wininst", "python_version": "2.7", "requires_python": null, "size": 204047, "upload_time": "2013-11-12T13:19:06", "url": "https://files.pythonhosted.org/packages/6f/83/4bedd75c1b140f2a2c6cc80d2f659ff0be4a7df43fffba58e98a3bba1f5f/esFrontLine-0.9.13316.win32-py2.7.exe" }, { "comment_text": "", "digests": { "md5": "690ed1c8a5e512e99535310383bbf472", "sha256": "55c114d8d8db61c0aa5e4a339bd797f565562af64b89b3c3855b1d7649ee82e1" }, "downloads": -1, "filename": "esFrontLine-0.9.13316.zip", "has_sig": false, "md5_digest": "690ed1c8a5e512e99535310383bbf472", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8219, "upload_time": "2013-11-12T13:19:12", "url": "https://files.pythonhosted.org/packages/6e/93/1371137f87ff3a50b979c2ab11f4cbdb3fd31df490196a2c6d85684672c6/esFrontLine-0.9.13316.zip" } ], "0.9.13331": [ { "comment_text": "", "digests": { "md5": "d5073e84a5ca11b9500e1ee433b94397", "sha256": "3faaf25ffe7c8090bef12e825302bf6281f3491ccda94ab44d8b16f2938ef17a" }, "downloads": -1, "filename": "esFrontLine-0.9.13331-py2.7.egg", "has_sig": false, "md5_digest": "d5073e84a5ca11b9500e1ee433b94397", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 8826, "upload_time": "2013-11-27T04:14:42", "url": "https://files.pythonhosted.org/packages/a0/1a/732ddf9145a9c6cd6523016f933b2a28c1f3cc9f8d1785ea0e8a4ca8b017/esFrontLine-0.9.13331-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "463b149dbf90848b0b957938ea5ee979", "sha256": "246f225236d220ce9fa46c8c8262febfd35c98838273e8011b9afeb6d178dc53" }, "downloads": -1, "filename": "esFrontLine-0.9.13331.win32-py2.7.exe", "has_sig": false, "md5_digest": "463b149dbf90848b0b957938ea5ee979", "packagetype": "bdist_wininst", "python_version": "2.7", "requires_python": null, "size": 241354, "upload_time": "2013-11-27T04:14:52", "url": "https://files.pythonhosted.org/packages/b3/12/ae773e235b167eb1ec51c0b38a443839d3058717290b25dcb38b5beca67c/esFrontLine-0.9.13331.win32-py2.7.exe" }, { "comment_text": "", "digests": { "md5": "353bd34f8c0eba4723b18f3130876a38", "sha256": "168746306e7a595178049266ade4b4a5e4e2c22c903135603236ae8b365c978f" }, "downloads": -1, "filename": "esFrontLine-0.9.13331.zip", "has_sig": false, "md5_digest": "353bd34f8c0eba4723b18f3130876a38", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8721, "upload_time": "2013-11-27T04:14:59", "url": "https://files.pythonhosted.org/packages/c4/d7/b178e9a2fdee609e520d635332f71deccf417ffbf0054a99ffc44a75d2d1/esFrontLine-0.9.13331.zip" } ], "0.9.13346": [ { "comment_text": "", "digests": { "md5": "80f2796de6321bcc087b9c3810809e13", "sha256": "f49af1ac0745488d609333061eef6cec50607c8d5b969be39148059eb808b08b" }, "downloads": -1, "filename": "esFrontLine-0.9.13346-py2.7.egg", "has_sig": false, "md5_digest": "80f2796de6321bcc087b9c3810809e13", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 8828, "upload_time": "2013-12-12T19:09:22", "url": "https://files.pythonhosted.org/packages/91/c1/77f4bef59d803582cfa0452fadd3239f83ee32b51cfec81dde5ea074ff8c/esFrontLine-0.9.13346-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "3b4ceb4b61f2f621f0de07abe5bbd9ce", "sha256": "e8476cba1665a899f9bfcd6b7cb0fb9604fa9135512419deb40d505bece53fe8" }, "downloads": -1, "filename": "esFrontLine-0.9.13346.win32-py2.7.exe", "has_sig": false, "md5_digest": "3b4ceb4b61f2f621f0de07abe5bbd9ce", "packagetype": "bdist_wininst", "python_version": "2.7", "requires_python": null, "size": 241355, "upload_time": "2013-12-12T19:09:31", "url": "https://files.pythonhosted.org/packages/4e/fd/dffa78f1d25e975e31ee3cc7f791d449e8cd76d5e4c172f5070433206b6e/esFrontLine-0.9.13346.win32-py2.7.exe" }, { "comment_text": "", "digests": { "md5": "f591a17b2c32a4585d7eb2a2759aa302", "sha256": "0d849da47cfba053176122c3c6f4c0101ae56e3c0139efa00212d06ef1e067eb" }, "downloads": -1, "filename": "esFrontLine-0.9.13346.zip", "has_sig": false, "md5_digest": "f591a17b2c32a4585d7eb2a2759aa302", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8724, "upload_time": "2013-12-12T19:09:38", "url": "https://files.pythonhosted.org/packages/79/b7/7e7887edc670a0436342f5b53b31085fedc305ed6583990944fe076c4904/esFrontLine-0.9.13346.zip" } ], "1.1.13347": [ { "comment_text": "", "digests": { "md5": "c018d7ccbad487e8ab1fdab0869a648f", "sha256": "149a0feae8626e35c38a4def28fa1b6cee68aec7d81c86fe1bed6057eb1128ff" }, "downloads": -1, "filename": "esFrontLine-1.1.13347-py2.7.egg", "has_sig": false, "md5_digest": "c018d7ccbad487e8ab1fdab0869a648f", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 9095, "upload_time": "2013-12-13T18:59:17", "url": "https://files.pythonhosted.org/packages/16/98/29258d54769c822bd72fa69165905ad1e4753748bb12d3fea7d07d16e53f/esFrontLine-1.1.13347-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "29c56de7fe57d14257f77d44451fbc08", "sha256": "6ad60f3da2d8e31a90f8bbfec3c065f0b64026ff2badf4e9d79eb1c18c08f8af" }, "downloads": -1, "filename": "esFrontLine-1.1.13347.win32-py2.7.exe", "has_sig": false, "md5_digest": "29c56de7fe57d14257f77d44451fbc08", "packagetype": "bdist_wininst", "python_version": "2.7", "requires_python": null, "size": 241443, "upload_time": "2013-12-13T18:59:24", "url": "https://files.pythonhosted.org/packages/1f/67/83bcee2f8debca06ef286fd7b0a40bd789384387e16d570e44c0973da82d/esFrontLine-1.1.13347.win32-py2.7.exe" }, { "comment_text": "", "digests": { "md5": "99555a8fd479e925d6c6fe4f3759ad6a", "sha256": "9cfa68fdb60054a4896969237c89c4b5cbde08b801cd699dfef52a422d3ae56b" }, "downloads": -1, "filename": "esFrontLine-1.1.13347.zip", "has_sig": false, "md5_digest": "99555a8fd479e925d6c6fe4f3759ad6a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8811, "upload_time": "2013-12-13T18:59:28", "url": "https://files.pythonhosted.org/packages/8e/0a/5651b7174b9793e8eeaa51efd10b42e9c5a96ae66fb014861932f9746ad3/esFrontLine-1.1.13347.zip" } ], "1.1.14230": [ { "comment_text": "", "digests": { "md5": "df7b916441eeb95bc5cbf2c478268d5d", "sha256": "39cea7a79ff41ed83393e6df255903c8167be38975061e103951767aaecbdfc3" }, "downloads": -1, "filename": "esFrontLine-1.1.14230-py2.7.egg", "has_sig": false, "md5_digest": "df7b916441eeb95bc5cbf2c478268d5d", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 9746, "upload_time": "2014-08-18T21:08:47", "url": "https://files.pythonhosted.org/packages/b8/f9/884abb101ad5149f66cad5c042e2d3ea51aaa361b56d6eb196c1b80b68dd/esFrontLine-1.1.14230-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "f43a552ed76d73c27189d9ee379e2db2", "sha256": "8725a41f92727d8e25842d0834a55bdcf2b19dd80776185a6bd6b1b1b2101251" }, "downloads": -1, "filename": "esFrontLine-1.1.14230.win32-py2.7.exe", "has_sig": false, "md5_digest": "f43a552ed76d73c27189d9ee379e2db2", "packagetype": "bdist_wininst", "python_version": "2.7", "requires_python": null, "size": 241827, "upload_time": "2014-08-18T21:08:57", "url": "https://files.pythonhosted.org/packages/80/e6/7f4fed2fc68b9597678c3226dae8c02648c777b978e1a7fc6679e39d114d/esFrontLine-1.1.14230.win32-py2.7.exe" }, { "comment_text": "", "digests": { "md5": "fa25ee8844fde1de32646539d040b6f0", "sha256": "60df99ca51b8f6c2d736c816e5f47f6fb915bacef06e3e7ee95bbd5737a906ce" }, "downloads": -1, "filename": "esFrontLine-1.1.14230.zip", "has_sig": false, "md5_digest": "fa25ee8844fde1de32646539d040b6f0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9156, "upload_time": "2014-08-18T21:09:03", "url": "https://files.pythonhosted.org/packages/b0/d1/33eb70bd667b782ea4fcea85745798f21514f777b8be16d9bff29afd9de3/esFrontLine-1.1.14230.zip" } ], "2.11.18154": [ { "comment_text": "", "digests": { "md5": "ce1905ae79c42fbba742163c7d0c43d3", "sha256": "d11e91f053a8517571e8fcf42fead3cad701d074af93effbd25070ef3d556214" }, "downloads": -1, "filename": "esFrontLine-2.11.18154.tar.gz", "has_sig": false, "md5_digest": "ce1905ae79c42fbba742163c7d0c43d3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7658, "upload_time": "2018-06-03T22:47:21", "url": "https://files.pythonhosted.org/packages/1b/58/0a490f65e0503c76cedcc0dfa8022b15bb46b31c44bd1140ed7921510f88/esFrontLine-2.11.18154.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ce1905ae79c42fbba742163c7d0c43d3", "sha256": "d11e91f053a8517571e8fcf42fead3cad701d074af93effbd25070ef3d556214" }, "downloads": -1, "filename": "esFrontLine-2.11.18154.tar.gz", "has_sig": false, "md5_digest": "ce1905ae79c42fbba742163c7d0c43d3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7658, "upload_time": "2018-06-03T22:47:21", "url": "https://files.pythonhosted.org/packages/1b/58/0a490f65e0503c76cedcc0dfa8022b15bb46b31c44bd1140ed7921510f88/esFrontLine-2.11.18154.tar.gz" } ] }