jenkins_job_builder
Version information
This version is compatible with:
- Puppet Enterprise 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x, 2017.3.x, 2017.2.x, 2016.4.x
- Puppet >= 4.10.0 < 7.0.0
- , , ,
This module has been deprecated by its author since Aug 19th 2024.
The reason given was: Deprecating it on Forge as per owner request.
Start using this module
Documentation
Jenkins Job Builder module for Puppet
Table of Contents
- Overview
- Module Description - What the module does and why it is useful
- Setup - The basics of getting started with jenkins_job_builder
- Usage - Configuration options and additional functionality
- Reference - An under-the-hood peek at what the module is doing and how
- Limitations - OS compatibility, etc.
- Development - Guide for contributing to the module
Overview
Install jenkins_job_builder to allow you to manage your Jenkins jobs.
Module Description
The openstack jenkins_job_builder tool manages the configuration of jobs in your Jenkins instance. This module wraps that tool and allows you to control all the configuration of your Jenkins jobs from within hiera.
Setup
What jenkins_job_builder affects
- Install the jenkins_job_builder pip package
- Creates temporary files for each jenkins job you want to manage
Beginning with jenkins_job_builder
Installing jenkins_job_builder to a specified version
class { 'jenkins_job_builder':
version => 'latest'
}
Usage
Classes and Defined Types
Class: jenkins_job_builder
Parameters within jenkins_job_builder
:
version
The version of the the plugin to be installed.
jobs
A hash of the configuration for all the jobs you want to configure in your Jenkins instance.
user
The user used to authenticate to the Jenkins instance. (optional)
password
The password used to authenticate to the Jenkins instance. (optional)
timeout
(Optional) The connection timeout (in seconds) to the Jenkins server. If timeout
is unset it will remove any existing timeout values in the config file.
hipchat_token
If using the jenkins hipchat plugin, this is the token that should be specified in the global config.
jenkins_url
The full url (including port) to the jenkins instance.
Define: jenkins_job_builder::job
Parameters within jenkins_job_builder::job
:
config
A hash of the configuration for all the job you want to configure in your Jenkins instance.
delay
The time (in seconds) to delay the creatation of the Jenkins job. This is to avoid issues where Jenkins restarts during a puppet run.
service_name
The name of the jenkins service to restart when configuration changes are made. Defaults to 'jenkins'
Reference
Classes
Public Classes
jenkins_job_builder
: Guides the installation of jenkins_job_builder
Definitions
jenkins_job_builder::job
: Manages the configuration of a Jenkins job
Limitations
This module is tested on the following platforms:
- CentOS 5
- CentOS 6
- Ubuntu 13.10
- Ubuntu 14.04
It is tested with the OSS version of Puppet only.
Development
Contributing
Please read CONTRIBUTING.md for full details on contributing to this project.
Changelog
All notable changes to this project will be documented in this file. Each new release typically also includes the latest modulesync defaults. These should not affect the functionality of the module.
v3.0.2 (2018-10-14)
Merged pull requests:
- modulesync 2.2.0 and allow puppet 6.x #83 (bastelfreak)
- allow puppetlabs/stdlib 5.x #81 (bastelfreak)
v3.0.1 (2018-08-15)
Merged pull requests:
- allow puppetlabs/inifile 2.x #79 (bastelfreak)
- Remove docker nodesets #75 (bastelfreak)
- drop EOL OSs; fix puppet version range #74 (bastelfreak)
v3.0.0 (2017-11-13)
Breaking changes:
- replace validate_* with datatypes #63 (bastelfreak)
Implemented enhancements:
- Allow user/pass to be managed outside Puppet #67 (Slashbunny)
Closed issues:
- python-argparse is virtual on Ubuntu #64
Merged pull requests:
- Remove unused dependency (fixes #64) #66 (Slashbunny)
- Modulesync 0.17.0 #58 (bastelfreak)
v2.1.0 (2017-01-12)
This is the last release with Puppet 3 support!
- Rename python-pip to python2-pip
- Fix several markdown issues
- Adjust minimal required Puppet + dependency versions
- Add missing badges
2016-08-19 - Release 2.0.1
- Fix: implement optional idempotent update operation
- Modulesync with latest Vox Pupuli defaults
##2016-06-08 - Release 2.0.0 ###Summary
- Dropped Ruby1.8 support!
- Issue #17, Make install source configurable
- Issue #18, use to_yaml methods instead of sort_yaml method (potentially breaking change).
- Issue #21, Job creation retry implementation
- Issue #31, Support for sourcing jobs
- add capability to install job_builder from git
- removing argparse dependency for debian
##2014-10-24 - Release 1.1.0 ###Summary
This releases focuses on fixing some minor bugs and also adds support for supply your own configuration yaml
####Features
- new parameter
job_yaml
to include the yaml configuration for a job in it's raw format and not be generated by the module. This is useful when when dealing with large complex jobs. (#8)
####Bugfixes
- add missing inifile dependency into metadata.json
- fixes bug in the yaml template not generating the correct yaml configuration (#7)
##2014-10-10 - Release 1.0.0 ###Summary
This release focuses on improving the testing and documentation of the module. It also contains a number of small bugfixes
####Features
- Adding new parameter
service_name
to the job definition to better support when jenkins is installed in an app server like tomcat - Improved documentation
- Improved tests
####Bugfixes
- Fix missing '-job' keyword in yaml template
- Added missing python-argparse dependency
##2014-06-13 - Release 0.1.1 ###Summary This release fixes some bugs in the yaml file
####Bugfixes
- fixed bug with double quote escaping causing and invalid yaml file
##2014-06-06 - Release 0.1.0 ###Summary
Initial release. Supports installing jenkins_job_builder package and managing jobs with yaml
* This Changelog was automatically generated by github_changelog_generator
Dependencies
- puppetlabs/stdlib (>= 4.13.1 < 6.0.0)
- puppetlabs/inifile (>= 1.4.1 < 3.0.0)
Copyright (c) 2014 OpenTable, Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.