system-config/modules/openstack_project/manifests/base.pp
Jeremy Stanley 3089973311 Use facter's osfamily instead of operatingsystem.
The osfamily fact is more flexible when we want to support more
GNU/Linux distributions while avoiding unnecessary code duplication.

Change-Id: Iea4c73c19e7f94df8daccf25c764b6a4539a1ea0
Reviewed-on: https://review.openstack.org/27400
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Approved: Jeremy Stanley <fungi@yuggoth.org>
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Tested-by: Jenkins
2013-04-25 21:37:03 +00:00

90 lines
1.9 KiB
Puppet

# == Class: openstack_project::base
#
class openstack_project::base(
$certname = $::fqdn,
$install_users = true
) {
if ($::osfamily == 'Debian') {
include apt
}
include openstack_project::params
include openstack_project::users
include sudoers
file { '/etc/profile.d/Z98-byobu.sh':
ensure => absent,
}
package { 'popularity-contest':
ensure => purged,
}
if ($::lsbdistcodename == 'oneiric') {
apt::ppa { 'ppa:git-core/ppa': }
package { 'git':
ensure => latest,
require => Apt::Ppa['ppa:git-core/ppa'],
}
} else {
package { 'git':
ensure => present,
}
}
package { $::openstack_project::params::packages:
ensure => present
}
include pip
package { 'virtualenv':
ensure => latest,
provider => pip,
require => Class['pip'],
}
if ($install_users) {
package { $::openstack_project::params::user_packages:
ensure => present
}
realize (
User::Virtual::Localuser['mordred'],
User::Virtual::Localuser['corvus'],
User::Virtual::Localuser['clarkb'],
User::Virtual::Localuser['fungi'],
)
}
# Use upstream puppet and pin to version 2.7.*
if ($::osfamily == 'Debian') {
apt::source { 'puppetlabs':
location => 'http://apt.puppetlabs.com',
repos => 'main',
key => '4BD6EC30',
key_server => 'pgp.mit.edu',
}
file { '/etc/apt/preferences.d/00-puppet.pref':
ensure => present,
owner => 'root',
group => 'root',
mode => '0444',
source => 'puppet:///modules/openstack_project/00-puppet.pref',
replace => true,
}
}
file { '/etc/puppet/puppet.conf':
ensure => present,
owner => 'root',
group => 'root',
mode => '0444',
content => template('openstack_project/puppet.conf.erb'),
replace => true,
}
}
# vim:sw=2:ts=2:expandtab:textwidth=79