Skip to content
This repository was archived by the owner on Mar 28, 2019. It is now read-only.

Commit 3a0825a

Browse files
committed
Merge pull request #207 from tampakrap/server_config_more_cleanup
better handling of the directoryenv configuration
2 parents b9293bb + 8300fc2 commit 3a0825a

File tree

2 files changed

+80
-53
lines changed

2 files changed

+80
-53
lines changed

manifests/server.pp

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -27,35 +27,35 @@
2727
# }
2828
#
2929
class puppet::server (
30-
$autosign = undef,
31-
$bindaddress = '0.0.0.0',
32-
$ca = false,
33-
$config_version_cmd = '/usr/bin/git --git-dir $confdir/environments/$environment/.git rev-parse --short HEAD 2>/dev/null || echo',
34-
$dns_alt_names = undef,
35-
$enc = '',
36-
$enc_exec = '',
37-
$ensure = 'present',
38-
$directoryenvs = true,
39-
$environmentpath = undef,
40-
$basemodulepath = [],
41-
$default_manifest = undef,
42-
$manage_package = true,
43-
$manifest = '$confdir/modules/site/site.pp',
44-
$modulepath = ['$confdir/modules/site', '$confdir/env/$environment/dist'],
45-
$parser = undef,
46-
$manage_puppetdb = false,
47-
$report = true,
48-
$report_dir = $puppet::params::report_dir,
49-
$reportfrom = undef,
50-
$reports = ['store', 'https'],
51-
$reporturl = "https://${::fqdn}/reports",
52-
$servername = $::fqdn,
53-
$serverssl_ciphers = undef,
54-
$serverssl_protos = undef,
55-
$servertype = 'unicorn',
56-
$storeconfigs = undef,
57-
$stringify_facts = false,
58-
$package = $puppet::params::master_package,
30+
$autosign = undef,
31+
$bindaddress = '0.0.0.0',
32+
$ca = false,
33+
$config_version = '/usr/bin/git --git-dir $confdir/environments/$environment/.git rev-parse --short HEAD 2>/dev/null || echo',
34+
$dns_alt_names = undef,
35+
$enc = '',
36+
$enc_exec = '',
37+
$ensure = 'present',
38+
$directoryenvs = true,
39+
$environmentpath = '$confdir/environments',
40+
$basemodulepath = [],
41+
$default_manifest = undef,
42+
$manage_package = true,
43+
$manifest = undef,
44+
$modulepath = [],
45+
$parser = undef,
46+
$manage_puppetdb = false,
47+
$report = true,
48+
$report_dir = $puppet::params::report_dir,
49+
$reportfrom = undef,
50+
$reports = ['store', 'https'],
51+
$reporturl = "https://${::fqdn}/reports",
52+
$servername = $::fqdn,
53+
$serverssl_ciphers = undef,
54+
$serverssl_protos = undef,
55+
$servertype = 'unicorn',
56+
$storeconfigs = undef,
57+
$stringify_facts = false,
58+
$package = $puppet::params::master_package,
5959
) inherits puppet::params {
6060

6161
validate_bool($ca)

manifests/server/config.pp

Lines changed: 51 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -10,32 +10,62 @@
1010
}
1111

1212
if $puppet::server::directoryenvs == true {
13-
validate_string($puppet::server::environmentpath)
14-
validate_string($puppet::server::default_manifest)
13+
if $puppet::server::environmentpath {
14+
validate_string($puppet::server::environmentpath)
15+
$environmentpath_ensure = 'present'
16+
} else {
17+
$environmentpath_ensure = 'absent'
18+
}
1519

16-
$env_ensure = 'present'
17-
$basemod_ensure = 'present'
18-
$default_manifest_ensure = 'present'
20+
if $puppet::server::basemodulepath {
21+
$basemodulepath_ensure = 'present'
22+
} else {
23+
$basemodulepath_ensure = 'absent'
24+
}
1925

20-
# Remove deprecated settings
21-
$mod_ensure = 'absent'
26+
if $puppet::server::default_manifest {
27+
validate_string($puppet::server::default_manifest)
28+
$default_manifest_ensure = 'present'
29+
} else {
30+
$default_manifest_ensure = 'absent'
31+
}
32+
$manifest_ensure = 'absent'
33+
$modulepath_ensure = 'absent'
34+
$config_version_ensure = 'absent'
2235
} else {
23-
$env_ensure = 'absent'
24-
$basemod_ensure = 'absent'
25-
$default_manifest_ensure = 'absent'
36+
if $puppet::server::manifest {
37+
validate_string($puppet::server::manifest)
38+
$manifest_ensure = 'present'
39+
} else {
40+
$manifest_ensure = 'absent'
41+
}
42+
43+
if $puppet::server::modulepath {
44+
$modulepath_ensure = 'present'
45+
} else {
46+
$modulepath_ensure = 'absent'
47+
}
48+
49+
if $puppet::server::config_version {
50+
validate_string($puppet::server::config_version)
51+
$config_version_ensure = 'present'
52+
} else {
53+
$config_version_ensure = 'absent'
54+
}
2655

27-
# Leave deprecated settings in place
28-
$mod_ensure = 'present'
56+
$environmentpath_ensure = 'absent'
57+
$basemodulepath_ensure = 'absent'
58+
$default_manifest_ensure = 'absent'
2959
}
3060

3161
ini_setting {
3262
'environmentpath':
33-
ensure => $env_ensure,
63+
ensure => $environmentpath_ensure,
3464
setting => 'environmentpath',
3565
value => $puppet::server::environmentpath;
3666

3767
'basemodulepath':
38-
ensure => $basemod_ensure,
68+
ensure => $basemodulepath_ensure,
3969
setting => 'basemodulepath',
4070
value => join(flatten([$puppet::server::basemodulepath]), ':');
4171

@@ -45,15 +75,20 @@
4575
value => $puppet::server::default_manifest;
4676

4777
'modulepath':
48-
ensure => $mod_ensure,
78+
ensure => $modulepath_ensure,
4979
setting => 'modulepath',
5080
value => join(flatten([$puppet::server::modulepath]), ':');
5181

5282
'manifest':
53-
ensure => $mod_ensure,
83+
ensure => $manifest_ensure,
5484
setting => 'manifest',
5585
value => $puppet::server::manifest;
5686

87+
'config_version':
88+
ensure => $config_version_ensure,
89+
setting => 'config_version',
90+
value => $puppet::server::config_version;
91+
5792
'user':
5893
setting => 'user',
5994
value => $puppet::user;
@@ -79,14 +114,6 @@
79114
}
80115
}
81116

82-
if $puppet::server::config_version_cmd {
83-
ini_setting { 'config_version':
84-
ensure => $mod_ensure,
85-
setting => 'config_version',
86-
value => $puppet::server::config_version_cmd,
87-
}
88-
}
89-
90117
if $puppet::server::ssl_client_header {
91118
ini_setting {
92119
'ssl_client_header':

0 commit comments

Comments
 (0)