summaryrefslogtreecommitdiff
path: root/puppet
diff options
context:
space:
mode:
Diffstat (limited to 'puppet')
-rw-r--r--puppet/.gitignore3
-rw-r--r--puppet/.mrconfig22
-rw-r--r--puppet/Makefile4
-rw-r--r--puppet/README.md6
-rw-r--r--puppet/TODO.md139
-rw-r--r--puppet/Vagrantfile4
-rwxr-xr-xpuppet/bin/dependencies33
-rwxr-xr-xpuppet/bin/deploy14
-rwxr-xr-xpuppet/bin/mrconfig7
-rwxr-xr-xpuppet/bin/post-receive12
-rwxr-xr-xpuppet/bin/post-update16
-rwxr-xr-xpuppet/bin/provision11
-rw-r--r--puppet/config/common.yaml65
-rw-r--r--puppet/config/hiera.yaml (renamed from puppet/hiera/hiera.yaml)12
-rw-r--r--puppet/config/node/box.example.org.yaml47
-rw-r--r--puppet/files/patches/wheezy/collected-resources.md3
l---------puppet/hiera.yaml2
-rw-r--r--puppet/hiera/bootstrap.yaml44
-rw-r--r--puppet/hiera/common.yaml55
-rw-r--r--puppet/hiera/node/puppet-bootstrap.example.org.yaml14
-rw-r--r--puppet/keys/ssh/.empty0
-rw-r--r--puppet/keys/ssl/.empty0
-rw-r--r--puppet/kvmxfile89
-rw-r--r--puppet/manifests/bootstrap/configurator.pp208
-rw-r--r--puppet/manifests/bootstrap/host.pp23
-rw-r--r--puppet/manifests/bootstrap/master.pp11
-rw-r--r--puppet/manifests/bootstrap/vagrant.pp38
l---------puppet/manifests/hiera1
-rw-r--r--puppet/modules/.empty (renamed from puppet/keys/public/.empty)0
l---------puppet/modules/bootstrap1
-rw-r--r--puppet/modules/site_apache/files/htdocs/images/.empty0
-rw-r--r--puppet/modules/site_apache/files/vhosts/.empty0
-rw-r--r--puppet/modules/site_apt/files/keys.d/.empty0
-rw-r--r--puppet/modules/site_bind/manifests/init.pp16
-rw-r--r--puppet/modules/site_keys/files/ssl/.empty0
-rw-r--r--puppet/modules/site_mail/files/.empty0
-rw-r--r--puppet/modules/site_mail/files/aliases14
-rw-r--r--puppet/modules/site_nagios/files/.empty0
-rw-r--r--puppet/modules/site_nginx/files/.empty0
-rw-r--r--puppet/modules/site_postfix/files/.empty0
-rw-r--r--puppet/modules/site_users/manifests/admin.pp16
-rw-r--r--puppet/modules/site_users/manifests/backups.pp3
-rw-r--r--puppet/modules/site_users/manifests/init.pp2
-rw-r--r--puppet/modules/site_users/manifests/virtual.pp3
-rw-r--r--puppet/modules/site_websites/manifests/admin.pp25
-rw-r--r--puppet/modules/site_websites/manifests/init.pp21
-rw-r--r--puppet/puppet.conf4
-rw-r--r--puppet/templates/apache/htdocs/images/README.html.erb3
-rw-r--r--puppet/templates/apache/htdocs/index.html.erb9
-rw-r--r--puppet/templates/apache/htdocs/missing.html.erb12
-rw-r--r--puppet/templates/apache/vhosts/cgit.erb30
-rw-r--r--puppet/templates/apache/vhosts/git.erb21
-rw-r--r--puppet/templates/apache/vhosts/lists.erb22
-rw-r--r--puppet/templates/apache/vhosts/mail.erb72
-rw-r--r--puppet/templates/apache/vhosts/nagios.erb61
-rw-r--r--puppet/templates/apache/vhosts/wiki.erb17
-rw-r--r--puppet/templates/etc/aliases.erb15
-rw-r--r--puppet/templates/etc/nagios3/htpasswd.users.erb1
-rw-r--r--puppet/templates/etc/nginx/domain.erb173
-rw-r--r--puppet/templates/postfix/tls_policy.erb0
-rw-r--r--puppet/templates/puppet/auth.conf.erb120
-rw-r--r--puppet/templates/puppet/fileserver.conf.erb21
-rw-r--r--puppet/templates/puppet/master.pp.erb10
-rw-r--r--puppet/templates/puppet/nodes.pp.erb14
-rw-r--r--puppet/templates/puppet/proxy.pp.erb53
-rw-r--r--puppet/templates/puppet/puppet.conf.erb30
-rw-r--r--puppet/templates/puppet/server.pp.erb41
-rw-r--r--puppet/templates/puppet/storage.pp.erb13
-rw-r--r--puppet/templates/puppet/test.pp.erb13
-rw-r--r--puppet/templates/puppet/users.pp.erb25
-rw-r--r--puppet/templates/puppet/web.pp.erb13
71 files changed, 279 insertions, 1498 deletions
diff --git a/puppet/.gitignore b/puppet/.gitignore
index ce9693b..15a8f56 100644
--- a/puppet/.gitignore
+++ b/puppet/.gitignore
@@ -1,2 +1,3 @@
-modules/*
+keys
+ssl
.vagrant
diff --git a/puppet/.mrconfig b/puppet/.mrconfig
index 5c24dc7..06755dd 100644
--- a/puppet/.mrconfig
+++ b/puppet/.mrconfig
@@ -11,8 +11,8 @@ checkout = git clone git://git.fluxo.info/puppet-apparmor.git apparmor
[puppet/modules/apt]
checkout = git clone git://git.fluxo.info/puppet-apt.git apt
-[puppet/modules/autofs]
-checkout = git clone git://git.fluxo.info/puppet-autofs.git autofs
+[puppet/modules/augeas]
+checkout = git clone git://git.fluxo.info/puppet-augeas.git augeas
[puppet/modules/autossh]
checkout = git clone git://git.fluxo.info/puppet-autossh.git autossh
@@ -32,9 +32,6 @@ checkout = git clone git://git.fluxo.info/puppet-bind.git bind
[puppet/modules/bitcoind]
checkout = git clone git://git.fluxo.info/puppet-bitcoind.git bitcoind
-[puppet/modules/common]
-checkout = git clone git://git.fluxo.info/puppet-common.git common
-
[puppet/modules/concat]
checkout = git clone git://git.fluxo.info/puppet-concat.git concat
@@ -83,9 +80,6 @@ checkout = git clone git://git.fluxo.info/puppet-hotglue.git hotglue
[puppet/modules/hydra]
checkout = git clone git://git.fluxo.info/puppet-hydra.git hydra
-[puppet/modules/icecast]
-checkout = git clone git://git.fluxo.info/puppet-icecast.git icecast
-
[puppet/modules/ikiwiki]
checkout = git clone git://git.fluxo.info/puppet-ikiwiki.git ikiwiki
@@ -125,15 +119,9 @@ checkout = git clone git://git.fluxo.info/puppet-mpd.git mpd
[puppet/modules/mumble]
checkout = git clone git://git.fluxo.info/puppet-mumble.git mumble
-[puppet/modules/munin]
-checkout = git clone git://git.fluxo.info/puppet-munin.git munin
-
[puppet/modules/mysql]
checkout = git clone git://git.fluxo.info/puppet-mysql.git mysql
-[puppet/modules/nagios]
-checkout = git clone git://git.fluxo.info/puppet-nagios.git nagios
-
[puppet/modules/nfs]
checkout = git clone git://git.fluxo.info/puppet-nfs.git nfs
@@ -149,9 +137,6 @@ checkout = git clone git://git.fluxo.info/puppet-ntp.git ntp
[puppet/modules/onion]
checkout = git clone git://git.fluxo.info/puppet-onion.git onion
-[puppet/modules/pear]
-checkout = git clone git://git.fluxo.info/puppet-pear.git pear
-
[puppet/modules/php]
checkout = git clone git://git.fluxo.info/puppet-php.git php
@@ -197,9 +182,6 @@ checkout = git clone git://git.fluxo.info/puppet-schroot.git schroot
[puppet/modules/shorewall]
checkout = git clone git://git.fluxo.info/puppet-shorewall.git shorewall
-[puppet/modules/smartmonster]
-checkout = git clone git://git.fluxo.info/puppet-smartmonster.git smartmonster
-
[puppet/modules/smartmontools]
checkout = git clone git://git.fluxo.info/puppet-smartmontools.git smartmontools
diff --git a/puppet/Makefile b/puppet/Makefile
index 97c4a58..d13a878 100644
--- a/puppet/Makefile
+++ b/puppet/Makefile
@@ -58,10 +58,6 @@ clean:
rm -rf modules
git checkout modules
-post_update:
- git config receive.denyCurrentBranch ignore
- cd .git/hooks && ln -sf ../../bin/post-update
-
post_receive:
git config receive.denyCurrentBranch ignore
cd .git/hooks && ln -sf ../../bin/post-receive
diff --git a/puppet/README.md b/puppet/README.md
index bb5375d..29687e7 100644
--- a/puppet/README.md
+++ b/puppet/README.md
@@ -36,3 +36,9 @@ You might use `make subtrees` instead of `make submodules`. Also, if you already
all the modules in a different subtree, use
make symlinks MODULES=/path/to/puppet/modules
+
+Recommended puppet modules
+--------------------------
+
+This repository plays well with other puppet modules hosted at https://git.fluxo.info, some of them
+based on https://gitlab.com/shared-puppet-modules-group.
diff --git a/puppet/TODO.md b/puppet/TODO.md
index 429bd4d..8ab655d 100644
--- a/puppet/TODO.md
+++ b/puppet/TODO.md
@@ -1,141 +1,4 @@
TODO
====
-High priority
--------------
-
-- puppet: masterless:
- - keyringer/gpg integration.
- - https://github.com/compete/hiera_yamlgpg
- - https://github.com/crayfishx/hiera-gpg
- - https://github.com/sihil/hiera-eyaml-gpg
- - https://github.com/StackExchange/blackbox
- - http://ww.telent.net/2014/2/10/keeping_secrets_in_public_with_puppet
- - https://docs.puppetlabs.com/hiera/1/custom_backends.html
- - https://puppetlabs.com/blog/encrypt-your-data-using-hiera-eyaml
- - https://packages.debian.org/jessie/hiera-eyaml
- - how to distribute keys outside the repo (i.e, avoiding all nodes to have all keys?):
- - add a monkeysphere auth subkey to every openpgp key used for backups.
- - make backupninja wrap around monkeysphere: http://web.monkeysphere.info/doc/user-ssh-advanced/
- - http://current.workingdirectory.net/posts/2011/puppet-without-masters/
- - http://andrewbunday.co.uk/2012/12/04/masterless-puppet-wrapper/
- - http://semicomplete.com/presentations/puppet-at-loggly/puppet-at-loggly.pdf.html
- - https://github.com/jordansissel/puppet-examples/tree/master/masterless
-- sshd:
- - https://stribika.github.io/2015/01/04/secure-secure-shell.html
- - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=774711#60
- - enable ecdsa key.
- - ecdsa priority: alternatives:
- - unsupport ecdsa in the server.
- - export ecdsa pubkeys.
- - manage client's /root/.ssh/config: `HostKeyAlgorithms ssh-rsa`.
- - force option via rsync/rdiff handlers.
-- virtual: migrate to kvm/libvirt.
-- loginrecords: deploy module.
-- deploy https://github.com/wido/puppet-module-tcpwrappers
-- nodo:
- - run stages.
- - allow more resources to be declared via hiera.
- - fix hiera default boolean value when true.
- - easy way to toggle management of subsystems.
-
-Medium priority
----------------
-
-- apt: raspbian support, including unnatended-upgrades.
-- backup:
- - support for $dombr and $dobios on backupninja::sys for servers and physical machines.
- - sync-backups support for rsyncing from kvms / snapshots.
-- nodo:
- - cleanup and refactor.
- - uniform variable names.
- - use prompt.sh from bash-prompt as a submodule.
-- common: autoload.
-- general:
- - rollback of commits about charset.
- - switch to conf.d:
- - php ("refactor" branch), remove E_STRICT from production's error_reporting.
- - apache2.
- - sudoers.
-- backup: `sync-media-iterate [volume]`.
-- mail:
- - use ssl::dhparams, move to 2048 bit and use the standard file names and paths:
- - [Feature #4012: postfix: ship 2048bit dh parameters - Platform - LEAP Issue Tracker](https://leap.se/code/issues/4012)
-
-Low priority
-------------
-
-- merge, review, pull requests for all modules.
-- bind: nsupdate / dynamic dns:
- - http://linux.yyz.us/nsupdate/
- - http://linux.yyz.us/dns/ddns-server.html
- - http://caunter.ca/nsupdate.txt
- - http://www.rtfm-sarl.ch/articles/using-nsupdate.html
- - https://github.com/skx/dhcp.io/
-- munin: lvm monitoring.
-- pyroscope: torrent workflow: torrent-maker, magnet2torrent and torrent-reseed:
- - http://wiki.rtorrent.org/MagnetUri
- - http://dan.folkes.me/2012/04/19/converting-a-magnet-link-into-a-torrent/
- - https://github.com/danfolkes/Magnet2Torrent
- - http://code.google.com/p/pyroscope/wiki/CommandLineTools
- - https://trac.transmissionbt.com/ticket/4176
- - http://wiki.rtorrent.org/MagnetUri
- - https://github.com/rakshasa/rtorrent/issues/212
- - saving/restoring `.meta` and `~/rtorrent/.session` files.
-- support for http/https proxy inside web nodes:
- - encrypted ssl keys: http://support.f5.com/kb/en-us/solutions/public/11000/400/sol11440.html
- - make all apache sites listen to 8080.
-- git:
- - gitolite: [monkeysphere integration](http://gitolite.com/gitolite/g2/monkeysphere.html).
- - gitweb clean urls.
- - email notifications.
- - https://packages.debian.org/jessie/git-notifier
- - https://github.com/mhagger/git-multimail
- - using OpenPGP?
-- syslog-ng: use conf.d.
-- etherpad: `You need to set a sessionKey value in settings.json`.
-- knock integration via https://github.com/juasiepo/knockd
-- apache:
- - try libapache2-modsecurity.
- - deploy https://git.immerda.ch/csp-report/
- - disable other_vhosts_access.log.
-- onion:
- - support for existing hidden service key, generated with tools like https://github.com/katmagic/Shallot
- - load balancing: http://archives.seul.org/tor/relays/Apr-2011/msg00022.html
-- nagios: snmp, nrpe, nsca
- - http://nagios.sourceforge.net/docs/3_0/addons.html
- - http://www.math.wisc.edu/~jheim/snmp/
-- ssh access restrictions:
- - denyhosts, but we don't want to log IPs.
- - using shorewall: http://www.debian-administration.org/articles/250#comment_16
- - alowed users / groups.
-- websites: freewvs.
-- puppet: bug report: debian wheezy puppet-common: needs the following patch: http://projects.puppetlabs.com/issues/10963
-- mail:
- - review dovecot recipient delimiter handling: to which mailbox messages should be sent?
- - mlmmj:
- - lists with hyphens are not working when mails are sent directly, but work when sent to an alias.
- - `mail::mlmmj::domain` needs updating or additional domains should be added into `relay_domains`.
-- drupal/wordpress:
- - cronjob/cli: switch to site user.
- - drupal_update: Do you really want to continue with the update process? (y/n):
- Do you really want to continue with the update process? (y/n): Aborting. [cancel],
- possibly related to https://www.drupal.org/node/443392
-- php / wordpress / wp-cli: composer installation and dependencies:
- - http://getcomposer.org/doc/00-intro.md#installation-nix
- - https://github.com/wp-cli/wp-cli/wiki/Alternative-Install-Methods
- - suhosin needs `suhosin.executor.include.whitelist = phar` on `/etc/php5/cli/conf.d/suhosin.ini`.
-- nodo: support for prosody:
- - https://github.com/dgoulet/prosody-otr
- - http://prosody.im/doc/creating_accounts#importing_from_ejabberd
- - config with good score at https://xmpp.net/index.php
-- mail:
- - support for [preventing SPAM connections with bird](http://www.debian-administration.org/article/715/Preventing_SPAM_connections_with_bird.).
- - schleuder: manage `/etc/schleuder/schleuder.conf`, using `superadminaddr: root` or other recipient, to avoid mails.
- sent as `root@localhost`.
- - deploy https://git.autistici.org/ale/smtp-fp/tree/master
- https://github.com/EFForg/starttls-everywhere
- - deploy https://developer.mozilla.org/en-US/docs/Mozilla/Thunderbird/Autoconfiguration#Configuration_server_at_ISP
- https://git-ipuppet.immerda.ch/module-apache/commit/?id=058dbb366b96cae1f8fb0def65f73a698f1c375d
- https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=577616
- - support for [preventing SPAM connections with bird](http://www.debian-administration.org/article/715/Preventing_SPAM_connections_with_bird.).
+* Nothing here? :P
diff --git a/puppet/Vagrantfile b/puppet/Vagrantfile
index 3ee05e6..b5cd7f6 100644
--- a/puppet/Vagrantfile
+++ b/puppet/Vagrantfile
@@ -6,7 +6,7 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "jessie"
# Hostname
- config.vm.hostname = "puppet-bootstrap.example.org"
+ config.vm.hostname = "box.example.org"
# Shell provisioner to setup basic environment.
config.vm.provision :shell, :inline => "/vagrant/puppet/bin/provision"
@@ -22,7 +22,7 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
end
# Share hiera configuration.
- config.vm.synced_folder "puppet/hiera", "/etc/puppet/hiera"
+ config.vm.synced_folder "puppet/config", "/etc/puppet/config"
# Forwarded ports
#config.vm.network "forwarded_port", guest: 80, host: 8081
diff --git a/puppet/bin/dependencies b/puppet/bin/dependencies
index 507145b..4330730 100755
--- a/puppet/bin/dependencies
+++ b/puppet/bin/dependencies
@@ -3,6 +3,26 @@
# Puppet bootstrap dependencies.
#
+# Parameters
+BASENAME="`basename $0`"
+DEPLOY_DEPENDENCIES="rsync puppet-common hiera-eyaml"
+DEVELOP_DEPENDENCIES="git mr whois hiera-eyaml"
+
+# Additional wheezy dependencies if not using puppet-common from wheezy-backports
+#if [ "`head -c 1 /etc/debian_version`" == '7' ]; then
+# DEPLOY_DEPENDENCIES="$DEPLOY_DEPENDENCIES ruby-hiera-puppet"
+#fi
+
+# Set sudo config
+if [ "`whoami`" != 'root' ]; then
+ SUDO="sudo"
+
+ if ! sudo -n true; then
+ echo "Please set passwordless sudo."
+ exit 1
+ fi
+fi
+
# Install a package, thanks to the Hydra Suite.
function provision_package {
if [ -z "$1" ]; then
@@ -17,12 +37,9 @@ function provision_package {
fi
}
-# Set sudo config
-if [ "`whoami`" != 'root' ]; then
- SUDO="sudo"
-fi
-
# Ensure basic packages are installed.
-for package in puppet git mr whois; do
- provision_package $package
-done
+if [ "$BASENAME" == "dependencies" ]; then
+ for package in $DEVELOP_DEPENDENCIES; do
+ provision_package $package
+ done
+fi
diff --git a/puppet/bin/deploy b/puppet/bin/deploy
index 5d3361b..22065dc 100755
--- a/puppet/bin/deploy
+++ b/puppet/bin/deploy
@@ -6,7 +6,6 @@
# Parameters
DIRNAME="`dirname $0`"
BASEDIR="$DIRNAME/.."
-DEPLOY_DEPENDENCIES="puppet ruby-sqlite3 ruby-activerecord ruby-activerecord-deprecated-finders"
# Determine hostname
if [ ! -z "$1" ]; then
@@ -15,10 +14,15 @@ else
FQDN="`cat /etc/hostname`"
fi
-# Check for manifest
-PUPPET_MANIFEST="$BASEDIR/puppet/manifests/nodes/$FQDN.pp"
+# Set manifest
+PUPPET_MANIFEST="$BASEDIR/manifests/nodes/$FQDN.pp"
if [ ! -e "$PUPPET_MANIFEST" ]; then
- echo "file not found: $PUPPET_MANIFEST"
+ PUPPET_MANIFEST="$BASEDIR/manifests/nodes/default.pp"
+fi
+
+# Check manifest
+if [ ! -e "$PUPPET_MANIFEST" ]; then
+ echo "No manifest found for $FQDN"
exit 1
fi
@@ -54,5 +58,5 @@ if [ -d "$BASEDIR/puppet/files/patches/$DIST" ]; then
fi
# Run puppet apply
-PUPPET_OPTS="--confdir=$BASEDIR/puppet --modulepath=$BASEDIR/puppet/modules"
+PUPPET_OPTS="--confdir=$BASEDIR --modulepath=$BASEDIR/modules"
LC_ALL=C $SUDO puppet apply $PUPPET_OPTS $PUPPET_MANIFEST
diff --git a/puppet/bin/mrconfig b/puppet/bin/mrconfig
index dc753ac..48815c1 100755
--- a/puppet/bin/mrconfig
+++ b/puppet/bin/mrconfig
@@ -5,7 +5,7 @@
# Parameters
GIT="git.fluxo.info"
-URL="https://$GIT/?a=project_index"
+URL="https://$GIT/projects.list"
CWD="`pwd`"
WORK="`dirname $0`/.."
@@ -15,13 +15,12 @@ rm -f .mrconfig
touch .mrconfig
# Fetch repository list and updtate mrconfig
-curl --stderr - $URL | grep "^puppet-" | cut -d ' ' -f 1 | while read module; do
+curl --stderr - $URL | grep "^puppet-" | cut -d ' ' -f 1 | sed -e 's/\.git$//' | while read module; do
folder="`echo $module | sed -e 's/^puppet-//'`"
- folder="`basename $folder .git`"
if [ "$folder" != "bootstrap" ]; then
echo "Processing $folder..."
- mr config puppet/modules/$folder checkout="git clone git://$GIT/$module $folder"
+ mr config puppet/modules/$folder checkout="git clone https://$GIT/$module $folder"
fi
done
diff --git a/puppet/bin/post-receive b/puppet/bin/post-receive
index 996189d..e6baa07 100755
--- a/puppet/bin/post-receive
+++ b/puppet/bin/post-receive
@@ -3,5 +3,15 @@
cd ..
unset GIT_DIR
-git checkout -f
+if [ -d ".git/annex" ]; then
+ git annex sync
+else
+ #git reset HEAD
+ git checkout -f
+fi
+
+git submodule sync --recursive
git submodule update --init --recursive
+
+cd -
+exec git update-server-info
diff --git a/puppet/bin/post-update b/puppet/bin/post-update
deleted file mode 100755
index 48a6a16..0000000
--- a/puppet/bin/post-update
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/bin/sh
-
-cd ..
-unset GIT_DIR
-
-if [ -d ".git/annex" ]; then
- git annex sync
-else
- git reset HEAD
- git checkout -f
-fi
-
-git submodule update --init --recursive
-
-cd -
-exec git update-server-info
diff --git a/puppet/bin/provision b/puppet/bin/provision
index 16f102f..99cb862 100755
--- a/puppet/bin/provision
+++ b/puppet/bin/provision
@@ -13,23 +13,18 @@ source $DIRNAME/dependencies
$SUDO apt-get update && DEBIAN_FRONTEND=noninteractive $SUDO apt-get dist-upgrade -y && $SUDO apt-get autoremove -y && $SUDO apt-get clean
# Ensure additional dependencies are installed.
-for package in usbutils; do
- provision_package $package
-done
-
-# Storeconfigs support
-for package in ruby-sqlite3 ruby-activerecord ruby-activerecord-deprecated-finders; do
+for package in $DEPLOY_DEPENDENCIES; do
provision_package $package
done
# Link hiera configuration if needed.
if [ ! -h "/etc/puppet/hiera.yaml" ]; then
$SUDO rm -f /etc/puppet/hiera.yaml
- $SUDO ln -s $DIRNAME/../hiera/hiera.yaml /etc/puppet/hiera.yaml
+ $SUDO ln -s $DIRNAME/../config/hiera.yaml /etc/puppet/hiera.yaml
fi
# Link puppet configuration if needed.
-if [ ! -h "/etc/puppet/puppet.conf" ]; then
+if [ ! -h "/etc/puppet/puppet.conf" ] && [ -e "$DIRNAME/../puppet.conf" ]; then
$SUDO rm -f /etc/puppet/puppet.conf
$SUDO ln -s $DIRNAME/../puppet.conf /etc/puppet/puppet.conf
fi
diff --git a/puppet/config/common.yaml b/puppet/config/common.yaml
new file mode 100644
index 0000000..29fb400
--- /dev/null
+++ b/puppet/config/common.yaml
@@ -0,0 +1,65 @@
+---
+#
+# General
+#
+nodo::subsystem::apt::include_src : false
+nodo::subsystem::apt::use_next_release : false
+nodo::subsystem::monitor::use_nagios : false
+nodo::subsystem::monitor::address : "%{::fqdn}"
+
+#
+# Firewall
+#
+firewall::ssl_ratelimit : "s:ssl:200/min:20"
+firewall::local_net : false
+firewall::local::manage_host : true
+firewall::local::manage_iface : false
+
+#
+# Mail
+#
+mail::sympa::subdomain : "listas"
+mail::sympa::lang : "pt_BR"
+
+#
+# Monitoring
+#
+nodo::munin_node::allow: '127.0.0.1:192.168.0.[0-9]*:192.168.1.[0-9]*'
+
+#
+# Timezone and ntp
+#
+ntp::zone : "Brazil/East"
+ntp::pool : "south-america.pool.ntp.org"
+ntp::servers :
+ - 'a.ntp.br'
+ - 'b.ntp.br'
+ - 'c.ntp.br'
+
+#
+# Nameservers
+#
+# OpenDNS
+nodo::subsystem::resolver::nameservers:
+ - '208.67.222.222'
+ - '208.67.220.220'
+
+#
+# OpenSSH
+#
+sshd::use_storedconfigs : false
+sshd::manage_nagios : false
+sshd::listen_address : [ "%{::ipaddress}", '127.0.0.1' ]
+sshd::password_authentication : 'yes'
+sshd::shared_ip : 'yes'
+sshd::tcp_forwarding : 'yes'
+sshd::x11_forwarding : 'no'
+sshd::hardened : 'yes'
+sshd::print_motd : 'no'
+sshd::ports : [ 22 ]
+sshd::use_pam : 'no'
+
+#
+# Backup
+#
+backupninja::keystore: ''
diff --git a/puppet/hiera/hiera.yaml b/puppet/config/hiera.yaml
index a8ae792..c39c8e7 100644
--- a/puppet/hiera/hiera.yaml
+++ b/puppet/config/hiera.yaml
@@ -1,5 +1,6 @@
---
:backends:
+ - eyaml
- yaml
:yaml:
# Right now vagrant and puppet are not fully supporting
@@ -8,7 +9,14 @@
# reconsidered in the future.
#
# See http://docs.vagrantup.com/v2/provisioning/puppet_apply.html
- :datadir: '%{settings::confdir}/hiera'
+ :datadir: '%{settings::confdir}/config'
+:eyaml:
+ :datadir: '%{settings::confdir}/config'
+ :extension: 'yaml'
+
+ # If using the pkcs7 encryptor (default)
+ :pkcs7_private_key: '%{settings::confdir}/keys/private_key.pkcs7.pem'
+ :pkcs7_public_key: '%{settings::confdir}/keys/public_key.pkcs7.pem'
:hierarchy:
#
# Put in the secrets folder all sensitive information that
@@ -29,5 +37,5 @@
- 'virtual/%{::virtual}'
- 'location/%{::nodo::location}'
- 'domain/%{::domain}'
- - bootstrap
+ - compiled
- common
diff --git a/puppet/config/node/box.example.org.yaml b/puppet/config/node/box.example.org.yaml
new file mode 100644
index 0000000..304d915
--- /dev/null
+++ b/puppet/config/node/box.example.org.yaml
@@ -0,0 +1,47 @@
+---
+#
+# Nodo
+#
+nodo::role 'vagrant'
+
+#
+# Classes
+#
+classes:
+ - 'database'
+ - 'apache'
+
+#
+# MySQL
+#
+# The following password is public information and therefore
+# shall not be user on production.
+mysql::server::rootpw: '9pRfteNbSFFyrHhackme'
+
+#
+# Backup
+#
+nodo::subsystem::backup::localhost : false
+nodo::subsystem::backup::encryptkey : 'none'
+nodo::subsystem::backup::password : 'hacked'
+
+#
+# Apache
+#
+apache::default_folder : '/vagrant'
+apache::default_user : 'vagrant'
+apache::default_group : 'vagrant'
+
+# Manage your app
+apache::sites:
+ myapp:
+ docroot : "/vagrant/"
+ server_alias : 'myapp vagrant localhost'
+ use : [ "Site myapp" ]
+ tag : 'all'
+ owner : vagrant
+ group : vagrant
+ mpm_user : vagrant
+ mpm_group : vagrant
+ password : '$5$NZfZqcdyZ3Xt$.kfZejriEJP3fc6RU0gBGEzMPQ/c3XiowVImB6VDrtD'
+ shell : '/bin/bash'
diff --git a/puppet/files/patches/wheezy/collected-resources.md b/puppet/files/patches/wheezy/collected-resources.md
new file mode 100644
index 0000000..b2ce77d
--- /dev/null
+++ b/puppet/files/patches/wheezy/collected-resources.md
@@ -0,0 +1,3 @@
+# Collected resources patch
+
+* [Bug #10963: Collected resources with a puppet master fail on Ruby 1.9.x - Puppet - Puppet Labs](https://projects.puppetlabs.com/issues/10963).
diff --git a/puppet/hiera.yaml b/puppet/hiera.yaml
index 5230565..31df718 120000
--- a/puppet/hiera.yaml
+++ b/puppet/hiera.yaml
@@ -1 +1 @@
-hiera/hiera.yaml \ No newline at end of file
+config/hiera.yaml \ No newline at end of file
diff --git a/puppet/hiera/bootstrap.yaml b/puppet/hiera/bootstrap.yaml
deleted file mode 100644
index c4f6bca..0000000
--- a/puppet/hiera/bootstrap.yaml
+++ /dev/null
@@ -1,44 +0,0 @@
----
-#
-# Puppet Bootstrap Configuration Parameters.
-#
-# This file is responsible to set custom values to your new puppet repository
-# to reflect the custom configuration for your infrastructure.
-#
-# This configuration is useful mostly after you cloned the puppet-boostrap module
-# and want to configure it to boostrap a whole puppetmaster infrastructure.
-#
-
-# The base domain for your infrastructure.
-bootstrap::base_domain: 'vagrantup.com'
-
-#
-# Root password.
-#
-# Use "mkpasswd -m sha-512" to generate root and first user's passwords.
-bootstrap::root::password: '$5$aosRByu9U0$Cc7l2vpjV4sRLlao2JmG0lxOnD2crNLU7gZfn2eayu.'
-
-#
-# First user account
-#
-# Do not include "ssh-rsa " into the sshkey definition.
-bootstrap::first_user: 'vagrant'
-bootstrap::first_user::password: '$5$NCuDu81a$iHr7tZiGX0tKooq6N0bEwE7QDhRqfI9/yyD7WU1GiFB'
-bootstrap::first_user::sshkey: 'AAAAB3NzaC1yc2EAAAABIwAAAQEA6NF8iallvQVp22WDkTkyrtvp9eWW6A8YVr+kz4TjGYe7gHzIw+niNltGEFHzD8+v1I2YJ6oXevct1YeS0o9HZyN1Q9qgCgzUFtdOKLv6IedplqoPkcmF0aYet2PkEDo3MlTBckFXPITAMzF8dJSIFo9D8HfdOV0IAdx4O7PtixWKn5y2hMNG0zQPyUecp4pzC6kivAIhyfHilFR61RGL+GPXQ2MWZWFYbAGjyiYJnAmCP3NOTd0jMZEnDkbUvxhMmBYSdETk1rRgm+R4LOzFUGaHqHDLKLX+FIPKcF96hrucXzcWyLbIbEgE98OHlnVYCzRdK8jlqm8tehUc9c9WhQ=='
-bootstrap::first_user::email: ''
-
-#
-# First nodes
-#
-
-# Hostname of the first server
-bootstrap:first_hostname: ''
-
-# Create manifests and config for the first nodes?
-bootstrap::first_nodes: false
-
-# MySQL password
-mysql::server::rootpw: 'hackme'
-
-# Puppet master db password
-nodo::role::master::db_password: 'hackme'
diff --git a/puppet/hiera/common.yaml b/puppet/hiera/common.yaml
deleted file mode 100644
index 8a04a26..0000000
--- a/puppet/hiera/common.yaml
+++ /dev/null
@@ -1,55 +0,0 @@
----
-#
-# General
-#
-nodo::subsystem::apt::include_src: false
-nodo::subsystem::apt::use_next_release: false
-nodo::subsystem::monitor::use_nagios: false
-nodo::subsystem::monitor::address: "%{::fqdn}"
-
-#
-# Firewall
-#
-firewall::ssl_ratelimit: "s:ssl:200/min:20"
-firewall::local_net: false
-firewall::local::manage_host: true
-firewall::local::manage_iface: false
-
-#
-# Mail
-#
-mail::sympa::subdomain: "listas"
-mail::sympa::lang: "pt_BR"
-
-#
-# Monitoring
-#
-nodo::munin_node::allow: '127.0.0.1:192.168.0.[0-9]*:192.168.1.[0-9]*'
-
-#
-# Wordpress
-#
-wordpress::locale: 'pt_BR'
-
-#
-# Timezone and ntp
-#
-ntp::zone: "Brazil/East"
-ntp::pool: "south-america.pool.ntp.org"
-ntp::servers:
- - 'a.ntp.br'
- - 'b.ntp.br'
- - 'c.ntp.br'
-
-#
-# Nameservers
-#
-# OpenDNS
-nodo::subsystem::resolver::nameservers:
- - '208.67.222.222'
- - '208.67.220.220'
-
-#
-# Puppet config
-#
-nodo::base::puppet_mode: 'apply'
diff --git a/puppet/hiera/node/puppet-bootstrap.example.org.yaml b/puppet/hiera/node/puppet-bootstrap.example.org.yaml
deleted file mode 100644
index c108e7d..0000000
--- a/puppet/hiera/node/puppet-bootstrap.example.org.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
----
-#
-# MySQL
-#
-# The following password is public information and therefore
-# shall not be user on production.
-mysql::server::rootpw: '9pRfteNbSFFyrHhackme'
-
-#
-# Backup
-#
-nodo::subsystem::backup::localhost: false
-nodo::subsystem::backup::encryptkey: 'none'
-nodo::subsystem::backup::password: 'hacked'
diff --git a/puppet/keys/ssh/.empty b/puppet/keys/ssh/.empty
deleted file mode 100644
index e69de29..0000000
--- a/puppet/keys/ssh/.empty
+++ /dev/null
diff --git a/puppet/keys/ssl/.empty b/puppet/keys/ssl/.empty
deleted file mode 100644
index e69de29..0000000
--- a/puppet/keys/ssl/.empty
+++ /dev/null
diff --git a/puppet/kvmxfile b/puppet/kvmxfile
new file mode 100644
index 0000000..1f494bd
--- /dev/null
+++ b/puppet/kvmxfile
@@ -0,0 +1,89 @@
+#
+# Sample kvmx file - https://kvmx.fluxo.info
+#
+
+# Which base box you should use. Leave unconfigured to use kvmx-create instead.
+#basebox="stretch"
+
+# First user name
+user="vagrant"
+
+# First user password
+password="vagrant"
+
+# Set this is you want to be able to share folders between host and guest.
+shared_folder="."
+shared_folder_mountpoint="/vagrant"
+
+# Folder to sync during provisioning in the format "/host/folder /guest/folder".
+provision_rsync="puppet /etc/puppet"
+
+# Options for provision_rsync
+provision_rsync_opts="--exclude=.git --exclude=keys --exclude=config/secrets"
+
+# Absolute path for a provision script located inside the guest.
+provision_command="/etc/puppet/bin/provision && /etc/puppet/bin/deploy"
+
+# Graphics
+# See https://wiki.archlinux.org/index.php/QEMU#Graphics
+#graphics="-vga std -nographic -vnc :$GUEST_DISPLAY"
+graphics="-vga qxl"
+
+# VNC Client
+#vnc_client="xtightvncviewer"
+#vnc_client="xvnc4viewer"
+#vnc_client="xvncviewer"
+vnc_client="virt-viewer"
+
+# Set this if you want to automatically attach an spice client when the machine
+# boots.
+run_spice_client="0"
+
+# Set additional hostfwd mappings
+#port_mapping="hostfwd=tcp:127.0.0.1:8080-:80,hostfwd=tcp:127.0.0.1:8443-:443"
+
+# Where the guest image is stored
+#image="$HOME/.local/share/kvmx/$VM/box.img"
+
+# Image size
+size="10G"
+
+# Image format: raw or qcow2
+format="qcow2"
+
+# Bootstrap method: custom or vmdeboostrap
+method="custom"
+
+# Hostname
+hostname="puppet"
+
+# Domain
+domain="example.org"
+
+# System arch
+arch="amd64"
+
+# Box distribution when bootstraping a new image
+version="stretch"
+
+# Debian mirror
+mirror="http://http.debian.net/debian/"
+
+# Enables remote administration using SSH. With this configuration enabled,
+# kvmx will be able to administer a running virtual machine using SSH access
+# inside the virtual machine.
+ssh_support="y"
+
+# Use a custom, per-virtual-machine generated SSH keypair. If you disable this
+# configuration but still want guest administration using SSH, the default
+# insecure keypair will be used.
+#
+# Please note that this setting won't take effect if you're using a basebox.
+# In that case the basebox keypair will be used if it exists, otherwise kvmx
+# fallsback to the default insecure keypair.
+#
+# This setting is used during virtual machine bootstrapping by kvmx-create.
+ssh_custom="y"
+
+# Bootloader (used only during bootstrapping by kvmx-create).
+bootloader="grub"
diff --git a/puppet/manifests/bootstrap/configurator.pp b/puppet/manifests/bootstrap/configurator.pp
deleted file mode 100644
index edcbe92..0000000
--- a/puppet/manifests/bootstrap/configurator.pp
+++ /dev/null
@@ -1,208 +0,0 @@
-#
-# Puppet Bootstrap Configuration Manifest.
-#
-# This file is responsible to set custom configuration in the bootstrap
-# repository for values set in the hiera configuration.
-#
-# This manifest is useful mostly after you cloned the puppet-boostrap module
-# and want to configure it to boostrap a whole puppetmaster infrastructure.
-#
-
-#
-# Basic variables
-#
-$templates = "$bootstrap_path/templates"
-$base_domain = hiera('bootstrap::base_domain', "${::domain}")
-$first_hostname = hiera('bootstrap::first_hostname', "${::hostname}")
-$first_nodes = hiera('bootstrap::first_nodes', 'absent')
-$db_password = hiera('nodo::role::master::db_password', '')
-$mysql_rootpw = hiera('mysql::server::rootpw', '')
-$root_password = hiera('bootstrap::root::password', '')
-$first_user = hiera('bootstrap::first_user', 'user')
-$first_user_password = hiera('bootstrap::first_user::password', '')
-$first_user_sshkey = hiera('bootstrap::first_user::sshkey', '')
-$first_user_email = hiera('bootstrap::first_user::email', 'user@example.org')
-$resolvconf_nameservers = hiera('nodo::subsystem::resolver::nameservers', '201.6.2.152:201.6.2.32')
-$global_munin_allow = hiera('nodo::munin_node::allow', '192.168.0.[0-9]*')
-
-#
-# Check bootstrap configuration
-#
-
-if ($mysql_rootpw == '') {
- alert('You must set mysql::server::rootpw at your configuration')
- fail()
-}
-
-if ($db_password == '') {
- alert('You must set nodo::role::master::db_password at your configuration')
- fail()
-}
-
-if ($root_password == '') {
- alert('You must set bootstrap::root::password at your configuration')
- fail()
-}
-
-if ($first_user_password == '') {
- alert('You must set bootstrap::first_user::password at your configuration')
- fail()
-}
-
-#
-# Puppet configuration
-#
-file { "$bootstrap_path/puppet.conf":
- ensure => present,
- mode => 0644,
- content => template("$templates/puppet/puppet.conf.erb"),
-}
-
-# Fileserver configuration
-file { "$bootstrap_path/fileserver.conf":
- ensure => present,
- mode => 0644,
- content => template("$templates/puppet/fileserver.conf.erb"),
-}
-
-file { "$bootstrap_path/auth.conf":
- ensure => present,
- mode => 0644,
- content => template("$templates/puppet/auth.conf.erb"),
-}
-
-#
-# Basic users
-#
-file { "$bootstrap_path/modules/site_users/manifests/init.pp":
- ensure => present,
- mode => 0644,
- content => template("$templates/puppet/users.pp.erb"),
-}
-
-#
-# Site files
-#
-
-file { "$bootstrap_path/modules/site_apache/files/htdocs/images/README.html":
- ensure => present,
- mode => 0644,
- content => template("$templates/apache/htdocs/images/README.html.erb"),
-}
-
-file { "$bootstrap_path/modules/site_apache/files/htdocs/index.html":
- ensure => present,
- mode => 0644,
- content => template("$templates/apache/htdocs/index.html.erb"),
-}
-
-file { "$bootstrap_path/modules/site_apache/files/htdocs/missing.html":
- ensure => present,
- mode => 0644,
- content => template("$templates/apache/htdocs/missing.html.erb"),
-}
-
-file { "$bootstrap_path/modules/site_apache/files/vhosts/git":
- ensure => present,
- mode => 0644,
- content => template("$templates/apache/vhosts/git.erb"),
-}
-
-file { "$bootstrap_path/modules/site_apache/files/vhosts/lists":
- ensure => present,
- mode => 0644,
- content => template("$templates/apache/vhosts/lists.erb"),
-}
-
-file { "$bootstrap_path/modules/site_apache/files/vhosts/mail":
- ensure => present,
- mode => 0644,
- content => template("$templates/apache/vhosts/mail.erb"),
-}
-
-file { "$bootstrap_path/modules/site_apache/files/vhosts/nagios":
- ensure => present,
- mode => 0644,
- content => template("$templates/apache/vhosts/nagios.erb"),
-}
-
-file { "$bootstrap_path/modules/site_apache/files/vhosts/wiki":
- ensure => present,
- mode => 0644,
- content => template("$templates/apache/vhosts/wiki.erb"),
-}
-
-file { "$bootstrap_path/modules/site_mail/files/aliases":
- ensure => present,
- mode => 0644,
- content => template("$templates/etc/aliases.erb"),
-}
-
-file { "$bootstrap_path/modules/site_nagios/files/htpasswd.users":
- ensure => present,
- mode => 0644,
- content => template("$templates/etc/nagios3/htpasswd.users.erb"),
-}
-
-file { "$bootstrap_path/modules/site_nginx/files/$domain":
- ensure => present,
- mode => 0644,
- content => template("$templates/etc/nginx/domain.erb"),
-}
-
-file { "$bootstrap_path/modules/site_postfix/files/tls_policy":
- ensure => present,
- mode => 0644,
- content => template("$templates/postfix/tls_policy.erb"),
-}
-
-#
-# Basic nodes
-#
-file { "$bootstrap_path/manifests/nodes.pp":
- ensure => present,
- mode => 0644,
- content => template("$templates/puppet/nodes.pp.erb"),
-}
-
-# First host
-file { "$bootstrap_path/manifests/nodes/$first_hostname.pp":
- ensure => $first_nodes,
- mode => 0644,
- content => template("$templates/puppet/server.pp.erb"),
-}
-
-# Master node
-file { "$bootstrap_path/manifests/nodes/$first_hostname-master.pp":
- ensure => $first_nodes,
- mode => 0644,
- content => template("$templates/puppet/master.pp.erb"),
-}
-
-# Proxy node
-file { "$bootstrap_path/manifests/nodes/$first_hostname-proxy.pp":
- ensure => $first_nodes,
- mode => 0644,
- content => template("$templates/puppet/proxy.pp.erb"),
-}
-
-# Web node
-file { "$bootstrap_path/manifests/nodes/$first_hostname-web.pp":
- ensure => $first_nodes,
- mode => 0644,
- content => template("$templates/puppet/web.pp.erb"),
-}
-
-# Storage node
-file { "$bootstrap_path/manifests/nodes/$first_hostname-storage.pp":
- ensure => $first_nodes,
- mode => 0644,
- content => template("$templates/puppet/storage.pp.erb"),
-}
-
-# Test node
-file { "$bootstrap_path/manifests/nodes/$first_hostname-test.pp":
- ensure => $first_nodes,
- mode => 0644,
- content => template("$templates/puppet/test.pp.erb"),
-}
diff --git a/puppet/manifests/bootstrap/host.pp b/puppet/manifests/bootstrap/host.pp
deleted file mode 100644
index 5f9c23a..0000000
--- a/puppet/manifests/bootstrap/host.pp
+++ /dev/null
@@ -1,23 +0,0 @@
-#
-# This manifest is intended to configure the initial
-# machine wich will host the first puppetmaster
-# virtual machine.
-#
-
-# The server role
-class { 'nodo:
- role => 'server',
-}
-
-# Creates vserver for administrative node
-nodo::vserver::instance { "$hostname-master":
- context => '2',
- puppetmaster => true,
-}
-
-# Create a host entry for this puppet node
-host { "puppet":
- ensure => present,
- ip => "192.168.0.2",
- host_aliases => [ "puppet.$domain", "admin" ],
-}
diff --git a/puppet/manifests/bootstrap/master.pp b/puppet/manifests/bootstrap/master.pp
deleted file mode 100644
index 5934d3e..0000000
--- a/puppet/manifests/bootstrap/master.pp
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# This manifest is intended to configure the initial
-# puppetmaster node.
-#
-# Once it's running it can setup all the other nodes.
-#
-
-# Include the master node configuration
-class { 'nodo':
- role => 'master',
-}
diff --git a/puppet/manifests/bootstrap/vagrant.pp b/puppet/manifests/bootstrap/vagrant.pp
deleted file mode 100644
index 47305dc..0000000
--- a/puppet/manifests/bootstrap/vagrant.pp
+++ /dev/null
@@ -1,38 +0,0 @@
-#
-# This manifest is intended to configure a vagrant
-# virtual machine.
-#
-
-#
-# Class definitions
-#
-
-# Vagrant classes
-class { 'nodo':
- role => 'vagrant',
-}
-
-#
-# LAMP example
-#
-#include database
-#
-#class { 'apache':
-# default_folder => '/vagrant',
-# default_user => 'vagrant',
-# default_group => 'vagrant',
-#}
-#
-# If you want to manage another website
-#apache::site { "myapp":
-# docroot => "/vagrant/",
-# server_alias => 'myapp vagrant localhost',
-# use => [ "Site myapp" ],
-# tag => 'all',
-# owner => vagrant,
-# group => vagrant,
-# mpm_user => vagrant,
-# mpm_group => vagrant,
-# password => '$5$NZfZqcdyZ3Xt$.kfZejriEJP3fc6RU0gBGEzMPQ/c3XiowVImB6VDrtD',
-# shell => '/bin/bash',
-#}
diff --git a/puppet/manifests/hiera b/puppet/manifests/hiera
deleted file mode 120000
index ba8aae1..0000000
--- a/puppet/manifests/hiera
+++ /dev/null
@@ -1 +0,0 @@
-../hiera \ No newline at end of file
diff --git a/puppet/keys/public/.empty b/puppet/modules/.empty
index e69de29..e69de29 100644
--- a/puppet/keys/public/.empty
+++ b/puppet/modules/.empty
diff --git a/puppet/modules/bootstrap b/puppet/modules/bootstrap
deleted file mode 120000
index a96aa0e..0000000
--- a/puppet/modules/bootstrap
+++ /dev/null
@@ -1 +0,0 @@
-.. \ No newline at end of file
diff --git a/puppet/modules/site_apache/files/htdocs/images/.empty b/puppet/modules/site_apache/files/htdocs/images/.empty
deleted file mode 100644
index e69de29..0000000
--- a/puppet/modules/site_apache/files/htdocs/images/.empty
+++ /dev/null
diff --git a/puppet/modules/site_apache/files/vhosts/.empty b/puppet/modules/site_apache/files/vhosts/.empty
deleted file mode 100644
index e69de29..0000000
--- a/puppet/modules/site_apache/files/vhosts/.empty
+++ /dev/null
diff --git a/puppet/modules/site_apt/files/keys.d/.empty b/puppet/modules/site_apt/files/keys.d/.empty
deleted file mode 100644
index e69de29..0000000
--- a/puppet/modules/site_apt/files/keys.d/.empty
+++ /dev/null
diff --git a/puppet/modules/site_bind/manifests/init.pp b/puppet/modules/site_bind/manifests/init.pp
deleted file mode 100644
index 7ee08d2..0000000
--- a/puppet/modules/site_bind/manifests/init.pp
+++ /dev/null
@@ -1,16 +0,0 @@
-class site_bind {
- #
- # See http://oreilly.com/pub/a/oreilly/networking/news/views_0501.html
- # http://www.debian-administration.org/articles/355
-
- # This is needed so we can comment out the inclusion of
- # /etc/bind/named.conf.default-zones
- #file { '/etc/bind/named.conf':
- # ensure => present,
- # owner => root,
- # group => root,
- # mode => 0644,
- # source => 'puppet:///modules/site_bind/named.conf',
- # notify => Service['bind9'],
- #}
-}
diff --git a/puppet/modules/site_keys/files/ssl/.empty b/puppet/modules/site_keys/files/ssl/.empty
deleted file mode 100644
index e69de29..0000000
--- a/puppet/modules/site_keys/files/ssl/.empty
+++ /dev/null
diff --git a/puppet/modules/site_mail/files/.empty b/puppet/modules/site_mail/files/.empty
deleted file mode 100644
index e69de29..0000000
--- a/puppet/modules/site_mail/files/.empty
+++ /dev/null
diff --git a/puppet/modules/site_mail/files/aliases b/puppet/modules/site_mail/files/aliases
deleted file mode 100644
index 08a0723..0000000
--- a/puppet/modules/site_mail/files/aliases
+++ /dev/null
@@ -1,14 +0,0 @@
-# /etc/aliases
-mailer-daemon: postmaster
-postmaster: root
-nobody: root
-hostmaster: root
-usenet: root
-news: root
-webmaster: root
-www: root
-ftp: root
-abuse: root
-noc: root
-security: root
-reprepro: root
diff --git a/puppet/modules/site_nagios/files/.empty b/puppet/modules/site_nagios/files/.empty
deleted file mode 100644
index e69de29..0000000
--- a/puppet/modules/site_nagios/files/.empty
+++ /dev/null
diff --git a/puppet/modules/site_nginx/files/.empty b/puppet/modules/site_nginx/files/.empty
deleted file mode 100644
index e69de29..0000000
--- a/puppet/modules/site_nginx/files/.empty
+++ /dev/null
diff --git a/puppet/modules/site_postfix/files/.empty b/puppet/modules/site_postfix/files/.empty
deleted file mode 100644
index e69de29..0000000
--- a/puppet/modules/site_postfix/files/.empty
+++ /dev/null
diff --git a/puppet/modules/site_users/manifests/admin.pp b/puppet/modules/site_users/manifests/admin.pp
deleted file mode 100644
index 14ad9da..0000000
--- a/puppet/modules/site_users/manifests/admin.pp
+++ /dev/null
@@ -1,16 +0,0 @@
-class site_users::admin inherits user {
- # root user and password
- #user::manage { "root":
- # tag => "admin",
- # homedir => '/root',
- # password => '$5$zpdXgIaLKMDckKx9$qTS9WbmS/zylFwPu1orq.779CNnAiA9VoGdFNU94jz/',
- #}
-
- # first user config
- #user::manage { "user":
- # tag => "admin",
- # groups => [ "sudo", ],
- # password => '$5$D8kCEIo5/MNCA7Tz$VhGg2MNDs21JzX9HgxSWMupA5GD5MXnKwDuveMSdPH7',
- # sshkey => [ "WRONG" ],
- #}
-}
diff --git a/puppet/modules/site_users/manifests/backups.pp b/puppet/modules/site_users/manifests/backups.pp
deleted file mode 100644
index aab00f9..0000000
--- a/puppet/modules/site_users/manifests/backups.pp
+++ /dev/null
@@ -1,3 +0,0 @@
-class site_users::backup inherits user {
- # define third-party hosted backup users here
-}
diff --git a/puppet/modules/site_users/manifests/init.pp b/puppet/modules/site_users/manifests/init.pp
deleted file mode 100644
index b3c656a..0000000
--- a/puppet/modules/site_users/manifests/init.pp
+++ /dev/null
@@ -1,2 +0,0 @@
-class site_users {
-}
diff --git a/puppet/modules/site_users/manifests/virtual.pp b/puppet/modules/site_users/manifests/virtual.pp
deleted file mode 100644
index 20aba01..0000000
--- a/puppet/modules/site_users/manifests/virtual.pp
+++ /dev/null
@@ -1,3 +0,0 @@
-class site_users::virtual inherits user {
- # define custom users here
-}
diff --git a/puppet/modules/site_websites/manifests/admin.pp b/puppet/modules/site_websites/manifests/admin.pp
deleted file mode 100644
index 0be3a94..0000000
--- a/puppet/modules/site_websites/manifests/admin.pp
+++ /dev/null
@@ -1,25 +0,0 @@
-class site_websites::admin inherits websites::hosting::admin {
- # An administrative Trac instance
- #apache::site { "admin":
- # docroot => "${apache::sites_folder}/admin/trac/htdocs",
- # use => [ "Trac admin" ],
- # redirect_match => "trac",
- # mpm => false,
- # tag => 'all',
- #}
-
- apache::site { "munin":
- docroot => '/var/www/munin',
- owner => "munin",
- group => "munin",
- mpm => false,
- tag => 'all',
- }
-
- apache::site { "nagios":
- source => true,
- docroot => '/usr/share/nagios3/htdocs',
- mpm => false,
- tag => 'all',
- }
-}
diff --git a/puppet/modules/site_websites/manifests/init.pp b/puppet/modules/site_websites/manifests/init.pp
deleted file mode 100644
index c98ca7d..0000000
--- a/puppet/modules/site_websites/manifests/init.pp
+++ /dev/null
@@ -1,21 +0,0 @@
-class site_websites inherits websites::hosting {
- # Website definitions: always use tagged resources
- apache::site { "git":
- source => true,
- docroot => '/var/git/repositories',
- mpm => false,
- tag => 'all',
- }
-
- #apache::site { "site":
- # source => true,
- # ticket => '001',
- # docroot => '/var/www/site',
- # tag => 'all',
- #}
-
- #database::instance { "site":
- # password => 'xxx',
- # tag => 'all',
- #}
-}
diff --git a/puppet/puppet.conf b/puppet/puppet.conf
deleted file mode 100644
index ea5ed0e..0000000
--- a/puppet/puppet.conf
+++ /dev/null
@@ -1,4 +0,0 @@
-[main]
- thin_storeconfigs = true
- storeconfigs = true
- dbadapter = sqlite3
diff --git a/puppet/templates/apache/htdocs/images/README.html.erb b/puppet/templates/apache/htdocs/images/README.html.erb
deleted file mode 100644
index 4d0f929..0000000
--- a/puppet/templates/apache/htdocs/images/README.html.erb
+++ /dev/null
@@ -1,3 +0,0 @@
-<pre>
-When not explicitly mentioned, the use of these images is restricted to <%= base_domain %>
-</pre>
diff --git a/puppet/templates/apache/htdocs/index.html.erb b/puppet/templates/apache/htdocs/index.html.erb
deleted file mode 100644
index 6d2d7ea..0000000
--- a/puppet/templates/apache/htdocs/index.html.erb
+++ /dev/null
@@ -1,9 +0,0 @@
-<html><head>
-<meta http-equiv="refresh" content="1;url=http://<%= domain %>">
-<title><%= domain %></title></head><body>
-
-<center>
- <p><code>You are being redirected to <a href="http://<%= domain %>">http://<%= domain %></a>.</code></p>
-</center>
-
-</body></html>
diff --git a/puppet/templates/apache/htdocs/missing.html.erb b/puppet/templates/apache/htdocs/missing.html.erb
deleted file mode 100644
index 0c95ef3..0000000
--- a/puppet/templates/apache/htdocs/missing.html.erb
+++ /dev/null
@@ -1,12 +0,0 @@
-<html>
-<head>
-<title>404 - Not Found</title>
-</head>
-<body>
- <center>
- <pre>
- The address you are trying to reach could not be found. :(
- </pre>
- </center>
-</body>
-</html>
diff --git a/puppet/templates/apache/vhosts/cgit.erb b/puppet/templates/apache/vhosts/cgit.erb
deleted file mode 100644
index d2d393d..0000000
--- a/puppet/templates/apache/vhosts/cgit.erb
+++ /dev/null
@@ -1,30 +0,0 @@
-# begin vhost for cgit
-<VirtualHost *:80>
- ServerName git.<%= domain %>
- ServerAlias gitweb.<%= domain %>
-
- ServerSignature Off
-
- Alias /cgit.css /var/www/htdocs/cgit/cgit.css
- Alias /cgit.png /var/www/htdocs/cgit/cgit.png
-
- ScriptAlias /cgi-bin/ /var/www/htdocs/cgit/
-
- DocumentRoot /var/git/repositories
- <Directory /var/git/repositories>
- AllowOverride None
- Options +ExecCGI
- Order allow,deny
- Allow from all
-
- DirectoryIndex /cgi-bin/cgit.cgi
-
- RewriteEngine on
- RewriteCond %{REQUEST_FILENAME} !-f
- RewriteRule ^.*$ /cgi-bin/cgit.cgi/$0 [L,PT]
- </Directory>
-
- ErrorLog /var/log/apache2/cgit.openezx.org/error.log
- CustomLog /var/log/apache2/cgit.openezx.org/access.log common
-</VirtualHost>
-# end vhost for git
diff --git a/puppet/templates/apache/vhosts/git.erb b/puppet/templates/apache/vhosts/git.erb
deleted file mode 100644
index 89173ac..0000000
--- a/puppet/templates/apache/vhosts/git.erb
+++ /dev/null
@@ -1,21 +0,0 @@
-# begin vhost for git
-<VirtualHost *:80>
- # Recipe based on http://josephspiros.com/2009/07/26/configuring-gitweb-for-apache-on-debian
-
- ServerName git.<%= domain %>
- ServerAlias gitweb.<%= domain %>
- SetEnv GITWEB_CONFIG /etc/gitweb.conf
- HeaderName HEADER
- DocumentRoot /var/git/repositories
- Alias /gitweb.css /usr/share/gitweb/gitweb.css
- Alias /git-favicon.png /usr/share/gitweb/git-favicon.png
- Alias /git-logo.png /usr/share/gitweb/git-logo.png
-
- ScriptAlias /gitweb /usr/lib/cgi-bin/gitweb.cgi
- RewriteEngine on
-
- # Rewrite all other paths that aren't git repo internals to gitweb
- RewriteRule ^/$ /gitweb [PT]
- RewriteRule ^/(.*\.git/(?!/?(HEAD|info|objects|refs)).*)?$ /gitweb%{REQUEST_URI} [L,PT]
-</VirtualHost>
-# end vhost for git
diff --git a/puppet/templates/apache/vhosts/lists.erb b/puppet/templates/apache/vhosts/lists.erb
deleted file mode 100644
index 158dfd4..0000000
--- a/puppet/templates/apache/vhosts/lists.erb
+++ /dev/null
@@ -1,22 +0,0 @@
-# begin vhost for lists.<%= domain %>
-<VirtualHost *:80>
- ServerName lists.<%= domain %>
- DocumentRoot /var/www/data/lists
-
- RedirectMatch ^/$ https://lists.<%= domain %>/wws
- Alias /static-sympa /var/lib/sympa/static_content
- Alias /wwsicons /usr/share/sympa/icons
- ScriptAlias /wws /var/www/data/lists/wwsympa.fcgi
-
- <IfModule mod_fcgid.c>
- IPCCommTimeout 120
- MaxProcessCount 2
- </IfModule>
-
- SuexecUserGroup sympa sympa
-
- <Location /wws>
- SetHandler fcgid-script
- </Location>
-</VirtualHost>
-# end vhost for lists.<%= domain %>
diff --git a/puppet/templates/apache/vhosts/mail.erb b/puppet/templates/apache/vhosts/mail.erb
deleted file mode 100644
index 3badcf0..0000000
--- a/puppet/templates/apache/vhosts/mail.erb
+++ /dev/null
@@ -1,72 +0,0 @@
-# begin vhost for mail.<%= domain >
-<VirtualHost *:80>
- ServerName mail.<%= domain >
- #DocumentRoot /usr/share/squirrelmail
- DocumentRoot /var/lib/roundcube
-
- # begin squirrel config
- <Directory /usr/share/squirrelmail>
- Options Indexes FollowSymLinks
- <IfModule mod_php4.c>
- php_flag register_globals off
- </IfModule>
- <IfModule mod_php5.c>
- php_flag register_globals off
- </IfModule>
- <IfModule mod_dir.c>
- DirectoryIndex index.php
- </IfModule>
-
- # access to configtest is limited by default to prevent information leak
- <Files configtest.php>
- order deny,allow
- deny from all
- allow from 127.0.0.1
- </Files>
- </Directory>
- # end squirrel config
-
- # begin roundcube config
- # Access to tinymce files
- Alias /roundcube/program/js/tiny_mce/ /usr/share/tinymce/www/
- Alias /roundcube /var/lib/roundcube
-
- <Directory "/usr/share/tinymce/www/">
- Options Indexes MultiViews FollowSymLinks
- AllowOverride None
- Order allow,deny
- allow from all
- </Directory>
-
- <Directory /var/lib/roundcube/>
- Options +FollowSymLinks
- # This is needed to parse /var/lib/roundcube/.htaccess. See its
- # content before setting AllowOverride to None.
- AllowOverride All
- order allow,deny
- allow from all
- </Directory>
-
- # Protecting basic directories:
- <Directory /var/lib/roundcube/config>
- Options -FollowSymLinks
- AllowOverride None
- </Directory>
-
- <Directory /var/lib/roundcube/temp>
- Options -FollowSymLinks
- AllowOverride None
- Order allow,deny
- Deny from all
- </Directory>
-
- <Directory /var/lib/roundcube/logs>
- Options -FollowSymLinks
- AllowOverride None
- Order allow,deny
- Deny from all
- </Directory>
- # end roundcube config
-
-</VirtualHost>
-# end vhost for mail.<%= domain >
diff --git a/puppet/templates/apache/vhosts/nagios.erb b/puppet/templates/apache/vhosts/nagios.erb
deleted file mode 100644
index 8b3d252..0000000
--- a/puppet/templates/apache/vhosts/nagios.erb
+++ /dev/null
@@ -1,61 +0,0 @@
-# begin vhost for nagios
-<VirtualHost *:80>
- ServerName nagios.<%= domain >
- DocumentRoot /usr/share/nagios3/htdocs
-
- # apache configuration for nagios 3.x
- # note to users of nagios 1.x and 2.x:
- # throughout this file are commented out sections which preserve
- # backwards compatibility with bookmarks/config forî<80><80>older nagios versios.
- # simply look for lines following "nagios 1.x:" and "nagios 2.x" comments.
-
- ScriptAlias /cgi-bin/nagios3 /usr/lib/cgi-bin/nagios3
- ScriptAlias /nagios3/cgi-bin /usr/lib/cgi-bin/nagios3
- # nagios 1.x:
- #ScriptAlias /cgi-bin/nagios /usr/lib/cgi-bin/nagios3
- #ScriptAlias /nagios/cgi-bin /usr/lib/cgi-bin/nagios3
- # nagios 2.x:
- #ScriptAlias /cgi-bin/nagios2 /usr/lib/cgi-bin/nagios3
- #ScriptAlias /nagios2/cgi-bin /usr/lib/cgi-bin/nagios3
-
- # Where the stylesheets (config files) reside
- Alias /nagios3/stylesheets /etc/nagios3/stylesheets
- # nagios 1.x:
- #Alias /nagios/stylesheets /etc/nagios3/stylesheets
- # nagios 2.x:
- #Alias /nagios2/stylesheets /etc/nagios3/stylesheets
-
- # Where the HTML pages live
- Alias /nagios3 /usr/share/nagios3/htdocs
- # nagios 2.x:
- #Alias /nagios2 /usr/share/nagios3/htdocs
- # nagios 1.x:
- #Alias /nagios /usr/share/nagios3/htdocs
-
- <DirectoryMatch (/usr/share/nagios3/htdocs|/usr/lib/cgi-bin/nagios3)>
- Options FollowSymLinks
-
- DirectoryIndex index.html
-
- AllowOverride AuthConfig
- Order Allow,Deny
- Allow From All
-
- AuthName "Nagios Access"
- AuthType Basic
- AuthUserFile /etc/nagios3/htpasswd.users
- # nagios 1.x:
- #AuthUserFile /etc/nagios/htpasswd.users
- require valid-user
- </DirectoryMatch>
-
- # Enable this ScriptAlias if you want to enable the grouplist patch.
- # See http://apan.sourceforge.net/download.html for more info
- # It allows you to see a clickable list of all hostgroups in the
- # left pane of the Nagios web interface
- # XXX This is not tested for nagios 2.x use at your own peril
- #ScriptAlias /nagios3/side.html /usr/lib/cgi-bin/nagios3/grouplist.cgi
- # nagios 1.x:
- #ScriptAlias /nagios/side.html /usr/lib/cgi-bin/nagios3/grouplist.cgi
-</VirtualHost>
-# end vhost for nagios
diff --git a/puppet/templates/apache/vhosts/wiki.erb b/puppet/templates/apache/vhosts/wiki.erb
deleted file mode 100644
index 56e395b..0000000
--- a/puppet/templates/apache/vhosts/wiki.erb
+++ /dev/null
@@ -1,17 +0,0 @@
-# begin vhost for wiki.<%= domain >
-<VirtualHost *:80>
- ServerName wiki.<%= domain >
- DocumentRoot /var/www/data/wiki
-
- # begin wiki config
- <Directory /var/www/data/wiki>
- Options Indexes Includes FollowSymLinks MultiViews
- AllowOverride All
- </Directory>
- # end wiki config
-
- <IfModule mpm_itk_module>
- AssignUserId wiki wiki
- </IfModule>
-</VirtualHost>
-# end vhost for wiki.<%= domain >
diff --git a/puppet/templates/etc/aliases.erb b/puppet/templates/etc/aliases.erb
deleted file mode 100644
index f520f68..0000000
--- a/puppet/templates/etc/aliases.erb
+++ /dev/null
@@ -1,15 +0,0 @@
-# /etc/aliases
-mailer-daemon: postmaster
-postmaster: root
-nobody: root
-hostmaster: root
-usenet: root
-news: root
-webmaster: root
-www: root
-ftp: root
-abuse: root
-noc: root
-security: root
-reprepro: root
-root: <%= first_user_email %>
diff --git a/puppet/templates/etc/nagios3/htpasswd.users.erb b/puppet/templates/etc/nagios3/htpasswd.users.erb
deleted file mode 100644
index c21d493..0000000
--- a/puppet/templates/etc/nagios3/htpasswd.users.erb
+++ /dev/null
@@ -1 +0,0 @@
-nagiosadmin:0FCabjvUTHvxF
diff --git a/puppet/templates/etc/nginx/domain.erb b/puppet/templates/etc/nginx/domain.erb
deleted file mode 100644
index 8beff14..0000000
--- a/puppet/templates/etc/nginx/domain.erb
+++ /dev/null
@@ -1,173 +0,0 @@
-# <%= domain %> proxy config
-
-# Set the max size for file uploads
-client_max_body_size 100M;
-
-# SNI Configuration
-server {
- listen 443 default;
- server_name _;
- ssl on;
- ssl_certificate /etc/ssl/certs/blank.crt;
- ssl_certificate_key /etc/ssl/private/blank.pem;
- return 403;
-}
-
-server {
- # see config tips at
- # http://blog.taragana.com/index.php/archive/nginx-hacking-tips/
-
- # Don't log anything
- access_log /dev/null;
- error_log /dev/null;
-
- # simple reverse-proxy
- listen 80;
- server_name *.<%= domain %> <%= domain %>
-
- # enable HSTS header
- add_header Strict-Transport-Security "max-age=15768000; includeSubdomains";
-
- # https redirection by default
- rewrite ^(.*) https://$host$1 redirect;
-
- # rewrite rules for backups.<%= domain %>
- #if ($host ~* ^backups\.<%= domain %>$) {
- # rewrite ^(.*) https://$host$1 redirect;
- # break;
- #}
-
- # rewrite rules for admin.<%= domain %>
- #if ($host ~* ^admin\.<%= domain %>$) {
- # rewrite ^(.*) https://$host$1 redirect;
- # break;
- #}
-
- # rewrite rules for munin.<%= domain %>
- #if ($host ~* ^munin\.<%= domain %>$) {
- # rewrite ^(.*) https://$host$1 redirect;
- # break;
- #}
-
- # rewrite rules for trac.<%= domain %>
- #if ($host ~* ^trac\.<%= domain %>$) {
- # rewrite ^(.*) https://$host$1 redirect;
- # break;
- #}
-
- # rewrite rules for nagios.<%= domain %>
- #if ($host ~* ^nagios\.<%= domain %>$) {
- # rewrite ^(.*) https://$host$1 redirect;
- # break;
- #}
-
- # rewrite rules for htpasswd.<%= domain %>
- #if ($host ~* ^htpasswd\.<%= domain %>$) {
- # rewrite ^(.*) https://$host$1 redirect;
- # break;
- #}
-
- # rewrite rules for postfixadmin.<%= domain %>
- #if ($host ~* ^postfixadmin\.<%= domain %>$) {
- # rewrite ^(.*) https://$host$1 redirect;
- # break;
- #}
-
- # rewrite rules for mail.<%= domain %>
- #if ($host ~* ^mail\.<%= domain %>$) {
- # rewrite ^(.*) https://$host$1 redirect;
- # break;
- #}
-
- # rewrite rules for lists.<%= domain %>
- #if ($host ~* ^lists\.<%= domain %>$) {
- # rewrite ^(.*) https://$host$1 redirect;
- # break;
- #}
-
- # pass requests for dynamic content
- location / {
- proxy_set_header Host $http_host;
- proxy_pass http://weblocal:80;
- }
-
-}
-
-server {
- # https reverse proxy
- listen 443;
- server_name *.<%= domain %> <%= domain %>;
-
- # Don't log anything
- access_log /dev/null;
- error_log /dev/null;
-
- ssl on;
- ssl_certificate /etc/ssl/certs/cert.crt;
- ssl_certificate_key /etc/ssl/private/cert.pem;
-
- ssl_session_timeout 5m;
-
- ssl_protocols SSLv3 TLSv1;
- ssl_ciphers HIGH:MEDIUM:!aNULL:!SSLv2:!MD5:@STRENGTH;
- ssl_prefer_server_ciphers on;
- ssl_dhparam /etc/ssl/dhparams/dhparams_2048.pem;
-
- # Set the max size for file uploads
- client_max_body_size 100M;
-
- location / {
- # preserve http header and set forwarded proto
- proxy_set_header Host $http_host;
- proxy_set_header X-Forwarded-Proto https;
-
- proxy_read_timeout 120;
- proxy_connect_timeout 120;
-
- # rewrite rules for admin.<%= domain %>
- if ($host ~* ^admin\.<%= domain %>$) {
- proxy_pass http://admin:80;
- break;
- }
-
- # rewrite rules for munin.<%= domain %>
- if ($host ~* ^munin\.<%= domain %>$) {
- proxy_pass http://admin:80;
- break;
- }
-
- # rewrite rules for trac.<%= domain %>
- if ($host ~* ^trac\.<%= domain %>$) {
- proxy_pass http://admin:80;
- break;
- }
-
- # rewrite rules for nagios.<%= domain %>
- if ($host ~* ^nagios\.<%= domain %>$) {
- proxy_pass http://admin:80;
- break;
- }
-
- # rewrite rules for postfixadmin.<%= domain %>
- if ($host ~* ^postfixadmin\.<%= domain %>$) {
- proxy_pass http://mail:80;
- break;
- }
-
- # rewrite rules for mail.<%= domain %>
- if ($host ~* ^mail\.<%= domain %>$) {
- proxy_pass http://mail:80;
- break;
- }
-
- # rewrite rules for lists.<%= domain %>
- if ($host ~* ^lists\.<%= domain %>$) {
- proxy_pass http://mail:80;
- break;
- }
-
- # default proxy pass
- proxy_pass http://weblocal:80;
- }
-
-}
diff --git a/puppet/templates/postfix/tls_policy.erb b/puppet/templates/postfix/tls_policy.erb
deleted file mode 100644
index e69de29..0000000
--- a/puppet/templates/postfix/tls_policy.erb
+++ /dev/null
diff --git a/puppet/templates/puppet/auth.conf.erb b/puppet/templates/puppet/auth.conf.erb
deleted file mode 100644
index 96f078c..0000000
--- a/puppet/templates/puppet/auth.conf.erb
+++ /dev/null
@@ -1,120 +0,0 @@
-# This is the default auth.conf file, which implements the default rules
-# used by the puppet master. (That is, the rules below will still apply
-# even if this file is deleted.)
-#
-# The ACLs are evaluated in top-down order. More specific stanzas should
-# be towards the top of the file and more general ones at the bottom;
-# otherwise, the general rules may "steal" requests that should be
-# governed by the specific rules.
-#
-# See http://docs.puppetlabs.com/guides/rest_auth_conf.html for a more complete
-# description of auth.conf's behavior.
-#
-# Supported syntax:
-# Each stanza in auth.conf starts with a path to match, followed
-# by optional modifiers, and finally, a series of allow or deny
-# directives.
-#
-# Example Stanza
-# ---------------------------------
-# path /path/to/resource # simple prefix match
-# # path ~ regex # alternately, regex match
-# [environment envlist]
-# [method methodlist]
-# [auth[enthicated] {yes|no|on|off|any}]
-# allow [host|backreference|*|regex]
-# deny [host|backreference|*|regex]
-# allow_ip [ip|cidr|ip_wildcard|*]
-# deny_ip [ip|cidr|ip_wildcard|*]
-#
-# The path match can either be a simple prefix match or a regular
-# expression. `path /file` would match both `/file_metadata` and
-# `/file_content`. Regex matches allow the use of backreferences
-# in the allow/deny directives.
-#
-# The regex syntax is the same as for Ruby regex, and captures backreferences
-# for use in the `allow` and `deny` lines of that stanza
-#
-# Examples:
-#
-# path ~ ^/path/to/resource # Equivalent to `path /path/to/resource`.
-# allow * # Allow all authenticated nodes (since auth
-# # defaults to `yes`).
-#
-# path ~ ^/catalog/([^/]+)$ # Permit nodes to access their own catalog (by
-# allow $1 # certname), but not any other node's catalog.
-#
-# path ~ ^/file_(metadata|content)/extra_files/ # Only allow certain nodes to
-# auth yes # access the "extra_files"
-# allow /^(.+)\.example\.com$/ # mount point; note this must
-# allow_ip 192.168.100.0/24 # go ABOVE the "/file" rule,
-# # since it is more specific.
-#
-# environment:: restrict an ACL to a comma-separated list of environments
-# method:: restrict an ACL to a comma-separated list of HTTP methods
-# auth:: restrict an ACL to an authenticated or unauthenticated request
-# the default when unspecified is to restrict the ACL to authenticated requests
-# (ie exactly as if auth yes was present).
-#
-
-### Authenticated ACLs - these rules apply only when the client
-### has a valid certificate and is thus authenticated
-
-# allow nodes to retrieve their own catalog
-path ~ ^/catalog/([^/]+)$
-method find
-allow $1
-
-# allow nodes to retrieve their own node definition
-path ~ ^/node/([^/]+)$
-method find
-allow $1
-
-# allow all nodes to access the certificates services
-path /certificate_revocation_list/ca
-method find
-allow *
-
-# allow all nodes to store their own reports
-path ~ ^/report/([^/]+)$
-method save
-allow $1
-
-# Allow all nodes to access all file services; this is necessary for
-# pluginsync, file serving from modules, and file serving from custom
-# mount points (see fileserver.conf). Note that the `/file` prefix matches
-# requests to both the file_metadata and file_content paths. See "Examples"
-# above if you need more granular access control for custom mount points.
-path /file
-allow *
-
-### Unauthenticated ACLs, for clients without valid certificates; authenticated
-### clients can also access these paths, though they rarely need to.
-
-# allow access to the CA certificate; unauthenticated nodes need this
-# in order to validate the puppet master's certificate
-path /certificate/ca
-auth any
-method find
-allow *
-
-# allow nodes to retrieve the certificate they requested earlier
-path /certificate/
-auth any
-method find
-allow *
-
-# allow nodes to request a new certificate
-path /certificate_request
-auth any
-method find, save
-allow *
-
-path /v2.0/environments
-method find
-allow *
-
-# deny everything else; this ACL is not strictly necessary, but
-# illustrates the default policy.
-path /
-auth any
diff --git a/puppet/templates/puppet/fileserver.conf.erb b/puppet/templates/puppet/fileserver.conf.erb
deleted file mode 100644
index e4d6e0a..0000000
--- a/puppet/templates/puppet/fileserver.conf.erb
+++ /dev/null
@@ -1,21 +0,0 @@
-# See http://docs.puppetlabs.com/guides/file_serving.html
-
-# Files
-[files]
- path /etc/puppet/files
- allow *.<%= base_domain %>
-
-# SSL keys
-[ssl]
- path /etc/puppet/keys/ssl
- deny *
-
-# SSH keys
-[ssh]
- path /etc/puppet/keys/ssh/%h
- allow *
-
-# Public keys
-[pubkeys]
- path /etc/puppet/keys/public
- allow *
diff --git a/puppet/templates/puppet/master.pp.erb b/puppet/templates/puppet/master.pp.erb
deleted file mode 100644
index 5865723..0000000
--- a/puppet/templates/puppet/master.pp.erb
+++ /dev/null
@@ -1,10 +0,0 @@
-node '<%= hostname %>-master.<%= domain %>' {
- $main_master = true
- include nodo::master
-
- # encrypted data remote backup
- #backup::rdiff { "other-host":
- # port => "10102",
- #}
-
-}
diff --git a/puppet/templates/puppet/nodes.pp.erb b/puppet/templates/puppet/nodes.pp.erb
deleted file mode 100644
index 4acddc6..0000000
--- a/puppet/templates/puppet/nodes.pp.erb
+++ /dev/null
@@ -1,14 +0,0 @@
-#
-# Node definitions.
-#
-
-<%- if first_nodes == 'present' then -%>
-import "nodes/<%= first_hostname %>.pp"
-import "nodes/<%= first_hostname %>-master.pp"
-import "nodes/<%= first_hostname %>-proxy.pp"
-import "nodes/<%= first_hostname %>-web.pp"
-import "nodes/<%= first_hostname %>-storage.pp"
-import "nodes/<%= first_hostname %>-test.pp"
-<%- else -%>
-#import "nodes/example.pp"
-<%- end -%>
diff --git a/puppet/templates/puppet/proxy.pp.erb b/puppet/templates/puppet/proxy.pp.erb
deleted file mode 100644
index 908c2ec..0000000
--- a/puppet/templates/puppet/proxy.pp.erb
+++ /dev/null
@@ -1,53 +0,0 @@
-node '<%= hostname %>-proxy.<%= domain %>' {
- #$mail_delivery = 'tunnel'
- #$mail_hostname = 'mail'
- #$mail_ssh_port = '2202'
-
- include nodo::proxy
-
- # encrypted data remote backup
- #backup::rdiff { "other-host":
- # port => "10102",
- #}
-
- # reference to admin vserver
- host { "<%= hostname %>-master":
- ensure => present,
- ip => "192.168.0.2",
- host_aliases => [ "<%= hostname %>-master.<%= domain %>", "puppet", "admin" ],
- notify => Service["nginx"],
- }
-
- # reference to proxy vserver
- #host { "<%= hostname %>-proxy":
- # ensure => present,
- # ip => "192.168.0.3",
- # host_aliases => [ "<%= hostname %>-proxy.<%= domain %>", "<%= hostname %>-proxy" ],
- # notify => Service["nginx"],
- #}
-
- # reference to web vserver
- host { "<%= hostname %>-web":
- ensure => present,
- ip => "192.168.0.4",
- host_aliases => [ "<%= hostname %>-web.<%= domain %>", "<%= hostname %>-web", "weblocal" ],
- notify => Service["nginx"],
- }
-
- # reference to storage vserver
- host { "<%= hostname %>-storage":
- ensure => present,
- ip => "192.168.0.5",
- host_aliases => [ "<%= hostname %>-storage.<%= domain %>", "<%= hostname %>-storage" ],
- notify => Service["nginx"],
- }
-
- # reference to test vserver
- host { "<%= hostname %>-test":
- ensure => present,
- ip => "192.168.0.6",
- host_aliases => [ "<%= hostname %>-test.<%= domain %>", "<%= hostname %>-test" ],
- notify => Service["nginx"],
- }
-
-}
diff --git a/puppet/templates/puppet/puppet.conf.erb b/puppet/templates/puppet/puppet.conf.erb
deleted file mode 100644
index e2751ca..0000000
--- a/puppet/templates/puppet/puppet.conf.erb
+++ /dev/null
@@ -1,30 +0,0 @@
-[main]
-logdir = /var/log/puppet
-vardir = /var/lib/puppetmaster
-ssldir = $vardir/ssl
-rundir = /var/run/puppet
-factpath = $vardir/lib/facter
-pluginsync = true
-
-[master]
-templatedir = $vardir/templates
-masterport = 8140
-autosign = false
-storeconfigs = true
-dbadapter = sqlite3
-#dbadapter = mysql
-#dbserver = localhost
-#dbuser = puppet
-#dbpassword = <%= db_password %>
-dbconnections = 15
-certname = puppet.<%= base_domain %>
-ssl_client_header = SSL_CLIENT_S_DN
-ssl_client_verify_header = SSL_CLIENT_VERIFY
-
-[agent]
-server = puppet.<%= base_domain %>
-vardir = /var/lib/puppet
-ssldir = $vardir/ssl
-runinterval = 7200
-puppetport = 8139
-configtimeout = 300
diff --git a/puppet/templates/puppet/server.pp.erb b/puppet/templates/puppet/server.pp.erb
deleted file mode 100644
index fcd21e0..0000000
--- a/puppet/templates/puppet/server.pp.erb
+++ /dev/null
@@ -1,41 +0,0 @@
-node '<%= hostname %>.<%= domain %>' {
- #$mail_delivery = 'tunnel'
- #$mail_hostname = 'mail'
- #$mail_ssh_port = '2202'
- $shorewall_dmz = true
- $resolvconf_nameservers = $opendns_nameservers
- $has_ups = false
- include nodo::server
-
- #
- # Linux-VServers
- #
- #nodo::vserver::instance { "<%= hostname %>-master":
- # context => '2',
- # puppetmaster => true,
- #}
-
- #nodo::vserver::instance { "<%= hostname %>-proxy":
- # context => '3',
- # proxy => true,
- #}
-
- #nodo::vserver::instance { "<%= hostname %>-web":
- # context => '4',
- # gitd => true,
- #}
-
- #nodo::vserver::instance { "<%= hostname %>-storage":
- # context => '5',
- #}
-
- #nodo::vserver::instance { "<%= hostname %>-test":
- # context => '6',
- # memory_limit => 500,
- #}
-
- # encrypted data remote backup
- #backup::rdiff { "other-host":
- # port => "10105",
- #}
-}
diff --git a/puppet/templates/puppet/storage.pp.erb b/puppet/templates/puppet/storage.pp.erb
deleted file mode 100644
index be93335..0000000
--- a/puppet/templates/puppet/storage.pp.erb
+++ /dev/null
@@ -1,13 +0,0 @@
-node '<%= hostname %>-storage.<%= domain %>' {
- #$mail_delivery = 'tunnel'
- #$mail_hostname = 'mail'
- #$mail_ssh_port = '2202'
-
- include nodo::storage
-
- # encrypted data remote backup
- #backup::rdiff { "other-host":
- # port => "10102",
- #}
-
-}
diff --git a/puppet/templates/puppet/test.pp.erb b/puppet/templates/puppet/test.pp.erb
deleted file mode 100644
index 816eca9..0000000
--- a/puppet/templates/puppet/test.pp.erb
+++ /dev/null
@@ -1,13 +0,0 @@
-node '<%= hostname %>-test.<%= domain %>' {
- #$mail_delivery = 'tunnel'
- #$mail_hostname = 'mail'
- #$mail_ssh_port = '2202'
-
- include nodo::test
-
- # encrypted data remote backup
- #backup::rdiff { "other-host":
- # port => "10102",
- #}
-
-}
diff --git a/puppet/templates/puppet/users.pp.erb b/puppet/templates/puppet/users.pp.erb
deleted file mode 100644
index 3b7c857..0000000
--- a/puppet/templates/puppet/users.pp.erb
+++ /dev/null
@@ -1,25 +0,0 @@
-class users::virtual inherits user {
- # define custom users here
-}
-
-class users::backup inherits user {
- # define third-party hosted backup users here
-}
-
-class users::admin inherits user {
- # root user and password
- user::manage { "root":
- tag => "admin",
- homedir => '/root',
- password => '<%= root_password %>',
- }
-
- # first user config
- user::manage { "<%= first_user %>":
- tag => "admin",
- groups => [ "sudo", ],
- password => '<%= first_user_password %>',
- sshkey => [ "<%= first_user_sshkey %>" ],
- }
-
-}
diff --git a/puppet/templates/puppet/web.pp.erb b/puppet/templates/puppet/web.pp.erb
deleted file mode 100644
index afc328b..0000000
--- a/puppet/templates/puppet/web.pp.erb
+++ /dev/null
@@ -1,13 +0,0 @@
-node '<%= hostname %>-web.<%= domain %>' {
- #$mail_delivery = 'tunnel'
- #$mail_hostname = 'mail'
- #$mail_ssh_port = '2202'
-
- include nodo::web
-
- # encrypted data remote backup
- #backup::rdiff { "other-host":
- # port => "10102",
- #}
-
-}