summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMicah Anderson <micah@riseup.net>2013-06-28 12:11:32 -0400
committerMicah Anderson <micah@riseup.net>2013-06-30 12:38:03 -0400
commit3b6f11a60778d5cb3ae265980e4e4870bf065de2 (patch)
tree669aca1a87364d8381304224d1497c6c963ab77e
parente6bd481933bd4104fb7839703c88de971559d3db (diff)
modularize and standardize site_sshd:
. move the setting of the xterm title to site_config::shell . change the xterm file resource to use standard source lines, switch to single quotes, quote mode, and line up parameters . move the mosh pieces into a site_ssh::mosh class and only include it if the right mosh variable is enabled, passing into the class the necessary hiera parameters . lint the site_ssh::mosh resources . change the authorized_keys class to accept the key parameter which is passed in from the main ssh class (but allow for out of scope variable lookup when the tag is passed) Change-Id: Ieec5a3932de9bad1b98633032b28f88e91e46604
-rw-r--r--puppet/modules/site_config/files/xterm-title.sh (renamed from puppet/modules/site_sshd/files/xterm-title.sh)0
-rw-r--r--puppet/modules/site_config/manifests/shell.pp12
-rw-r--r--puppet/modules/site_sshd/manifests/authorized_keys.pp4
-rw-r--r--puppet/modules/site_sshd/manifests/init.pp41
-rw-r--r--puppet/modules/site_sshd/manifests/mosh.pp21
5 files changed, 49 insertions, 29 deletions
diff --git a/puppet/modules/site_sshd/files/xterm-title.sh b/puppet/modules/site_config/files/xterm-title.sh
index 3cff0e3a..3cff0e3a 100644
--- a/puppet/modules/site_sshd/files/xterm-title.sh
+++ b/puppet/modules/site_config/files/xterm-title.sh
diff --git a/puppet/modules/site_config/manifests/shell.pp b/puppet/modules/site_config/manifests/shell.pp
index b1a65389..5b8c025d 100644
--- a/puppet/modules/site_config/manifests/shell.pp
+++ b/puppet/modules/site_config/manifests/shell.pp
@@ -7,4 +7,16 @@ class site_config::shell {
owner => root,
group => root;
}
+
+ ##
+ ## XTERM TITLE
+ ##
+
+ file { '/etc/profile.d/xterm-title.sh':
+ source => 'puppet:///modules/site_config/xterm-title.sh',
+ owner => root,
+ group => 0,
+ mode => '0644';
+ }
+
}
diff --git a/puppet/modules/site_sshd/manifests/authorized_keys.pp b/puppet/modules/site_sshd/manifests/authorized_keys.pp
index edd6e3c4..8e0c15ac 100644
--- a/puppet/modules/site_sshd/manifests/authorized_keys.pp
+++ b/puppet/modules/site_sshd/manifests/authorized_keys.pp
@@ -1,6 +1,6 @@
-class site_sshd::authorized_keys {
+class site_sshd::authorized_keys ( $keys = $site_sshd::authorized_keys ) {
tag 'leap_authorized_keys'
- create_resources(site_sshd::authorized_keys::key, $site_sshd::ssh_authorized_keys)
+ create_resources(site_sshd::authorized_keys::key, $keys)
}
diff --git a/puppet/modules/site_sshd/manifests/init.pp b/puppet/modules/site_sshd/manifests/init.pp
index 714c0c5a..905d5c9b 100644
--- a/puppet/modules/site_sshd/manifests/init.pp
+++ b/puppet/modules/site_sshd/manifests/init.pp
@@ -1,16 +1,14 @@
class site_sshd {
$ssh = hiera_hash('ssh')
- $ssh_authorized_keys = $ssh['authorized_keys']
-
- include site_sshd::authorized_keys
##
- ## XTERM TITLE
+ ## SETUP AUTHORIZED KEYS
##
- file {'/etc/profile.d/xterm-title.sh':
- source => "puppet://$server/modules/site_sshd/xterm-title.sh",
- owner => root, group => 0, mode => 0644;
+ $authorized_keys = $ssh['authorized_keys']
+
+ class { 'site_sshd::authorized_keys':
+ keys => $authorized_keys
}
##
@@ -18,27 +16,16 @@ class site_sshd {
##
$mosh = $ssh['mosh']
- $mosh_ports = $mosh['ports']
- if $ssh['mosh']['enabled'] {
- $mosh_ensure = present
- } else {
- $mosh_ensure = absent
- }
- package { 'mosh':
- ensure => $mosh_ensure;
- }
- file { '/etc/shorewall/macro.mosh':
- ensure => $mosh_ensure,
- content => "PARAM - - udp $mosh_ports",
- notify => Service['shorewall'],
- require => Package['shorewall'];
+ if $mosh['enabled'] {
+ class { 'site_sshd::mosh':
+ ensure => present,
+ ports => $mosh['ports']
+ }
}
- shorewall::rule { 'net2fw-mosh':
- ensure => $mosh_ensure,
- source => 'net',
- destination => '$FW',
- action => 'mosh(ACCEPT)',
- order => 200;
+ else {
+ class { 'site_sshd::mosh':
+ ensure => absent
+ }
}
}
diff --git a/puppet/modules/site_sshd/manifests/mosh.pp b/puppet/modules/site_sshd/manifests/mosh.pp
new file mode 100644
index 00000000..49f56ca0
--- /dev/null
+++ b/puppet/modules/site_sshd/manifests/mosh.pp
@@ -0,0 +1,21 @@
+class site_sshd::mosh ( $ensure = present, $ports = '60000-61000' ) {
+
+ package { 'mosh':
+ ensure => $ensure
+ }
+
+ file { '/etc/shorewall/macro.mosh':
+ ensure => $ensure,
+ content => "PARAM - - udp ${ports}",
+ notify => Service['shorewall'],
+ require => Package['shorewall'];
+ }
+
+ shorewall::rule { 'net2fw-mosh':
+ ensure => $ensure,
+ source => 'net',
+ destination => '$FW',
+ action => 'mosh(ACCEPT)',
+ order => 200;
+ }
+}