{ "info": { "author": "Domen Ko\u017ear and Timo Stollenwerk", "author_email": "domen@dev.si", "bugtrack_url": null, "classifiers": [ "Framework :: Buildout", "Intended Audience :: Developers", "Topic :: Software Development :: Build Tools" ], "description": "Introduction\r\n============\r\n\r\nSimple buildout recipe that generated three commands *push a jenkins job*, *pull a jenkins job* and *trigger build on jenkins job*.\r\n\r\nRecipe enables developer to sync configuration on Jenkins with buildout configuration.\r\n\r\nWorkflow to be used with the recipe:\r\n\r\n- create and configure a job through the web\r\n- run pull jenkins job\r\n- later, make more changes the job through the web\r\n- run pull jenkins job and use your SCM to diff the config\r\n- (optional) push configuration to any other server or use it as restore\r\n- (optional) trigger build, because you are too lazy to wait n minutes for cronjob\r\n\r\nSupported options\r\n=================\r\n\r\nThe recipe supports the following options:\r\n\r\nhostname (required)\r\n Hostname of the Jenkins instance.\r\n\r\njobname (required)\r\n Name of the Jenkins job.\r\n\r\njobconfig (default: jenkins_config.xml)\r\n Name for XML configuration file for the Jenkins job, relative to buildout directory.\r\n\r\nusername (required)\r\n Jenkins username\r\n\r\npassword (required)\r\n Jenkins password\r\n\r\nport (default: 80)\r\n Jenkins port\r\n\r\n\r\nExample usage\r\n=============\r\n\r\nWe'll start by creating a buildout that uses the recipe::\r\n\r\n >>> write('buildout.cfg',\r\n ... \"\"\"\r\n ... [buildout]\r\n ... parts = jenkins-job\r\n ...\r\n ... [jenkins-job]\r\n ... recipe = collective.recipe.jenkinsjob\r\n ... hostname = %(hostname)s\r\n ... jobname = %(jobname)s\r\n ... jobconfig = %(jobconfig)s\r\n ... username = %(username)s\r\n ... password = %(password)s\r\n ... \"\"\" % {\r\n ... 'hostname' : 'jenkins.plone.org',\r\n ... 'jobname' : 'Plone42',\r\n ... 'jobconfig': 'plone.xml',\r\n ... 'username': 'chuck',\r\n ... 'password': 'norris'})\r\n\r\nRunning the buildout gives us::\r\n\r\n >>> buildout_output_lower = system(buildout).lower()\r\n >>> \"installing jenkins-job\" in buildout_output_lower\r\n True\r\n >>> \"generated script\" in buildout_output_lower\r\n True\r\n >>> \"bin/jenkins-job-push\" in buildout_output_lower\r\n True\r\n >>> \"bin/jenkins-job-pull\" in buildout_output_lower\r\n True\r\n >>> \"bin/jenkins-job-trigger-build\" in buildout_output_lower\r\n True\r\n\nDetailed Documentation\n**********************\n\nContributors\n************\n\nNote: place names and roles of the people who contribute to this package\r\n in this file, one to a line, like so:\r\n\r\n- Timo Stollenwerk\r\n- Domen Ko\u017ear\r\n\nChange history\n**************\n\nChangelog\r\n=========\r\n\r\n1.0-alpha1 (2012/02/26)\r\n-------------------\r\n\r\n- forked from collective.recipe.hudsonjob\r\n [tisto, iElectric]\r\n\nDownload\n********", "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/tisto/collective.recipe.jenkinsjob", "keywords": "", "license": "gpl", "maintainer": null, "maintainer_email": null, "name": "collective.recipe.jenkinsjob", "package_url": "https://pypi.org/project/collective.recipe.jenkinsjob/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/collective.recipe.jenkinsjob/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/tisto/collective.recipe.jenkinsjob" }, "release_url": "https://pypi.org/project/collective.recipe.jenkinsjob/1.0-alpha1/", "requires_dist": null, "requires_python": null, "summary": "Buildout recipe to manage jobs on a remote Jenkins CI server.", "version": "1.0-alpha1" }, "last_serial": 723050, "releases": { "1.0-alpha1": [ { "comment_text": "", "digests": { "md5": "3eb695d8af855fa6704abb2463ada3ed", "sha256": "7aff51b26be493b5b1080f01b88581e0a719838bd464f0cf36b4db3559896815" }, "downloads": -1, "filename": "collective.recipe.jenkinsjob-1.0-alpha1.zip", "has_sig": false, "md5_digest": "3eb695d8af855fa6704abb2463ada3ed", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24595, "upload_time": "2012-02-26T16:06:53", "url": "https://files.pythonhosted.org/packages/7c/58/e4e5a8de7b8f97c192bca810ee8dbde8a2319ead677b88994d9bee150814/collective.recipe.jenkinsjob-1.0-alpha1.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "3eb695d8af855fa6704abb2463ada3ed", "sha256": "7aff51b26be493b5b1080f01b88581e0a719838bd464f0cf36b4db3559896815" }, "downloads": -1, "filename": "collective.recipe.jenkinsjob-1.0-alpha1.zip", "has_sig": false, "md5_digest": "3eb695d8af855fa6704abb2463ada3ed", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24595, "upload_time": "2012-02-26T16:06:53", "url": "https://files.pythonhosted.org/packages/7c/58/e4e5a8de7b8f97c192bca810ee8dbde8a2319ead677b88994d9bee150814/collective.recipe.jenkinsjob-1.0-alpha1.zip" } ] }