summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore4
-rwxr-xr-xaddhost5
-rw-r--r--cdr1.sunet.se/README3
l---------cdr1.sunet.se/default/README1
-rw-r--r--cdr1.sunet.se/overlay/etc/network/interfaces52
-rw-r--r--cdr2.sunet.se/README3
l---------cdr2.sunet.se/default/README1
-rw-r--r--cdr2.sunet.se/overlay/etc/network/interfaces52
l---------cosmos-site.pp1
-rw-r--r--cosmos.conf2
-rw-r--r--fabfile/__init__.pycbin2999 -> 0 bytes
-rw-r--r--global/overlay/etc/cosmos/keys/ft-4030CCAD.pub31
-rw-r--r--global/overlay/etc/cosmos/keys/ft-505152DD.pub104
-rw-r--r--global/overlay/etc/cosmos/keys/leifj-1.pub58
-rw-r--r--global/overlay/etc/cosmos/keys/leifj-662D4043.pub57
-rw-r--r--global/overlay/etc/cosmos/keys/swold-BD115DD6.pub65
-rw-r--r--global/overlay/etc/puppet/cosmos-modules.conf5
-rw-r--r--global/overlay/etc/puppet/cosmos-rules.yaml8
-rw-r--r--global/overlay/etc/puppet/manifests/cosmos-site.pp231
-rw-r--r--global/overlay/etc/puppet/modules/sunet/manifests/encrypted_swap.pp12
-rw-r--r--global/overlay/etc/puppet/modules/sunet/manifests/ethernet_bonding.pp19
-rw-r--r--global/overlay/etc/puppet/modules/sunet/manifests/server.pp9
l---------manifests1
l---------sto-tug-kvm-lab1.swamid.se/README1
l---------sto-tug-kvm1.swamid.se/README1
l---------sto-tug-kvm1.swamid.se/default/README1
-rw-r--r--sto-tug-kvm1.swamid.se/overlay/etc/network/interfaces24
l---------wp.sunet.se/README1
-rw-r--r--wp.sunet.se/overlay/etc/hiera/data/secrets.yaml.asc23
29 files changed, 767 insertions, 8 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..8441db8
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+*~
+\#*
+.*~
+fabfile/__init__.pyc
diff --git a/addhost b/addhost
index 033c16b..6c4fd38 100755
--- a/addhost
+++ b/addhost
@@ -37,6 +37,11 @@ defrepo=`git remote -v | grep ${remote:="ro"} | grep fetch | awk '{print $2}'`
rrepo=${repo:="$defrepo"}
rtag=${tag:="changeme"}
+if [ "x$rrepo" = "x" ]; then
+ echo "$0: repo not set in cosmos.conf and no git remote named 'ro' found"
+ exit 1
+fi
+
if [ ! -d $cmd_hostname ]; then
cp -pr default $cmd_fqdn
git add $cmd_fqdn
diff --git a/cdr1.sunet.se/README b/cdr1.sunet.se/README
new file mode 100644
index 0000000..a18dac1
--- /dev/null
+++ b/cdr1.sunet.se/README
@@ -0,0 +1,3 @@
+
+The system documentation is in the docs directory of the multiverse repository.
+
diff --git a/cdr1.sunet.se/default/README b/cdr1.sunet.se/default/README
new file mode 120000
index 0000000..59a23c4
--- /dev/null
+++ b/cdr1.sunet.se/default/README
@@ -0,0 +1 @@
+../README \ No newline at end of file
diff --git a/cdr1.sunet.se/overlay/etc/network/interfaces b/cdr1.sunet.se/overlay/etc/network/interfaces
new file mode 100644
index 0000000..9fc7e2a
--- /dev/null
+++ b/cdr1.sunet.se/overlay/etc/network/interfaces
@@ -0,0 +1,52 @@
+# This file describes the network interfaces available on your system
+# and how to activate them. For more information, see interfaces(5).
+#
+# ###################################################
+# # This file is maintained in
+# #
+# # #### #### #### # # #### ####
+# # # # # # # ## ## # # #
+# # # # # #### # ## # # # ####
+# # # # # # # # # # #
+# # # # # # # # # # # # # #
+# # #### #### #### # # #### ####
+# #
+# # ... so you can't just change it locally.
+# #
+# ###################################################
+
+# This file describes the network interfaces available on your system
+# and how to activate them. For more information, see interfaces(5).
+
+# The loopback network interface
+auto lo
+iface lo inet loopback
+
+auto eth0
+iface eth0 inet manual
+bond-master bond0
+bond-primary eth0
+
+auto eth1
+iface eth1 inet manual
+bond-master bond0
+
+# bond0 is the bonding NIC and can be used like any other normal NIC.
+auto bond0
+iface bond0 inet static
+ address 130.242.125.70
+ netmask 255.255.255.192
+ network 130.242.125.64
+ broadcast 130.242.125.127
+ gateway 130.242.125.65
+ # dns-* options are implemented by the resolvconf package, if installed
+ dns-nameservers 130.242.80.14 130.242.80.99
+ dns-search sunet.se
+ bond-mode active-backup
+ bond-miimon 100
+ bond-slaves none
+
+iface bond0 inet6 static
+ address 2001:6b0:8:4::70
+ netmask 64
+ gateway 2001:6b0:8:4::1
diff --git a/cdr2.sunet.se/README b/cdr2.sunet.se/README
new file mode 100644
index 0000000..a18dac1
--- /dev/null
+++ b/cdr2.sunet.se/README
@@ -0,0 +1,3 @@
+
+The system documentation is in the docs directory of the multiverse repository.
+
diff --git a/cdr2.sunet.se/default/README b/cdr2.sunet.se/default/README
new file mode 120000
index 0000000..59a23c4
--- /dev/null
+++ b/cdr2.sunet.se/default/README
@@ -0,0 +1 @@
+../README \ No newline at end of file
diff --git a/cdr2.sunet.se/overlay/etc/network/interfaces b/cdr2.sunet.se/overlay/etc/network/interfaces
new file mode 100644
index 0000000..0eb619d
--- /dev/null
+++ b/cdr2.sunet.se/overlay/etc/network/interfaces
@@ -0,0 +1,52 @@
+# This file describes the network interfaces available on your system
+# and how to activate them. For more information, see interfaces(5).
+#
+# ###################################################
+# # This file is maintained in
+# #
+# # #### #### #### # # #### ####
+# # # # # # # ## ## # # #
+# # # # # #### # ## # # # ####
+# # # # # # # # # # #
+# # # # # # # # # # # # # #
+# # #### #### #### # # #### ####
+# #
+# # ... so you can't just change it locally.
+# #
+# ###################################################
+
+# This file describes the network interfaces available on your system
+# and how to activate them. For more information, see interfaces(5).
+
+# The loopback network interface
+auto lo
+iface lo inet loopback
+
+auto eth0
+iface eth0 inet manual
+bond-master bond0
+bond-primary eth0
+
+auto eth1
+iface eth1 inet manual
+bond-master bond0
+
+# bond0 is the bonding NIC and can be used like any other normal NIC.
+auto bond0
+iface bond0 inet static
+ address 130.242.125.134
+ netmask 255.255.255.192
+ network 130.242.125.128
+ broadcast 130.242.125.191
+ gateway 130.242.125.129
+ # dns-* options are implemented by the resolvconf package, if installed
+ dns-nameservers 130.242.80.14 130.242.80.99
+ dns-search sunet.se
+ bond-mode active-backup
+ bond-miimon 100
+ bond-slaves none
+
+iface bond0 inet6 static
+ address 2001:6b0:8:5::134
+ netmask 64
+ gateway 2001:6b0:8:5::1
diff --git a/cosmos-site.pp b/cosmos-site.pp
new file mode 120000
index 0000000..20f0c11
--- /dev/null
+++ b/cosmos-site.pp
@@ -0,0 +1 @@
+global/overlay/etc/puppet/manifests/cosmos-site.pp \ No newline at end of file
diff --git a/cosmos.conf b/cosmos.conf
index 32f286a..4c4e50c 100644
--- a/cosmos.conf
+++ b/cosmos.conf
@@ -1,2 +1,2 @@
-tag="eduid-cosmos"
+tag="sunet-ops"
#repo=git://override-repo-URL
diff --git a/fabfile/__init__.pyc b/fabfile/__init__.pyc
deleted file mode 100644
index d66ff5d..0000000
--- a/fabfile/__init__.pyc
+++ /dev/null
Binary files differ
diff --git a/global/overlay/etc/cosmos/keys/ft-4030CCAD.pub b/global/overlay/etc/cosmos/keys/ft-4030CCAD.pub
new file mode 100644
index 0000000..382e9aa
--- /dev/null
+++ b/global/overlay/etc/cosmos/keys/ft-4030CCAD.pub
@@ -0,0 +1,31 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1.4.14 (GNU/Linux)
+
+mQENBFKc1s0BCAC+m7xongUWnXgOgKs4J+Becypvj0v0p2A2d6NNCzH/1kydQGyP
+6LLzQzjdAYqHfJswYzzZuA/iUN0oLdiIm+zLugOR+zIFROta88+tu57fcYzwbfDR
+Ota7mkA+EqVi5PzsCSDnuAfePjeYPQnDInDkZ0KYAiJ82zVAs2GM9FmIxR6GAa7k
+nO6RaH/6UaCwDnVmPOhY0ikeh706NHM5IAXwC8DY6eFv0675nr+YsPzSWjYdXVsw
+dwJJraCYxeUaWE8aLnnc5dhyCx3IuTgy9cNsIClI15iqRWhP51pehXwSTWMAXUbT
+Omt2VxVM8Goqtqs6TcUF+SumYncJekTvoIM5ABEBAAG0MEZyZWRyaWsgVGh1bGlu
+IChkZXZpY2Uga2V5KSA8ZnJlZHJpa0B0aHVsaW4ubmV0PokBPQQTAQoAJwUCUp2g
+jQIbAwUJACXM4wULCQgHAwUVCgkICwUWAgMBAAIeAQIXgAAKCRAnBzMNQDDMrRkw
+CACsroVddZd3IONomyLWEa6h2X/L5gF0N/VnSB+pXHqDETJ4u9UTC+be8pqlIhfA
++79YGjkmjvGMixJTAUO6ysAZrttnTrzGq6ZzXYuVifk8soZQkRRqKU65sVFC8Axw
+dkfPlQOxUbqXwXnjQy8UlnJAl0lFclugercS/Q1Ij1eEZi4UIadLlbAxw5HzpQsr
+7+z2MJEpX8NW7ZEGhXbU6ULJV0+q5YKiAkrX1VTM/4yJ5lZLZSLfXAlBjmSqDBS5
+uc5jG6E6ORkXUDlGwV17LY8b4pn3mCTN6vR6eGu9ZFgRzjbMcZVHW0wcA4e4eouK
+HiaktvQ+qDSpefaCfj8aI7xHuQENBFKc1s0BCACXeL1RFvXY3AEhm+AtLvKJQNjo
+cgEk/UZp+P3+e0MmVf9BR1O5+NW2mBH3mO6itUv0w2R2athJCdKR8MW4WLpJ1myi
+nR7bBFOZS7XxZM5acN4WSN3b6d/E+7YUVWw4CM6IqWMUdVKtOAMCIuP4eU6QHGcb
+yDTtBYUzEA1eP55pyFEKe46dJ8tdIgyGePoAsEqijud1VtwQ5fH8/WuGzTKPUWcc
+KmFPEcubgam1od+jTt9UOnpG2r3Gi0hp7C4HqpqADf+sqo00kQi7kEXWgjZ5SZxx
+vzOMUu9mg0HtXEyQs2HYPD0NXSsfEN6kO5Rwy6SJcsSgfQ6CxMipS7XuBfWHABEB
+AAGJASUEGAECAA8FAlKc1s0CGwwFCQAlzOMACgkQJwczDUAwzK0arAf/cAqiOFPR
+6Ov8qtV2xcDbod+/l0J0eoW7cnoNfeaJSzVr1ZFpfGWbDbX1dlq562Z2fkk20Ls8
+DCm+zfadvRUUUaxVF1TgFjaH88wR9Q5FjFfCUIErilKJO+4CTeMQhVqIGqLNiEk+
+9nv81yLWoPkMX8iXXVa/5TrmDR/jfWzKJTGbF/HrukriSTCpJDrnrvzgS3Dss4KR
+MIGG/utS35rkLgn9mCA3/lO+W+tTi/4kjZLnGJ+aAA0OFIZ1cMzRnf61ZxpenyDF
+2GWRa05a+XRo0WyYPCfFtr9kkN2F5gPYDXKf68jo5HJi0R6jLOkg4f4oXFPytKhX
+JhCC/EV8NygYlA==
+=pVDS
+-----END PGP PUBLIC KEY BLOCK-----
diff --git a/global/overlay/etc/cosmos/keys/ft-505152DD.pub b/global/overlay/etc/cosmos/keys/ft-505152DD.pub
new file mode 100644
index 0000000..092b32e
--- /dev/null
+++ b/global/overlay/etc/cosmos/keys/ft-505152DD.pub
@@ -0,0 +1,104 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1.4.14 (GNU/Linux)
+
+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
+=T6TK
+-----END PGP PUBLIC KEY BLOCK-----
diff --git a/global/overlay/etc/cosmos/keys/leifj-1.pub b/global/overlay/etc/cosmos/keys/leifj-1.pub
new file mode 100644
index 0000000..7787be9
--- /dev/null
+++ b/global/overlay/etc/cosmos/keys/leifj-1.pub
@@ -0,0 +1,58 @@
+
+Leif Johansson :
+
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1.4.11 (GNU/Linux)
+
+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
+=TBju
+-----END PGP PUBLIC KEY BLOCK-----
diff --git a/global/overlay/etc/cosmos/keys/leifj-662D4043.pub b/global/overlay/etc/cosmos/keys/leifj-662D4043.pub
new file mode 100644
index 0000000..ac40ecd
--- /dev/null
+++ b/global/overlay/etc/cosmos/keys/leifj-662D4043.pub
@@ -0,0 +1,57 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1.4.12 (GNU/Linux)
+
+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
+HP+E5bBF8bsgpxZjoMczcaYBOl2L
+=Lw2U
+-----END PGP PUBLIC KEY BLOCK-----
diff --git a/global/overlay/etc/cosmos/keys/swold-BD115DD6.pub b/global/overlay/etc/cosmos/keys/swold-BD115DD6.pub
new file mode 100644
index 0000000..ecc5c8c
--- /dev/null
+++ b/global/overlay/etc/cosmos/keys/swold-BD115DD6.pub
@@ -0,0 +1,65 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1.4.12 (GNU/Linux)
+
+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
+=iEp/
+-----END PGP PUBLIC KEY BLOCK-----
diff --git a/global/overlay/etc/puppet/cosmos-modules.conf b/global/overlay/etc/puppet/cosmos-modules.conf
index af786c4..b0a91f4 100644
--- a/global/overlay/etc/puppet/cosmos-modules.conf
+++ b/global/overlay/etc/puppet/cosmos-modules.conf
@@ -8,6 +8,7 @@ ufw attachmentgenie/ufw no
apt puppetlabs/apt no
vcsrepo puppetlabs/vcsrepo no
xinetd puppetlabs/xinetd no
-#golang elithrar/golang yes
-#python git://github.com/stankevich/puppet-python.git yes
+golang elithrar/golang yes
+python git://github.com/stankevich/puppet-python.git yes
+dhcp git://github.com/SUNET/puppetlabs-dhcp yes
hiera-gpg git://github.com/SUNET/hiera-gpg.git no
diff --git a/global/overlay/etc/puppet/cosmos-rules.yaml b/global/overlay/etc/puppet/cosmos-rules.yaml
index d9dc495..2244c7a 100644
--- a/global/overlay/etc/puppet/cosmos-rules.yaml
+++ b/global/overlay/etc/puppet/cosmos-rules.yaml
@@ -1,2 +1,6 @@
-'ns[0-9]?.mnt.se$':
- nameserver:
+# Don't enable class sunet for all hosts until tested.
+#'\.sunet\.se$':
+# sunet:
+'^cdr\d+\.sunet\.se$':
+ sunet-cdr:
+ sunet:
diff --git a/global/overlay/etc/puppet/manifests/cosmos-site.pp b/global/overlay/etc/puppet/manifests/cosmos-site.pp
index c276f84..737045a 100644
--- a/global/overlay/etc/puppet/manifests/cosmos-site.pp
+++ b/global/overlay/etc/puppet/manifests/cosmos-site.pp
@@ -17,7 +17,7 @@ include cosmos
# you need a default node
-node default {
+node default {
}
@@ -33,8 +33,8 @@ node default {
#class nameserver {
# package {'bind9':
-# ensure => latest
-# }
+# ensure => latest
+# }
# service {'bind9':
# ensure => running
# }
@@ -50,3 +50,228 @@ node default {
# }
#}
+
+ufw::allow {"allow-ssh-tcp":
+ ip => 'any',
+ port => 22,
+ proto => 'tcp'
+}
+
+node 'sto-tug-kvm1.swamid.se' {
+
+ class { 'dhcp':
+ dnsdomain => [ 'eduid.se','sunet.se' ],
+ nameservers => ['130.242.80.14','130.242.80.99'],
+ ntpservers => ['pool.ntp.org'],
+ interfaces => ['eth0'],
+ #pxeserver => '130.242.125.5',
+ #pxefilename => 'pxelinux.0'
+ }
+
+ class { 'sunet-dhcp-hosts': }
+
+}
+
+class sunet-dhcp-hosts {
+
+ dhcp::pool {'sunet-servernet-tug-130.242.125.64/26':
+ network => '130.242.125.64',
+ mask => '255.255.255.192',
+ gateway => '130.242.125.65',
+ range => ''
+ }
+
+ dhcp::pool {'sunet-servernet-fre-130.242.125.128/26':
+ network => '130.242.125.128',
+ mask => '255.255.255.192',
+ gateway => '130.242.125.129',
+ range => ''
+ }
+
+ dhcp::pool {'install':
+ network => '130.242.125.0',
+ mask => '255.255.255.192',
+ gateway => '130.242.125.1',
+ range => ''
+ }
+
+ dhcp::pool {'eduid-tug-IdP':
+ network => '130.242.130.0',
+ mask => '255.255.255.248',
+ gateway => '130.242.130.1',
+ range => ''
+ }
+
+ dhcp::pool {'eduid-tug-auth':
+ network => '130.242.130.8',
+ mask => '255.255.255.248',
+ gateway => '130.242.130.9',
+ range => ''
+ }
+
+ dhcp::pool {'eduid-tug-other':
+ network => '130.242.130.16',
+ mask => '255.255.255.240',
+ gateway => '130.242.130.17',
+ range => ''
+ }
+
+ dhcp::pool {'eduid-fre-IdP':
+ network => '130.242.130.64',
+ mask => '255.255.255.248',
+ gateway => '130.242.130.65',
+ range => ''
+ }
+
+ dhcp::pool {'eduid-fre-auth':
+ network => '130.242.130.72',
+ mask => '255.255.255.248',
+ gateway => '130.242.130.73',
+ range => ''
+ }
+
+ dhcp::pool {'eduid-fre-other':
+ network => '130.242.130.80',
+ mask => '255.255.255.240',
+ gateway => '130.242.130.81',
+ range => ''
+ }
+
+ dhcp::pool {'eduid-lla-other':
+ network => '130.242.130.144',
+ mask => '255.255.255.240',
+ gateway => '130.242.130.145',
+ range => ''
+ }
+
+
+ # eduID TUG hosts
+
+ dhcp::host { 'kvmidp-tug-2_eth0': mac => "24:b6:fd:fe:fa:51", ip => "130.242.130.4", hostname => 'kvmidp-tug-2'; }
+ dhcp::host { 'kvmidp-tug-2_eth1': mac => "24:b6:fd:fe:fa:52", ip => "130.242.130.4", hostname => 'kvmidp-tug-2'; }
+
+ dhcp::host { 'idp-tug-2a': mac => "52:54:00:01:00:01", ip => "130.242.130.5"; }
+
+ dhcp::host { 'idp-tug-2b': mac => "52:54:00:01:00:02", ip => "130.242.130.6"; }
+
+ dhcp::host { 'auth-tug-2_eth0': mac => "f0:4d:a2:73:4e:9b", ip => "130.242.130.12", hostname => 'auth-tug-2'; }
+ dhcp::host { 'auth-tug-2_eth1': mac => "f0:4d:a2:73:4e:9c", ip => "130.242.130.12", hostname => 'auth-tug-2'; }
+
+ dhcp::host { 'kvm-tug-2_eth0': mac => "f0:4d:a2:73:4f:82", ip => "130.242.130.20", hostname => 'kvm-tug-2'; }
+ dhcp::host { 'kvm-tug-2_eth1': mac => "f0:4d:a2:73:4f:83", ip => "130.242.130.20", hostname => 'kvm-tug-2'; }
+
+ dhcp::host { 'db-tug-2_eth0': mac => "24:b6:fd:fe:fa:f0", ip => "130.242.130.21", hostname => 'db-tug-2'; }
+ dhcp::host { 'db-tug-2_eth1': mac => "24:b6:fd:fe:fa:f1", ip => "130.242.130.21", hostname => 'db-tug-2'; }
+
+ dhcp::host { 'mq-tug-2': mac => "52:54:00:03:00:22", ip => "130.242.130.22"; }
+
+ dhcp::host { 'worker-tug-2': mac => "52:54:00:03:00:23", ip => "130.242.130.23"; }
+
+ dhcp::host { 'signup-tug-2': mac => "52:54:00:03:00:24", ip => "130.242.130.24"; }
+
+ dhcp::host { 'helpdesk-tug-2': mac => "52:54:00:03:00:25", ip => "130.242.130.25"; }
+
+ dhcp::host { 'www-tug-2': mac => "52:54:00:03:00:26", ip => "130.242.130.26"; }
+
+ dhcp::host { 'dashboard-tug-2_eth0': mac => "f0:4d:a2:73:4f:0d", ip => "130.242.130.30", hostname => 'dashboard-tug-2'; }
+ dhcp::host { 'dashboard-tug-2_eth1': mac => "f0:4d:a2:73:4f:0e", ip => "130.242.130.30", hostname => 'dashboard-tug-2'; }
+
+
+ # eduID FRE hosts
+
+ dhcp::host { 'kvmidp-fre-3_eth0': mac => "18:03:73:41:f3:e8", ip => "130.242.130.68", hostname => 'kvmidp-fre-3'; }
+ dhcp::host { 'kvmidp-fre-3_eth1': mac => "18:03:73:41:f3:e9", ip => "130.242.130.68", hostname => 'kvmidp-fre-3'; }
+
+ dhcp::host { 'idp-fre-3a': mac => "52:54:00:04:00:01", ip => "130.242.130.69"; }
+
+ dhcp::host { 'idp-fre-3b': mac => "52:54:00:04:00:02", ip => "130.242.130.70"; }
+
+ dhcp::host { 'auth-fre-3_eth0': mac => "18:03:73:0f:41:3c", ip => "130.242.130.76", hostname => 'auth-fre-3'; }
+ dhcp::host { 'auth-fre-3_eth1': mac => "18:03:73:0f:41:3d", ip => "130.242.130.76", hostname => 'auth-fre-3'; }
+
+ dhcp::host { 'kvm-fre-3_eth0': mac => "f0:4d:a2:73:4b:e3", ip => "130.242.130.84", hostname => 'kvm-fre-3'; }
+ dhcp::host { 'kvm-fre-3_eth1': mac => "f0:4d:a2:73:4b:e4", ip => "130.242.130.84", hostname => 'kvm-fre-3'; }
+
+ dhcp::host { 'www-fre-3': mac => "52:54:00:06:00:01", ip => "130.242.130.86"; }
+ dhcp::host { 'dashboard-fre-3': mac => "52:54:00:06:00:57", ip => "130.242.130.87"; }
+ dhcp::host { 'signup-fre-3': mac => "52:54:00:06:00:58", ip => "130.242.130.88"; }
+ dhcp::host { 'worker-fre-3': mac => "52:54:00:06:00:59", ip => "130.242.130.89"; }
+ dhcp::host { 'mq-fre-3': mac => "52:54:00:06:00:5a", ip => "130.242.130.90"; }
+
+ dhcp::host { 'db-fre-3_eth0': mac => "f0:4d:a2:73:4f:19", ip => "130.242.130.85", hostname => 'db-fre-3'; }
+ dhcp::host { 'db-fre-3_eth1': mac => "f0:4d:a2:73:4f:1a", ip => "130.242.130.85", hostname => 'db-fre-3'; }
+
+ dhcp::host { 'kvmapp-fre-3_eth0': mac => "78:45:c4:f7:90:ec", ip => "130.242.130.94", hostname => 'kvmapp-fre-3'; }
+ dhcp::host { 'kvmapp-fre-3_eth1': mac => "78:45:c4:f7:90:ed", ip => "130.242.130.94", hostname => 'kvmapp-fre-3'; }
+
+ # eduID LLA hosts
+
+ dhcp::host { 'db-lla-2_eth0': mac => "f0:4d:a2:73:4e:08", ip => "130.242.130.148", hostname => 'db-lla-2'; }
+ dhcp::host { 'db-lla-2_eth1': mac => "f0:4d:a2:73:4e:09", ip => "130.242.130.148", hostname => 'db-lla-2'; }
+
+
+
+ # eduID Development subnets
+ dhcp::pool {'eduid-tug-dev':
+ network => '194.68.13.128',
+ mask => '255.255.255.224',
+ gateway => '194.68.13.129',
+ range => '',
+ options => 'domain-name-servers 109.105.111.31, 109.105.110.31',
+ }
+
+ dhcp::pool {'eduid-fre-dev':
+ network => '194.68.13.160',
+ mask => '255.255.255.224',
+ gateway => '194.68.13.161',
+ range => '',
+ options => 'domain-name-servers 109.105.111.31, 109.105.110.31',
+ }
+
+ # eduID TUG development hosts
+ dhcp::host { 'idp-tug-1': mac => "52:54:00:a0:00:92", ip => "194.68.13.146" }
+
+ dhcp::host { 'testvm-tug-1': mac => "52:54:00:11:22:33", ip => "194.68.13.136" }
+
+ dhcp::host { 'userdb-tug-1': mac => "52:54:00:93:22:29", ip => "194.68.13.132" }
+ dhcp::host { 'userdb-tug-2': mac => "52:54:00:17:13:ff", ip => "194.68.13.133" }
+
+ # eduID FRE development hosts
+ dhcp::host { 'idp-fre-1': mac => "52:54:00:a1:00:b2", ip => "194.68.13.178" }
+
+ dhcp::host { 'dash-fre-1': mac => "52:54:00:a2:00:a7", ip => "194.68.13.167" }
+
+ dhcp::host { 'userdb-fre-1': mac => "52:54:00:17:13:f6", ip => "194.68.13.164" }
+
+}
+
+class sunet {
+
+ # Until we have proper Puppet managing of SSH
+ #ufw::allow { 'allow-ssh-sunet':
+ # port => '22',
+ # proto => 'tcp'
+ #}
+
+ package { 'emacs23-nox':
+ ensure => 'installed'
+ }
+
+ sunet::server { 'sunet_server': }
+
+}
+
+class sunet-cdr {
+
+ class { 'dhcp':
+ dnsdomain => [ 'eduid.se','sunet.se' ],
+ nameservers => ['130.242.80.14','130.242.80.99'],
+ ntpservers => ['pool.ntp.org'],
+ interfaces => ['bond0'],
+ #pxeserver => '130.242.125.5',
+ #pxefilename => 'pxelinux.0'
+ }
+
+ class { 'sunet-dhcp-hosts': }
+
+}
diff --git a/global/overlay/etc/puppet/modules/sunet/manifests/encrypted_swap.pp b/global/overlay/etc/puppet/modules/sunet/manifests/encrypted_swap.pp
new file mode 100644
index 0000000..9956e00
--- /dev/null
+++ b/global/overlay/etc/puppet/modules/sunet/manifests/encrypted_swap.pp
@@ -0,0 +1,12 @@
+define sunet::encrypted_swap() {
+
+ package { 'ecryptfs-utils':
+ ensure => 'installed'
+ } ->
+
+ exec {'sunet_ecryptfs_setup_swap':
+ command => '/usr/bin/ecryptfs-setup-swap -f',
+ onlyif => 'grep swap /etc/fstab | grep -ve ^# -e cryptswap | grep -q swap',
+ }
+
+}
diff --git a/global/overlay/etc/puppet/modules/sunet/manifests/ethernet_bonding.pp b/global/overlay/etc/puppet/modules/sunet/manifests/ethernet_bonding.pp
new file mode 100644
index 0000000..8ff7325
--- /dev/null
+++ b/global/overlay/etc/puppet/modules/sunet/manifests/ethernet_bonding.pp
@@ -0,0 +1,19 @@
+define sunet::ethernet_bonding() {
+ # Set up prerequisites for Ethernet LACP bonding of eth0 and eth1,
+ # for all physical hosts that are running Ubuntu.
+ #
+ # Bonding requires setup in /etc/network/interfaces as well.
+ #
+ if $::is_virtual == 'false' and $::operatingsystem == 'Ubuntu' {
+ if $::operatingsystemrelease <= '12.04' {
+ package {'ifenslave': ensure => 'present' }
+ } else {
+ package {'ifenslave-2.6': ensure => 'present' }
+ }
+
+ file_line { 'load_module_at_boot':
+ path => '/etc/modules',
+ line => 'bonding',
+ }
+ }
+}
diff --git a/global/overlay/etc/puppet/modules/sunet/manifests/server.pp b/global/overlay/etc/puppet/modules/sunet/manifests/server.pp
new file mode 100644
index 0000000..9215c8f
--- /dev/null
+++ b/global/overlay/etc/puppet/modules/sunet/manifests/server.pp
@@ -0,0 +1,9 @@
+define sunet::server() {
+
+ # Set up encrypted swap
+ sunet::encrypted_swap { 'sunet_encrypted_swap': }
+
+ # Add prerequisites for ethernet bonding, if physical server
+ sunet::ethernet_bonding { 'sunet_ethernet_bonding': }
+
+}
diff --git a/manifests b/manifests
new file mode 120000
index 0000000..8f48f38
--- /dev/null
+++ b/manifests
@@ -0,0 +1 @@
+global/overlay/etc/puppet/modules/sunet/manifests \ No newline at end of file
diff --git a/sto-tug-kvm-lab1.swamid.se/README b/sto-tug-kvm-lab1.swamid.se/README
new file mode 120000
index 0000000..59a23c4
--- /dev/null
+++ b/sto-tug-kvm-lab1.swamid.se/README
@@ -0,0 +1 @@
+../README \ No newline at end of file
diff --git a/sto-tug-kvm1.swamid.se/README b/sto-tug-kvm1.swamid.se/README
new file mode 120000
index 0000000..59a23c4
--- /dev/null
+++ b/sto-tug-kvm1.swamid.se/README
@@ -0,0 +1 @@
+../README \ No newline at end of file
diff --git a/sto-tug-kvm1.swamid.se/default/README b/sto-tug-kvm1.swamid.se/default/README
new file mode 120000
index 0000000..59a23c4
--- /dev/null
+++ b/sto-tug-kvm1.swamid.se/default/README
@@ -0,0 +1 @@
+../README \ No newline at end of file
diff --git a/sto-tug-kvm1.swamid.se/overlay/etc/network/interfaces b/sto-tug-kvm1.swamid.se/overlay/etc/network/interfaces
new file mode 100644
index 0000000..5eca717
--- /dev/null
+++ b/sto-tug-kvm1.swamid.se/overlay/etc/network/interfaces
@@ -0,0 +1,24 @@
+# This file describes the network interfaces available on your system
+# and how to activate them. For more information, see interfaces(5).
+
+# The loopback network interface
+auto lo
+iface lo inet loopback
+
+# The primary network interface
+auto eth0
+iface eth0 inet static
+ address 130.242.125.5
+ netmask 255.255.255.192
+ network 130.242.125.0
+ broadcast 130.242.125.63
+ gateway 130.242.125.1
+ # dns-* options are implemented by the resolvconf package, if installed
+ dns-nameservers 130.242.80.14 130.242.80.99
+ dns-search swamid.se
+
+iface eth0 inet6 static
+ address 2001:6b0:8:3::5
+ netmask 64
+ gateway 2001:6b0:8:3::1
+
diff --git a/wp.sunet.se/README b/wp.sunet.se/README
new file mode 120000
index 0000000..59a23c4
--- /dev/null
+++ b/wp.sunet.se/README
@@ -0,0 +1 @@
+../README \ No newline at end of file
diff --git a/wp.sunet.se/overlay/etc/hiera/data/secrets.yaml.asc b/wp.sunet.se/overlay/etc/hiera/data/secrets.yaml.asc
new file mode 100644
index 0000000..bc1cd32
--- /dev/null
+++ b/wp.sunet.se/overlay/etc/hiera/data/secrets.yaml.asc
@@ -0,0 +1,23 @@
+STATUS=UPDATED
+SAVE_TO=wp.sunet.se/overlay/etc/hiera/data/secrets.yaml.asc
+
+-----BEGIN PGP MESSAGE-----
+Version: GnuPG v2.0.17 (GNU/Linux)
+
+hQEMA7b3Nek3pHIdAQgApiUkD9OMKxX16Y0XofZxcHBoOsSguobKO1oCbOeLGRbG
+0CjEbV1BvmPE+tr7oq4XnwIayNPZulgUsk1uTVMeZxPTMaCH+m4b4Mz7bJfWYpyi
+wVebwON89rQ8NnCZtPE6Ul6tnoS8QvgUMCRW5slPtu4teSEPD1rR1/WdxuWz8CwP
+cnUCEWGfFd4zE2WAdFmWo/VilQTFPqjjvLqPeMl3fpo+cWfzPBDYaNA3bIixAAmb
+0LPaN4PbrXIDuUWXP6UPotqhoRVxM4d4lwAFT3TtYylnR9LeMi4mkV9/BbgPuv/Z
+7LDGRQQwANeBoSoQI8pGf3Py8r66Fb75MWLhydRKmNLA3wHvvWc7Rk7+B4I+eWZC
+NwontFMaLgcmKx6OSz8QU6/DiEKigZjxzzgaInmamJFXngChzlYqqi+OMii+7ZhQ
+iXiWnoBItffVNsdVlekTI5aB8ccq2Wek41p3Bs6BRRndfnGyR9Bm99lf9ic9yvpr
+wfvMK2DqGv0K7H8T/3344yfuHIHKxr0iwDTNwJ2BdabP0RtyAetrowGG1u0vLtnT
+cfb1r5Bk1f+szLKsCt347Yw89ymFnlHvkSV8vdGJHLWukxyw8LPsNEYcjL3TRZHW
+w/amIxEssgfu5Kc+/amE4JDByFKPoaIb8X+5h5tccwCWMWTe4vIc83WrUrisUSAp
+snB/2erGP3ijcp8GyTZBs4MNxX0MJzW70f6RIO7N5ou1RzwqaOCckj4S7jS3VzIx
+lG+Ilfal9nneoSyjLiEby9VpvcCWvaOB+gS5gFXZ0Vt6yuq5sZWFG3svmk1D5O1z
+myGkmklo0vUzd/2jIBizwv1TXE1r7SQNasTRyBBoxYXU8EL3j4lR2kcugbbYCdQ+
+NLZOzcYv/rSlyv1oKfF51KI=
+=wN6y
+-----END PGP MESSAGE-----