{ "info": { "author": "Michiel Scholten", "author_email": "michiel@diginaut.net", "bugtrack_url": null, "classifiers": [], "description": "webhaak\n=======\n\n|PyPI version| |PyPI downloads| |PyPI license| |Code health|\n\n`webhaak`_ is a simple `webhook`_ service to update and deploy sites and do\nother maintenance without having to ssh to a node.\n\n\nInstallation\n------------\n\nFrom PyPI\n~~~~~~~~~\n\nAssuming you already are inside a virtualenv:\n\n.. code-block:: bash\n\n pip install webhaak\n\nFrom Git\n~~~~~~~~\n\nCreate a new virtualenv (if you are not already in one) and install the\nnecessary packages:\n\n.. code-block:: bash\n\n git clone https://github.com/aquatix/webhaak.git\n cd webhaak\n mkvirtualenv webhaak # or whatever project you are working on\n pip install -r requirements.txt\n\n\nUsage\n-----\n\nCopy ``settings.py`` from example_config to the parent directory and\nconfigure to your needs. Create a yaml file with the projects to serve (see\nnext section) and refer to this file from the settings.py.\n\nRun webhaak as a service under nginx or apache and call the appropriate\nurl's when wanted (e.g., on push to repository).\n\nUrl's are of the form https://hook.example.com/app//\n\n\nExample configuration\n---------------------\n\nSee the example `hook settings`_ for syntax of how to configure\nrepositories, commands and directories.\n\nCall webhaak on its endpoint ``/getappkey`` to generate a random new key for\nusage in the projects yaml file (so, for example https://hook.example.com/getappkey)\n\nBy default, webhaak clones projects in a directory under its\n``REPOS_CACHE_DIR`` directory, but there is support for a per-repo parent dir\nsettings with ``repoparent``.\n\nThis means that webhaak then doesn't clone this repo into its default cache\ndir, but in a subdirectory of the directory configured in ``repoparent``, so\n/reponame (e.g., /srv/customparent/myproject).\n\n\nServer configuration\n~~~~~~~~~~~~~~~~~~~~\n\n* `vhost for Apache2.4`_\n* `uwsgi.ini`_\n\n\nWhat's new?\n-----------\n\nSee the `Changelog`_.\n\n\n.. _webhaak: https://github.com/aquatix/webhaak\n.. _webhook: https://en.wikipedia.org/wiki/Webhook\n.. |PyPI version| image:: https://img.shields.io/pypi/v/webhaak.svg\n :target: https://pypi.python.org/pypi/webhaak/\n.. |PyPI downloads| image:: https://img.shields.io/pypi/dm/webhaak.svg\n :target: https://pypi.python.org/pypi/webhaak/\n.. |PyPI license| image:: https://img.shields.io/github/license/aquatix/webhaak.svg\n :target: https://pypi.python.org/pypi/webhaak/\n.. |Code health| image:: https://landscape.io/github/aquatix/webhaak/master/landscape.svg?style=flat\n :target: https://landscape.io/github/aquatix/webhaak/master\n :alt: Code Health\n.. _hook settings: https://github.com/aquatix/webhaak/blob/master/example_config/examples.yaml\n.. _vhost for Apache2.4: https://github.com/aquatix/webhaak/blob/master/example_config/apache_vhost.conf\n.. _uwsgi.ini: https://github.com/aquatix/webhaak/blob/master/example_config/uwsgi.ini\n.. _Changelog: https://github.com/aquatix/webhaak/blob/master/CHANGELOG.md\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/aquatix/webhaak", "keywords": "", "license": "Apache", "maintainer": "", "maintainer_email": "", "name": "webhaak", "package_url": "https://pypi.org/project/webhaak/", "platform": "", "project_url": "https://pypi.org/project/webhaak/", "project_urls": { "Homepage": "https://github.com/aquatix/webhaak" }, "release_url": "https://pypi.org/project/webhaak/0.3.0/", "requires_dist": null, "requires_python": "", "summary": " Simple webhook service to update and deploy sites and do other maintenance", "version": "0.3.0" }, "last_serial": 4329380, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "e0b8731212edb57298d0d2628cbb0bd0", "sha256": "c468b8fcd0777046ea5bcfc2b8099d8981797fe4c0499b94e971ae3e2ca5ff84" }, "downloads": -1, "filename": "webhaak-0.1.0.zip", "has_sig": false, "md5_digest": "e0b8731212edb57298d0d2628cbb0bd0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7471, "upload_time": "2016-05-05T13:52:01", "url": "https://files.pythonhosted.org/packages/54/3d/408393caef2b4d0913391d11dd86517120d78dfa0c9cc4e5fd8145e8930b/webhaak-0.1.0.zip" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "cf2259e6c8791e42dad013a25d313a78", "sha256": "c00e02569111a1eb84030554418db578f7d3fcece084b1a5aa63020a7a2dcae0" }, "downloads": -1, "filename": "webhaak-0.2.0.zip", "has_sig": false, "md5_digest": "cf2259e6c8791e42dad013a25d313a78", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10034, "upload_time": "2016-05-13T15:16:19", "url": "https://files.pythonhosted.org/packages/39/2e/c021c3a0b49dd57ca31abeb3f7549169d093e2b618439a05f615110491aa/webhaak-0.2.0.zip" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "a7c05c26540e502e0032c3d66770aa29", "sha256": "d6a6933cfc97e3269ad2dc6f4bd669f5454f0c7e7caa77dafa381f4a89c168d8" }, "downloads": -1, "filename": "webhaak-0.3.0.zip", "has_sig": false, "md5_digest": "a7c05c26540e502e0032c3d66770aa29", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11015, "upload_time": "2018-10-01T17:29:35", "url": "https://files.pythonhosted.org/packages/e8/b5/110e3365cc38d5d4bb34c864af1642c678e380d727a9c8d4d4d3e8a32381/webhaak-0.3.0.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a7c05c26540e502e0032c3d66770aa29", "sha256": "d6a6933cfc97e3269ad2dc6f4bd669f5454f0c7e7caa77dafa381f4a89c168d8" }, "downloads": -1, "filename": "webhaak-0.3.0.zip", "has_sig": false, "md5_digest": "a7c05c26540e502e0032c3d66770aa29", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11015, "upload_time": "2018-10-01T17:29:35", "url": "https://files.pythonhosted.org/packages/e8/b5/110e3365cc38d5d4bb34c864af1642c678e380d727a9c8d4d4d3e8a32381/webhaak-0.3.0.zip" } ] }