Skip to content

Commit aac333c

Browse files
author
erik-smit
committed
Initial commit, standard42 clone
0 parents  commit aac333c

18 files changed

+1044
-0
lines changed

.gitignore

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
/.gradle
2+
/metadata.json
3+
/.rvmrc
4+
build
5+
pkg/
6+
Session.vim
7+
spec/fixtures
8+
.*.sw[a-z]
9+
*.un~

.project

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<projectDescription>
3+
<name>pdns_recursor</name>
4+
<comment></comment>
5+
<projects>
6+
</projects>
7+
<buildSpec>
8+
<buildCommand>
9+
<name>org.cloudsmith.geppetto.pp.dsl.ui.modulefileBuilder</name>
10+
<arguments>
11+
</arguments>
12+
</buildCommand>
13+
<buildCommand>
14+
<name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
15+
<arguments>
16+
</arguments>
17+
</buildCommand>
18+
</buildSpec>
19+
<natures>
20+
<nature>org.cloudsmith.geppetto.pp.dsl.ui.puppetNature</nature>
21+
<nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
22+
</natures>
23+
</projectDescription>

Modulefile

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
name 'example42-pdns_recursor'
2+
version '2.0.10'
3+
4+
author 'Alessandro Franceschi'
5+
license 'Apache2'
6+
project_page 'http://www.example42.com'
7+
source 'https://github.com/example42/puppet-pdns_recursor'
8+
summary 'Puppet module for pdns_recursor'
9+
description 'This module installs and manages pdns_recursor. Check README for details.'
10+
dependency 'example42/puppi', '>=2.0.0'
11+
dependency 'example42/firewall', '>=2.0.0'
12+
dependency 'example42/monitor', '>=2.0.0'

README.rdoc

+116
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
1+
= Puppet module: pdns_recursor
2+
3+
This is a Puppet module for pdns_recursor based on the second generation layout ("NextGen") of Example42 Puppet Modules.
4+
5+
Made by Alessandro Franceschi / Lab42
6+
7+
Official site: http://www.example42.com
8+
9+
Official git repository: http://github.com/example42/puppet-pdns_recursor
10+
11+
Released under the terms of Apache 2 License.
12+
13+
This module requires functions provided by the Example42 Puppi module (you need it even if you don't use and install Puppi)
14+
15+
For detailed info about the logic and usage patterns of Example42 modules check the DOCS directory on Example42 main modules set.
16+
17+
18+
== USAGE - Basic management
19+
20+
* Install pdns_recursor with default settings
21+
22+
class { 'pdns_recursor': }
23+
24+
* Install a specific version of pdns_recursor package
25+
26+
class { 'pdns_recursor':
27+
version => '1.0.1',
28+
}
29+
30+
* Disable pdns_recursor service.
31+
32+
class { 'pdns_recursor':
33+
disable => true
34+
}
35+
36+
* Remove pdns_recursor package
37+
38+
class { 'pdns_recursor':
39+
absent => true
40+
}
41+
42+
* Enable auditing without without making changes on existing pdns_recursor configuration *files*
43+
44+
class { 'pdns_recursor':
45+
audit_only => true
46+
}
47+
48+
* Module dry-run: Do not make any change on *all* the resources provided by the module
49+
50+
class { 'pdns_recursor':
51+
noops => true
52+
}
53+
54+
55+
== USAGE - Overrides and Customizations
56+
* Use custom sources for main config file
57+
58+
class { 'pdns_recursor':
59+
source => [ "puppet:///modules/example42/pdns_recursor/pdns-recursor.conf-${hostname}" , "puppet:///modules/example42/pdns-recursor/pdns-recursor.conf" ],
60+
}
61+
62+
63+
* Use custom source directory for the whole configuration dir
64+
65+
class { 'pdns_recursor':
66+
source_dir => 'puppet:///modules/example42/pdns_recursor/conf/',
67+
source_dir_purge => false, # Set to true to purge any existing file not present in $source_dir
68+
}
69+
70+
* Use custom template for main config file. Note that template and source arguments are alternative.
71+
72+
class { 'pdns_recursor':
73+
template => 'example42/pdns_recursor/pdns-recursor.conf.erb',
74+
}
75+
76+
* Automatically include a custom subclass
77+
78+
class { 'pdns_recursor':
79+
my_class => 'example42::my_pdns_recursor',
80+
}
81+
82+
83+
== USAGE - Example42 extensions management
84+
* Activate puppi (recommended, but disabled by default)
85+
86+
class { 'pdns_recursor':
87+
puppi => true,
88+
}
89+
90+
* Activate puppi and use a custom puppi_helper template (to be provided separately with a puppi::helper define ) to customize the output of puppi commands
91+
92+
class { 'pdns_recursor':
93+
puppi => true,
94+
puppi_helper => 'myhelper',
95+
}
96+
97+
* Activate automatic monitoring (recommended, but disabled by default). This option requires the usage of Example42 monitor and relevant monitor tools modules
98+
99+
class { 'pdns_recursor':
100+
monitor => true,
101+
monitor_tool => [ 'nagios' , 'monit' , 'munin' ],
102+
}
103+
104+
* Activate automatic firewalling. This option requires the usage of Example42 firewall and relevant firewall tools modules
105+
106+
class { 'pdns_recursor':
107+
firewall => true,
108+
firewall_tool => 'iptables',
109+
firewall_src => '10.42.0.0/24',
110+
firewall_dst => $ipaddress_eth0,
111+
}
112+
113+
114+
== CONTINUOUS TESTING
115+
116+
Travis {<img src="https://travis-ci.org/example42/puppet-pdns_recursor.png?branch=master" alt="Build Status" />}[https://travis-ci.org/example42/puppet-pdns-recursor]

Rakefile

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
require 'rubygems'
2+
require 'puppetlabs_spec_helper/rake_tasks'
3+
require 'puppet-lint/tasks/puppet-lint'
4+
PuppetLint.configuration.send('disable_80chars')
5+
PuppetLint.configuration.send('disable_class_parameter_defaults')

files/munin-pdns_recursor

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Subproject commit 9b6431aa50e207615743727afb908460cf79bbb5

0 commit comments

Comments
 (0)