system-config/modules/jenkins_jobs/manifests/init.pp

42 lines
950 B
Puppet

class jenkins_jobs($url, $username, $password, $site, $projects) {
package { 'python-yaml':
ensure => 'present'
}
file { '/usr/local/jenkins_jobs':
owner => 'root',
group => 'root',
mode => 755,
ensure => 'directory',
recurse => true,
source => ['puppet:///modules/jenkins_jobs/'],
require => Package['python-yaml']
}
file { '/usr/local/jenkins_jobs/jenkins_jobs.ini':
owner => 'root',
group => 'root',
mode => 440,
ensure => 'present',
content => template('jenkins_jobs/jenkins_jobs.ini.erb'),
replace => 'true',
require => File['/usr/local/jenkins_jobs']
}
process_projects { $projects:
site => $site,
require => [
File['/usr/local/jenkins_jobs/jenkins_jobs.ini'],
Package['python-jenkins']
]
}
package { "python-jenkins":
ensure => latest, # okay to use latest for pip
provider => pip,
require => Package[python-pip],
}
}