Project

General

Profile

Download (1.8 KB) Statistics
| Branch: | Tag: | Revision:
96cab9ae Ohad Levy
class puppet::server::config inherits puppet::config {
af4efdd2 Greg Sutcliffe
if $puppet::server::passenger { include puppet::server::passenger }
96cab9ae Ohad Levy
076d79da Ohad Levy
# appends our server configuration to puppet.conf
af4efdd2 Greg Sutcliffe
File ["${puppet::server::dir}/puppet.conf"] {
7a9857ba Greg Sutcliffe
content => template($puppet::server::agent_template, $puppet::server::master_template),
15e686fb Jan Vansteenkiste
}
96cab9ae Ohad Levy
15e686fb Jan Vansteenkiste
exec {'generate_ca_cert':
af4efdd2 Greg Sutcliffe
creates => "${puppet::server::ssl_dir}/certs/${::fqdn}.pem",
15e686fb Jan Vansteenkiste
command => "puppetca --generate ${::fqdn}",
path => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
96cab9ae Ohad Levy
}

af4efdd2 Greg Sutcliffe
if $puppet::server::git_repo {
076d79da Ohad Levy
09661d61 Ohad Levy
# location where our puppet environments are located
af4efdd2 Greg Sutcliffe
file { $puppet::server::envs_dir:
09661d61 Ohad Levy
ensure => directory,
af4efdd2 Greg Sutcliffe
owner => $puppet::server::user,
09661d61 Ohad Levy
}

2a851d8c Greg Sutcliffe
# need to chown the $vardir before puppet does it, or else
# we can't write puppet.git/ on the first run

file { '/var/lib/puppet':
ensure => directory,
af4efdd2 Greg Sutcliffe
owner => $puppet::server::user,
2a851d8c Greg Sutcliffe
}

076d79da Ohad Levy
include git

git::repo { 'puppet_repo':
bare => true,
af4efdd2 Greg Sutcliffe
target => $puppet::server::git_repo_path,
user => $puppet::server::user,
require => File[$puppet::server::envs_dir],
076d79da Ohad Levy
}

# git post hook to auto generate an environment per branch
af4efdd2 Greg Sutcliffe
file { "${puppet::server::git_repo_path}/hooks/${puppet::server::post_hook_name}":
content => template("$puppet::server::post_hook_content"),
owner => $puppet::server::user,
mode => '0755',
076d79da Ohad Levy
require => Git::Repo['puppet_repo'],
}

af4efdd2 Greg Sutcliffe
user { $puppet::server::user:
5f62d338 Ohad Levy
shell => '/usr/bin/git-shell',
}

076d79da Ohad Levy
}
09661d61 Ohad Levy
else
{
af4efdd2 Greg Sutcliffe
file { [$puppet::server::modules_path, $puppet::server::common_modules_path]:
09661d61 Ohad Levy
ensure => directory,
}

# setup empty directories for our environments
af4efdd2 Greg Sutcliffe
puppet::server::env {$puppet::server::environments: }
09661d61 Ohad Levy
}
96cab9ae Ohad Levy
}