system-config/modules/salt/manifests/init.pp
Clark Boylan 71e96df67f Add saltstack puppet module.
Add a puppet module to install saltstack minion and saltstack master.
This is to be used to bootstrap saltstack. As a result the only
configurable option here is the master node that minions should talk to.
Eventually salt master should have a setup similar to puppet to manage
its own configs.

Change-Id: I27cb902f043c4f4a2a53c599c08ae94df297cc97
Reviewed-on: https://review.openstack.org/14235
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Reviewed-by: Paul Belanger <paul.belanger@polybeacon.com>
Approved: James E. Blair <corvus@inaugust.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
2012-10-10 17:52:29 +00:00

43 lines
920 B
Puppet

class salt (
$salt_master = $::fqdn
) {
include apt
# Wrap in ! defined checks to allow minion and master installs on the
# same host.
if ! defined(Apt::Ppa['ppa:saltstack/salt']) {
apt::ppa { 'ppa:saltstack/salt': }
}
if ! defined(Package['python-software-properties']) {
package { 'python-software-properties':
ensure => present,
}
}
package { 'salt-minion':
ensure => present,
require => Apt::Ppa['ppa:saltstack/salt'],
}
file { '/etc/salt/minion':
ensure => present,
owner => 'root',
group => 'root',
mode => '0644',
content => template('salt/minion.erb'),
replace => true,
require => Package['salt-minion'],
}
service { 'salt-minion':
ensure => running,
enable => true,
require => File['/etc/salt/minion'],
subscribe => [
Package['salt-minion'],
File['/etc/salt/minion'],
],
}
}