{ "info": { "author": "CafeHub", "author_email": "cloud-cafe@lists.rackspace.com", "bugtrack_url": null, "classifiers": [], "description": "#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n# http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nDescription: OpenCafe\n ========\n \n .. image:: https://img.shields.io/pypi/v/opencafe.svg\n :target: https://pypi.python.org/pypi/opencafe\n \n .. image:: https://travis-ci.org/CafeHub/opencafe.svg?branch=master\n :target: https://travis-ci.org/CafeHub/opencafe\n \n When writing automated test sutes, there are some things that should\n \"just work\". Problems like managing test data, logging, and results are\n things that shouldn't have to be re-invented for every test project you work\n on. OpenCafe aims to address that problem by providing solutions for the\n commonly occuring challenges in the development and operation of functional\n and end-to-end test suites.\n \n Capabilities\n ------------\n \n - Common sense conventions for test data and log management\n - Per test run and per test logs and results\n - Reference drivers for performing non-UI testing including HTTP, SSH,\n and WinRM\n - Design patterns for building test clients for RESTful API applications\n - Plugin system to allow for further customization\n \n Installation\n ============\n \n Core\u00a0package\n ------------\n \n From\u00a0PyPI\u00a0(recommended):\n \n ::\n \n $ pip install opencafe\n \n From\u00a0source:\n \n ::\n \n $ git clone https://github.com/CafeHub/opencafe.git\n $ cd opencafe\n $ pip install .\n \n Post-install Configuration\n --------------------------\n \n Post-install, the ``cafe-config`` cli tool will become available. It is used\n for installing plugins and initializing OpenCafe's default directory\n structure.\n \n Initialization\n ^^^^^^^^^^^^^^\n Running the ``cafe-config init`` command will create the default OpenCafe\n directory structure in a directory named ``.opencafe``. This directory will\n be located in either the current user's home directory or in the root of the\n virtual environment you currently have active. This directory contains the\n ``/configs`` directory which stores configuration data, the ``/logs``\n directory which holds the logging output from all tests executed, and the\n ``engine.config`` file, which sets the base test repository and allows the\n user to override the default directories for logging and configuration.\n \n Plugins\n ^^^^^^^\n \n OpenCafe\u00a0uses\u00a0a\u00a0plugin\u00a0system\u00a0to\u00a0allow\u00a0for\u00a0core\u00a0functionality\u00a0to\u00a0be extended\n or\u00a0for\u00a0additional\u00a0capabilities\u00a0to\u00a0be\u00a0added.\u00a0Plugins\u00a0are essentially\u00a0Python\n packages,\u00a0which\u00a0may\u00a0have\u00a0their\u00a0own\u00a0Python\u00a0dependencies. This\u00a0design\u00a0allows\n implementors\u00a0to\u00a0only\u00a0install\u00a0dependencies\u00a0for\u00a0the functionality\u00a0that\u00a0they\n intend\u00a0to\u00a0use,\u00a0as\u00a0the\u00a0additional\u00a0dependencies are\u00a0installed\u00a0at\u00a0the\u00a0same\u00a0time\n as\u00a0the\u00a0plugin.\n \n The ``cafe-config plugins`` command is used to list and install plugins.\n \n Example:\n \n ::\n \n $ cafe-config plugins list\n =================================\n * Available Plugins\n ... elasticsearch\n ... http\n ... mongo\n ... pathos_multiprocess\n ... rsyslog\n ... skip_on_issue\n ... soap\n ... ssh\n ... sshv2\n ... subunit\n ... winrm\n =================================\n \n $ cafe-config plugins install http\n =================================\n * Installing Plugins\n ... http\n =================================\n \n Documentation\n -------------\n \n More\u00a0in-depth\u00a0documentation about the OpenCafe framework\u00a0is\u00a0located\u00a0at\n http://opencafe.readthedocs.org.\n \n How\u00a0to\u00a0Contribute\n -----------------\n \n Contributions\u00a0are\u00a0always\u00a0welcome.\u00a0The\u00a0CONTIBUTING.md\u00a0file\u00a0contains\u00a0further\n guidance\u00a0on\u00a0submitting\u00a0changes\u00a0to\u00a0this\u00a0project\u00a0and\u00a0the\u00a0review\u00a0process\u00a0that\n we\u00a0follow.\n \nPlatform: UNKNOWN\nClassifier: Development Status :: 4 - Beta\nClassifier: Intended Audience :: Developers\nClassifier: Natural Language :: English\nClassifier: License :: Other/Proprietary License\nClassifier: Operating System :: POSIX :: Linux\nClassifier: Programming Language :: Python\nClassifier: Programming Language :: Python :: 2.7\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://opencafe.readthedocs.org", "keywords": "", "license": "# Copyright 2013-2014 Rackspace", "maintainer": "", "maintainer_email": "", "name": "opencafe", "package_url": "https://pypi.org/project/opencafe/", "platform": "", "project_url": "https://pypi.org/project/opencafe/", "project_urls": { "Homepage": "http://opencafe.readthedocs.org" }, "release_url": "https://pypi.org/project/opencafe/0.3.5/", "requires_dist": null, "requires_python": "", "summary": "The Common Automation Framework Engine", "version": "0.3.5" }, "last_serial": 3711372, "releases": { "0.2.0": [ { "comment_text": "", "digests": { "md5": "e96eff52a220f8a5cf0f57ccdc43f35e", "sha256": "46b3d205f5f078f94d33dd5cb94bad45259b50568b17b017ad6b113cf966596c" }, "downloads": -1, "filename": "opencafe-0.2.0.tar.gz", "has_sig": false, "md5_digest": "e96eff52a220f8a5cf0f57ccdc43f35e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 74969, "upload_time": "2014-06-27T19:10:03", "url": "https://files.pythonhosted.org/packages/d2/21/6d0cad9c71a9fc2326ac07179da804e57d2038fb44af1107d499949d552d/opencafe-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "a8c0e6928269dc178b512756a111e69b", "sha256": "7703d3acfa9bad6eae0db2c517df4f435f8d51b18b77dfcfb533f75930af2cbf" }, "downloads": -1, "filename": "opencafe-0.2.1.tar.gz", "has_sig": false, "md5_digest": "a8c0e6928269dc178b512756a111e69b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 81869, "upload_time": "2015-08-13T22:03:17", "url": "https://files.pythonhosted.org/packages/5f/08/241d2fa4d8a349d43346073929a8149d19f9a3b08e5ce2d543e004195eda/opencafe-0.2.1.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "8e42b199cfcce3104de7f7d0280c47c2", "sha256": "8f0b045061e6f633e7aa636054361f207cda76d1450f00e71763db59f3d0fd1e" }, "downloads": -1, "filename": "opencafe-0.2.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8e42b199cfcce3104de7f7d0280c47c2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 137795, "upload_time": "2015-10-19T16:13:23", "url": "https://files.pythonhosted.org/packages/df/5a/cdd590dec221dab3fc1f56507ff8d536b4699e39ea9780ffca91b61fcd8a/opencafe-0.2.3-py2.py3-none-any.whl" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "0c64ad398931450350932c8b15c5aa01", "sha256": "28c37d7cfc1dc531d93cbfb4b7c9e0695e97d1dc1c2331ea4eaf4d60e7ffe7aa" }, "downloads": -1, "filename": "opencafe-0.2.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0c64ad398931450350932c8b15c5aa01", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 154337, "upload_time": "2015-10-23T20:56:45", "url": "https://files.pythonhosted.org/packages/fb/54/ca4416230b64cb85a0171e60a2ee8b0103c93136f36870a8084e23295548/opencafe-0.2.4-py2.py3-none-any.whl" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "678bc99591e986ac7e157198083b2c0f", "sha256": "b662598af8daa6d29d9d35f5d0b93c3177bf80b598c74bc9b7cfd6b8517a81d2" }, "downloads": -1, "filename": "opencafe-0.2.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "678bc99591e986ac7e157198083b2c0f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 154757, "upload_time": "2016-03-21T21:05:08", "url": "https://files.pythonhosted.org/packages/01/a2/5d2be784bd7374048b84c3ef7b6d2ce2e40f9b4dd776263456b0a65a340f/opencafe-0.2.5-py2.py3-none-any.whl" } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "17ba47c068ce23fe53bf2059210e1553", "sha256": "a0ea1a078f2a95be83861fd7f5b8df060527b4286689e1f893e0b41d8675ea74" }, "downloads": -1, "filename": "opencafe-0.2.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "17ba47c068ce23fe53bf2059210e1553", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 157418, "upload_time": "2016-04-22T21:10:59", "url": "https://files.pythonhosted.org/packages/a9/40/b3335ce7d7d98ebae2f0bcd357a7a7e95900433d27a768624a8e028ba4f8/opencafe-0.2.6-py2.py3-none-any.whl" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "85f129665d7962ef32bf34e2663c3626", "sha256": "b565a2c5f3f6efbd047fb30210048369c8154ddbdbdb9f43ed01ed845ac519cb" }, "downloads": -1, "filename": "opencafe-0.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "85f129665d7962ef32bf34e2663c3626", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 162637, "upload_time": "2016-05-11T21:04:33", "url": "https://files.pythonhosted.org/packages/4b/ef/e241909bc538baa59d301efd456ab24a241d60e12416158e555bfca08cd4/opencafe-0.3.0-py2.py3-none-any.whl" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "229e6a904951b7a2150b69369bf4fccd", "sha256": "b9e93366e78613fd66ba9c52eea2cb25b9b72e11ca8e500c44e9bcb69304c85f" }, "downloads": -1, "filename": "opencafe-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "229e6a904951b7a2150b69369bf4fccd", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 164179, "upload_time": "2016-07-06T16:39:13", "url": "https://files.pythonhosted.org/packages/ff/d8/514c56afd301f87c26a48ff7e5650b94330ef025e8873135ead20e59a9fa/opencafe-0.3.1-py2.py3-none-any.whl" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "c7f2dba839baccf9f4546eee50c50d4f", "sha256": "2348b8af93d339bc9dcc7c6e20c39c80e72bf50e29842c7bf13424139fccce1e" }, "downloads": -1, "filename": "opencafe-0.3.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c7f2dba839baccf9f4546eee50c50d4f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 164416, "upload_time": "2017-01-11T21:46:13", "url": "https://files.pythonhosted.org/packages/ea/12/17141fb67d7544cd4c2345788e7d4bf622d934f33a9ed962d5d9cc3c1b08/opencafe-0.3.2-py2.py3-none-any.whl" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "b593a8a3371597df8ccb7d955e54ccbc", "sha256": "5ad42f28ac5795056609e1e8f3bfeb41265c1908ef8daf2db7732493cbd9a0ff" }, "downloads": -1, "filename": "opencafe-0.3.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b593a8a3371597df8ccb7d955e54ccbc", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 162765, "upload_time": "2017-07-06T21:55:24", "url": "https://files.pythonhosted.org/packages/22/01/a0f6472c379fb3804f29b50abcc684522f0c9311725e148ae69dd608b357/opencafe-0.3.3-py2.py3-none-any.whl" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "31596624aafad9271863f6eae46c86ee", "sha256": "c379d1923755b436d0d1870cf204e9b2acab33fbbc2c79fb7055e789e9f94f2a" }, "downloads": -1, "filename": "opencafe-0.3.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "31596624aafad9271863f6eae46c86ee", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 162630, "upload_time": "2018-03-02T23:12:30", "url": "https://files.pythonhosted.org/packages/04/bd/5d1e87be927942cebd9814654e81b7afdba0a58fe8b6c28e8c21701551e6/opencafe-0.3.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b74e68d13a0ae75d62d786361fb8b01d", "sha256": "81e354578471edf35d885455680e4b493c407742f6fdcb753faa77e7d308244b" }, "downloads": -1, "filename": "opencafe-0.3.4.tar.gz", "has_sig": false, "md5_digest": "b74e68d13a0ae75d62d786361fb8b01d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 92515, "upload_time": "2018-03-02T23:10:55", "url": "https://files.pythonhosted.org/packages/ae/92/1ff5a4ada09bc2db8b41f04e165e2774f4ac5eb571098a588924f3d56ae5/opencafe-0.3.4.tar.gz" } ], "0.3.5": [ { "comment_text": "", "digests": { "md5": "9dbeb9e734262d4e9138ba7af4298248", "sha256": "af0fe0a53df23d69416ffc7af6c2c6ea512a4c9f85621ead0d719e384b3cea81" }, "downloads": -1, "filename": "opencafe-0.3.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9dbeb9e734262d4e9138ba7af4298248", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 161433, "upload_time": "2018-03-27T19:04:48", "url": "https://files.pythonhosted.org/packages/5f/25/f1fab2020fc2040593ac85816742a0f84d34142635111b04b533e49a95b5/opencafe-0.3.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "32cc64c3c79c417020f4ec72b350e42b", "sha256": "069d0a9ede188f2d205d85fea68d9e3e51a759c17d7f41098d6b99a291f565ab" }, "downloads": -1, "filename": "opencafe-0.3.5.tar.gz", "has_sig": false, "md5_digest": "32cc64c3c79c417020f4ec72b350e42b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 92502, "upload_time": "2018-03-27T18:58:22", "url": "https://files.pythonhosted.org/packages/73/9b/fb07a47c5033669ba94f1041464bb546a3bf8ee162b31a95f3c6f4a1c5e1/opencafe-0.3.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9dbeb9e734262d4e9138ba7af4298248", "sha256": "af0fe0a53df23d69416ffc7af6c2c6ea512a4c9f85621ead0d719e384b3cea81" }, "downloads": -1, "filename": "opencafe-0.3.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9dbeb9e734262d4e9138ba7af4298248", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 161433, "upload_time": "2018-03-27T19:04:48", "url": "https://files.pythonhosted.org/packages/5f/25/f1fab2020fc2040593ac85816742a0f84d34142635111b04b533e49a95b5/opencafe-0.3.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "32cc64c3c79c417020f4ec72b350e42b", "sha256": "069d0a9ede188f2d205d85fea68d9e3e51a759c17d7f41098d6b99a291f565ab" }, "downloads": -1, "filename": "opencafe-0.3.5.tar.gz", "has_sig": false, "md5_digest": "32cc64c3c79c417020f4ec72b350e42b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 92502, "upload_time": "2018-03-27T18:58:22", "url": "https://files.pythonhosted.org/packages/73/9b/fb07a47c5033669ba94f1041464bb546a3bf8ee162b31a95f3c6f4a1c5e1/opencafe-0.3.5.tar.gz" } ] }