{ "info": { "author": "Jared Petersen", "author_email": "Jared.Petersen@cdk.com", "bugtrack_url": null, "classifiers": [], "description": "Continuous Delivery Performance Promotion Tool\r\n==============================================\r\n\r\nThe Continuous Delivery Performance Promotion Tool is a Python program\r\nthat is used to evaluate whether applications are performing well enough\r\nto be moved on to the next stage in the continuous delivery system. This\r\ntool allows users to define how their application should be performing\r\nvia a simple JSON configuration file and then evaluates the\r\napplication\u2019s actual performance against those criteria. Currently, the\r\nprogram supports AppDynamics, BlazeMeter, and WebPageTest but aims to\r\nsupport other load testing tools like SilkPerformer and Visual Studio\r\nTest Suite as well in the future.\r\n\r\nGetting Started\r\n===============\r\n\r\nInstallation (Basic)\r\n--------------------\r\n\r\n1. Run ``pip install cd_perf_promotion``\r\n2. You\u2019re done!\r\n\r\nInstallation (Advanced)\r\n-----------------------\r\n\r\n1. Make sure that you have the latest version of Python and Pip\r\n installed and that you can run both via your command-line interface\r\n (CLI).\r\n2. Download the source code and navigate to it using your CLI.\r\n3. Inside the cd\\_perf\\_promotion downloaded directory, run\r\n ``python setup.py install`` to begin installation.\r\n4. The application will download the necessary dependencies via Pip and\r\n install itself. You will now be able to run the program from your CLI\r\n via the command ``cdperfpromotion``.\r\n5. You\u2019re done!\r\n\r\nDefining Your Promotion Criteria\r\n--------------------------------\r\n\r\nYour ``config.json`` file contains all of the configuration information\r\nthat the tool needs to retrieve data from your performance tools and\r\nevaluate whether your application meets your performance standards.\r\nWe\u2019ve provided some sample configuration files (located in\r\n``documentation/sample_configs/input``) to help you get started. A\r\ncomplete list of all of the available data items that can be used to\r\nevaluate the performance of your application and information on what\r\nthey really mean is available in the ``dictionary.md`` file inside the\r\n``documentation`` directory.\r\n\r\nWe\u2019ve put a lot of work into making sure that the program is modular and\r\ncustomizable so that you don\u2019t have to include all of the data items\r\nthat exist in the configuration file. Instead, only include the tools\r\nthat you are using and the data items that you would like to include.\r\nAnything not included will not be evaluated against. Please note that\r\nyou must include configuration information for the tools used to gather\r\nthe information that is defined. For example, if you wanted to include\r\nyour application\u2019s average response time, you must also include a\r\nBlazeMeter section with a BlazeMeter API key and test ID.\r\n\r\nEvaluating the Results\r\n======================\r\n\r\nThe ``promotion_gates`` JSON object in the output file contains all of\r\nthe high-level information about whether each data metric met the\r\nconfiguration file target. If any of the transactions/runs has a data\r\nitem that does not meet the predefined performance target, the whole\r\ndata item is marked as failed in the ``promotion_gates`` section. If a\r\ndata item is failed, you can go up to that respective data item\u2019s parent\r\ntool and figure out where it failed and what the actual result was.\r\n\r\nFor example, the sample configuration file ``config_all.json.sample``\r\ndefines that there must not be any AppDynamics health rule violations\r\nwith a severity of warning (``\"warning\": true``) or critical\r\n(``\"critical\": true``). Unfortunately, the output file,\r\n``cdperfpromodata_timestamp_all.json.sample``, states in the\r\n``promotion_gates`` section that this data item has failed\r\n(``\"appdynamics_health\": false``). Knowing that, we can go up and look\r\nat the ``appdynamics`` section which reveals that the application we\u2019re\r\nevaluating has a health rule violation with a severity of warning that\r\nis notifying us that the application is using too much memory.\r\n\r\nIt\u2019s important to note that if any of the data items specified in the\r\nconfiguration file fails, the entire application will fail and will not\r\nbe promoted to the next stage.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/CDKGlobal/cd-performance-promotion", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "cd_perf_promotion", "package_url": "https://pypi.org/project/cd_perf_promotion/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/cd_perf_promotion/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/CDKGlobal/cd-performance-promotion" }, "release_url": "https://pypi.org/project/cd_perf_promotion/1.0.0/", "requires_dist": null, "requires_python": null, "summary": "Evaluate and promote builds on a CI/CD platform based on performance", "version": "1.0.0" }, "last_serial": 1708134, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "bdf86d427715be77cffbf8555535a857", "sha256": "ba61596c08d42cdc34859ea1a0bc1158d718f3586a4e0b363d8502d97c345a08" }, "downloads": -1, "filename": "cd_perf_promotion-1.0.0.zip", "has_sig": false, "md5_digest": "bdf86d427715be77cffbf8555535a857", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36514, "upload_time": "2015-09-03T22:09:11", "url": "https://files.pythonhosted.org/packages/44/1d/094508ac9debf30dffe8ab27baf739954743453172f49aa63d7429f0cfc6/cd_perf_promotion-1.0.0.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "bdf86d427715be77cffbf8555535a857", "sha256": "ba61596c08d42cdc34859ea1a0bc1158d718f3586a4e0b363d8502d97c345a08" }, "downloads": -1, "filename": "cd_perf_promotion-1.0.0.zip", "has_sig": false, "md5_digest": "bdf86d427715be77cffbf8555535a857", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36514, "upload_time": "2015-09-03T22:09:11", "url": "https://files.pythonhosted.org/packages/44/1d/094508ac9debf30dffe8ab27baf739954743453172f49aa63d7429f0cfc6/cd_perf_promotion-1.0.0.zip" } ] }