summaryrefslogtreecommitdiffstats
path: root/fuel-build/f_l23network/puppet
diff options
context:
space:
mode:
Diffstat (limited to 'fuel-build/f_l23network/puppet')
-rw-r--r--fuel-build/f_l23network/puppet/modules/l23network/lib/puppet/parser/functions/extras_to_hosts.rb21
-rw-r--r--fuel-build/f_l23network/puppet/modules/l23network/manifests/hosts_file.pp18
-rw-r--r--fuel-build/f_l23network/puppet/modules/l23network/manifests/hosts_file.pp.orig16
3 files changed, 55 insertions, 0 deletions
diff --git a/fuel-build/f_l23network/puppet/modules/l23network/lib/puppet/parser/functions/extras_to_hosts.rb b/fuel-build/f_l23network/puppet/modules/l23network/lib/puppet/parser/functions/extras_to_hosts.rb
new file mode 100644
index 0000000..33bfad8
--- /dev/null
+++ b/fuel-build/f_l23network/puppet/modules/l23network/lib/puppet/parser/functions/extras_to_hosts.rb
@@ -0,0 +1,21 @@
+#
+# array_or_string_to_array.rb
+#
+
+module Puppet::Parser::Functions
+ newfunction(:extras_to_hosts, :type => :rvalue, :doc => <<-EOS
+ convert extras array passed from Astute into
+ hash for puppet `host` create_resources call
+ EOS
+ ) do |args|
+ hosts=Hash.new
+ extras=args[0]
+ extras.each do |extras|
+ hosts[extras['name']]={:ip=>extras['address'],:host_aliases=>[extras['fqdn']]}
+ notice("Generating extras host entry #{extras['name']} #{extras['address']} #{extras['fqdn']}")
+ end
+ return hosts
+ end
+end
+
+# vim: set ts=2 sw=2 et :
diff --git a/fuel-build/f_l23network/puppet/modules/l23network/manifests/hosts_file.pp b/fuel-build/f_l23network/puppet/modules/l23network/manifests/hosts_file.pp
new file mode 100644
index 0000000..05cff8d
--- /dev/null
+++ b/fuel-build/f_l23network/puppet/modules/l23network/manifests/hosts_file.pp
@@ -0,0 +1,18 @@
+class l23network::hosts_file (
+ $nodes,
+ $extras=[],
+ $hosts_file = "/etc/hosts"
+) {
+
+ # OPNFV addition: Add additional lines in /etc/hosts through Astute additions
+
+ $host_resources = nodes_to_hosts($nodes)
+ $extras_host_resources = extras_to_hosts($extras)
+ Host {
+ ensure => present,
+ target => $hosts_file
+ }
+
+ create_resources(host, $host_resources)
+ create_resources(host, $extras_host_resources)
+}
diff --git a/fuel-build/f_l23network/puppet/modules/l23network/manifests/hosts_file.pp.orig b/fuel-build/f_l23network/puppet/modules/l23network/manifests/hosts_file.pp.orig
new file mode 100644
index 0000000..2295e3f
--- /dev/null
+++ b/fuel-build/f_l23network/puppet/modules/l23network/manifests/hosts_file.pp.orig
@@ -0,0 +1,16 @@
+class l23network::hosts_file (
+ $nodes,
+ $hosts_file = "/etc/hosts"
+) {
+
+ #Move original hosts file
+
+ $host_resources = nodes_to_hosts($nodes)
+
+ Host {
+ ensure => present,
+ target => $hosts_file
+ }
+
+ create_resources(host, $host_resources)
+}