system-config/modules/jenkins/manifests/job_builder.pp
Matthew Wagoner 5812510ea7 Clean up of minor puppet-lint warnings.
Mostly documentation and parameterised class parameter complaints.

Change-Id: Idbfd348a5befb041ce6eb36f9c6b195fc0c6799f
Reviewed-on: https://review.openstack.org/16685
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Approved: Monty Taylor <mordred@inaugust.com>
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Tested-by: Jenkins
2012-11-23 21:41:37 +00:00

63 lines
1.6 KiB
Puppet

# == Class: jenkins::job_builder
#
class jenkins::job_builder (
$url = '',
$username = '',
$password = '',
) {
# A lot of things need yaml, be conservative requiring this package to avoid
# conflicts with other modules.
if ! defined(Package['python-yaml']) {
package { 'python-yaml':
ensure => present,
}
}
if ! defined(Package['python-jenkins']) {
package { 'python-jenkins':
ensure => present,
}
}
vcsrepo { '/opt/jenkins_job_builder':
ensure => latest,
provider => git,
revision => 'master',
source => 'https://github.com/openstack-ci/jenkins-job-builder.git',
}
exec { 'install_jenkins_job_builder':
command => 'python setup.py install',
cwd => '/opt/jenkins_job_builder',
path => '/bin:/usr/bin',
refreshonly => true,
subscribe => Vcsrepo['/opt/jenkins_job_builder'],
}
file { '/etc/jenkins_jobs':
ensure => directory,
}
exec { 'jenkins_jobs_update':
command => 'jenkins-jobs update /etc/jenkins_jobs/config',
path => '/bin:/usr/bin:/usr/local/bin',
refreshonly => true,
require => [
File['/etc/jenkins_jobs/jenkins_jobs.ini'],
Package['python-jenkins'],
Package['python-yaml'],
],
}
# TODO: We should put in notify Exec['jenkins_jobs_update']
# at some point, but that still has some problems.
file { '/etc/jenkins_jobs/jenkins_jobs.ini':
ensure => present,
owner => 'jenkins',
mode => '0400',
content => template('jenkins/jenkins_jobs.ini.erb'),
require => File['/etc/jenkins_jobs'],
}
}