b9b510ba6a
* manifests/site.pp: Pass both jenkins.openstack.org and jenkins-dev.openstack.org to openstack_project::zuul as the list of gearman workers for use in iptables rules. * modules/openstack_project/manifests/jenkins.pp * modules/openstack_project/manifests/jenkins_dev.pp: Remove unused 4155/tcp from public allowed ports list, previously for a bzr service which is no longer running on these servers. * modules/openstack_project/manifests/zuul.pp: Add iptables rules allowing access from gearman workers to the gearmand, and also configure gearmand to listen on all addresses including IPv6, as opposed to its IPv4-only default. * install_modules.sh: Add puppetlabs-stdlib version 3.2.0 to the list of puppet dependencies. This is required to pull in the "flatten" function used in zuul.pp above. Change-Id: I05d4abc92b3050884a7e9f3c2b6cd9dcc81bfa36 Reviewed-on: https://review.openstack.org/26245 Reviewed-by: James E. Blair <corvus@inaugust.com> Reviewed-by: Jeremy Stanley <fungi@yuggoth.org> Approved: Jeremy Stanley <fungi@yuggoth.org> Tested-by: Jenkins
53 lines
1.7 KiB
Puppet
53 lines
1.7 KiB
Puppet
# == Class: openstack_project::jenkins
|
|
#
|
|
class openstack_project::jenkins (
|
|
$jenkins_jobs_password = '',
|
|
$manage_jenkins_jobs = true,
|
|
$ssl_cert_file_contents = '',
|
|
$ssl_key_file_contents = '',
|
|
$ssl_chain_file_contents = '',
|
|
$sysadmins = []
|
|
) {
|
|
class { 'openstack_project::server':
|
|
iptables_public_tcp_ports => [80, 443],
|
|
sysadmins => $sysadmins,
|
|
}
|
|
|
|
$vhost_name = 'jenkins.openstack.org'
|
|
class { '::jenkins::master':
|
|
vhost_name => $vhost_name,
|
|
serveradmin => 'webmaster@openstack.org',
|
|
logo => 'openstack.png',
|
|
ssl_cert_file => '/etc/ssl/certs/jenkins.openstack.org.pem',
|
|
ssl_key_file => '/etc/ssl/private/jenkins.openstack.org.key',
|
|
ssl_chain_file => '/etc/ssl/certs/intermediate.pem',
|
|
ssl_cert_file_contents => $ssl_cert_file_contents,
|
|
ssl_key_file_contents => $ssl_key_file_contents,
|
|
ssl_chain_file_contents => $ssl_chain_file_contents,
|
|
}
|
|
|
|
if $manage_jenkins_jobs == true {
|
|
class { '::jenkins::job_builder':
|
|
url => "https://${vhost_name}/",
|
|
username => 'gerrig', # This is not a typo, well it isn't anymore.
|
|
password => $jenkins_jobs_password,
|
|
}
|
|
|
|
file { '/etc/jenkins_jobs/config':
|
|
ensure => directory,
|
|
owner => 'root',
|
|
group => 'root',
|
|
mode => '0755',
|
|
recurse => true,
|
|
source =>
|
|
'puppet:///modules/openstack_project/jenkins_job_builder/config',
|
|
notify => Exec['jenkins_jobs_update'],
|
|
}
|
|
|
|
file { '/etc/default/jenkins':
|
|
ensure => present,
|
|
source => 'puppet:///modules/openstack_project/jenkins/jenkins.default',
|
|
}
|
|
}
|
|
}
|