puppet-puppet/manifests/server/config.pp @ 7a9857ba
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 | ||
}
|