{ "info": { "author": "Sun Wei", "author_email": "wayde.sun@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "DDD Nginx Framework\n===================\n\n|Build Status| |Pypi Status| |Coveralls Status|\n\nInstallation\n------------\n\nFrom source code:\n\n::\n\n python setup.py install\n\nFrom pypi:\n\n::\n\n pip install ddd-base\n\nUsage\n-----\n\n::\n\n from ddd_nginx.nginx import Nginx\n from ddd_nginx.map import Map, MapKeyParis, MapDefinition\n from ddd_nginx.server import Server\n from ddd_nginx.location import Location, ReverseProxyStrategy\n from ddd_nginx.upstream import Upstream\n\n\n nginx = Nginx(host=\"oneapi.cc\")\n nginx.namespace = \"api\"\n\n a_map = Map(MapDefinition(key=\"$http_apikey\", value=\"$api_client_name\"))\n a_map.append(MapKeyParis(\"7B5zIqmRGXmrJTFmKa99vcit\", \"client_one\"))\n a_map.append(MapKeyParis(\"QzVV6y1EmQFbbxOfRCwyJs35\", \"client_two\"))\n a_map.append(MapKeyParis(\"mGcjH8Fv6U9y3BVF9H3Ypb9T\", \"client_six\"))\n\n a_upstream = Upstream(name=\"warehouse_inventory\")\n a_upstream.append(\"10.0.0.1:80\")\n a_upstream.append(\"10.0.0.2:80\")\n a_upstream.append(\"10.0.0.3:80\")\n\n b_upstream = Upstream(name=\"warehouse_pricing\")\n b_upstream.append(\"10.0.0.1:80\")\n b_upstream.append(\"10.0.0.2:80\")\n b_upstream.append(\"10.0.0.3:80\")\n\n a_location = Location(\n name=\"/api/warehouse/inventory\",\n proxy=ReverseProxyStrategy('rewrite', '^ /_warehouse last')\n )\n a_location.set_var(\"$upstream\", \"warehouse_inventory\")\n b_location = Location(\n name=\"/api/warehouse/pricing\",\n proxy=ReverseProxyStrategy('rewrite', '^ /_warehouse last')\n )\n b_location.set_var(\"$upstream\", \"warehouse_pricing\")\n c_location = Location(\n name=\"= /_warehouse\",\n proxy=ReverseProxyStrategy('proxy_pass', 'http://$upstream$request_uri'),\n scope=\"internal\"\n )\n c_location.set_var(\"$api_name\", \"Warehouse\")\n\n a_server = Server(name=nginx.namespace)\n a_server.set_var(\"$api_name\", \"-\")\n\n nginx.append(a_map)\n nginx.append(a_upstream)\n nginx.append(b_upstream)\n nginx.append(a_location)\n nginx.append(b_location)\n nginx.append(c_location)\n nginx.append(a_server)\n\n root_dir = \"./dumps_dir\"\n nginx.dumps(root_dir)\n\n\n\nLicense\n-------\n\nThis software is licensed under the `MIT license `_\n\nSee `License file `_\n\n.. |Build Status| image:: https://travis-ci.com/sunwei/ddd-nginx.svg?branch=master\n :target: https://travis-ci.com/sunwei/ddd-nginx\n.. |Pypi Status| image:: https://badge.fury.io/py/ddd-nginx.svg\n :target: https://badge.fury.io/py/ddd-nginx\n.. |Coveralls Status| image:: https://coveralls.io/repos/github/sunwei/ddd-nginx/badge.svg?branch=master\n :target: https://coveralls.io/github/sunwei/ddd-nginx?branch=master\n\nChangelog\n=========\n\n0.1.7\n-----\n\n- Https by default\n\n0.1.6\n-----\n\n- Add magic dump\n\n0.1.2\n-----\n\n- Template exposed\n\n0.1.1\n-----\n\n- Add server to support tls or not\n\n0.1.0\n-----\n\n- Provide all in one configure file\n\n0.0.8\n-----\n\n- Include template files\n\n0.0.7\n-----\n\n- Include jinja2 templates\n\n0.0.6\n-----\n\n- Add json error page configuration file\n\n0.0.5\n-----\n\n- Add coverage\n\n0.0.4\n-----\n\n- Clear dependency\n\n0.0.3\n-----\n\n- Dumps nginx to files\n\n0.0.2\n-----\n\n- Render conf with template\n\n0.0.1\n-----\n\n- Initial public release", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/sunwei/ddd-nginx", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "ddd-nginx", "package_url": "https://pypi.org/project/ddd-nginx/", "platform": "", "project_url": "https://pypi.org/project/ddd-nginx/", "project_urls": { "Homepage": "https://github.com/sunwei/ddd-nginx" }, "release_url": "https://pypi.org/project/ddd-nginx/0.1.7/", "requires_dist": null, "requires_python": "", "summary": "DDD nginx framework for python", "version": "0.1.7" }, "last_serial": 5877617, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "e83b04c47a8b69ee7ff2cb1bf80210f2", "sha256": "a751b7ea5026151628158cbda1d3b19bf3ebf9c483d5907e80a3265b2e06572f" }, "downloads": -1, "filename": "ddd-nginx-0.0.1.tar.gz", "has_sig": false, "md5_digest": "e83b04c47a8b69ee7ff2cb1bf80210f2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2501, "upload_time": "2019-07-26T02:05:06", "url": "https://files.pythonhosted.org/packages/04/ce/879d1d8a74571ebf078c2726d4b7ee3da33e06a927ce4d89f91d51c81e5b/ddd-nginx-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "2e23351f735acee41783bba14a3effab", "sha256": "3a2f825ed1ff7ce905a305edec5e125ae007292f58ef89a8075454c302644cb8" }, "downloads": -1, "filename": "ddd-nginx-0.0.2.tar.gz", "has_sig": false, "md5_digest": "2e23351f735acee41783bba14a3effab", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4660, "upload_time": "2019-08-04T13:32:42", "url": "https://files.pythonhosted.org/packages/7e/bb/96f761b0370eac04421d777c350b54356c59f7997838231ff0dd2ff9965a/ddd-nginx-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "be6ee637011fc4ccd3f678bdb16507aa", "sha256": "f82ed30b6121d04ba8c425bb0f561e82d66a86d76dd3f26ece3de318442112c9" }, "downloads": -1, "filename": "ddd-nginx-0.0.3.tar.gz", "has_sig": false, "md5_digest": "be6ee637011fc4ccd3f678bdb16507aa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6359, "upload_time": "2019-08-05T01:30:33", "url": "https://files.pythonhosted.org/packages/4a/8e/d361076043bcb686c88d3d0bb6877ac43a4c60704ef8ab379913c4faa9da/ddd-nginx-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "5cb093ad20a1078932ec073d36f38e83", "sha256": "f0f0700311639a51040b68d5af659bd51eff80b373d2dc77dbe00850211b8f37" }, "downloads": -1, "filename": "ddd-nginx-0.0.4.tar.gz", "has_sig": false, "md5_digest": "5cb093ad20a1078932ec073d36f38e83", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6383, "upload_time": "2019-08-05T01:38:46", "url": "https://files.pythonhosted.org/packages/4f/7f/2a8ea7c47b5174080d38bf3aa54529e45bd7ae6b4db45d389cca44e0d058/ddd-nginx-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "f57b67621e83109a73f6847529e9dd80", "sha256": "5f1cd9a18ebacd8fef1644be935776f01c198d6bd68f9794f9909faacf7959d9" }, "downloads": -1, "filename": "ddd-nginx-0.0.5.tar.gz", "has_sig": false, "md5_digest": "f57b67621e83109a73f6847529e9dd80", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6454, "upload_time": "2019-08-05T01:44:10", "url": "https://files.pythonhosted.org/packages/bf/49/0d23d99f9e5406abeb53a31a42bfbb0c93e8ae28459ea66db0c1641d1cc0/ddd-nginx-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "6ec7294b8d53124a7b91d7c0ad7fda1b", "sha256": "25b69bd083e7c04d7cca6868d04df078f33a2155d18cef9d3d48f6ef86146d4b" }, "downloads": -1, "filename": "ddd-nginx-0.0.6.tar.gz", "has_sig": false, "md5_digest": "6ec7294b8d53124a7b91d7c0ad7fda1b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6547, "upload_time": "2019-08-05T02:05:33", "url": "https://files.pythonhosted.org/packages/e0/45/98106e3dcaad13c276306910ea25cd051e4a8a75f1e2229ffe82ad9a6702/ddd-nginx-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "48d00385be4b4236b9e130186e6a8b8e", "sha256": "8f5bc2185af59ac8d03b901a7fb70cb1c8c5a406d0f6e6399d5c32f87cdde41e" }, "downloads": -1, "filename": "ddd-nginx-0.0.7.tar.gz", "has_sig": false, "md5_digest": "48d00385be4b4236b9e130186e6a8b8e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6583, "upload_time": "2019-08-05T02:26:20", "url": "https://files.pythonhosted.org/packages/1d/37/39dc0bae01c07e48a76b8c5b6ce59db0f6975d315d1a862b304f936ba626/ddd-nginx-0.0.7.tar.gz" } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "811f9b48a599f3b6aeeb87a7f366dac7", "sha256": "1b288fb94dfb00f61957949fb2cbb923d7c77252a95415fc365513ffd52a66a3" }, "downloads": -1, "filename": "ddd-nginx-0.0.8.tar.gz", "has_sig": false, "md5_digest": "811f9b48a599f3b6aeeb87a7f366dac7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8044, "upload_time": "2019-08-05T02:46:56", "url": "https://files.pythonhosted.org/packages/ba/0b/01df8112cf8a77ed32b9b5cc0727908ee19f41e7f7052d52d7407c0fed23/ddd-nginx-0.0.8.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "2fadec8312a7433dd9ab173708ebf4bd", "sha256": "ca38a1e7307f355c2c86d1dd139db99b7da288b5f44b0d53114dad4be306befc" }, "downloads": -1, "filename": "ddd-nginx-0.1.0.tar.gz", "has_sig": false, "md5_digest": "2fadec8312a7433dd9ab173708ebf4bd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9094, "upload_time": "2019-09-01T03:05:59", "url": "https://files.pythonhosted.org/packages/fb/07/5db67e168d95d6557806eadf860be5b7aa28ac4b459e88b115336519f0c1/ddd-nginx-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "bf73b16bd890208ef67555007c4cc5cf", "sha256": "fd7f17bbd686a74438c9799b4991a014df17b1072ae82da484bafefb0a2825ea" }, "downloads": -1, "filename": "ddd-nginx-0.1.1.tar.gz", "has_sig": false, "md5_digest": "bf73b16bd890208ef67555007c4cc5cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9173, "upload_time": "2019-09-09T11:22:03", "url": "https://files.pythonhosted.org/packages/f1/8c/8acdcf79305ea2a49898b4b31d12a91bfb9f68b950d007df63903ff7fe12/ddd-nginx-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "3c655e7777cab53812cd5d8eb66cb562", "sha256": "e617f89e4a2ca2235b051eac87dc9ef9aa72b777f3331b6d3a489fee7e662d08" }, "downloads": -1, "filename": "ddd-nginx-0.1.2.tar.gz", "has_sig": false, "md5_digest": "3c655e7777cab53812cd5d8eb66cb562", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9229, "upload_time": "2019-09-17T01:39:01", "url": "https://files.pythonhosted.org/packages/f6/4a/98ded2abaf752e30ad6a4f47e41c00bcb73b8ab14b3302a6cc415a43e31a/ddd-nginx-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "cdb1a1a08c2511a402841d7e66caa249", "sha256": "a57f0c5b685f9feeae83445f7863371b313ddacc0581290e05855df54f5a2a88" }, "downloads": -1, "filename": "ddd-nginx-0.1.3.tar.gz", "has_sig": false, "md5_digest": "cdb1a1a08c2511a402841d7e66caa249", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9233, "upload_time": "2019-09-17T02:15:55", "url": "https://files.pythonhosted.org/packages/e8/b6/7b5c1f2d534df71d9b3ba9ef53a2eb199c2878a3e7902d06498365e71f98/ddd-nginx-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "c8b105eac0e53c1f8499446f202ce577", "sha256": "45c93b0e000de9030fd368b860f89fc80313612ecc278c581b6281ced198f7a5" }, "downloads": -1, "filename": "ddd-nginx-0.1.4.tar.gz", "has_sig": false, "md5_digest": "c8b105eac0e53c1f8499446f202ce577", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9229, "upload_time": "2019-09-17T02:42:20", "url": "https://files.pythonhosted.org/packages/8a/5e/916b3966afd80bcf3a868bd5993edc4f55784fa1c01675953b24492dd22a/ddd-nginx-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "a684c415ada2ce06f8cfb855009b94f4", "sha256": "c7592c5c9b96c8add235d1567a46168ba5f0447643dcc781c36790385b200a41" }, "downloads": -1, "filename": "ddd-nginx-0.1.5.tar.gz", "has_sig": false, "md5_digest": "a684c415ada2ce06f8cfb855009b94f4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9270, "upload_time": "2019-09-17T02:47:05", "url": "https://files.pythonhosted.org/packages/5c/6d/2efdb7e3c961a4767845759b3ac6a3fee8918e0d7bdceb39212764d59e1b/ddd-nginx-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "febacfc6b9534569920bb34c5497a4e3", "sha256": "6853435f7c0ae97d64142ba50fcc2e567c7918a23e4cf11061e481d1e328d804" }, "downloads": -1, "filename": "ddd-nginx-0.1.6.tar.gz", "has_sig": false, "md5_digest": "febacfc6b9534569920bb34c5497a4e3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9559, "upload_time": "2019-09-23T11:41:11", "url": "https://files.pythonhosted.org/packages/eb/48/047bbdcc760cec81f82e9c099fd6c0c1782dea9054a98253a0a43c14fc8a/ddd-nginx-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "ac08867f9820236e58adcd2355dff625", "sha256": "f7a9e73259ce62686c0c0d890b8ee56e07e033c1174f571936ed356b8f555d0a" }, "downloads": -1, "filename": "ddd-nginx-0.1.7.tar.gz", "has_sig": false, "md5_digest": "ac08867f9820236e58adcd2355dff625", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9595, "upload_time": "2019-09-24T05:14:29", "url": "https://files.pythonhosted.org/packages/41/9b/1710a7267a771fe39683762832392105317e7c36dfff010aa274d7683707/ddd-nginx-0.1.7.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ac08867f9820236e58adcd2355dff625", "sha256": "f7a9e73259ce62686c0c0d890b8ee56e07e033c1174f571936ed356b8f555d0a" }, "downloads": -1, "filename": "ddd-nginx-0.1.7.tar.gz", "has_sig": false, "md5_digest": "ac08867f9820236e58adcd2355dff625", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9595, "upload_time": "2019-09-24T05:14:29", "url": "https://files.pythonhosted.org/packages/41/9b/1710a7267a771fe39683762832392105317e7c36dfff010aa274d7683707/ddd-nginx-0.1.7.tar.gz" } ] }