diff --git a/.gitattributes b/.gitattributes
index 6ae8ee7af..716db8102 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -1,11 +1,5 @@
# Exclude files related to git when generating an archive
.git* export-ignore
-# Exclude Vagrant and Puppet related files when generating an archive
-.puppet* export-ignore
-Vagrantfile export-ignore
-
-# Normalize puppet manifests' line endings to LF on checkin and prevent conversion to CRLF when the files are checked out
-.puppet* eol=lf
# Include version information on `git archive'
/application/VERSION export-subst
diff --git a/.gitignore b/.gitignore
index affd22ffb..ff5bb165e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,9 +1,8 @@
# Exclude all hidden files
.*
-# Except those related to git and vagrant
+# Except those related to git
!.git*
-!.puppet*
!.travis.yml
!.mailmap
diff --git a/.puppet/TODO.md b/.puppet/TODO.md
deleted file mode 100644
index 04af9a108..000000000
--- a/.puppet/TODO.md
+++ /dev/null
@@ -1,22 +0,0 @@
-Fix steps that are always provisioned:
-
-==> default: Notice: /Stage[main]/Icinga2/Icinga2::Feature[statusdata]/Parent_dirs[/etc/icinga2/features-enabled/statusdata.conf]/Exec[parent_dirs-/etc/icinga2/features-enabled/statusdata.conf]/returns: executed successfully
-==> default: Notice: /Stage[main]/Icinga2_dev/Icinga2::Config[constants]/Parent_dirs[/etc/icinga2/constants.conf]/Exec[parent_dirs-/etc/icinga2/constants.conf]/returns: executed successfully
-==> default: Notice: /Stage[main]/Icinga2_dev/Icinga2::Config[conf.d/commands]/Parent_dirs[/etc/icinga2/conf.d/commands.conf]/Exec[parent_dirs-/etc/icinga2/conf.d/commands.conf]/returns: executed successfully
-==> default: Notice: /Stage[main]/Icinga2/Icinga2::Feature[command]/Parent_dirs[/etc/icinga2/features-enabled/command.conf]/Exec[parent_dirs-/etc/icinga2/features-enabled/command.conf]/returns: executed successfully
-==> default: Notice: /Stage[main]/Icingaweb2_dev/Pgsql::Database::Populate[icingaweb]/Exec[populate-icingaweb-pgsql-db]/returns: executed successfully
-==> default: Notice: /Stage[main]/Php/Exec[php-timezone]/returns: executed successfully
-==> default: Notice: /Stage[main]/Icinga2_dev/Icinga2::Config[conf.d/test-config]/Parent_dirs[/etc/icinga2/conf.d/test-config.conf]/Exec[parent_dirs-/etc/icinga2/conf.d/test-config.conf]/returns: executed successfully
-==> default: Notice: /Stage[main]/Icingaweb2_dev/Exec[populate-openldap]/returns: executed successfully
-==> default: Notice: /Stage[main]/Monitoring_test_config/Git_cmmi[Monitoring-Generator-TestConfig]/Cmmi_dir[Monitoring-Generator-TestConfig]/Exec[configure-Monitoring-Generator-TestConfig]/returns: executed successfully
-==> default: Notice: /Stage[main]/Monitoring_test_config/Git_cmmi[Monitoring-Generator-TestConfig]/Cmmi_dir[Monitoring-Generator-TestConfig]/Exec[make-Monitoring-Generator-TestConfig]/returns: executed successfully
-==> default: Notice: /Stage[main]/Icinga2/Icinga2::Feature[compatlog]/Parent_dirs[/etc/icinga2/features-enabled/compatlog.conf]/Exec[parent_dirs-/etc/icinga2/features-enabled/compatlog.conf]/returns: executed successfully
-==> default: Notice: /Stage[main]/Icinga2_mysql/Icinga2::Feature[ido-mysql]/Parent_dirs[/etc/icinga2/features-enabled/ido-mysql.conf]/Exec[parent_dirs-/etc/icinga2/features-enabled/ido-mysql.conf]/returns: executed successfully
-==> default: Notice: /Stage[main]/Apache/Service[httpd]: Triggered 'refresh' from 1 events
-==> default: Notice: /Stage[main]/Icingaweb2_dev/Exec[enable-monitoring-module]/returns: executed successfully
-==> default: Notice: /Stage[main]/Icingaweb2_dev/Exec[enable-test-module]/returns: executed successfully
-==> default: Notice: /Stage[main]/Icinga2_mysql/Icinga2::Feature[ido-mysql]/Icinga2::Config[features-available/ido-mysql]/Parent_dirs[/etc/icinga2/features-available/ido-mysql.conf]/Exec[parent_dirs-/etc/icinga2/features-available/ido-mysql.conf]/returns: executed successfully
-==> default: Notice: /Stage[main]/Icinga2_pgsql/Icinga2::Feature[ido-pgsql]/Icinga2::Config[features-available/ido-pgsql]/Parent_dirs[/etc/icinga2/features-available/ido-pgsql.conf]/Exec[parent_dirs-/etc/icinga2/features-available/ido-pgsql.conf]/returns: executed successfully
-==> default: Notice: /Stage[main]/Icinga2_pgsql/Icinga2::Feature[ido-pgsql]/Parent_dirs[/etc/icinga2/features-enabled/ido-pgsql.conf]/Exec[parent_dirs-/etc/icinga2/features-enabled/ido-pgsql.conf]/returns: executed successfully
-
-Fix provisioning for CentOS 7
diff --git a/.puppet/files/etc/profile.d/env.sh b/.puppet/files/etc/profile.d/env.sh
deleted file mode 100644
index eb436db1c..000000000
--- a/.puppet/files/etc/profile.d/env.sh
+++ /dev/null
@@ -1,2 +0,0 @@
-export PATH="/opt/rh/rh-php73/root/bin:$PATH"
-export PATH="$PATH:/usr/local/bin"
diff --git a/.puppet/hiera/common.yaml b/.puppet/hiera/common.yaml
deleted file mode 100644
index d7802181f..000000000
--- a/.puppet/hiera/common.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
----
-icingaweb2::config: /etc/icingaweb2
-icingaweb2::log: /var/log/icingaweb2/icingaweb2.log
-icingaweb2::web_path: icingaweb2
-icingaweb2::db_user: icingaweb2
-icingaweb2::db_pass: icingaweb2
-icingaweb2::db_name: icingaweb2
-icingaweb2::group: icingaweb2
diff --git a/.puppet/hiera/hiera.yaml b/.puppet/hiera/hiera.yaml
deleted file mode 100644
index 22012bbd7..000000000
--- a/.puppet/hiera/hiera.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
----
-:backends:
- - yaml
-
-:hierarchy:
- - common
-
-:yaml:
- :datadir: /vagrant/.puppet/hiera
diff --git a/.puppet/manifests/puppet.sh b/.puppet/manifests/puppet.sh
deleted file mode 100644
index 7afe4db36..000000000
--- a/.puppet/manifests/puppet.sh
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/bin/bash
-
-set -e
-
-if which puppet >/dev/null 2>&1; then
- exit 0
-fi
-
-RELEASEVER=$(rpm -q --qf "%{VERSION}" $(rpm -q --whatprovides redhat-release))
-
-case $RELEASEVER in
- 6|7)
- PUPPET="https://yum.puppetlabs.com/puppetlabs-release-el-${RELEASEVER}.noarch.rpm"
- ;;
- *)
- echo "Unknown release version: $RELEASEVER" >&2
- exit 1
- ;;
-esac
-
-echo "Adding puppet repository.."
-rpm --import "https://yum.puppetlabs.com/RPM-GPG-KEY-puppetlabs"
-rpm -Uvh $PUPPET >/dev/null
-
-echo "Installing puppet.."
-yum install -y puppet >/dev/null
diff --git a/.puppet/manifests/site.pp b/.puppet/manifests/site.pp
deleted file mode 100644
index 2515066fe..000000000
--- a/.puppet/manifests/site.pp
+++ /dev/null
@@ -1,18 +0,0 @@
-stage { 'repositories':
- before => Stage['main'],
-}
-
-node default {
- class { 'epel':
- stage => repositories,
- }
- include base
- include icinga2_dev
- include icingaweb2_dev
- include motd
- file { '/etc/profile.d/env.sh':
- source => 'puppet:////vagrant/.puppet/files/etc/profile.d/env.sh'
- }
- @user { vagrant: ensure => present }
- User <| title == vagrant |> { groups +> hiera('icingaweb2::group') }
-}
diff --git a/.puppet/modules/apache/manifests/init.pp b/.puppet/modules/apache/manifests/init.pp
deleted file mode 100644
index 3eaba1ed7..000000000
--- a/.puppet/modules/apache/manifests/init.pp
+++ /dev/null
@@ -1,48 +0,0 @@
-# Class: apache
-#
-# This class installs the apache server.
-#
-# Parameters:
-#
-# Actions:
-#
-# Requires:
-#
-# Sample Usage:
-#
-# include apache
-#
-class apache {
- $apache = $::operatingsystem ? {
- /(Debian|Ubuntu)/ => 'apache2',
- /(RedHat|CentOS|Fedora)/ => 'httpd'
- }
-
- $user = $::operatingsystem ? {
- /(Debian|Ubuntu)/ => 'www-data',
- /(RedHat|CentOS|Fedora)/ => 'apache'
- }
-
- package { $apache:
- ensure => latest,
- alias => 'apache',
- }
-
- service { $apache:
- ensure => running,
- enable => true,
- alias => 'apache',
- require => Package['apache'],
- }
-
- package { 'mod_ssl':
- ensure => latest,
- notify => Service[$apache],
- }
-
- @user { $user:
- alias => 'apache',
- }
-
- User <| alias == apache |>
-}
diff --git a/.puppet/modules/cmmi_dir/manifests/init.pp b/.puppet/modules/cmmi_dir/manifests/init.pp
deleted file mode 100644
index 33d2f7eec..000000000
--- a/.puppet/modules/cmmi_dir/manifests/init.pp
+++ /dev/null
@@ -1,15 +0,0 @@
-define cmmi_dir (
- $configure='./configure',
- $make='make && make install'
-) {
- Exec {
- path => '/usr/bin:/bin',
- cwd => "/usr/local/src/${name}",
- }
-
- exec { "configure-${name}":
- command => $configure,
- } -> exec { "make-${name}":
- command => $make,
- }
-}
diff --git a/.puppet/modules/epel/manifests/init.pp b/.puppet/modules/epel/manifests/init.pp
deleted file mode 100644
index 71fb8972f..000000000
--- a/.puppet/modules/epel/manifests/init.pp
+++ /dev/null
@@ -1,24 +0,0 @@
-# Class: epel
-#
-# Configure EPEL repository.
-#
-# Parameters:
-#
-# Actions:
-#
-# Requires:
-#
-# Sample Usage:
-#
-# include epel
-#
-class epel {
- exec { 'rpm --import RPM-GPG-KEY-EPEL':
- command => '/bin/rpm --import https://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7',
- }
- -> exec { 'yum install epel-release-latest':
- command => '/bin/yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm',
- creates => '/etc/yum.repos.d/epel.repo',
- }
-}
-
diff --git a/.puppet/modules/git/manifests/init.pp b/.puppet/modules/git/manifests/init.pp
deleted file mode 100644
index 9143e9f69..000000000
--- a/.puppet/modules/git/manifests/init.pp
+++ /dev/null
@@ -1,13 +0,0 @@
-# Class: git
-#
-# This class installs git.
-#
-# Sample Usage:
-#
-# include git
-#
-class git {
- package { 'git':
- ensure => latest,
- }
-}
diff --git a/.puppet/modules/git_cmmi/manifests/init.pp b/.puppet/modules/git_cmmi/manifests/init.pp
deleted file mode 100644
index 2c5302486..000000000
--- a/.puppet/modules/git_cmmi/manifests/init.pp
+++ /dev/null
@@ -1,20 +0,0 @@
-define git_cmmi (
- $url,
- $configure='./configure',
- $make='make && make install'
-) {
- include git
-
- $srcDir = '/usr/local/src'
-
- exec { "git-clone-${name}":
- cwd => $srcDir,
- path => '/usr/bin:/bin',
- unless => "test -d '${srcDir}/${name}/.git'",
- command => "git clone '${url}' '${name}'",
- require => Class['git'],
- } -> cmmi_dir { $name:
- configure => $configure,
- make => $make,
- }
-}
diff --git a/.puppet/modules/icinga/templates/ido2db-mysql.cfg.erb b/.puppet/modules/icinga/templates/ido2db-mysql.cfg.erb
deleted file mode 100644
index bd1b808b8..000000000
--- a/.puppet/modules/icinga/templates/ido2db-mysql.cfg.erb
+++ /dev/null
@@ -1,353 +0,0 @@
-#####################################################################
-# IDO2DB DAEMON CONFIG FILE
-#####################################################################
-
-
-
-# LOCK FILE
-# This is the lockfile that IDO2DB will use to store its PID number
-# in when it is running in daemon mode.
-
-lock_file=/usr/local/icinga-mysql/var/ido2db.lock
-
-
-
-# USER/GROUP PRIVILIGES
-# These options determine the user/group that the daemon should run as.
-# You can specify a number (uid/gid) or a name for either option.
-
-ido2db_user=icinga
-ido2db_group=icinga
-
-
-
-# SOCKET TYPE
-# This option determines what type of socket the daemon will create
-# an accept connections from.
-# Value:
-# unix = Unix domain socket (default)
-# tcp = TCP socket
-
-socket_type=unix
-#socket_type=tcp
-
-
-
-# SOCKET NAME
-# This option determines the name and path of the UNIX domain
-# socket that the daemon will create and accept connections from.
-# This option is only valid if the socket type specified above
-# is "unix".
-
-socket_name=/usr/local/icinga-mysql/var/ido.sock
-
-
-
-# SOCKET PERMISSIONS
-# This option determines the permissions of the Unix domain
-# socket. This option is only valid if the socket type specified
-# above is "unix". Default permissions are set to 0755.
-
-socket_perm=0755
-
-
-
-
-# TCP PORT
-# This option determines what port the daemon will listen for
-# connections on. This option is only vlaid if the socket type
-# specified above is "tcp".
-
-tcp_port=5668
-
-
-
-# ENCRYPTION
-# This option determines if the ido2db daemon will accept SSL to encrypt the
-# network traffic between module and ido2db daemon.
-# Both sides have to enable this feature which depends on SSL Libraries
-# like openssl or kerberos
-# This option is only valid if the output type
-# option specified above is "tcpsocket".
-#
-# A value of '1' will enable this feature
-
-use_ssl=0
-
-
-
-# LIBDBI DRIVER DIRECTORY !!!EXPERIMENTAL!!!
-# This option is only valid when using libdbi as database abstraction layer
-# (so not oracle) on compile time. By default, libdbi will figure out the
-# correct path itsself. If you want to change it, enable and change the value.
-#
-# Default: not in use, enable and change to e.g. /usr/local/lib/dbd
-
-#libdbi_driver_dir=/usr/local/lib/dbd
-
-
-
-# DATABASE SERVER TYPE
-# This option determines what type of DB server the daemon should
-# connect to.
-# Values:
-# mysql = MySQL
-# pgsql = PostgreSQL
-# db2 = DB2
-# firebird = Firebird
-# freetds = FreeTDS
-# ingres = Ingres
-# msql = MSSQL
-# oracle = Oracle
-# sqlite = SQLite
-# sqlite3 = SQLite3
-# Currently supported:
-# libdbi: mysql, pgsql
-# ocilib: oracle
-
-
-db_servertype=mysql
-
-
-
-# DATABASE HOST
-# This option specifies what host the DB server is running on.
-# Note: Oracle will ignore this setting
-
-db_host=localhost
-
-
-
-# DATABASE PORT
-# This option specifies the port that the DB server is running on.
-# Values:
-# 3306 = Default MySQL port
-# 5432 = Default PostgreSQL port
-# 1521 = Default Oracle port
-#
-# Note: ocilib will ignore this, you have to modify your tnsnames.ora
-
-db_port=3306
-
-
-# DATABASE SOCKET
-# Optional db_socket allows to specify a different socket location.
-# This will be passed to libdbi MySQL as mysql_unix_socket, while
-# PostgeSQL overrides the port, ocilib Oracle ignores this setting.
-#
-# Note: This setting overrules db_port, making it useless!
-
-#db_socket=/var/lib/mysql/mysql.sock
-
-
-
-# DATABASE NAME
-# This option specifies the name of the database that should be used.
-#
-# Note: Oracle with ocilib requires tnsnames.ora filled with host, port
-# and database information. you can use the SID then with ocilib and
-# one of the following:
-# //DBSERVER/SID
-# SID
-
-db_name=icinga
-
-
-
-# DATABASE TABLE PREFIX
-# Determines the prefix (if any) that should be prepended to table names.
-# If you modify the table prefix, you'll need to modify the SQL script for
-# creating the database!
-#
-# Note: Oracle will ignore this prefix since the tablename length will exceed
-# 30 characters.
-
-db_prefix=icinga_
-
-
-
-# DATABASE USERNAME/PASSWORD
-# This is the username/password that will be used to authenticate to the DB.
-# The user needs at least SELECT, INSERT, UPDATE, and DELETE privileges on
-# the database.
-
-db_user=icinga
-db_pass=icinga
-
-
-
-## TABLE TRIMMING OPTIONS
-# Several database tables containing Icinga event data can become quite large
-# over time. Most admins will want to trim these tables and keep only a
-# certain amount of data in them. The options below are used to specify the
-# age (in MINUTES) that data should be allowd to remain in various tables
-# before it is deleted. Using a value of zero (0) for any value means that
-# that particular table should NOT be automatically trimmed.
-#
-# Remember: There are no optimized settings, it depends on your rdbm install,
-# number/checkinterval of host/service-checks and your desired time of data
-# savings - historical vs live-data. Please keep in mind that low delete
-# intervals may interfere with insert/update data from Icinga.
-
-# ***DEFAULT***
-
-# Keep timed events for 1 hour
-max_timedevents_age=60
-
-# Keep system commands for 1 day
-max_systemcommands_age=1440
-
-# Keep service checks for 1 day
-max_servicechecks_age=1440
-
-# Keep host checks for 1 day
-max_hostchecks_age=1440
-
-# Keep event handlers for 1 week
-max_eventhandlers_age=10080
-
-# Keep external commands for 1 week
-max_externalcommands_age=10080
-
-# Keep logentries for 31 days
-max_logentries_age=44640
-
-# Keep acknowledgements for 31 days
-max_acknowledgements_age=44640
-
-# Keep notifications for 31 days
-max_notifications_age=44640
-
-# Keep contactnotifications for 31 days
-max_contactnotifications_age=44640
-
-# Keep contactnotificationmethods for 31 days
-max_contactnotificationmethods_age=44640
-
-
-## CLEAN REALTIME TABLES AT CORE STARTUP !!!EXPERIMENTAL!!!
-# If you don't want to clean all those tables, set this option to 0.
-# This can be useful if the deletes slow down the normal data
-# processing.
-# Values: 0 - don't clean
-# 1 - clean (default)
-
-clean_realtime_tables_on_core_startup=1
-
-
-## CLEAN CONFIG TABLES AT CORE STARTUP !!!EXPERIMENTAL!!!
-# If you don't want to clean all those tables, set this option to 0.
-# This can be useful if the deletes slow down the normal data
-# processing.
-# Furthermore if you need to keep e.g. the state of customvariables
-# or any other tables not directly linked to the objects table.
-# Values: 0 - don't clean
-# 1 - clean (default)
-
-clean_config_tables_on_core_startup=1
-
-
-# ***EXPERIMENTAL*** DB TRIMMING INTERVAL
-# ido2db default db trimming interval is set to 3600 SECONDS.
-# Some environments will require higher or lower values. This setting is
-# highly experimental!!!
-# Modify at your own risk to set the interval DB trimming interval
-# to an appropriate value. If left blank, it defaults to 3600 seconds.
-
-trim_db_interval=3600
-
-
-# DB TRIMMING THREAD DELAY ON STARTUP
-# ido2db spawns a thread for parallel db trimming. This option can be
-# modified to extend/minimize the initial wait delay at startup.
-# Default is set to 300 seconds in order to allow startup routines.
-# 300 seconds is also the minimum value, lower ones will be overwritten.
-
-housekeeping_thread_startup_delay=300
-
-
-
-# DEBUG LEVEL
-# This option determines how much (if any) debugging information will
-# be written to the debug file. OR values together to log multiple
-# types of information.
-# Values: -1 = Everything
-# 0 = Nothing
-# 1 = Process info
-# 2 = SQL queries
-
-debug_level=0
-
-
-
-# DEBUG VERBOSITY
-# This option determines how verbose the debug log out will be.
-# Values: 0 = Brief output
-# 1 = More detailed
-# 2 = Very detailed
-
-debug_verbosity=2
-
-
-
-# DEBUG FILE
-# This option determines where the daemon should write debugging information.
-
-debug_file=/usr/local/icinga-mysql/var/ido2db.debug
-
-
-
-# MAX DEBUG FILE SIZE
-# This option determines the maximum size (in bytes) of the debug file. If
-# the file grows larger than this size, it will be renamed with a .old
-# extension. If a file already exists with a .old extension it will
-# automatically be deleted. This helps ensure your disk space usage doesn't
-# get out of control when debugging.
-
-# 100M
-max_debug_file_size=100000000
-
-
-
-# DEBUG READABLE TIMESTAMP
-# This option will allow you to set a readable timestamp instead of the
-# default unix timestamp.
-# Values: 0 = disabled, 1 = enabled
-
-debug_readable_timestamp=0
-
-
-
-# OCI ERRORS TO SYSLOG
-# ido2db registers an error handler in ocilib which spits all msg
-# into debug and syslog by default. Setting this option to 0,
-# syslog output will be disabled, only debug log will be used (if
-# appropriate debug_level is set).
-
-oci_errors_to_syslog=1
-
-
-
-# ORACLE TRACE LEVEL
-# This setting activates oracle session trace for each ido2db connection using trace event
-# Level value must be one of the currently supported values (1,4,8,12) or 0 for off
-# this requires explicit "alter session" privilege
-# select rights to v$session and v$process are recommanded
-# 0 - pseudo level TRACE OFF
-# 1 – standard SQL trace, no wait events, or bind variables.
-# 4 – Bind variables only
-# 8 – Wait events only
-# 12 – Bind Variables and Wait Events
-
-oracle_trace_level=0
-
-
-
-# ENABLE SLA - DEPRECATED!
-# This setting enables collection of SLA data in the slahistory table
-# Values: 0 = disabled, 1 = enabled
-#
-# WARNING: This setting will be deprecated in 1.9 and not developed
-# anymore, as it has never been used by any Icinga application.
-
-enable_sla=0
diff --git a/.puppet/modules/icinga/templates/ido2db-pgsql.cfg.erb b/.puppet/modules/icinga/templates/ido2db-pgsql.cfg.erb
deleted file mode 100644
index fcbc384d8..000000000
--- a/.puppet/modules/icinga/templates/ido2db-pgsql.cfg.erb
+++ /dev/null
@@ -1,353 +0,0 @@
-#####################################################################
-# IDO2DB DAEMON CONFIG FILE
-#####################################################################
-
-
-
-# LOCK FILE
-# This is the lockfile that IDO2DB will use to store its PID number
-# in when it is running in daemon mode.
-
-lock_file=/usr/local/icinga-pgsql/var/ido2db.lock
-
-
-
-# USER/GROUP PRIVILIGES
-# These options determine the user/group that the daemon should run as.
-# You can specify a number (uid/gid) or a name for either option.
-
-ido2db_user=icinga
-ido2db_group=icinga
-
-
-
-# SOCKET TYPE
-# This option determines what type of socket the daemon will create
-# an accept connections from.
-# Value:
-# unix = Unix domain socket (default)
-# tcp = TCP socket
-
-socket_type=unix
-#socket_type=tcp
-
-
-
-# SOCKET NAME
-# This option determines the name and path of the UNIX domain
-# socket that the daemon will create and accept connections from.
-# This option is only valid if the socket type specified above
-# is "unix".
-
-socket_name=/usr/local/icinga-pgsql/var/ido.sock
-
-
-
-# SOCKET PERMISSIONS
-# This option determines the permissions of the Unix domain
-# socket. This option is only valid if the socket type specified
-# above is "unix". Default permissions are set to 0755.
-
-socket_perm=0755
-
-
-
-
-# TCP PORT
-# This option determines what port the daemon will listen for
-# connections on. This option is only vlaid if the socket type
-# specified above is "tcp".
-
-tcp_port=5668
-
-
-
-# ENCRYPTION
-# This option determines if the ido2db daemon will accept SSL to encrypt the
-# network traffic between module and ido2db daemon.
-# Both sides have to enable this feature which depends on SSL Libraries
-# like openssl or kerberos
-# This option is only valid if the output type
-# option specified above is "tcpsocket".
-#
-# A value of '1' will enable this feature
-
-use_ssl=0
-
-
-
-# LIBDBI DRIVER DIRECTORY !!!EXPERIMENTAL!!!
-# This option is only valid when using libdbi as database abstraction layer
-# (so not oracle) on compile time. By default, libdbi will figure out the
-# correct path itsself. If you want to change it, enable and change the value.
-#
-# Default: not in use, enable and change to e.g. /usr/local/lib/dbd
-
-#libdbi_driver_dir=/usr/local/lib/dbd
-
-
-
-# DATABASE SERVER TYPE
-# This option determines what type of DB server the daemon should
-# connect to.
-# Values:
-# mysql = MySQL
-# pgsql = PostgreSQL
-# db2 = DB2
-# firebird = Firebird
-# freetds = FreeTDS
-# ingres = Ingres
-# msql = MSSQL
-# oracle = Oracle
-# sqlite = SQLite
-# sqlite3 = SQLite3
-# Currently supported:
-# libdbi: mysql, pgsql
-# ocilib: oracle
-
-
-db_servertype=pgsql
-
-
-
-# DATABASE HOST
-# This option specifies what host the DB server is running on.
-# Note: Oracle will ignore this setting
-
-db_host=127.0.0.1
-
-
-
-# DATABASE PORT
-# This option specifies the port that the DB server is running on.
-# Values:
-# 3306 = Default MySQL port
-# 5432 = Default PostgreSQL port
-# 1521 = Default Oracle port
-#
-# Note: ocilib will ignore this, you have to modify your tnsnames.ora
-
-db_port=5432
-
-
-# DATABASE SOCKET
-# Optional db_socket allows to specify a different socket location.
-# This will be passed to libdbi MySQL as mysql_unix_socket, while
-# PostgeSQL overrides the port, ocilib Oracle ignores this setting.
-#
-# Note: This setting overrules db_port, making it useless!
-
-#db_socket=/var/lib/mysql/mysql.sock
-
-
-
-# DATABASE NAME
-# This option specifies the name of the database that should be used.
-#
-# Note: Oracle with ocilib requires tnsnames.ora filled with host, port
-# and database information. you can use the SID then with ocilib and
-# one of the following:
-# //DBSERVER/SID
-# SID
-
-db_name=icinga
-
-
-
-# DATABASE TABLE PREFIX
-# Determines the prefix (if any) that should be prepended to table names.
-# If you modify the table prefix, you'll need to modify the SQL script for
-# creating the database!
-#
-# Note: Oracle will ignore this prefix since the tablename length will exceed
-# 30 characters.
-
-db_prefix=icinga_
-
-
-
-# DATABASE USERNAME/PASSWORD
-# This is the username/password that will be used to authenticate to the DB.
-# The user needs at least SELECT, INSERT, UPDATE, and DELETE privileges on
-# the database.
-
-db_user=icinga
-db_pass=icinga
-
-
-
-## TABLE TRIMMING OPTIONS
-# Several database tables containing Icinga event data can become quite large
-# over time. Most admins will want to trim these tables and keep only a
-# certain amount of data in them. The options below are used to specify the
-# age (in MINUTES) that data should be allowd to remain in various tables
-# before it is deleted. Using a value of zero (0) for any value means that
-# that particular table should NOT be automatically trimmed.
-#
-# Remember: There are no optimized settings, it depends on your rdbm install,
-# number/checkinterval of host/service-checks and your desired time of data
-# savings - historical vs live-data. Please keep in mind that low delete
-# intervals may interfere with insert/update data from Icinga.
-
-# ***DEFAULT***
-
-# Keep timed events for 1 hour
-max_timedevents_age=60
-
-# Keep system commands for 1 day
-max_systemcommands_age=1440
-
-# Keep service checks for 1 day
-max_servicechecks_age=1440
-
-# Keep host checks for 1 day
-max_hostchecks_age=1440
-
-# Keep event handlers for 1 week
-max_eventhandlers_age=10080
-
-# Keep external commands for 1 week
-max_externalcommands_age=10080
-
-# Keep logentries for 31 days
-max_logentries_age=44640
-
-# Keep acknowledgements for 31 days
-max_acknowledgements_age=44640
-
-# Keep notifications for 31 days
-max_notifications_age=44640
-
-# Keep contactnotifications for 31 days
-max_contactnotifications_age=44640
-
-# Keep contactnotificationmethods for 31 days
-max_contactnotificationmethods_age=44640
-
-
-## CLEAN REALTIME TABLES AT CORE STARTUP !!!EXPERIMENTAL!!!
-# If you don't want to clean all those tables, set this option to 0.
-# This can be useful if the deletes slow down the normal data
-# processing.
-# Values: 0 - don't clean
-# 1 - clean (default)
-
-clean_realtime_tables_on_core_startup=1
-
-
-## CLEAN CONFIG TABLES AT CORE STARTUP !!!EXPERIMENTAL!!!
-# If you don't want to clean all those tables, set this option to 0.
-# This can be useful if the deletes slow down the normal data
-# processing.
-# Furthermore if you need to keep e.g. the state of customvariables
-# or any other tables not directly linked to the objects table.
-# Values: 0 - don't clean
-# 1 - clean (default)
-
-clean_config_tables_on_core_startup=1
-
-
-# ***EXPERIMENTAL*** DB TRIMMING INTERVAL
-# ido2db default db trimming interval is set to 3600 SECONDS.
-# Some environments will require higher or lower values. This setting is
-# highly experimental!!!
-# Modify at your own risk to set the interval DB trimming interval
-# to an appropriate value. If left blank, it defaults to 3600 seconds.
-
-trim_db_interval=3600
-
-
-# DB TRIMMING THREAD DELAY ON STARTUP
-# ido2db spawns a thread for parallel db trimming. This option can be
-# modified to extend/minimize the initial wait delay at startup.
-# Default is set to 300 seconds in order to allow startup routines.
-# 300 seconds is also the minimum value, lower ones will be overwritten.
-
-housekeeping_thread_startup_delay=300
-
-
-
-# DEBUG LEVEL
-# This option determines how much (if any) debugging information will
-# be written to the debug file. OR values together to log multiple
-# types of information.
-# Values: -1 = Everything
-# 0 = Nothing
-# 1 = Process info
-# 2 = SQL queries
-
-debug_level=0
-
-
-
-# DEBUG VERBOSITY
-# This option determines how verbose the debug log out will be.
-# Values: 0 = Brief output
-# 1 = More detailed
-# 2 = Very detailed
-
-debug_verbosity=2
-
-
-
-# DEBUG FILE
-# This option determines where the daemon should write debugging information.
-
-debug_file=/usr/local/icinga-pgsql/var/ido2db.debug
-
-
-
-# MAX DEBUG FILE SIZE
-# This option determines the maximum size (in bytes) of the debug file. If
-# the file grows larger than this size, it will be renamed with a .old
-# extension. If a file already exists with a .old extension it will
-# automatically be deleted. This helps ensure your disk space usage doesn't
-# get out of control when debugging.
-
-# 100M
-max_debug_file_size=100000000
-
-
-
-# DEBUG READABLE TIMESTAMP
-# This option will allow you to set a readable timestamp instead of the
-# default unix timestamp.
-# Values: 0 = disabled, 1 = enabled
-
-debug_readable_timestamp=0
-
-
-
-# OCI ERRORS TO SYSLOG
-# ido2db registers an error handler in ocilib which spits all msg
-# into debug and syslog by default. Setting this option to 0,
-# syslog output will be disabled, only debug log will be used (if
-# appropriate debug_level is set).
-
-oci_errors_to_syslog=1
-
-
-
-# ORACLE TRACE LEVEL
-# This setting activates oracle session trace for each ido2db connection using trace event
-# Level value must be one of the currently supported values (1,4,8,12) or 0 for off
-# this requires explicit "alter session" privilege
-# select rights to v$session and v$process are recommanded
-# 0 - pseudo level TRACE OFF
-# 1 – standard SQL trace, no wait events, or bind variables.
-# 4 – Bind variables only
-# 8 – Wait events only
-# 12 – Bind Variables and Wait Events
-
-oracle_trace_level=0
-
-
-
-# ENABLE SLA - DEPRECATED!
-# This setting enables collection of SLA data in the slahistory table
-# Values: 0 = disabled, 1 = enabled
-#
-# WARNING: This setting will be deprecated in 1.9 and not developed
-# anymore, as it has never been used by any Icinga application.
-
-enable_sla=0
diff --git a/.puppet/modules/icinga2/manifests/config.pp b/.puppet/modules/icinga2/manifests/config.pp
deleted file mode 100644
index cbdba06c0..000000000
--- a/.puppet/modules/icinga2/manifests/config.pp
+++ /dev/null
@@ -1,42 +0,0 @@
-# Define: icinga2::config
-#
-# Provide Icinga 2 configuration file
-#
-# Parameters:
-#
-# [*source*] - where to take the file from
-#
-# Requires:
-#
-# icinga2
-#
-# Sample Usage:
-#
-# icinga2::config { 'constants';
-# source => 'puppet:///modules/icinga2_dev',
-# }
-#
-# Provide configuration file '/etc/icinga2/constants.conf'
-# from 'puppet:///modules/icinga2_dev/constants.conf'
-# ('/path/to/puppet/modules/icinga2_dev/files/constants.conf')
-#
-define icinga2::config ($source) {
- include icinga2
-
- $path = "/etc/icinga2/${name}.conf"
-
- parent_dirs { $path:
- user => 'icinga',
- require => [
- User['icinga'],
- File['icinga2cfgDir']
- ],
- }
- -> file { $path:
- source => "${source}/${name}.conf",
- owner => 'icinga',
- group => 'icinga',
- notify => Service['icinga2'],
- require => User['icinga'],
- }
-}
diff --git a/.puppet/modules/icinga2/manifests/feature.pp b/.puppet/modules/icinga2/manifests/feature.pp
deleted file mode 100644
index 12c2e6d98..000000000
--- a/.puppet/modules/icinga2/manifests/feature.pp
+++ /dev/null
@@ -1,31 +0,0 @@
-# Define: icinga2::feature
-#
-# Enable Icinga 2 feature
-#
-# Requires:
-#
-# icinga2
-#
-# Sample Usage:
-#
-# icinga2::feature { 'example-feature'; }
-#
-define icinga2::feature ($ensure = 'present') {
- include icinga2
-
- $action = $ensure ? {
- /(present)/ => 'enable',
- /(absent)/ => 'disable',
- }
- $test = $ensure ? {
- /(present)/ => '-e',
- /(absent)/ => '! -e',
- }
-
- exec { "icinga2-feature-${action}-${name}":
- unless => "/usr/bin/test ${test} /etc/icinga2/features-enabled/${name}.conf",
- command => "/usr/sbin/icinga2 feature ${action} ${name}",
- require => Package['icinga2'],
- notify => Service['icinga2'],
- }
-}
diff --git a/.puppet/modules/icinga2/manifests/init.pp b/.puppet/modules/icinga2/manifests/init.pp
deleted file mode 100644
index e5b77ad75..000000000
--- a/.puppet/modules/icinga2/manifests/init.pp
+++ /dev/null
@@ -1,42 +0,0 @@
-# Class: icinga2
-#
-# This class installs Icinga 2.
-#
-# Requires:
-#
-# icinga_packages
-# icinga2::feature
-#
-# Sample Usage:
-#
-# include icinga2
-#
-class icinga2 {
- include icinga_packages
-
- package { [
- 'icinga2', 'icinga2-doc'
- ]:
- ensure => latest,
- require => Class['icinga_packages'],
- }
- -> service { 'icinga2':
- ensure => running,
- enable => true,
- require => User['icinga'],
- }
-
- user { 'icinga':
- ensure => present,
- }
- -> file { 'icinga2cfgDir':
- path => '/etc/icinga2',
- ensure => directory,
- links => follow,
- owner => 'icinga',
- group => 'icinga',
- mode => '6750',
- }
-
- icinga2::feature { [ 'statusdata', 'command', 'compatlog' ]: }
-}
diff --git a/.puppet/modules/icinga2_mysql/files/features-available/ido-mysql.conf b/.puppet/modules/icinga2_mysql/files/features-available/ido-mysql.conf
deleted file mode 100644
index 3e278fe2d..000000000
--- a/.puppet/modules/icinga2_mysql/files/features-available/ido-mysql.conf
+++ /dev/null
@@ -1,13 +0,0 @@
-/**
- * The db_ido_mysql library implements IDO functionality
- * for MySQL.
- */
-
-library "db_ido_mysql"
-
-object IdoMysqlConnection "ido-mysql" {
- user = "icinga2",
- password = "icinga2",
- host = "localhost",
- database = "icinga2"
-}
diff --git a/.puppet/modules/icinga2_mysql/manifests/init.pp b/.puppet/modules/icinga2_mysql/manifests/init.pp
deleted file mode 100644
index e076af873..000000000
--- a/.puppet/modules/icinga2_mysql/manifests/init.pp
+++ /dev/null
@@ -1,35 +0,0 @@
-# Class: icinga2_mysql
-#
-# This class installs Icinga 2 and Icinga-2-IDO-MySQL and set up the database for the last one.
-#
-# Requires:
-#
-# icinga_packages
-# icinga2
-# icinga2::feature
-# icinga2::config
-# mysql::database::populate
-#
-# Sample Usage:
-#
-# include icinga2_mysql
-#
-class icinga2_mysql {
- include icinga2
- include icinga_packages
-
- package { 'icinga2-ido-mysql':
- ensure => latest,
- require => Class['icinga_packages'],
- }
- -> mysql::database::populate { 'icinga2':
- username => 'icinga2',
- password => 'icinga2',
- privileges => 'SELECT,INSERT,UPDATE,DELETE',
- schemafile => '/usr/share/icinga2-ido-mysql/schema/mysql.sql',
- }
- -> icinga2::config { 'features-available/ido-mysql':
- source => 'puppet:///modules/icinga2_mysql',
- }
- -> icinga2::feature { 'ido-mysql': }
-}
diff --git a/.puppet/modules/icinga2_pgsql/files/features-available/ido-pgsql.conf b/.puppet/modules/icinga2_pgsql/files/features-available/ido-pgsql.conf
deleted file mode 100644
index e16cc6c3d..000000000
--- a/.puppet/modules/icinga2_pgsql/files/features-available/ido-pgsql.conf
+++ /dev/null
@@ -1,13 +0,0 @@
-/**
- * The db_ido_pgsql library implements IDO functionality
- * for PostgreSQL.
- */
-
-library "db_ido_pgsql"
-
-object IdoPgsqlConnection "ido-pgsql" {
- user = "icinga2",
- password = "icinga2",
- host = "localhost",
- database = "icinga2"
-}
diff --git a/.puppet/modules/icinga2_pgsql/manifests/init.pp b/.puppet/modules/icinga2_pgsql/manifests/init.pp
deleted file mode 100644
index 95bc71034..000000000
--- a/.puppet/modules/icinga2_pgsql/manifests/init.pp
+++ /dev/null
@@ -1,18 +0,0 @@
-class icinga2_pgsql {
- include icinga2
- include icinga_packages
-
- package { 'icinga2-ido-pgsql':
- ensure => latest,
- require => Class['icinga_packages'],
- }
- -> pgsql::database::populate { 'icinga2':
- username => 'icinga2',
- password => 'icinga2',
- schemafile => '/usr/share/icinga2-ido-pgsql/schema/pgsql.sql',
- }
-# Because Icinga 2 does not handle more than one IDO connection properly, The ido-pgsql will not be enabled by default.
-# -> icinga2::feature { 'ido-pgsql':
-# source => 'puppet:///modules/icinga2_pgsql',
-# }
-}
diff --git a/.puppet/modules/icinga_packages/manifests/init.pp b/.puppet/modules/icinga_packages/manifests/init.pp
deleted file mode 100644
index a73a74956..000000000
--- a/.puppet/modules/icinga_packages/manifests/init.pp
+++ /dev/null
@@ -1,26 +0,0 @@
-# Class: icinga_packages
-#
-# This class adds the YUM repository for the Icinga packages.
-#
-# Sample Usage:
-#
-# include icinga_packages
-#
-class icinga_packages {
- yumrepo { 'icinga_packages':
- baseurl => "https://packages.icinga.com/epel/${::operatingsystemmajrelease}/snapshot/",
- enabled => '1',
- gpgcheck => '1',
- gpgkey => 'https://packages.icinga.com/icinga.key',
- descr => "Icinga Repository - ${::architecture}"
- }
-
- yumrepo { 'icinga_release_packages':
- baseurl => "https://packages.icinga.com/epel/${::operatingsystemmajrelease}/release/",
- enabled => '1',
- gpgcheck => '1',
- gpgkey => 'https://packages.icinga.com/icinga.key',
- descr => "Icinga Repository - ${::architecture} (release)",
- includepkgs => 'icinga-php-*'
- }
-}
diff --git a/.puppet/modules/icingacli/manifests/init.pp b/.puppet/modules/icingacli/manifests/init.pp
deleted file mode 100644
index 701cb6e14..000000000
--- a/.puppet/modules/icingacli/manifests/init.pp
+++ /dev/null
@@ -1,12 +0,0 @@
-# TODO(el): This module is not reuseable because it relies on vagrant paths
-class icingacli {
- file { '/usr/local/bin/icingacli':
- ensure => link,
- target => '/vagrant/bin/icingacli',
- }
-
- file { '/etc/bash_completion.d/icingacli':
- ensure => link,
- target => '/vagrant/etc/bash_completion.d/icingacli',
- }
-}
diff --git a/.puppet/modules/icingaweb2/manifests/config.pp b/.puppet/modules/icingaweb2/manifests/config.pp
deleted file mode 100644
index 625c47b7a..000000000
--- a/.puppet/modules/icingaweb2/manifests/config.pp
+++ /dev/null
@@ -1,15 +0,0 @@
-class icingaweb2::config (
- $config = hiera('icingaweb2::config'),
- $web_group = hiera('icingaweb2::group')
-) {
- group { $web_group:
- ensure => present,
- }
-
- file { [ "${config}", "${config}/enabledModules", "${config}/modules", "${config}/preferences" ]:
- ensure => directory,
- owner => 'root',
- group => $web_group,
- mode => '2770',
- }
-}
diff --git a/.puppet/modules/icingaweb2/manifests/config/general.pp b/.puppet/modules/icingaweb2/manifests/config/general.pp
deleted file mode 100644
index 2a10ac1c8..000000000
--- a/.puppet/modules/icingaweb2/manifests/config/general.pp
+++ /dev/null
@@ -1,21 +0,0 @@
-define icingaweb2::config::general (
- $source,
- $config = hiera('icingaweb2::config'),
- $log = hiera('icingaweb2::log'),
- $web_path = hiera('icingaweb2::web_path'),
- $db_user = hiera('icingaweb2::db_user'),
- $db_pass = hiera('icingaweb2::db_pass'),
- $db_name = hiera('icingaweb2::db_name'),
- $web_group = hiera('icingaweb2::group'),
- $replace = true
-) {
- include icingaweb2::config
-
- file { "${config}/${name}.ini":
- content => template("${source}/${name}.ini.erb"),
- owner => 'root',
- group => $web_group,
- mode => '0660',
- replace => $replace,
- }
-}
diff --git a/.puppet/modules/icingaweb2/manifests/config/module.pp b/.puppet/modules/icingaweb2/manifests/config/module.pp
deleted file mode 100644
index 90d98d083..000000000
--- a/.puppet/modules/icingaweb2/manifests/config/module.pp
+++ /dev/null
@@ -1,26 +0,0 @@
-define icingaweb2::config::module (
- $module,
- $source,
- $config = hiera('icingaweb2::config'),
- $web_group = hiera('icingaweb2::group'),
- $replace = true
-) {
- include icingaweb2::config
-
- if ! defined(File["${config}/modules/${module}"]) {
- file { "${config}/modules/${module}":
- ensure => directory,
- owner => 'root',
- group => $web_group,
- mode => '2770',
- }
- }
-
- file { "${config}/modules/${module}/${name}.ini":
- source => "${source}/modules/${module}/${name}.ini",
- owner => 'root',
- group => $web_group,
- mode => '0660',
- replace => $replace,
- }
-}
diff --git a/.puppet/modules/monitoring_plugins/manifests/init.pp b/.puppet/modules/monitoring_plugins/manifests/init.pp
deleted file mode 100644
index 64d080d11..000000000
--- a/.puppet/modules/monitoring_plugins/manifests/init.pp
+++ /dev/null
@@ -1,9 +0,0 @@
-class monitoring_plugins {
- include epel
-
- # nagios plugins from epel
- package { 'nagios-plugins-all':
- ensure => latest,
- require => Class['epel']
- }
-}
diff --git a/.puppet/modules/monitoring_test_config/manifests/init.pp b/.puppet/modules/monitoring_test_config/manifests/init.pp
deleted file mode 100644
index 65ac53ec7..000000000
--- a/.puppet/modules/monitoring_test_config/manifests/init.pp
+++ /dev/null
@@ -1,25 +0,0 @@
-class monitoring_test_config {
- package { [
- 'perl',
- 'perl-Module-Install',
- 'perl-CPAN',
- 'perl-File-Which',
- 'perl-Time-HiRes'
- ]:
- ensure => latest,
- }
- -> git_cmmi { 'Monitoring-Generator-TestConfig':
- url => 'https://github.com/sni/Monitoring-Generator-TestConfig.git',
- configure => 'perl Makefile.PL',
- make => 'make && make test && make install',
- }
- -> exec { 'create_monitoring_test_config':
- path => '/usr/local/bin:/usr/bin:/bin',
- command => 'install -o root -g root -d /usr/local/share/misc/ && \
-create_monitoring_test_config.pl -l icinga /usr/local/share/misc/monitoring_test_config',
- creates => '/usr/local/share/misc/monitoring_test_config',
- }
- -> monitoring_test_config::populate_plugins { [
- 'test_hostcheck.pl', 'test_servicecheck.pl'
- ]: }
-}
diff --git a/.puppet/modules/monitoring_test_config/manifests/populate_plugins.pp b/.puppet/modules/monitoring_test_config/manifests/populate_plugins.pp
deleted file mode 100644
index 347e4b127..000000000
--- a/.puppet/modules/monitoring_test_config/manifests/populate_plugins.pp
+++ /dev/null
@@ -1,17 +0,0 @@
-define monitoring_test_config::populate_plugins {
- include icinga2
- include monitoring_plugins
- include monitoring_test_config
-
- file { "/usr/lib64/nagios/plugins/${name}":
- owner => 'icinga',
- group => 'icinga',
- source => "/usr/local/share/misc/monitoring_test_config/plugins/${name}",
- require => [
- User['icinga'],
- Exec['create_monitoring_test_config'],
- Class['monitoring_plugins']
- ],
- notify => Service['icinga2'],
- }
-}
diff --git a/.puppet/modules/motd/files/motd b/.puppet/modules/motd/files/motd
deleted file mode 100644
index 3e32ee517..000000000
--- a/.puppet/modules/motd/files/motd
+++ /dev/null
@@ -1,19 +0,0 @@
-88 88
-88 ""
-88
-88 ,adPPYba, 88 8b,dPPYba, ,adPPYb,d8 ,adPPYYba,
-88 a8" "" 88 88P' `"8a a8" `Y88 "" `Y8
-88 8b 88 88 88 8b 88 ,adPPPPP88
-88 "8a, ,aa 88 88 88 "8a, ,d88 88, ,88
-88 `"Ybbd8"' 88 88 88 `"YbbdP"Y8 `"8bbdP"Y8
- aa, ,88
- "Y8bbdP"
-
-I8, 8 ,8I 88 ad888888b,
-`8b d8b d8' 88 d8" "88
- "8, ,8"8, ,8" 88 a8P
- Y8 8P Y8 8P ,adPPYba, 88,dPPYba, ,d8P"
- `8b d8' `8b d8' a8P_____88 88P' "8a a8P"
- `8a a8' `8a a8' 8PP""""""" 88 d8 a8P'
- `8a8' `8a8' "8b, ,aa 88b, ,a8" d8"
- `8' `8' `"Ybbd8"' 8Y"Ybbd8"' 88888888888
diff --git a/.puppet/modules/motd/manifests/init.pp b/.puppet/modules/motd/manifests/init.pp
deleted file mode 100644
index acb744daf..000000000
--- a/.puppet/modules/motd/manifests/init.pp
+++ /dev/null
@@ -1,7 +0,0 @@
-class motd {
- file { '/etc/motd':
- source => 'puppet:///modules/motd/motd',
- owner => root,
- group => root,
- }
-}
diff --git a/.puppet/modules/mysql/manifests/database/create.pp b/.puppet/modules/mysql/manifests/database/create.pp
deleted file mode 100644
index fff93c6e6..000000000
--- a/.puppet/modules/mysql/manifests/database/create.pp
+++ /dev/null
@@ -1,33 +0,0 @@
-# Define: mysql::database::create
-#
-# Create a MySQL database
-#
-# Parameters:
-#
-# [*username*] - name of the user the database belongs to
-# [*password*] - password of the user the database belongs to
-# [*privileges*] - privileges of the user the database belongs to
-#
-# Requires:
-#
-# mysql
-#
-# Sample Usage:
-#
-# mysql::database::create { 'icinga2':
-# username => 'icinga2',
-# password => 'icinga2',
-# privileges => 'SELECT,INSERT,UPDATE,DELETE',
-# }
-#
-define mysql::database::create ($username, $password, $privileges) {
- include mysql
-
- exec { "create-mysql-${name}-db":
- unless => "mysql -u${username} -p${password} ${name}",
- command => "mysql -uroot -e \"CREATE DATABASE ${name}; \
-GRANT ${privileges} ON ${name}.* TO ${username}@localhost \
-IDENTIFIED BY '${password}';\"",
- require => Class['mysql']
- }
-}
diff --git a/.puppet/modules/mysql/manifests/database/populate.pp b/.puppet/modules/mysql/manifests/database/populate.pp
deleted file mode 100644
index dc54a0800..000000000
--- a/.puppet/modules/mysql/manifests/database/populate.pp
+++ /dev/null
@@ -1,39 +0,0 @@
-# Define: mysql::database::populate
-#
-# Create and populate a MySQL database
-#
-# Parameters:
-#
-# [*username*] - name of the user the database belongs to
-# [*password*] - password of the user the database belongs to
-# [*privileges*] - privileges of the user the database belongs to
-# [*schemafile*] - file with the schema for the database
-#
-# Requires:
-#
-# mysql::database::create
-#
-# Sample Usage:
-#
-# mysql::database::populate { 'icinga2':
-# username => 'icinga2',
-# password => 'icinga2',
-# privileges => 'SELECT,INSERT,UPDATE,DELETE',
-# schemafile => '/usr/share/icinga2-ido-mysql/schema/mysql.sql',
-# }
-#
-define mysql::database::populate ($username, $password, $privileges, $schemafile) {
- Exec { path => '/bin:/usr/bin' }
-
- mysql::database::create { $name:
- username => $username,
- password => $password,
- privileges => $privileges,
- }
-
- exec { "populate-${name}-mysql-db":
- onlyif => "mysql -u${username} -p${password} ${name} -e \"SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = '${name}';\" 2>/dev/null |grep -qEe '^ *0 *$'",
- command => "mysql -uroot ${name} < ${schemafile}",
- require => Mysql::Database::Create[$name],
- }
-}
diff --git a/.puppet/modules/mysql/manifests/init.pp b/.puppet/modules/mysql/manifests/init.pp
deleted file mode 100644
index 612211755..000000000
--- a/.puppet/modules/mysql/manifests/init.pp
+++ /dev/null
@@ -1,54 +0,0 @@
-# Class: mysql
-#
-# This class installs the MySQL server and client software on a RHEL or CentOS
-#
-# Parameters:
-#
-# Actions:
-#
-# Requires:
-#
-# Sample Usage:
-#
-# include mysql
-#
-class mysql {
-
- Exec { path => '/usr/bin' }
-
- if versioncmp($::operatingsystemmajrelease, '7') >= 0 {
- $client_package_name = 'mariadb'
- $server_package_name = 'mariadb-server'
- $server_service_name = 'mariadb'
- $cnf = '/etc/my.cnf.d/server.cnf'
- $log_error = '/var/log/mariadb/mariadb.log'
- $pid_file = '/var/run/mariadb/mariadb.pid'
- } else {
- $client_package_name = 'mysql'
- $server_package_name = 'mysql-server'
- $server_service_name = 'mysqld'
- $cnf = '/etc/my.cnf'
- $log_error = '/var/log/mysqld.log'
- $pid_file = '/var/run/mysqld/mysqld.pid'
- }
-
- package { [
- $client_package_name, $server_package_name,
- ]:
- ensure => latest,
- }
-
- service { $server_service_name:
- alias => 'mysqld',
- enable => true,
- ensure => running,
- require => Package[$server_package_name],
- }
-
- file { $cnf:
- content => template('mysql/my.cnf.erb'),
- notify => Service['mysqld'],
- recurse => true,
- require => Package[$server_package_name],
- }
-}
diff --git a/.puppet/modules/mysql/templates/my.cnf.erb b/.puppet/modules/mysql/templates/my.cnf.erb
deleted file mode 100644
index 7f819af73..000000000
--- a/.puppet/modules/mysql/templates/my.cnf.erb
+++ /dev/null
@@ -1,133 +0,0 @@
-[mysqld]
-datadir=/var/lib/mysql
-socket=/var/lib/mysql/mysql.sock
-user=mysql
-# Disabling symbolic-links is recommended to prevent assorted security risks
-symbolic-links=0
-
-# This permits the application to give the threads system a hint for the
-# desired number of threads that should be run at the same time. This
-# value only makes sense on systems that support the thread_concurrency()
-# function call (Sun Solaris, for example).
-# You should try [number of CPUs]*(2..4) for thread_concurrency
-thread_concurrency = 8
-
-# The number of open tables for all threads. Increasing this value
-# increases the number of file descriptors that mysqld requires.
-# Therefore you have to make sure to set the amount of open files
-# allowed to at least thread_concurrency * table_open_cache in the variable "open-files-limit" in
-# section [mysqld_safe]
-table_open_cache = 256
-
-# Size of the buffer used for doing full table scans.
-# Allocated per thread, if a full scan is needed.
-read_buffer_size = 1M
-
-# When reading rows in sorted order after a sort, the rows are read
-# through this buffer to avoid disk seeks. You can improve ORDER BY
-# performance a lot, if set this to a high value.
-# Allocated per thread, when needed.
-read_rnd_buffer_size = 4M
-
-# Sort buffer is used to perform sorts for some ORDER BY and GROUP BY
-# queries. If sorted data does not fit into the sort buffer, a disk
-# based merge sort is used instead - See the "Sort_merge_passes"
-# status variable. Allocated per thread if sort is needed.
-sort_buffer_size = 1M
-
-# The maximum size of a query packet the server can handle as well as
-# maximum query size server can process (Important when working with
-# large BLOBs). enlarged dynamically, for each connection.
-max_allowed_packet = 16M
-
-# Query cache is used to cache SELECT results and later return them
-# without actual executing the same query once again. Having the query
-# cache enabled may result in significant speed improvements, if your
-# have a lot of identical queries and rarely changing tables. See the
-# "Qcache_lowmem_prunes" status variable to check if the current value
-# is high enough for your load.
-# Note: In case your tables change very often or if your queries are
-# textually different every time, the query cache may result in a
-# slowdown instead of a performance improvement.
-query_cache_size = 16M
-
-# *** INNODB Specific options ***
-
-innodb_data_home_dir = /var/lib/mysql
-
-# InnoDB, unlike MyISAM, uses a buffer pool to cache both indexes and
-# row data. The bigger you set this the less disk I/O is needed to
-# access data in tables. On a dedicated database server you may set this
-# parameter up to 80% of the machine physical memory size. Do not set it
-# too large, though, because competition of the physical memory may
-# cause paging in the operating system. Note that on 32bit systems you
-# might be limited to 2-3.5G of user level memory per process, so do not
-# set it too high.
-innodb_buffer_pool_size = 256M
-
-# InnoDB stores data in one or more data files forming the tablespace.
-# If you have a single logical drive for your data, a single
-# autoextending file would be good enough. In other cases, a single file
-# per device is often a good choice. You can configure InnoDB to use raw
-# disk partitions as well - please refer to the manual for more info
-# about this.
-innodb_data_file_path = ibdata1:10M:autoextend
-
-# If set to 1, InnoDB will flush (fsync) the transaction logs to the
-# disk at each commit, which offers full ACID behavior. If you are
-# willing to compromise this safety, and you are running small
-# transactions, you may set this to 0 or 2 to reduce disk I/O to the
-# logs. Value 0 means that the log is only written to the log file and
-# the log file flushed to disk approximately once per second. Value 2
-# means the log is written to the log file at each commit, but the log
-# file is only flushed to disk approximately once per second.
-innodb_flush_log_at_trx_commit = 2
-
-# The size of the buffer InnoDB uses for buffering log data. As soon as
-# it is full, InnoDB will have to flush it to disk. As it is flushed
-# once per second anyway, it does not make sense to have it very large
-# (even with long transactions).
-innodb_log_buffer_size = 8M
-
-# Total number of files in the log group. A value of 2-3 is usually good
-# enough.
-innodb_log_files_in_group = 3
-
-# The flush method InnoDB will use for Log. The tablespace always uses
-# doublewrite flush logic. The default value is "fdatasync", another
-# option is "O_DSYNC".
-innodb_flush_method = O_DIRECT
-
-innodb_support_xa = 0
-innodb_file_per_table
-# 25 % of buffer pool size
-innodb_log_file_size = 64M
-
-[mysqld_safe]
-log-error=<%= @log_error %>
-pid-file=<%= @pid_file %>
-
-# Increase the amount of open files allowed per process. Warning: Make
-# sure you have set the global system limit high enough! The high value
-# is required for a large number of opened tables
-open-files-limit = 2048
-
-[mysqldump]
-# Do not buffer the whole result set in memory before writing it to
-# file. Required for dumping very large tables
-quick
-max_allowed_packet = 16M
-
-[mysql]
-no-auto-rehash
-
-[myisamchk]
-key_buffer_size = 128M
-sort_buffer_size = 128M
-read_buffer = 2M
-write_buffer = 2M
-
-[mysqlhotcopy]
-interactive-timeout
-
-
diff --git a/.puppet/modules/openldap/manifests/init.pp b/.puppet/modules/openldap/manifests/init.pp
deleted file mode 100644
index ee62e9b64..000000000
--- a/.puppet/modules/openldap/manifests/init.pp
+++ /dev/null
@@ -1,35 +0,0 @@
-# Class: openldap
-#
-# This class installs the openldap servers and clients software.
-#
-# Parameters:
-#
-# Actions:
-#
-# Requires:
-#
-# Sample Usage:
-#
-# include openldap
-#
-class openldap {
-
- package { [ 'openldap-servers', 'openldap-clients', ]:
- ensure => latest,
- }
-
- service { 'slapd':
- enable => true,
- ensure => running,
- require => Package['openldap-servers'],
- }
-
- if versioncmp($::operatingsystemmajrelease, '7') >= 0 {
- openldap::schema{ 'core': }
- -> openldap::schema{ 'cosine': }
- -> openldap::schema{ 'inetorgperson': }
- -> openldap::schema{ 'nis': }
- -> openldap::schema{ 'misc': }
- -> openldap::schema{ 'openldap': }
- }
-}
diff --git a/.puppet/modules/openldap/manifests/schema.pp b/.puppet/modules/openldap/manifests/schema.pp
deleted file mode 100644
index a98239379..000000000
--- a/.puppet/modules/openldap/manifests/schema.pp
+++ /dev/null
@@ -1,24 +0,0 @@
-# define: openldap::schema
-#
-# Install a schema.
-#
-# Parameters:
-#
-# Actions:
-#
-# Requires:
-#
-# Sample Usage:
-#
-define openldap::schema {
-
- include openldap
-
- exec { "openldap-schema-${name}":
- command => "ldapadd -Y EXTERNAL -H ldapi:// -f /etc/openldap/schema/${name}.ldif",
- group => 'root',
- require => Service['slapd'],
- unless => "test -n \"$(find /etc/openldap/slapd.d/cn=config/cn=schema/ -name cn={*}${name}.ldif -print -quit)\"",
- user => 'root',
- }
-}
diff --git a/.puppet/modules/parent_dirs/manifests/init.pp b/.puppet/modules/parent_dirs/manifests/init.pp
deleted file mode 100644
index e5e4e38d7..000000000
--- a/.puppet/modules/parent_dirs/manifests/init.pp
+++ /dev/null
@@ -1,8 +0,0 @@
-# TODO(el): Remove this. It's always executed and hackish
-define parent_dirs ($user = 'root') {
- exec { "parent_dirs-${name}":
- command => "mkdir -p \"\$(dirname \"\$(readlink -m '${name}')\")\"",
- path => '/bin:/usr/bin',
- user => $user,
- }
-}
diff --git a/.puppet/modules/pgsql/manifests/database/create.pp b/.puppet/modules/pgsql/manifests/database/create.pp
deleted file mode 100644
index 004b4c077..000000000
--- a/.puppet/modules/pgsql/manifests/database/create.pp
+++ /dev/null
@@ -1,32 +0,0 @@
-# Define: pgsql::database::create
-#
-# Create a PgSQL database
-#
-# Parameters:
-#
-# [*username*] - name of the user the database belongs to
-# [*password*] - password of the user the database belongs to
-#
-# Requires:
-#
-# pgsql
-#
-# Sample Usage:
-#
-# pgsql::database::create { 'icinga2':
-# username => 'icinga2',
-# password => 'icinga2',
-# }
-#
-define pgsql::database::create ($username, $password) {
- include pgsql
-
- exec { "create-pgsql-${name}-db":
- unless => "psql -tAc \"SELECT 1 FROM pg_roles WHERE rolname='${username}'\" | grep -q 1",
- command => "psql -c \"CREATE ROLE ${username} WITH LOGIN PASSWORD '${password}';\" && \
-createdb -O ${username} -E UTF8 -T template0 ${name} && \
-(createlang plpgsql ${name} || true)",
- user => 'postgres',
- require => Class['pgsql']
- }
-}
diff --git a/.puppet/modules/pgsql/manifests/database/populate.pp b/.puppet/modules/pgsql/manifests/database/populate.pp
deleted file mode 100644
index 8663ff3f1..000000000
--- a/.puppet/modules/pgsql/manifests/database/populate.pp
+++ /dev/null
@@ -1,37 +0,0 @@
-# Define: pgsql::database::populate
-#
-# Create and populate a PgSQL database
-#
-# Parameters:
-#
-# [*username*] - name of the user the database belongs to
-# [*password*] - password of the user the database belongs to
-# [*schemafile*] - file with the schema for the database
-#
-# Requires:
-#
-# pgsql::database::create
-#
-# Sample Usage:
-#
-# pgsql::database::populate { 'icinga2':
-# username => 'icinga2',
-# password => 'icinga2',
-# schemafile => '/usr/share/icinga2-ido-pgsql/schema/pgsql.sql',
-# }
-#
-define pgsql::database::populate ($username, $password, $schemafile) {
- Exec { path => '/bin:/usr/bin' }
-
- pgsql::database::create { $name:
- username => $username,
- password => $password,
- }
-
- exec { "populate-${name}-pgsql-db":
- onlyif => "psql -U ${username} -d ${name} -c \"SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = '${name}';\" 2>/dev/null |grep -qEe '^ *0 *$'",
- command => "psql -U ${username} -d ${name} < ${schemafile}",
- user => 'postgres',
- require => Pgsql::Database::Create[$name],
- }
-}
diff --git a/.puppet/modules/pgsql/manifests/init.pp b/.puppet/modules/pgsql/manifests/init.pp
deleted file mode 100644
index dfa105d65..000000000
--- a/.puppet/modules/pgsql/manifests/init.pp
+++ /dev/null
@@ -1,41 +0,0 @@
-# Class: pgsql
-#
-# This class installs the PostgreSQL server and client software.
-# Further it configures pg_hba.conf to trust the local icinga user.
-#
-# Parameters:
-#
-# Actions:
-#
-# Requires:
-#
-# Sample Usage:
-#
-# include pgsql
-#
-class pgsql {
-
- Exec { path => '/sbin:/bin:/usr/bin' }
-
- package { [ 'postgresql', 'postgresql-server', ]:
- ensure => latest,
- }
-
- exec { 'initdb':
- command => 'service postgresql initdb',
- creates => '/var/lib/pgsql/data/pg_xlog',
- require => Package['postgresql-server'],
- }
-
- service { 'postgresql':
- enable => true,
- ensure => running,
- require => [ Package['postgresql-server'], Exec['initdb'], ]
- }
-
- file { '/var/lib/pgsql/data/pg_hba.conf':
- content => template('pgsql/pg_hba.conf.erb'),
- require => [ Package['postgresql-server'], Exec['initdb'], ],
- notify => Service['postgresql'],
- }
-}
diff --git a/.puppet/modules/pgsql/templates/pg_hba.conf.erb b/.puppet/modules/pgsql/templates/pg_hba.conf.erb
deleted file mode 100644
index ca98bebd8..000000000
--- a/.puppet/modules/pgsql/templates/pg_hba.conf.erb
+++ /dev/null
@@ -1,99 +0,0 @@
-# PostgreSQL Client Authentication Configuration File
-# ===================================================
-#
-# Refer to the "Client Authentication" section in the
-# PostgreSQL documentation for a complete description
-# of this file. A short synopsis follows.
-#
-# This file controls: which hosts are allowed to connect, how clients
-# are authenticated, which PostgreSQL user names they can use, which
-# databases they can access. Records take one of these forms:
-#
-# local DATABASE USER METHOD [OPTIONS]
-# host DATABASE USER CIDR-ADDRESS METHOD [OPTIONS]
-# hostssl DATABASE USER CIDR-ADDRESS METHOD [OPTIONS]
-# hostnossl DATABASE USER CIDR-ADDRESS METHOD [OPTIONS]
-#
-# (The uppercase items must be replaced by actual values.)
-#
-# The first field is the connection type: "local" is a Unix-domain socket,
-# "host" is either a plain or SSL-encrypted TCP/IP socket, "hostssl" is an
-# SSL-encrypted TCP/IP socket, and "hostnossl" is a plain TCP/IP socket.
-#
-# DATABASE can be "all", "sameuser", "samerole", a database name, or
-# a comma-separated list thereof.
-#
-# USER can be "all", a user name, a group name prefixed with "+", or
-# a comma-separated list thereof. In both the DATABASE and USER fields
-# you can also write a file name prefixed with "@" to include names from
-# a separate file.
-#
-# CIDR-ADDRESS specifies the set of hosts the record matches.
-# It is made up of an IP address and a CIDR mask that is an integer
-# (between 0 and 32 (IPv4) or 128 (IPv6) inclusive) that specifies
-# the number of significant bits in the mask. Alternatively, you can write
-# an IP address and netmask in separate columns to specify the set of hosts.
-#
-# METHOD can be "trust", "reject", "md5", "password", "gss", "sspi", "krb5",
-# "ident", "pam", "ldap" or "cert". Note that "password" sends passwords
-# in clear text; "md5" is preferred since it sends encrypted passwords.
-#
-# OPTIONS are a set of options for the authentication in the format
-# NAME=VALUE. The available options depend on the different authentication
-# methods - refer to the "Client Authentication" section in the documentation
-# for a list of which options are available for which authentication methods.
-#
-# Database and user names containing spaces, commas, quotes and other special
-# characters must be quoted. Quoting one of the keywords "all", "sameuser" or
-# "samerole" makes the name lose its special character, and just match a
-# database or username with that name.
-#
-# This file is read on server startup and when the postmaster receives
-# a SIGHUP signal. If you edit the file on a running system, you have
-# to SIGHUP the postmaster for the changes to take effect. You can use
-# "pg_ctl reload" to do that.
-
-# Put your actual configuration here
-# ----------------------------------
-#
-# If you want to allow non-local connections, you need to add more
-# "host" records. In that case you will also need to make PostgreSQL listen
-# on a non-local interface via the listen_addresses configuration parameter,
-# or via the -i or -h command line switches.
-#
-
-
-
-# TYPE DATABASE USER CIDR-ADDRESS METHOD
-
-# icinga
-local icinga icinga trust
-host icinga icinga 127.0.0.1/32 trust
-host icinga icinga ::1/128 trust
-
-# icinga2
-local icinga2 icinga2 trust
-host icinga2 icinga2 127.0.0.1/32 trust
-host icinga2 icinga2 ::1/128 trust
-
-# icinga_unittest
-local icinga_unittest icinga_unittest trust
-host icinga_unittest icinga_unittest 127.0.0.1/32 trust
-host icinga_unittest icinga_unittest ::1/128 trust
-
-# icingaweb
-local icingaweb icingaweb trust
-host icingaweb icingaweb 127.0.0.1/32 trust
-host icingaweb icingaweb ::1/128 trust
-
-# icingaweb2
-local <%= scope.function_hiera(['icingaweb2::db_user']) %> <%= scope.function_hiera(['icingaweb2::db_user']) %> trust
-host <%= scope.function_hiera(['icingaweb2::db_user']) %> <%= scope.function_hiera(['icingaweb2::db_user']) %> 127.0.0.1/32 trust
-host <%= scope.function_hiera(['icingaweb2::db_user']) %> <%= scope.function_hiera(['icingaweb2::db_user']) %> ::1/128 trust
-
-# "local" is for Unix domain socket connections only
-local all all ident
-# IPv4 local connections:
-host all all 127.0.0.1/32 ident
-# IPv6 local connections:
-host all all ::1/128 ident
diff --git a/.puppet/modules/php/manifests/extension.pp b/.puppet/modules/php/manifests/extension.pp
deleted file mode 100644
index 23cfe6029..000000000
--- a/.puppet/modules/php/manifests/extension.pp
+++ /dev/null
@@ -1,34 +0,0 @@
-# define: php::extension
-#
-# Install additional PHP modules.
-#
-# Parameters:
-#
-# Actions:
-#
-# Requires:
-#
-# Sample Usage:
-#
-# php::extension { 'php-ldap': }
-# php::extension { ['php-mysql'], ['php-pgsql']: }
-#
-define php::extension(
- $ensure=installed
-) {
-
- include apache
- include php
-
- if $::require {
- $require_ = [Package['apache'], Class['php'], $::require]
- } else {
- $require_ = [Package['apache'], Class['php']]
- }
-
- package { $name:
- ensure => $ensure,
- require => $require_,
- notify => Service['apache']
- }
-}
diff --git a/.puppet/modules/php/manifests/init.pp b/.puppet/modules/php/manifests/init.pp
deleted file mode 100644
index 98d291dd0..000000000
--- a/.puppet/modules/php/manifests/init.pp
+++ /dev/null
@@ -1,43 +0,0 @@
-# Class: php
-#
-# This class installs php.
-#
-# Parameters:
-#
-# Actions:
-#
-# Requires:
-#
-# apache
-# epel
-# scl
-#
-# Sample Usage:
-#
-# include php
-#
-class php {
-
- include apache
- include epel
- include scl
-
- package { 'rh-php73-php-fpm':
- ensure => latest,
- notify => Service['apache'],
- require => [ Class['scl'], Package['apache'] ],
- }
- -> service { 'rh-php73-php-fpm':
- ensure => running,
- enable => true,
- alias => 'php-fpm',
- }
-
- package { 'php-pecl-xdebug':
- ensure => latest,
- notify => Service['apache'],
- require => Class['epel'],
- }
-
- php::phpd { ['error_reporting', 'timezone', 'xdebug_settings' ]: }
-}
diff --git a/.puppet/modules/php/manifests/phpd.pp b/.puppet/modules/php/manifests/phpd.pp
deleted file mode 100644
index e6292b49a..000000000
--- a/.puppet/modules/php/manifests/phpd.pp
+++ /dev/null
@@ -1,22 +0,0 @@
-# define: php::phpd
-#
-# Provision php.d config
-#
-# Parameters:
-#
-# Actions:
-#
-# Requires:
-#
-# Sample Usage:
-#
-define php::phpd {
-
- include php
-
- file { "/etc/opt/rh/rh-php73/php.d/$name.ini":
- content => template("php/$name.ini.erb"),
- notify => Service['apache'],
- require => Package['rh-php73-php-fpm'],
- }
-}
diff --git a/.puppet/modules/php/templates/error_reporting.ini.erb b/.puppet/modules/php/templates/error_reporting.ini.erb
deleted file mode 100644
index d37dcd415..000000000
--- a/.puppet/modules/php/templates/error_reporting.ini.erb
+++ /dev/null
@@ -1,4 +0,0 @@
-error_reporting = E_ALL | E_STRICT
-display_errors = On
-display_startup_errors = On
-html_errors = On
diff --git a/.puppet/modules/php/templates/timezone.ini.erb b/.puppet/modules/php/templates/timezone.ini.erb
deleted file mode 100644
index 51e82763b..000000000
--- a/.puppet/modules/php/templates/timezone.ini.erb
+++ /dev/null
@@ -1 +0,0 @@
-date.timezone = "UTC"
diff --git a/.puppet/modules/php/templates/xdebug_settings.ini.erb b/.puppet/modules/php/templates/xdebug_settings.ini.erb
deleted file mode 100644
index 99ecba993..000000000
--- a/.puppet/modules/php/templates/xdebug_settings.ini.erb
+++ /dev/null
@@ -1,5 +0,0 @@
-xdebug.var_display_max_children = 128
-xdebug.var_display_max_data = 1024
-xdebug.var_display_max_depth = 5
-xdebug.remote_enable = 1
-xdebug.remote_connect_back = 1
diff --git a/.puppet/modules/php_imagick/manifests/init.pp b/.puppet/modules/php_imagick/manifests/init.pp
deleted file mode 100644
index 5ef0453af..000000000
--- a/.puppet/modules/php_imagick/manifests/init.pp
+++ /dev/null
@@ -1,29 +0,0 @@
-# Class: php_imagick
-#
-# This class installs the ImageMagick PHP module.
-#
-# Parameters:
-#
-# Actions:
-#
-# Requires:
-#
-# php
-#
-# Sample Usage:
-#
-# include php_imagick
-#
-class php_imagick {
- include php
-
- $php_imagick = $::operatingsystem ? {
- /(Debian|Ubuntu)/ => 'php5-imagick',
- /(RedHat|CentOS|Fedora)/ => 'php-pecl-imagick',
- /(SLES|OpenSuSE)/ => 'php5-imagick',
- }
-
- package { $php_imagick:
- ensure => latest,
- }
-}
diff --git a/.puppet/modules/scl/manifests/init.pp b/.puppet/modules/scl/manifests/init.pp
deleted file mode 100644
index 722e17946..000000000
--- a/.puppet/modules/scl/manifests/init.pp
+++ /dev/null
@@ -1,19 +0,0 @@
-# Class: scl
-#
-# This class installs centos-release-scl.
-#
-# Parameters:
-#
-# Actions:
-#
-# Requires:
-#
-# Sample Usage:
-#
-# include scl
-#
-class scl {
- package { 'centos-release-scl':
- ensure => latest,
- }
-}
diff --git a/.puppet/modules/zend_framework/manifests/init.pp b/.puppet/modules/zend_framework/manifests/init.pp
deleted file mode 100644
index 1e54259b1..000000000
--- a/.puppet/modules/zend_framework/manifests/init.pp
+++ /dev/null
@@ -1,24 +0,0 @@
-# Class: zend_framework
-#
-# This class installs the Zend Framework.
-#
-# Requires:
-#
-# epel
-#
-# Sample Usage:
-#
-# include zend_framework
-#
-class zend_framework {
- include epel
-
- package { [
- 'php-ZendFramework',
- 'php-ZendFramework-Db-Adapter-Pdo-Mysql',
- 'php-ZendFramework-Db-Adapter-Pdo-Pgsql'
- ]:
- ensure => latest,
- require => Class['epel'],
- }
-}
diff --git a/.puppet/profiles/base/manifests/init.pp b/.puppet/profiles/base/manifests/init.pp
deleted file mode 100644
index fae87a1cc..000000000
--- a/.puppet/profiles/base/manifests/init.pp
+++ /dev/null
@@ -1,5 +0,0 @@
-class base {
- package { [ 'vim-enhanced', 'bash-completion', 'htop' ]:
- ensure => latest,
- }
-}
diff --git a/.puppet/profiles/icinga2_dev/files/conf.d/commands.conf b/.puppet/profiles/icinga2_dev/files/conf.d/commands.conf
deleted file mode 100644
index 9000ac090..000000000
--- a/.puppet/profiles/icinga2_dev/files/conf.d/commands.conf
+++ /dev/null
@@ -1,48 +0,0 @@
-/* Command objects */
-
-object CheckCommand "kernel" {
- import "plugin-check-command"
-
- command = [ "sudo", SysconfDir + "/icinga2/scripts/check_kernel" ]
-}
-
-object NotificationCommand "mail-host-notification" {
- import "plugin-notification-command"
-
- command = [ "/bin/true" ]
-
- env = {
- "NOTIFICATIONTYPE" = "$notification.type$"
- "HOSTALIAS" = "$host.display_name$",
- "HOSTADDRESS" = "$address$",
- "HOSTSTATE" = "$host.state$",
- "LONGDATETIME" = "$icinga.long_date_time$",
- "HOSTOUTPUT" = "$host.output$",
- "NOTIFICATIONAUTHORNAME" = "$notification.author$",
- "NOTIFICATIONCOMMENT" = "$notification.comment$",
- "HOSTDISPLAYNAME" = "$host.display_name$",
- "USEREMAIL" = "$user.email$"
- }
-}
-
-object NotificationCommand "mail-service-notification" {
- import "plugin-notification-command"
-
- command = [ "/bin/true" ]
-
- env = {
- "NOTIFICATIONTYPE" = "$notification.type$"
- "SERVICEDESC" = "$service.name$"
- "HOSTALIAS" = "$host.display_name$",
- "HOSTADDRESS" = "$address$",
- "SERVICESTATE" = "$service.state$",
- "LONGDATETIME" = "$icinga.long_date_time$",
- "SERVICEOUTPUT" = "$service.output$",
- "NOTIFICATIONAUTHORNAME" = "$notification.author$",
- "NOTIFICATIONCOMMENT" = "$notification.comment$",
- "HOSTDISPLAYNAME" = "$host.display_name$",
- "SERVICEDISPLAYNAME" = "$service.display_name$",
- "USEREMAIL" = "$user.email$"
- }
-}
-
diff --git a/.puppet/profiles/icinga2_dev/files/conf.d/test-config.conf b/.puppet/profiles/icinga2_dev/files/conf.d/test-config.conf
deleted file mode 100644
index 4e3260b85..000000000
--- a/.puppet/profiles/icinga2_dev/files/conf.d/test-config.conf
+++ /dev/null
@@ -1,113 +0,0 @@
-object CheckCommand "dummy-host" {
- import "plugin-check-command"
- command = [ PluginDir + "/test_hostcheck.pl" ]
- arguments = {
- "--type" = "$check_type$"
- "--failchance" = "$check_failchance$"
- "--previous-state" = "$check_previous_state$"
- "--state-duration" = "$check_state_duration$"
- "--hostname" = "$check_hostname$"
- }
-
- vars.check_type = "UP"
- vars.check_failchance = "2%"
- vars.check_previous_state = "$state$"
- vars.check_state_duration = "$duration_sec$"
- vars.check_hostname = "$name$"
-}
-
-object CheckCommand "dummy-service" {
- import "plugin-check-command"
- command = [ PluginDir + "/test_servicecheck.pl" ]
- arguments = {
- "--total-critical-on-host" = "$check_critical_on_host$"
- "--total-warning-on-host" = "$check_warning_on_host$"
- "--type" = "$check_type$"
- "--failchance" = "$check_failchance$"
- "--previous-state" = "$check_previous_state$"
- "--state-duration" = "$check_state_duration$"
- "--hostname" = "$check_hostname$"
- "--servicedesc" = "$check_servicedesc$"
- }
- vars.check_critical_on_host = "$host.total_services_critical$"
- vars.check_warning_on_host = "$host.total_services_warning$"
- vars.check_type = "random"
- vars.check_failchange = "5%"
- vars.check_previous_state = "$service.state$"
- vars.check_duration = "$service.duration_sec$"
- vars.check_hostname = "$host.name$"
- vars.check_servicedesc = "$service.name$"
-}
-
-// Hostgroups
-object HostGroup "all-hosts" {
- display_name = "All hosts on the system"
- assign where true
-}
-
-var host_types = ["ok", "random", "down", "up", "unreachable", "pending"]
-
-for (host_type in host_types) {
- object HostGroup "all-" + host_type use (host_type) {
- display_name = "All " + host_type + " hosts"
- assign where host.vars.check_type == host_type
- }
-}
-
-var service_types = ["ok", "warning", "critical", "unknown", "flapping", "pending"]
-
-// Servicegroups
-for (service_type in service_types) {
- object ServiceGroup "service-" + service_type use (service_type) {
- display_name = "All " + service_type + " services"
- assign where service.vars.check_type == service_type
- }
-}
-
-// ---------------------------------------------------------------------------------------------------------------------
-// Services
-// ---------------------------------------------------------------------------------------------------------------------
-
-function createService(service_type, num) {
- apply Service "service-" + service_type + "-" + string(num + 1) use (service_type) {
- import "generic-service"
-
- check_command = "dummy-service"
- enable_active_checks = (service_type != "pending")
- vars.check_type = service_type
-
- assign where service_type in host.vars.check_config
- }
-}
-
-for (num in range(4)) {
- for (service_type in service_types) {
- createService(service_type, num)
- }
-}
-
-// ---------------------------------------------------------------------------------------------------------------------
-// Hosts
-// ---------------------------------------------------------------------------------------------------------------------
-
-function createHost(checkType, checkConfig, num, checkEnabled) {
- object Host "test-" + checkType + "-" + string(num + 1) use (checkEnabled, checkType, checkConfig) {
- import "generic-host"
- address = "127.0.0.1"
- check_command = "dummy-host"
- enable_active_checks = checkEnabled
- vars.check_type = checkType
- vars.check_config = checkConfig
- }
-}
-
-for (num in range(10)) {
- createHost("ok", [ "ok" ], num, true)
- createHost("random", [ "random", "flapping" ], num, true)
- createHost("down", [ "warning", "critical" ], num, true)
- createHost("unreachable", [ "unknown" ], num, true)
- createHost("pending", [ "pending" ], num, false)
- createHost("flap", [ "flapping" ], num, true)
-}
-
-// EOF
diff --git a/.puppet/profiles/icinga2_dev/files/constants.conf b/.puppet/profiles/icinga2_dev/files/constants.conf
deleted file mode 100644
index fb714b2fb..000000000
--- a/.puppet/profiles/icinga2_dev/files/constants.conf
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * This file defines global constants which can be used in
- * the other configuration files.
- */
-
-/* The directory which contains the plugins from the Monitoring Plugins project. */
-const PluginDir = "/usr/lib64/nagios/plugins"
-
-/* The directory which contains the Manubulon plugins.
- * Check the documentation, chapter "SNMP Manubulon Plugin Check Commands", for details.
- */
-const ManubulonPluginDir = "/usr/lib64/nagios/plugins"
-
-/* The directory which you use to store additional plugins which ITL provides user contributed command definitions for.
- * Check the documentation, chapter "Plugins Contribution", for details.
- */
-const PluginContribDir = "/usr/lib64/nagios/plugins"
-
-/* Our local instance name. By default this is the server's hostname as returned by `hostname --fqdn`.
- * This should be the common name from the API certificate.
-*/
-const NodeName = "localhost"
-
-/* Our local zone name. */
-const ZoneName = NodeName
-const TicketSalt = ""
diff --git a/.puppet/profiles/icinga2_dev/manifests/init.pp b/.puppet/profiles/icinga2_dev/manifests/init.pp
deleted file mode 100644
index 322480594..000000000
--- a/.puppet/profiles/icinga2_dev/manifests/init.pp
+++ /dev/null
@@ -1,35 +0,0 @@
-# Class: icinga2_dev
-#
-# This class installs Icinga 2 w/ MySQL and PostgreSQL and provides Icinga 2 test configuration.
-#
-# Requires:
-#
-# icinga2_mysql
-# icinga2::config
-# icinga2::feature
-#
-# Sample Usage:
-#
-# include icinga2_dev
-#
-class icinga2_dev {
- include icinga2_mysql
- include icinga2_pgsql
- include monitoring_plugins
- include monitoring_test_config
-
- icinga2::config { [
- 'conf.d/test-config', 'conf.d/commands', 'constants'
- ]:
- source => 'puppet:///modules/icinga2_dev',
- }
-
- icinga2::feature { 'api':
- ensure => absent,
- }
-
- icinga2::feature { 'ido-pgsql':
- ensure => absent,
- require => Class['icinga2_pgsql'],
- }
-}
diff --git a/.puppet/profiles/icingaweb2_dev/files/modules/monitoring/backends.ini b/.puppet/profiles/icingaweb2_dev/files/modules/monitoring/backends.ini
deleted file mode 100644
index dd446be20..000000000
--- a/.puppet/profiles/icingaweb2_dev/files/modules/monitoring/backends.ini
+++ /dev/null
@@ -1,7 +0,0 @@
-[ido-mysql]
-type = ido
-resource = ido-mysql
-
-[ido-pgsql]
-type = ido
-resource = ido-pgsql
diff --git a/.puppet/profiles/icingaweb2_dev/files/modules/monitoring/commandtransports.ini b/.puppet/profiles/icingaweb2_dev/files/modules/monitoring/commandtransports.ini
deleted file mode 100644
index 0844ac3d4..000000000
--- a/.puppet/profiles/icingaweb2_dev/files/modules/monitoring/commandtransports.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[local]
-transport = local
-path = /var/run/icinga2/cmd/icinga2.cmd
diff --git a/.puppet/profiles/icingaweb2_dev/files/modules/monitoring/config.ini b/.puppet/profiles/icingaweb2_dev/files/modules/monitoring/config.ini
deleted file mode 100644
index 9b69fe86f..000000000
--- a/.puppet/profiles/icingaweb2_dev/files/modules/monitoring/config.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[security]
-protected_customvars = "*pw*,*pass*,community"
diff --git a/.puppet/profiles/icingaweb2_dev/files/modules/monitoring/instances.ini b/.puppet/profiles/icingaweb2_dev/files/modules/monitoring/instances.ini
deleted file mode 100644
index a47b06629..000000000
--- a/.puppet/profiles/icingaweb2_dev/files/modules/monitoring/instances.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[icinga]
-path = "/var/run/icinga2/cmd/icinga2.cmd"
diff --git a/.puppet/profiles/icingaweb2_dev/files/openldap/db.ldif b/.puppet/profiles/icingaweb2_dev/files/openldap/db.ldif
deleted file mode 100644
index 03263f9c3..000000000
--- a/.puppet/profiles/icingaweb2_dev/files/openldap/db.ldif
+++ /dev/null
@@ -1,18 +0,0 @@
-dn: olcDatabase={0}config,cn=config
-changetype: modify
-replace: olcRootPW
-olcRootPW: {SSHA}N/2WMqT8q7cElh7KUQz+p9TJbjmKv/u9
--
-replace: olcRootDN
-olcRootDN: cn=admin,cn=config
-
-dn: olcDatabase={2}hdb,cn=config
-changetype: modify
-replace: olcRootPW
-olcRootPW: {SSHA}MxMpLBo2/TSymoIBf/Sb5iQac7Wwiur5
--
-replace: olcSuffix
-olcSuffix: dc=icinga,dc=org
--
-replace: olcRootDN
-olcRootDN: cn=admin,dc=icinga,dc=org
diff --git a/.puppet/profiles/icingaweb2_dev/files/openldap/dit.ldif b/.puppet/profiles/icingaweb2_dev/files/openldap/dit.ldif
deleted file mode 100644
index 275f339c6..000000000
--- a/.puppet/profiles/icingaweb2_dev/files/openldap/dit.ldif
+++ /dev/null
@@ -1,4 +0,0 @@
-dn: dc=icinga,dc=org
-dc: icinga
-objectClass: top
-objectClass: domain
diff --git a/.puppet/profiles/icingaweb2_dev/files/openldap/users.ldif b/.puppet/profiles/icingaweb2_dev/files/openldap/users.ldif
deleted file mode 100644
index d0760dafc..000000000
--- a/.puppet/profiles/icingaweb2_dev/files/openldap/users.ldif
+++ /dev/null
@@ -1,52 +0,0 @@
-dn: ou=people,dc=icinga,dc=org
-ou: people
-objectclass: organizationalunit
-
-dn: ou=groups,dc=icinga,dc=org
-ou: groups
-objectclass: organizationalunit
-
-dn: cn=John Doe,ou=people,dc=icinga,dc=org
-objectclass: inetOrgPerson
-cn: John Doe
-sn: Doe
-uid: jdoe
-userpassword: password
-
-dn: cn=Jane Smith,ou=people,dc=icinga,dc=org
-objectclass: inetOrgPerson
-cn: Jane Smith
-sn: Smith
-uid: jsmith
-userpassword: password
-
-dn: cn=John Q. Public,ou=people,dc=icinga,dc=org
-objectclass: inetOrgPerson
-cn: John Q. Public
-sn: Public
-uid: jqpublic
-userpassword: password
-
-dn: cn=Richard Roe,ou=people,dc=icinga,dc=org
-objectclass: inetOrgPerson
-cn: Richard Roe
-sn: Roe
-uid: rroe
-userpassword: password
-
-dn: cn=Users,ou=groups,dc=icinga,dc=org
-objectClass: groupOfUniqueNames
-cn: Users
-uniqueMember: cn=John Doe,ou=people,dc=icinga,dc=org
-uniqueMember: cn=Jane Smith,ou=people,dc=icinga,dc=org
-uniqueMember: cn=John Q. Public,ou=people,dc=icinga,dc=org
-uniqueMember: cn=Richard Roe,ou=people,dc=icinga,dc=org
-
-dn: cn=PosixUsers,ou=groups,dc=icinga,dc=org
-objectClass: posixGroup
-cn: PosixUsers
-gidNumber: 2001
-memberUid: jdoe
-memberUid: jsmith
-memberUid: jqpublic
-memberUid: rroe
diff --git a/.puppet/profiles/icingaweb2_dev/manifests/init.pp b/.puppet/profiles/icingaweb2_dev/manifests/init.pp
deleted file mode 100644
index 983c250e7..000000000
--- a/.puppet/profiles/icingaweb2_dev/manifests/init.pp
+++ /dev/null
@@ -1,162 +0,0 @@
-class icingaweb2_dev (
- $config = hiera('icingaweb2::config'),
- $log = hiera('icingaweb2::log'),
- $web_path = hiera('icingaweb2::web_path'),
- $db_user = hiera('icingaweb2::db_user'),
- $db_pass = hiera('icingaweb2::db_pass'),
- $db_name = hiera('icingaweb2::db_name'),
- $web_group = hiera('icingaweb2::group'),
-) {
- include apache
- include php
- include php_imagick
- include icingaweb2::config
- include icingacli
- include icinga_packages
- include openldap
-
- # TODO(el): Only include zend_framework. Apache does not have to be notified
- class { 'zend_framework':
- notify => Service['apache'],
- }
-
- # TODO(el): icinga-gui is not a icingaweb2_dev package
- package { [
- 'icinga-php-library',
- 'icinga-php-thirdparty',
- 'rh-php73-php-cli',
- 'rh-php73-php-gd',
- 'rh-php73-php-intl',
- 'rh-php73-php-pdo',
- 'rh-php73-php-mysqlnd',
- 'rh-php73-php-pgsql',
- 'rh-php73-php-ldap',
- 'rh-php73-php-xml',
- 'rh-php73-php-mbstring',
- 'rh-php73-php-pecl-xdebug',
- 'sclo-php73-php-pecl-imagick',
- 'php-phpunit-PHPUnit'
- ]:
- ensure => latest,
- notify => Service['php-fpm'],
- require => Class['icinga_packages'],
- }
-
- Exec { path => '/opt/rh/rh-php73/root/bin:/usr/local/bin:/usr/bin:/bin' }
-
- # TODO(el): Enabling/disabling modules should be a resource
- User <| alias == apache |> { groups +> $web_group }
- -> exec { 'enable-monitoring-module':
- command => 'icingacli module enable monitoring',
- user => 'apache',
- require => [ Class[[ 'icingacli', 'apache' ]], Package[[ 'icinga-php-library', 'icinga-php-thirdparty' ]] ],
- }
- -> exec { 'enable-test-module':
- command => 'icingacli module enable test',
- user => 'apache'
- }
-
- # TODO(el): 'icingacmd' is NOT a icingaweb2_dev group
- group { 'icingacmd':
- ensure => present,
- }
-
- User <| alias == apache |> { groups +> 'icingacmd' }
-
- $log_dir = inline_template('<%= File.dirname(@log) %>')
- file { $log_dir:
- ensure => directory,
- owner => 'root',
- group => $web_group,
- mode => '2775'
- }
-
- $icingaadminSelect = "as CNT from icingaweb_user where name = \'icingaadmin\'\" |grep -qwe \'cnt=0\'"
- $icingaadminInsert = "\"INSERT INTO icingaweb_user (name, active, password_hash) VALUES (\'icingaadmin\', 1, \'\\\$1\\\$JMdnEc9M\\\$FW7yapAjv0atS43NkapGo/\');\""
-
- mysql::database::populate { "${db_name}":
- username => "${db_user}",
- password => "${db_pass}",
- privileges => 'ALL',
- schemafile => '/vagrant/etc/schema/mysql.schema.sql',
- }
- -> exec { 'mysql-icingaadmin':
- onlyif => "mysql -u${db_user} -p${db_pass} ${db_name} -e \"select CONCAT(\'cnt=\', COUNT(name)) ${icingaadminSelect}",
- command => "mysql -u${db_user} -p${db_pass} ${db_name} -e ${icingaadminInsert}",
- }
-
- pgsql::database::populate { "${db_name}":
- username => "${db_user}",
- password => "${db_pass}",
- schemafile => '/vagrant/etc/schema/pgsql.schema.sql',
- }
- -> exec { 'pgsql-icingaadmin':
- onlyif => "psql -U ${db_user} -w -d ${db_name} -c \"select 'cnt=' || COUNT(name) ${icingaadminSelect}",
- command => "psql -U ${db_user} -w -d ${db_name} -c ${icingaadminInsert}",
- environment => "PGPASSWORD=${db_pass}",
- }
-
- file { '/etc/httpd/conf.d/icingaweb.conf':
- content => template("$name/icingaweb.conf.erb"),
- notify => Service['apache'],
- }
-
- icingaweb2::config::general { 'authentication':
- source => $name,
- replace => false,
- }
-
- icingaweb2::config::general { [ 'config', 'resources', 'roles' ]:
- source => $name,
- replace => false,
- }
-
- icingaweb2::config::module { [ 'backends', 'commandtransports', 'config', 'instances' ]:
- module => 'monitoring',
- source => 'puppet:///modules/icingaweb2_dev',
- }
-
- # TODO(el): Should be a resource
- package { 'iptables':
- ensure => latest
- }
- -> exec { 'iptables-allow-http':
- unless => 'grep -qe "-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT" /etc/sysconfig/iptables',
- command => '/sbin/iptables -I INPUT 1 -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT && /sbin/iptables-save > /etc/sysconfig/iptables'
- }
-
- # TODO(el): Don't define inside a class
- define openldap_file {
- file { "openldap/${name}.ldif":
- path => "/usr/share/openldap-servers/${name}.ldif",
- source => "puppet:///modules/icingaweb2_dev/openldap/${name}.ldif",
- require => Class['openldap'],
- }
- }
-
- openldap_file { [ 'db', 'dit', 'users' ]: }
-
- exec { 'populate-openldap':
- # TODO(el): Split the command and use unless instead of trying to populate openldap everytime
- command => 'sudo ldapadd -c -Y EXTERNAL -H ldapi:/// -f /usr/share/openldap-servers/db.ldif || true && \
- sudo ldapadd -c -D cn=admin,dc=icinga,dc=org -x -w admin -f /usr/share/openldap-servers/dit.ldif || true && \
- sudo ldapadd -c -D cn=admin,dc=icinga,dc=org -x -w admin -f /usr/share/openldap-servers/users.ldif || true',
- require => [
- Service['slapd'],
- File[[
- 'openldap/db.ldif',
- 'openldap/dit.ldif',
- 'openldap/users.ldif'
- ]]
- ],
- }
-
- # TODO(el): Should be a module
- package { 'php-deepend-Mockery':
- ensure => latest,
- }
- -> exec { 'move-mockery-to-opt':
- command => 'cp -R /usr/share/php/Mockery* /opt/rh/rh-php73/root/usr/share/php/',
- unless => 'test -d /opt/rh/rh-php73/root/usr/share/php/Mockery'
- }
-}
diff --git a/.puppet/profiles/icingaweb2_dev/templates/authentication.ini.erb b/.puppet/profiles/icingaweb2_dev/templates/authentication.ini.erb
deleted file mode 100644
index 87f9f53ed..000000000
--- a/.puppet/profiles/icingaweb2_dev/templates/authentication.ini.erb
+++ /dev/null
@@ -1,16 +0,0 @@
-[autologin]
-backend = external
-
-[icingaweb-mysql]
-backend = db
-resource = icingaweb-mysql
-
-[icingaweb-pgsql]
-backend = db
-resource = icingaweb-pgsql
-
-[local-ldap]
-backend = ldap
-resource = local-ldap
-user_class = inetOrgPerson
-user_name_attribute = uid
diff --git a/.puppet/profiles/icingaweb2_dev/templates/config.ini.erb b/.puppet/profiles/icingaweb2_dev/templates/config.ini.erb
deleted file mode 100644
index 8fade6d9f..000000000
--- a/.puppet/profiles/icingaweb2_dev/templates/config.ini.erb
+++ /dev/null
@@ -1,8 +0,0 @@
-[logging]
-log = "file"
-file = "<%= @log %>"
-level = DEBUG
-
-[global]
-config_backend = "db"
-config_resource = "icingaweb-mysql"
diff --git a/.puppet/profiles/icingaweb2_dev/templates/icingaweb.conf.erb b/.puppet/profiles/icingaweb2_dev/templates/icingaweb.conf.erb
deleted file mode 100644
index 7196bbefa..000000000
--- a/.puppet/profiles/icingaweb2_dev/templates/icingaweb.conf.erb
+++ /dev/null
@@ -1,49 +0,0 @@
-Alias /<%= @web_path %> "/vagrant/public"
-
-
- Options SymLinksIfOwnerMatch
- AllowOverride None
-
-
- # Apache 2.4
-
- Require all granted
-
-
-
-
- # Apache 2.2
- Order allow,deny
- Allow from all
-
-
- SetEnv ICINGAWEB_CONFIGDIR <%= @config %>
- SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
-
- EnableSendfile Off
- DirectoryIndex index.php
-
-
- RewriteEngine on
- RewriteBase /<%= @web_path %>/
- RewriteCond %{REQUEST_FILENAME} -s [OR]
- RewriteCond %{REQUEST_FILENAME} -l [OR]
- RewriteCond %{REQUEST_FILENAME} -d
- RewriteRule ^.*$ - [NC,L]
- RewriteRule ^.*$ index.php [NC,L]
-
-
-
-
- SetHandler "proxy:fcgi://127.0.0.1:9000"
- ErrorDocument 503 /icingaweb2/error_unavailable.html
-
-
-
- DirectoryIndex error_norewrite.html
- ErrorDocument 404 /error_norewrite.html
-
-
-
-
-ProxyTimeout 3600
diff --git a/.puppet/profiles/icingaweb2_dev/templates/resources.ini.erb b/.puppet/profiles/icingaweb2_dev/templates/resources.ini.erb
deleted file mode 100644
index 8066a47a5..000000000
--- a/.puppet/profiles/icingaweb2_dev/templates/resources.ini.erb
+++ /dev/null
@@ -1,43 +0,0 @@
-[icingaweb-mysql]
-type = db
-db = mysql
-host = localhost
-port = 3306
-username = <%= @db_user %>
-password = <%= @db_pass %>
-dbname = <%= @db_name %>
-
-[icingaweb-pgsql]
-type = db
-db = pgsql
-host = localhost
-port = 5432
-username = <%= @db_user %>
-password = <%= @db_pass %>
-dbname = <%= @db_name %>
-
-[ido-mysql]
-type = db
-db = mysql
-host = localhost
-port = 3306
-password = icinga2
-username = icinga2
-dbname = icinga2
-
-[ido-pgsql]
-type = db
-db = pgsql
-host = localhost
-port = 5432
-password = icinga2
-username = icinga2
-dbname = icinga2
-
-[local-ldap]
-type = ldap
-hostname = localhost
-port = 389
-root_dn = "ou=people,dc=icinga,dc=org"
-bind_dn = "cn=admin,cn=config"
-bind_pw = admin
diff --git a/.puppet/profiles/icingaweb2_dev/templates/roles.ini.erb b/.puppet/profiles/icingaweb2_dev/templates/roles.ini.erb
deleted file mode 100644
index 98a885fd0..000000000
--- a/.puppet/profiles/icingaweb2_dev/templates/roles.ini.erb
+++ /dev/null
@@ -1,3 +0,0 @@
-[admins]
-users = icingaadmin
-permissions = *
diff --git a/Vagrantfile b/Vagrantfile
deleted file mode 100644
index bfb1a39ea..000000000
--- a/Vagrantfile
+++ /dev/null
@@ -1,59 +0,0 @@
-# -*- mode: ruby -*-
-# vi: set ft=ruby :
-
-# Icinga Web 2 | (c) 2013 Icinga Development Team | GPLv2+
-
-VAGRANTFILE_API_VERSION = "2"
-VAGRANT_REQUIRED_VERSION = "1.5.0"
-
-if ! defined? Vagrant.require_version
- if Gem::Version.new(Vagrant::VERSION) < Gem::Version.new(VAGRANT_REQUIRED_VERSION)
- puts "Vagrant >= " + VAGRANT_REQUIRED_VERSION + " required. Your version is " + Vagrant::VERSION
- exit 1
- end
-else
- Vagrant.require_version ">= " + VAGRANT_REQUIRED_VERSION
-end
-
-Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
- config.vm.network "forwarded_port", guest: 80, host: 8080,
- auto_correct: true
- config.vm.network "forwarded_port", guest: 443, host: 8443,
- auto_correct: true
-
- config.vm.box = "bento/centos-7"
-
- config.vm.provision :shell, :path => ".puppet/manifests/puppet.sh"
-
- config.vm.provider :parallels do |p, override|
- p.name = "Icinga Web 2 Development"
-
- # Set power consumption mode to "Better Performance"
- p.optimize_power_consumption = false
-
- p.memory = 1024
- p.cpus = 2
- end
-
- config.vm.provider :vmware_workstation do |v, override|
- v.vmx["memsize"] = "1024"
- v.vmx["numvcpus"] = "1"
- end
-
- config.vm.provider :virtualbox do |vb, override|
- vb.customize ["modifyvm", :id, "--memory", "1024"]
- vb.customize ["modifyvm", :id, "--cpus", "2"]
- end
-
- config.vm.provision :puppet do |puppet|
- puppet.hiera_config_path = ".puppet/hiera/hiera.yaml"
- puppet.module_path = [ ".puppet/modules", ".puppet/profiles" ]
- puppet.manifests_path = ".puppet/manifests"
- puppet.manifest_file = "site.pp"
- puppet.options = "--parser=future"
- end
-
- if File.exists?(".Vagrantfile.local") then
- eval(IO.read(".Vagrantfile.local"), binding)
- end
-end
diff --git a/doc/99-Vagrant.md b/doc/99-Vagrant.md
deleted file mode 100644
index a68f3d052..000000000
--- a/doc/99-Vagrant.md
+++ /dev/null
@@ -1,63 +0,0 @@
-# Vagrant
-
-This chapter explains how to setup the development environment
-for Icinga Web 2 inside a Vagrant VM.
-
-If you are looking for a demo setup, please use the official
-[Icinga Vagrant boxes](https://github.com/icinga/icinga-vagrant)
-instead.
-
-## Requirements
-
-* Vagrant >= version 1.5
-* VirtualBox or Parallels Desktop
-
-Parallels requires the additional provider plugin
-[vagrant-paralells](https://parallels.github.io/vagrant-parallels/docs/) to be installed:
-
-```
-$ vagrant plugin install vagrant-parallels
-```
-
-## General
-
-The Icinga Web 2 project ships with a Vagrant virtual machine that integrates
-the source code with various services and example data in a controlled
-environment. This enables developers and users to test
-MySQL and PostgreSQL backends as well as the LDAP authentication. All you
-have to do is install Vagrant and run:
-
-```
-vagrant up
-```
-
-> **Note:** The first boot of the vm takes a fairly long time because
-> you'll download a plain CentOS base box and Vagrant will automatically
-> provision the environment on the first go.
-
-After you should be able to browse [localhost:8080/icingaweb2](http://localhost:8080/icingaweb2).
-
-## Log into Icinga Web 2
-
-Both LDAP and a MySQL are configured as authentication backend. Please use one of the following login credentials:
-
-> LDAP:
->> **Username**: `jdoe`
-
->> **Password**: `password`
-
->MySQL:
->> **Username**: `icingaadmin`
-
->> **Password**: `icinga`
-
-
-
-## Testing the Source Code
-
-All software required to run tests is installed in the virtual machine.
-In order to run all tests you have to execute the following command:
-
-```
-vagrant ssh -c "icingacli test php unit"
-```