diff --git a/manifests/site.pp b/manifests/site.pp index 315c585060..f3c2b4ba8e 100644 --- a/manifests/site.pp +++ b/manifests/site.pp @@ -78,6 +78,7 @@ node 'jenkins.openstack.org' { zmq_event_receivers => ['logstash.openstack.org', 'nodepool.openstack.org', ], + gearman_server => 'zuul.openstack.org', } } @@ -92,6 +93,7 @@ node 'jenkins01.openstack.org' { zmq_event_receivers => ['logstash.openstack.org', 'nodepool.openstack.org', ], + gearman_server => 'zuul.openstack.org', } } @@ -106,6 +108,7 @@ node 'jenkins02.openstack.org' { zmq_event_receivers => ['logstash.openstack.org', 'nodepool.openstack.org', ], + gearman_server => 'zuul.openstack.org', } } @@ -120,6 +123,7 @@ node 'jenkins03.openstack.org' { zmq_event_receivers => ['logstash.openstack.org', 'nodepool.openstack.org', ], + gearman_server => 'zuul.openstack.org', } } @@ -134,6 +138,7 @@ node 'jenkins04.openstack.org' { zmq_event_receivers => ['logstash.openstack.org', 'nodepool.openstack.org', ], + gearman_server => 'zuul.openstack.org', } } @@ -148,6 +153,7 @@ node 'jenkins05.openstack.org' { zmq_event_receivers => ['logstash.openstack.org', 'nodepool.openstack.org', ], + gearman_server => 'zuul.openstack.org', } } @@ -162,6 +168,7 @@ node 'jenkins06.openstack.org' { zmq_event_receivers => ['logstash.openstack.org', 'nodepool.openstack.org', ], + gearman_server => 'zuul.openstack.org', } } @@ -176,6 +183,7 @@ node 'jenkins07.openstack.org' { zmq_event_receivers => ['logstash.openstack.org', 'nodepool.openstack.org', ], + gearman_server => 'zuul.openstack.org', } } @@ -192,6 +200,7 @@ node 'jenkins-dev.openstack.org' { hpcloud_username => hiera('nodepool_hpcloud_username'), hpcloud_password => hiera('nodepool_hpcloud_password'), hpcloud_project => hiera('nodepool_hpcloud_project'), + gearman_server => 'zuul-dev.openstack.org', } } diff --git a/modules/jenkins/manifests/master.pp b/modules/jenkins/manifests/master.pp index a54108647b..7582cc4d30 100644 --- a/modules/jenkins/manifests/master.pp +++ b/modules/jenkins/manifests/master.pp @@ -4,6 +4,9 @@ class jenkins::master( $logo = '', $vhost_name = $::fqdn, $serveradmin = "webmaster@${::fqdn}", + $gearman_server = '127.0.0.1', + $gearman_enable = true, + $gearman_port = '4730', $ssl_cert_file = '', $ssl_key_file = '', $ssl_chain_file = '', @@ -162,6 +165,17 @@ class jenkins::master( require => File['/var/lib/jenkins'], } + file {'/var/lib/jenkins/hudson.plugins.gearman.GearmanPluginConfig.xml': + ensure => present, + content => template('jenkins/gearman-plugin.xml.erb'), + owner => 'jenkins', + group => 'adm', + require => [ + Class['zuul'], + File['/var/lib/jenkins'], + ], + } + file { '/var/lib/jenkins/plugins/simple-theme-plugin': ensure => directory, owner => 'jenkins', diff --git a/modules/jenkins/templates/gearman-plugin.xml.erb b/modules/jenkins/templates/gearman-plugin.xml.erb new file mode 100644 index 0000000000..e98cd33831 --- /dev/null +++ b/modules/jenkins/templates/gearman-plugin.xml.erb @@ -0,0 +1,6 @@ + + + <%= gearman_enable %> + <%= gearman_server %> + <%= gearman_port %> + diff --git a/modules/openstack_project/manifests/jenkins.pp b/modules/openstack_project/manifests/jenkins.pp index a2b6eea120..cf971fbac1 100644 --- a/modules/openstack_project/manifests/jenkins.pp +++ b/modules/openstack_project/manifests/jenkins.pp @@ -10,7 +10,8 @@ class openstack_project::jenkins ( $ssl_chain_file_contents = '', $jenkins_ssh_private_key = '', $zmq_event_receivers = [], - $sysadmins = [] + $sysadmins = [], + $gearman_server = '127.0.0.1', ) { include openstack_project @@ -40,6 +41,7 @@ class openstack_project::jenkins ( ssl_chain_file_contents => $ssl_chain_file_contents, jenkins_ssh_private_key => $jenkins_ssh_private_key, jenkins_ssh_public_key => $openstack_project::jenkins_ssh_key, + gearman_server => $gearman_server, } jenkins::plugin { 'ansicolor': @@ -61,7 +63,7 @@ class openstack_project::jenkins ( version => '1.70', } jenkins::plugin { 'gearman-plugin': - version => '0.0.3', + version => '0.0.6', } jenkins::plugin { 'git': version => '1.1.23', diff --git a/modules/openstack_project/manifests/jenkins_dev.pp b/modules/openstack_project/manifests/jenkins_dev.pp index d366fca12a..008b41f49d 100644 --- a/modules/openstack_project/manifests/jenkins_dev.pp +++ b/modules/openstack_project/manifests/jenkins_dev.pp @@ -12,6 +12,7 @@ class openstack_project::jenkins_dev ( $hpcloud_username ='', $hpcloud_password ='', $hpcloud_project ='', + $gearman_server = '127.0.0.1', ) { include openstack_project @@ -33,6 +34,7 @@ class openstack_project::jenkins_dev ( ssl_chain_file => '', jenkins_ssh_private_key => $jenkins_ssh_private_key, jenkins_ssh_public_key => $openstack_project::jenkins_dev_ssh_key, + gearman_server => $gearman_server, } file { '/etc/default/jenkins':