{ "info": { "author": "chaostoolkit Team", "author_email": "contact@chaostoolkit.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: Freely Distributable", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation", "Programming Language :: Python :: Implementation :: CPython" ], "description": "# Chaos Toolkit Extension for Istio Fault Injection\n\n[![Python versions](https://img.shields.io/pypi/pyversions/chaostoolkit-istio.svg)](https://www.python.org/)\n\n\nThis project is a collection of [actions][] and [probes][], gathered as an\nextension to the [Chaos Toolkit][chaostoolkit].\n\n[actions]: http://chaostoolkit.org/reference/api/experiment/#action\n[probes]: http://chaostoolkit.org/reference/api/experiment/#probe\n[chaostoolkit]: http://chaostoolkit.org\n\n## Install\n\nThis package requires Python 3.5+\n\nTo be used from your experiment, this package must be installed in the Python\nenvironment where [chaostoolkit][] already lives.\n\n```\n$ pip install -U chaostoolkit-istio\n```\n\n## Usage\n\nTo use the probes and actions from this package, add the following to your\nexperiment file:\n\n```json\n{\n \"secrets\": {\n \"istio\": {\n \"KUBERNETES_CONTEXT\": {\n \"type\": \"env\",\n \"key\": \"KUBERNETES_CONTEXT\"\n }\n }\n },\n \"method\": [\n {\n \"type\": \"action\",\n \"name\": \"inject-fault-for-jason-only\",\n \"provider\": {\n \"type\": \"python\",\n \"module\": \"chaosistio.fault.actions\",\n \"func\": \"add_delay_fault\",\n \"secrets\": [\"istio\"],\n \"arguments\": {\n \"virtual_service_name\": \"reviews\",\n \"fixed_delay\": \"5s\",\n \"percent\": 100,\n \"routes\": [\n {\n \"destination\": {\n \"host\": \"reviews\",\n \"subset\": \"v2\"\n }\n }\n ]\n }\n },\n \"pauses\": {\n \"after\": 1\n }\n }\n ],\n \"rollbacks\": [\n {\n \"type\": \"action\",\n \"name\": \"remove-fault-for-jason-only\",\n \"provider\": {\n \"type\": \"python\",\n \"module\": \"chaosistio.fault.actions\",\n \"func\": \"remove_delay_fault\",\n \"secrets\": [\"istio\"],\n \"arguments\": {\n \"virtual_service_name\": \"reviews\",\n \"routes\": [\n {\n \"destination\": {\n \"host\": \"reviews\",\n \"subset\": \"v2\"\n }\n }\n ]\n }\n }\n }\n ]\n}\n```\n\nThat's it!\n\nPlease explore the code to see existing probes and actions.\n\n## Configuration\n\nThis extension needs you specify how to connect to the Kubernetes cluster. This\ncan be done by setting the `KUBERNETES_CONTEXT` in the `secrets` payload.\n\n\n## Contribute\n\nIf you wish to contribute more functions to this package, you are more than\nwelcome to do so. Please, fork this project, make your changes following the\nusual [PEP 8][pep8] code style, sprinkling with tests and submit a PR for\nreview.\n\n[pep8]: https://pycodestyle.readthedocs.io/en/latest/\n\nThe Chaos Toolkit projects require all contributors must sign a\n[Developer Certificate of Origin][dco] on each commit they would like to merge\ninto the master branch of the repository. Please, make sure you can abide by\nthe rules of the DCO before submitting a PR.\n\n[dco]: https://github.com/probot/dco#how-it-works\n\n### Develop\n\nIf you wish to develop on this project, make sure to install the development\ndependencies. But first, [create a virtual environment][venv] and then install\nthose dependencies.\n\n[venv]: http://chaostoolkit.org/reference/usage/install/#create-a-virtual-environment\n\n```console\n$ pip install -r requirements-dev.txt -r requirements.txt\n```\n\nThen, point your environment to this directory:\n\n```console\n$ python setup.py develop\n```\n\nNow, you can edit the files and they will be automatically be seen by your\nenvironment, even when running from the `chaos` command locally.\n\n### Test\n\nTo run the tests for the project execute the following:\n\n```\n$ pytest\n```\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://chaostoolkit.org", "keywords": "", "license": "Apache License Version 2.0", "maintainer": "", "maintainer_email": "", "name": "chaostoolkit-istio", "package_url": "https://pypi.org/project/chaostoolkit-istio/", "platform": "", "project_url": "https://pypi.org/project/chaostoolkit-istio/", "project_urls": { "Homepage": "http://chaostoolkit.org" }, "release_url": "https://pypi.org/project/chaostoolkit-istio/0.1.0/", "requires_dist": [ "chaostoolkit-lib (>=0.21.0)", "logzero (==1.5.0)", "simplejson (>=3.16.0)", "kubernetes (>=8.0.0)" ], "requires_python": ">=3.5.*", "summary": "Chaos Toolkit Extension for Istio Fault Injection", "version": "0.1.0" }, "last_serial": 4567664, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "8054121aca427e07120acba05e4b56ab", "sha256": "5f2f32548d9e17cb358cefee43e37fe49e5e8db94e682ddb82528b5eeecebd68" }, "downloads": -1, "filename": "chaostoolkit_istio-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "8054121aca427e07120acba05e4b56ab", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5.*", "size": 7367, "upload_time": "2018-12-06T12:08:53", "url": "https://files.pythonhosted.org/packages/88/9c/190ab44a63cbd80387642abecdbc08ffb25a8cdad479be82ab87e553ecb9/chaostoolkit_istio-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "709a7bf36f02b415c86de32d053a98b5", "sha256": "ac5beae0f6f2db6fd6c77ed57cb4f60ccb2f8dede645afc75ab8f9aefc8fe4c5" }, "downloads": -1, "filename": "chaostoolkit-istio-0.1.0.tar.gz", "has_sig": false, "md5_digest": "709a7bf36f02b415c86de32d053a98b5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.*", "size": 11896, "upload_time": "2018-12-06T12:08:55", "url": "https://files.pythonhosted.org/packages/7c/02/0c9b0cbefcfa632fc22f794449cf6bf94fdd48db511a6170687a9c729e9d/chaostoolkit-istio-0.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8054121aca427e07120acba05e4b56ab", "sha256": "5f2f32548d9e17cb358cefee43e37fe49e5e8db94e682ddb82528b5eeecebd68" }, "downloads": -1, "filename": "chaostoolkit_istio-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "8054121aca427e07120acba05e4b56ab", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5.*", "size": 7367, "upload_time": "2018-12-06T12:08:53", "url": "https://files.pythonhosted.org/packages/88/9c/190ab44a63cbd80387642abecdbc08ffb25a8cdad479be82ab87e553ecb9/chaostoolkit_istio-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "709a7bf36f02b415c86de32d053a98b5", "sha256": "ac5beae0f6f2db6fd6c77ed57cb4f60ccb2f8dede645afc75ab8f9aefc8fe4c5" }, "downloads": -1, "filename": "chaostoolkit-istio-0.1.0.tar.gz", "has_sig": false, "md5_digest": "709a7bf36f02b415c86de32d053a98b5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.*", "size": 11896, "upload_time": "2018-12-06T12:08:55", "url": "https://files.pythonhosted.org/packages/7c/02/0c9b0cbefcfa632fc22f794449cf6bf94fdd48db511a6170687a9c729e9d/chaostoolkit-istio-0.1.0.tar.gz" } ] }