Split the common top-level code into a file.
I got tired of forgetting to carry changes over in to stackforge.pp. I know we're going to do a large re-factor of all of this, but for the moment, the classes specific to our servers apply to both openstack and stackforge. Change-Id: I1788b5bf12e8dcf52bb81517b17dc2798d242c86
This commit is contained in:
parent
c51538102d
commit
5418fce39b
70
manifests/openstack.pp
Normal file
70
manifests/openstack.pp
Normal file
@ -0,0 +1,70 @@
|
||||
import "users"
|
||||
#
|
||||
# Abstract classes:
|
||||
#
|
||||
class openstack_base ($iptables_public_tcp_ports) {
|
||||
include openstack_project::users
|
||||
include ssh
|
||||
include snmpd
|
||||
include sudoers
|
||||
|
||||
class { 'iptables':
|
||||
public_tcp_ports => $iptables_public_tcp_ports,
|
||||
}
|
||||
|
||||
file { '/etc/profile.d/Z98-byobu.sh':
|
||||
ensure => 'absent'
|
||||
}
|
||||
|
||||
package { "ntp":
|
||||
ensure => installed
|
||||
}
|
||||
|
||||
package { "popularity-contest":
|
||||
ensure => purged
|
||||
}
|
||||
|
||||
service { 'ntpd':
|
||||
name => 'ntp',
|
||||
ensure => running,
|
||||
enable => true,
|
||||
hasrestart => true,
|
||||
require => Package['ntp'],
|
||||
}
|
||||
|
||||
$packages = ["python-software-properties",
|
||||
"puppet",
|
||||
"bzr",
|
||||
"git",
|
||||
"python-setuptools",
|
||||
"python-virtualenv",
|
||||
"byobu"]
|
||||
package { $packages: ensure => "latest" }
|
||||
}
|
||||
|
||||
# A template host with no running services
|
||||
class openstack_template ($iptables_public_tcp_ports) {
|
||||
class { 'openstack_base':
|
||||
iptables_public_tcp_ports => $iptables_public_tcp_ports
|
||||
}
|
||||
realize (
|
||||
User::Virtual::Localuser["mordred"],
|
||||
User::Virtual::Localuser["corvus"],
|
||||
User::Virtual::Localuser["soren"],
|
||||
User::Virtual::Localuser["linuxjedi"],
|
||||
User::Virtual::Localuser["devananda"],
|
||||
)
|
||||
}
|
||||
|
||||
# A server that we expect to run for some time
|
||||
class openstack_server ($iptables_public_tcp_ports) {
|
||||
class { 'openstack_template':
|
||||
iptables_public_tcp_ports => $iptables_public_tcp_ports
|
||||
}
|
||||
class { 'exim':
|
||||
sysadmin => ['corvus@inaugust.com',
|
||||
'mordred@inaugust.com',
|
||||
'andrew@linuxjedi.co.uk',
|
||||
'devananda.vdv@gmail.com']
|
||||
}
|
||||
}
|
@ -1,85 +1,4 @@
|
||||
import "doc_server" # TODO: refactor out of module
|
||||
import "users"
|
||||
#
|
||||
# Abstract classes:
|
||||
#
|
||||
class openstack_base ($iptables_public_tcp_ports) {
|
||||
include openstack_project::users
|
||||
include ssh
|
||||
include snmpd
|
||||
|
||||
include sudoers
|
||||
|
||||
class { 'iptables':
|
||||
public_tcp_ports => $iptables_public_tcp_ports,
|
||||
}
|
||||
|
||||
file { '/etc/profile.d/Z98-byobu.sh':
|
||||
ensure => 'absent'
|
||||
}
|
||||
|
||||
package { "ntp":
|
||||
ensure => installed
|
||||
}
|
||||
|
||||
package { "popularity-contest":
|
||||
ensure => purged
|
||||
}
|
||||
|
||||
service { 'ntpd':
|
||||
name => 'ntp',
|
||||
ensure => running,
|
||||
enable => true,
|
||||
hasrestart => true,
|
||||
require => Package['ntp'],
|
||||
}
|
||||
|
||||
$packages = ["python-software-properties",
|
||||
"puppet",
|
||||
"bzr",
|
||||
"git",
|
||||
"python-setuptools",
|
||||
"python-virtualenv",
|
||||
"byobu"]
|
||||
package { $packages: ensure => "latest" }
|
||||
}
|
||||
|
||||
class openstack_cron {
|
||||
cron { "updatepuppet":
|
||||
user => root,
|
||||
minute => "*/15",
|
||||
command => 'apt-get update >/dev/null 2>&1 ; sleep $((RANDOM\%600)) && cd /root/openstack-ci-puppet && /usr/bin/git pull -q && puppet apply -l /tmp/manifest.log --modulepath=/root/openstack-ci-puppet/modules manifests/site.pp',
|
||||
environment => "PATH=/var/lib/gems/1.8/bin:/usr/bin:/bin:/usr/sbin:/sbin",
|
||||
}
|
||||
}
|
||||
|
||||
# A template host with no running services
|
||||
class openstack_template ($iptables_public_tcp_ports) {
|
||||
class { 'openstack_base':
|
||||
iptables_public_tcp_ports => $iptables_public_tcp_ports
|
||||
}
|
||||
realize (
|
||||
User::Virtual::Localuser["mordred"],
|
||||
User::Virtual::Localuser["corvus"],
|
||||
User::Virtual::Localuser["soren"],
|
||||
User::Virtual::Localuser["linuxjedi"],
|
||||
User::Virtual::Localuser["devananda"],
|
||||
)
|
||||
}
|
||||
|
||||
# A server that we expect to run for some time
|
||||
class openstack_server ($iptables_public_tcp_ports) {
|
||||
class { 'openstack_template':
|
||||
iptables_public_tcp_ports => $iptables_public_tcp_ports
|
||||
}
|
||||
class { 'exim':
|
||||
sysadmin => ['corvus@inaugust.com',
|
||||
'mordred@inaugust.com',
|
||||
'andrew@linuxjedi.co.uk',
|
||||
'devananda.vdv@gmail.com']
|
||||
}
|
||||
include openstack_cron
|
||||
}
|
||||
import "openstack"
|
||||
|
||||
class openstack_jenkins_slave {
|
||||
include tmpreaper
|
||||
|
@ -1,76 +1,7 @@
|
||||
import "doc_server" # TODO: refactor out of module
|
||||
import "users"
|
||||
#
|
||||
# Abstract classes:
|
||||
#
|
||||
class openstack_base ($iptables_public_tcp_ports) {
|
||||
include openstack_project::users
|
||||
include ssh
|
||||
include snmpd
|
||||
include sudoers
|
||||
import "openstack"
|
||||
|
||||
class { 'iptables':
|
||||
public_tcp_ports => $iptables_public_tcp_ports,
|
||||
}
|
||||
|
||||
file { '/etc/profile.d/Z98-byobu.sh':
|
||||
ensure => 'absent'
|
||||
}
|
||||
|
||||
package { "ntp":
|
||||
ensure => installed
|
||||
}
|
||||
|
||||
package { "popularity-contest":
|
||||
ensure => purged
|
||||
}
|
||||
|
||||
service { 'ntpd':
|
||||
name => 'ntp',
|
||||
ensure => running,
|
||||
enable => true,
|
||||
hasrestart => true,
|
||||
require => Package['ntp'],
|
||||
}
|
||||
|
||||
$packages = ["python-software-properties",
|
||||
"puppet",
|
||||
"bzr",
|
||||
"git",
|
||||
"python-setuptools",
|
||||
"python-virtualenv",
|
||||
"byobu"]
|
||||
package { $packages: ensure => "latest" }
|
||||
}
|
||||
|
||||
# A template host with no running services
|
||||
class openstack_template ($iptables_public_tcp_ports) {
|
||||
class { 'openstack_base':
|
||||
iptables_public_tcp_ports => $iptables_public_tcp_ports
|
||||
}
|
||||
realize (
|
||||
User::Virtual::Localuser["mordred"],
|
||||
User::Virtual::Localuser["corvus"],
|
||||
User::Virtual::Localuser["soren"],
|
||||
User::Virtual::Localuser["linuxjedi"],
|
||||
User::Virtual::Localuser["devananda"],
|
||||
)
|
||||
}
|
||||
|
||||
# A server that we expect to run for some time
|
||||
class openstack_server ($iptables_public_tcp_ports) {
|
||||
class { 'openstack_template':
|
||||
iptables_public_tcp_ports => $iptables_public_tcp_ports
|
||||
}
|
||||
class { 'exim':
|
||||
sysadmin => ['corvus@inaugust.com',
|
||||
'mordred@inaugust.com',
|
||||
'andrew@linuxjedi.co.uk',
|
||||
'devananda.vdv@gmail.com']
|
||||
}
|
||||
}
|
||||
|
||||
class openstack_jenkins_slave {
|
||||
class stackforge_jenkins_slave {
|
||||
include tmpreaper
|
||||
class { 'openstack_server':
|
||||
iptables_public_tcp_ports => []
|
||||
}
|
||||
@ -136,6 +67,6 @@ node "jenkins.stackforge.org" {
|
||||
# Jenkins slaves:
|
||||
#
|
||||
node /^build.*\.slave\.stackforge\.org$/ {
|
||||
include openstack_jenkins_slave
|
||||
include stackforge_jenkins_slave
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user