{ "info": { "author": "Benoit Delbosc", "author_email": "bdelbosc@nuxeo.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: Developers", "Intended Audience :: Information Technology", "Intended Audience :: System Administrators", "License :: OSI Approved :: GNU General Public License (GPL)", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Software Development :: Quality Assurance" ], "description": "===========\njenkviz\n===========\n\nNAME\n----\n\n jenkviz - visualization of a Jenkins_ build flow using graphviz_.\n\n\nDESCRIPTION\n-----------\n\n Tool to crawl a Jenkins site using a build url and producing a SVG_\n output to render the build flow.\n\n The SVG_ graph displays:\n - A summary box with:\n\n - the total elapsed time \n - the cumulated duration for each build\n - a throughput (duration/elapsed)\n - number of builds\n\n - Black arrows to render upstream and downstream relation\n - Orange arrows to render downstream only relation\n - Build with a blue/yellow/red/gray box for Success/Unstable/Failed/Aborted\n build status\n\n Build information are stored in a local sqlite database. The\n database is used as a cache to not fetch twice a build page\n but also to get information using plain SQL::\n\n sqlite3 ~/jenkviz.db\n -- Slowest jobs\n sqlite> SELECT name, SUM(duration_s), MAX(duration_s), AVG(duration_s), COUNT(1)\n FROM build\n GROUP BY name\n ORDER BY SUM(duration_s) DESC\n LIMIT 10;\n -- Slave load\n sqlite> SELECT host, SUM(duration_s) FROM build GROUP BY host ORDER BY SUM(duration_s) DESC LIMIT 10;\n\n\nUSAGE\n-----\n\n jenkviz [--version] [--logfile=LOGFILE] [--database=DATABASE] COMMAND [OPTIONS] ARGUMENTS\n\n jenkviz -h\n\n\nCOMMANDS\n~~~~~~~~~\n\n crawl [--direct|--reverse|--explore] [--output SVG_FILE] JENKINS_BUILD_URL\n\n The ``--direct`` option shows only downstream and upstream relation,\n removing downstream only link.\n\n The ``--reverse`` option crawl backward using upstream builds.\n\n The ``--explore`` option to keep downstream builds that have\n upstream build out of the scope of the origin build (the upstream\n build is not a descendant of the root build)\n\nEXAMPLES\n~~~~~~~~~\n\n jenkviz crawl http://jenkins.site/jenkviz/job_name/42/\n\n \nLIMITATIONS\n-----------\n\n Jenkviz try to find downstream/upstream build using the web page and\n the REST API to work around the JENKINS-6211_ bug. \n\n\nINSTALLATION\n------------\n\n On Debian/Ubuntu::\n\n sudo aptitude install graphviz\n sudo easy_install jenkviz\n\n\nSOURCE REPOSITORY\n~~~~~~~~~~~~~~~~~~~~\n\n Jenkviz is currently hosted at github_.\n\n\nISSUES AND BUG REPORTS\n~~~~~~~~~~~~~~~~~~~~~~~~\n\n Feature requests and bug reports can be made here:\n\n * https://github.com/bdelbosc/jenkviz/issues\n\n\n.. _SVG: http://public.dev.nuxeo.com/~ben/demo.svg\n.. _JENKINS-6211: https://issues.jenkins-ci.org/browse/JENKINS-6211\n.. _Jenkins: http://jenkins-ci.org/\n.. _graphviz: http://www.graphviz.org/\n.. _github: https://github.com/bdelbosc/jenkviz", "description_content_type": null, "docs_url": null, "download_url": "http://pypi.python.org/packages/source/t/jenkviz/jenkviz-0.3.2.tar.gz", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://pypi.python.org/pypi/jenkviz", "keywords": "jenkins hudson CI chart", "license": "GPL", "maintainer": null, "maintainer_email": null, "name": "jenkviz", "package_url": "https://pypi.org/project/jenkviz/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/jenkviz/", "project_urls": { "Download": "http://pypi.python.org/packages/source/t/jenkviz/jenkviz-0.3.2.tar.gz", "Homepage": "http://pypi.python.org/pypi/jenkviz" }, "release_url": "https://pypi.org/project/jenkviz/0.3.2/", "requires_dist": null, "requires_python": null, "summary": "Crawl a jenkins build and report stats and graphs about the build flow.", "version": "0.3.2" }, "last_serial": 872848, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "e1d270a934dfea04d46077bb7a4e921e", "sha256": "cfea4b1fb9cc1b37fcb60073b1b83b589544634d16e5dbad7dfb91142239a3ba" }, "downloads": -1, "filename": "jenkviz-0.1.0-py2.6.egg", "has_sig": false, "md5_digest": "e1d270a934dfea04d46077bb7a4e921e", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 23782, "upload_time": "2012-01-24T23:08:09", "url": "https://files.pythonhosted.org/packages/91/04/50db55a5f32a20703480624c95d42c00876d4429013efb33f4bda7d18c96/jenkviz-0.1.0-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "4e0b7be3a5c8fa4e79675bd4577eeec8", "sha256": "bdf732738c282c5089ddf3b7974a28aafab467f382c1b1d923e06b4a38e5c05d" }, "downloads": -1, "filename": "jenkviz-0.1.0-py2.7.egg", "has_sig": false, "md5_digest": "4e0b7be3a5c8fa4e79675bd4577eeec8", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 23725, "upload_time": "2012-01-24T23:08:13", "url": "https://files.pythonhosted.org/packages/c9/4c/8381c3efeb6564debff758bf93fbe724eefea73d258b83a0cd3ad9252ff0/jenkviz-0.1.0-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "305247822f096498b2a8cc0de5b903c9", "sha256": "60917dd603d7b7e70c03763dfe378fdc5fbdb75d7406e90548ce9f1497f4c928" }, "downloads": -1, "filename": "jenkviz-0.1.0.tar.gz", "has_sig": false, "md5_digest": "305247822f096498b2a8cc0de5b903c9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 89104, "upload_time": "2012-01-24T23:08:08", "url": "https://files.pythonhosted.org/packages/3b/b8/9cfffa6d89c437007815eb9a1ad55a2d9cd838d271cb78a0d7761c46e95b/jenkviz-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "6102d46f87163971992d674a0259f991", "sha256": "767fb53e9a0de61709adaf987a068f5337031c54c01f7de8e0b92c9f28f4416f" }, "downloads": -1, "filename": "jenkviz-0.1.1-py2.6.egg", "has_sig": false, "md5_digest": "6102d46f87163971992d674a0259f991", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 23794, "upload_time": "2012-01-24T23:10:16", "url": "https://files.pythonhosted.org/packages/17/bc/67311740e0ee8a65d98135f85c902ea15baa8bed8f3850266adb441dfa6a/jenkviz-0.1.1-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "6782ed6769bbe2495a01c5a7d2290480", "sha256": "0858c8feae5051e7619f589150c0b35e4554110d7ddbc98fb8f711a4654effb0" }, "downloads": -1, "filename": "jenkviz-0.1.1-py2.7.egg", "has_sig": false, "md5_digest": "6782ed6769bbe2495a01c5a7d2290480", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 23737, "upload_time": "2012-01-24T23:10:19", "url": "https://files.pythonhosted.org/packages/ec/5b/b8e57adaae6b63fcc46eda5d6081dd237054572bf12cf3ce32aecd13f0ef/jenkviz-0.1.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "ca97583fd6749531fbffe43d2f6d7184", "sha256": "3efbf125ad6e7aab68b0ffaaa78e89326a2d8a7d5fec1890fda0df5c35e2c50f" }, "downloads": -1, "filename": "jenkviz-0.1.1.tar.gz", "has_sig": false, "md5_digest": "ca97583fd6749531fbffe43d2f6d7184", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 89120, "upload_time": "2012-01-24T23:10:15", "url": "https://files.pythonhosted.org/packages/98/12/5e4460aa099edf7b3fd95ad5909c8c5c61f074f5a9ba0bdf72bea108c21b/jenkviz-0.1.1.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "580eccff7f4122a08c39f34d8b0a6b13", "sha256": "c2d208a229ef595579017fa65c77c438cb0d1175b58c1ff1887d442f376d4a36" }, "downloads": -1, "filename": "jenkviz-0.2.0-py2.6.egg", "has_sig": false, "md5_digest": "580eccff7f4122a08c39f34d8b0a6b13", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 25741, "upload_time": "2012-01-26T10:56:04", "url": "https://files.pythonhosted.org/packages/27/c9/2ece0e479277d8cf583407fdc20fd9dfc55e5f39b2264368162d4c1f7ca1/jenkviz-0.2.0-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "7b2e4930cc36269fdc1504113082eccf", "sha256": "c06e620cac04d09ecd4277ec7c9a6d119e80ba761b65ce9f5657feaaca6c3815" }, "downloads": -1, "filename": "jenkviz-0.2.0-py2.7.egg", "has_sig": false, "md5_digest": "7b2e4930cc36269fdc1504113082eccf", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 25695, "upload_time": "2012-01-26T10:56:07", "url": "https://files.pythonhosted.org/packages/8a/4e/15d4139e633507f6753bac5fc549f1822c76b3ecff22bac6a70d1d8fbfcc/jenkviz-0.2.0-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "51282036494905780357e6623ac96432", "sha256": "3f6c67da848513f02f39cef6c22c59d32561a669de6988a36a068e3ecd8e1c45" }, "downloads": -1, "filename": "jenkviz-0.2.0.tar.gz", "has_sig": false, "md5_digest": "51282036494905780357e6623ac96432", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 102571, "upload_time": "2012-01-26T10:56:03", "url": "https://files.pythonhosted.org/packages/b9/39/f479e03e954d0a0c1a2214af2d98b9c7e2bd1ff7f6e97830bf00716d743d/jenkviz-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "cb06eb279cd9ee5ea862800f7f4adf46", "sha256": "8d3be80d8c7fe2354a47f6abb9b29192068244bb5899d3c9e43cf6c7807c38bf" }, "downloads": -1, "filename": "jenkviz-0.3.0-py2.6.egg", "has_sig": false, "md5_digest": "cb06eb279cd9ee5ea862800f7f4adf46", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 27451, "upload_time": "2012-01-31T11:59:06", "url": "https://files.pythonhosted.org/packages/83/83/22a730c16b19b7efb09ede7d2ec95b6c418e4175c5ac0c72a8963763234a/jenkviz-0.3.0-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "b10667a95ab5ed7136cd66d74c0ee12b", "sha256": "579222d8c3ba07326f3a822924c763f53cea1f4c4e2c23e22ee5dd71605b1836" }, "downloads": -1, "filename": "jenkviz-0.3.0-py2.7.egg", "has_sig": false, "md5_digest": "b10667a95ab5ed7136cd66d74c0ee12b", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 27386, "upload_time": "2012-01-31T11:59:10", "url": "https://files.pythonhosted.org/packages/f8/a7/2951f8647cbe7e8b88d7336130a584780afb95f0d3cc3ab6cec67705bc99/jenkviz-0.3.0-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "711b3f1bdcf8cfa4f8024755289a8467", "sha256": "6ed021dae41e6f3b68d10f357f33cd44ce49116d460b50c857b101934d382430" }, "downloads": -1, "filename": "jenkviz-0.3.0.tar.gz", "has_sig": false, "md5_digest": "711b3f1bdcf8cfa4f8024755289a8467", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 103024, "upload_time": "2012-01-31T11:59:05", "url": "https://files.pythonhosted.org/packages/33/33/994c31104d2912997fc9c1a62c220580fee323b7554395729edb24eb39ef/jenkviz-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "4a1a2a3b5b9ee1a6a49b8ec15cb0edcd", "sha256": "6cbf71d11ac43a9a2054501b570fa8ee36162e299684298c2272ed2fb85f4e0f" }, "downloads": -1, "filename": "jenkviz-0.3.1-py2.7.egg", "has_sig": false, "md5_digest": "4a1a2a3b5b9ee1a6a49b8ec15cb0edcd", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 26970, "upload_time": "2012-05-02T18:43:43", "url": "https://files.pythonhosted.org/packages/2a/e6/cce99630d6f0a829f6b5ee27180d5118d663f8b0f97e36ddde64b25ebdf5/jenkviz-0.3.1-py2.7.egg" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "623ee262f8eafa85320745bd026104f5", "sha256": "8a69377f864419e98f39f0f5c83b8834d46a644336e3a5a64261a89d293fce12" }, "downloads": -1, "filename": "jenkviz-0.3.2-py2.7.egg", "has_sig": false, "md5_digest": "623ee262f8eafa85320745bd026104f5", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 27229, "upload_time": "2013-09-24T14:48:31", "url": "https://files.pythonhosted.org/packages/0e/53/d8cf0a416551d6087d51de73a51f9ac9179097dbc4196de2a0e4b0d73073/jenkviz-0.3.2-py2.7.egg" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "623ee262f8eafa85320745bd026104f5", "sha256": "8a69377f864419e98f39f0f5c83b8834d46a644336e3a5a64261a89d293fce12" }, "downloads": -1, "filename": "jenkviz-0.3.2-py2.7.egg", "has_sig": false, "md5_digest": "623ee262f8eafa85320745bd026104f5", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 27229, "upload_time": "2013-09-24T14:48:31", "url": "https://files.pythonhosted.org/packages/0e/53/d8cf0a416551d6087d51de73a51f9ac9179097dbc4196de2a0e4b0d73073/jenkviz-0.3.2-py2.7.egg" } ] }