summaryrefslogtreecommitdiff
path: root/puppet/modules/site_config/manifests/default.pp
blob: a09a30d2045c90f6046d5f9ce07c386d2c826f6a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
class site_config::default {
  tag 'leap_base'

  $domain_hash = hiera('domain')
  include site_config::params

  # make sure apt is updated before any packages are installed
  include apt::update
  Package { require => Exec['apt_updated'] }

  include stdlib

  include site_config::slow

  include concat::setup

  # default class, used by all hosts

  include lsb, git

  # configure apt
  include site_apt

  # configure sysctl parameters
  include site_config::sysctl

  # configure ssh and include ssh-keys
  include site_config::sshd

  # include classes for special environments
  # i.e. openstack/aws nodes, vagrant nodes

  # fix dhclient from changing resolver information
  if $::ec2_instance_id {
    include site_config::dhclient
  }

  if ( $::site_config::params::environment == 'local' ) {
    include site_config::vagrant
  }

  # configure /etc/resolv.conf
  include site_config::resolvconf

  # configure caching, local resolver
  include site_config::caching_resolver

  # configure /etc/hosts
  class { 'site_config::hosts':
    stage => setup,
  }

  # install/configure syslog
  include site_config::syslog

  # install/remove base packages
  include site_config::packages::base

  # include basic shorewall config
  include site_shorewall::defaults

  Class['git'] -> Vcsrepo<||>

  # include basic shell config
  include site_config::shell

  # set up core leap files and directories
  include site_config::files

  # redundant declarations, remove if
  # "Move setup.pp to a subclass (site_config::setup) (Feature #2993)"
  # is solved.

  # if squid_deb_proxy_client is set to true, install and configure
  # squid_deb_proxy_client for apt caching
  if hiera('squid_deb_proxy_client', false) {
    include site_squid_deb_proxy::client
  }

  if $::services !~ /\bmx\b/ {
    include site_postfix::satellite
  }

  # if class site_custom exists, include it.
  # possibility for users to define custom puppet recipes
  if defined( '::site_custom') {
    include ::site_custom
  }

  include site_nagios::client
}