aboutsummaryrefslogtreecommitdiff
path: root/manifests/puppet_bootstrap.pp
blob: 624d34d0de9bd72ec90f3f001d15e25ccbfd0ba1 (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
class puppet_bootstrap {

  $templates_dir = "$puppet_bootstrap_tmpdir/templates"

  # puppet-bootstrap script
  file { "/usr/local/sbin/puppet-bootstrap":
    owner   => "root",
    group   => "root",
    mode    => 0755,
    ensure  => present,
    content => template("$templates_dir/bin/puppet-bootstrap"),
  }

  define puppet_modules($puppet_dir) {

    # directory to download modules
    file { "$puppet_dir/modules":
      ensure  => directory,
      owner   => "puppet",
      group   => "puppet",
      mode    => 0755,
    }

     # execute the bootstrap script to download puppet modules
    exec { "/usr/local/sbin/puppet-bootstrap add-submodules $puppet_dir":
      user    => root,
      require => [ File["/usr/local/sbin/puppet-bootstrap"], File["$puppet_dir/modules"] ],
      timeout => 600,
    }

  }

}