From d6e5ac6064b48384a4af8e9d0b7de95ae98febd6 Mon Sep 17 00:00:00 2001 From: Thomas Bellman <bellman@nsc.liu.se> Date: Fri, 12 Jul 2019 10:24:53 +0200 Subject: [PATCH] Allow users to omit specific options from dsm.{opt,sys}. This allows users of the tsmclient definition to specify a value of an option (in the 'optoptions' and 'sysoptions' parameters) as `false'. Doing so will cause that option to be omitted from dsm.opt/dsm.sys, even if it has a value in tsmclient::config::default_{opt,sys}options. --- manifests/init.pp | 6 ++++-- templates/dsm.opt.erb | 6 ++++-- templates/dsm.sys.erb | 6 ++++-- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/manifests/init.pp b/manifests/init.pp index e6b71ea..5d9d046 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -32,12 +32,14 @@ * - optoptions * Hash of options to set in dsm.opt. Option names must be specified * in lowercase. This is merged with the default_optoptions parameter - * of the tsmclient::config class. + * of the tsmclient::config class. Setting an option to false will + * cause it to be omitted from dsm.opt. * * - sysoptions * Hash of options to set in dsm.sys. Option names must be specified * in lowercase. This is merged with the default_sysoptions parameter - * of the tsmclient::config class. + * of the tsmclient::config class. Setting an option to false will + * cause it to be omitted from dsm.sys. * Some options are forbidden to set this way, as this define expects * them to have certain values. diff --git a/templates/dsm.opt.erb b/templates/dsm.opt.erb index 23d4a22..a003e43 100644 --- a/templates/dsm.opt.erb +++ b/templates/dsm.opt.erb @@ -29,6 +29,8 @@ options.merge!(mandatory) -%> SERVERNAME <%= @tsm_servername.upcase %> -<% options.keys.sort.each do |optname| -%> - <%= sprintf("%-24s %s", optname.to_s, options[optname]).strip %> +<% options.sort.each do |optname,optvalue| -%> +<% if optvalue -%> + <%= sprintf("%-24s %s", optname.to_s, optvalue).strip %> +<% end -%> <% end %> diff --git a/templates/dsm.sys.erb b/templates/dsm.sys.erb index 5d39d6f..183dd6e 100644 --- a/templates/dsm.sys.erb +++ b/templates/dsm.sys.erb @@ -35,6 +35,8 @@ options.merge!(mandatory) -%> SERVERNAME <%= @tsm_servername.upcase %> NODENAME <%= @tsm_nodename %> -<% options.keys.sort.each do |optname| -%> - <%= sprintf("%-24s %s", optname.to_s, options[optname]).strip %> +<% options.sort.each do |optname,optvalue| -%> +<% if optvalue -%> + <%= sprintf("%-24s %s", optname.to_s, optvalue).strip %> +<% end -%> <% end %> -- GitLab