The ::jenkins::slave class contained a lot of openstack-specific configuration rather than configuration of a generic jenkins slave. The term "bare slave" is overloaded and confusing: create simple_slave and thick_slave to differentiate between the two meanings of "bare". Some portions of ::jenkins::slave will move to simple_slave, some portions to thick_slave, and some portions to slave_common (all in the openstack_project module). Change-Id: I5281a03a7f6da3f98714bcc59ae840ace8435578
		
			
				
	
	
		
			52 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Puppet
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Puppet
		
	
	
	
	
	
# == Class: openstack_project::slave
 | 
						|
#
 | 
						|
class openstack_project::slave (
 | 
						|
  $thin = false,
 | 
						|
  $certname = $::fqdn,
 | 
						|
  $ssh_key = '',
 | 
						|
  $sysadmins = [],
 | 
						|
  $python3 = false,
 | 
						|
  $include_pypy = false
 | 
						|
) {
 | 
						|
 | 
						|
  include openstack_project
 | 
						|
  include openstack_project::tmpcleanup
 | 
						|
 | 
						|
  class { 'openstack_project::automatic_upgrades':
 | 
						|
    origins => ['LP-PPA-saltstack-salt precise'],
 | 
						|
  }
 | 
						|
 | 
						|
  class { 'openstack_project::server':
 | 
						|
    iptables_public_tcp_ports => [],
 | 
						|
    certname                  => $certname,
 | 
						|
    sysadmins                 => $sysadmins,
 | 
						|
  }
 | 
						|
 | 
						|
  class { 'jenkins::slave':
 | 
						|
    ssh_key      => $ssh_key,
 | 
						|
    python3      => $python3,
 | 
						|
  }
 | 
						|
 | 
						|
  class { 'salt':
 | 
						|
    salt_master => 'ci-puppetmaster.openstack.org',
 | 
						|
  }
 | 
						|
 | 
						|
  include jenkins::cgroups
 | 
						|
  include ulimit
 | 
						|
  ulimit::conf { 'limit_jenkins_procs':
 | 
						|
    limit_domain => 'jenkins',
 | 
						|
    limit_type   => 'hard',
 | 
						|
    limit_item   => 'nproc',
 | 
						|
    limit_value  => '256'
 | 
						|
  }
 | 
						|
 | 
						|
  class { 'openstack_project::slave_common':
 | 
						|
    include_pypy => $include_pypy,
 | 
						|
  }
 | 
						|
 | 
						|
  if (! $thin) {
 | 
						|
    include openstack_project::thick_slave
 | 
						|
  }
 | 
						|
 | 
						|
}
 |