Puppet Boostrap Module
======================
-This is a very specific puppet module that boostraps a node for use with
-Hydra Suite, https://git.sarava.org/?p=hydra.git
+This is a multi-purpose but very specific puppet module which can be used:
+
+* As the base repository for a puppet infostructure.
+* As a standalone provisioner for boxes, with Vagrant support.
+* It can be optionally used together with the Hydra Suite from
+ https://git.sarava.org/?p=hydra.git
# files in $default_puppet_conf_dir/files
file { [ "$default_puppet_conf_dir/files",
- "$default_puppet_conf_dir/modules/site-nginx",
- "$default_puppet_conf_dir/modules/site-nginx/files",
- "$default_puppet_conf_dir/modules/site-nagios",
- "$default_puppet_conf_dir/modules/site-nagios/files",
- "$default_puppet_conf_dir/modules/site-postfix",
- "$default_puppet_conf_dir/modules/site-postfix/files",
- "$default_puppet_conf_dir/modules/site-mail",
- "$default_puppet_conf_dir/modules/site-mail/files",
- "$default_puppet_conf_dir/modules/site-apache",
- "$default_puppet_conf_dir/modules/site-apache/files",
- "$default_puppet_conf_dir/modules/site-apache/files/vhosts",
- "$default_puppet_conf_dir/modules/site-apache/files/htdocs",
- "$default_puppet_conf_dir/modules/site-apache/files/htdocs/images",
- "$default_puppet_conf_dir/modules/site-keys",
- "$default_puppet_conf_dir/modules/site-keys/files",
- "$default_puppet_conf_dir/modules/site-keys/files/ssl", ]:
+ "$default_puppet_conf_dir/modules/site_nginx",
+ "$default_puppet_conf_dir/modules/site_nginx/files",
+ "$default_puppet_conf_dir/modules/site_nagios",
+ "$default_puppet_conf_dir/modules/site_nagios/files",
+ "$default_puppet_conf_dir/modules/site_postfix",
+ "$default_puppet_conf_dir/modules/site_postfix/files",
+ "$default_puppet_conf_dir/modules/site_mail",
+ "$default_puppet_conf_dir/modules/site_mail/files",
+ "$default_puppet_conf_dir/modules/site_apache",
+ "$default_puppet_conf_dir/modules/site_apache/files",
+ "$default_puppet_conf_dir/modules/site_apache/files/vhosts",
+ "$default_puppet_conf_dir/modules/site_apache/files/htdocs",
+ "$default_puppet_conf_dir/modules/site_apache/files/htdocs/images",
+ "$default_puppet_conf_dir/modules/site_keys",
+ "$default_puppet_conf_dir/modules/site_keys/files",
+ "$default_puppet_conf_dir/modules/site_keys/files/ssl", ]:
ensure => directory,
owner => "puppet",
group => "puppet",
+#
+# This file is intended to configure the initial
+# machine wich will host the first puppetmaster
+# virtual machine.
+#
+
+# Import the needed config and modules
import "config.pp"
import "nodo"
import "classes/admin_node.pp"
import "classes/users.pp"
import "classes/default_conf.pp"
-include nodo::server
+# The server role
+include nodo::role::server
-# creates vserver for administrative node
+# Creates vserver for administrative node
include admin_node
-# creates firewall rules for administrative node's external acess
+# Creates firewall rules for administrative node's external acess
include firewall
-
-# creates a default puppet configuration in /usr/local/puppet/default-conf
-include default_conf
+#
+# This file is intended to configure the initial
+# puppetmaster node.
+#
+# Once it's running it can setup all the other nodes.
+#
+
+# Import the needed config and modules
import "config.pp"
import "nodo"
-include git
-
-# puppet config
-package { [ "puppet", "puppetmaster" ]: ensure => installed, }
-
-service { "puppetmaster":
- ensure => stopped,
- require => Package["puppetmaster"]
-}
-
+# Include the master node configuration
+include nodo::role::master