diff --git a/REFERENCE.md b/REFERENCE.md index 2c6a0b0a..56e98d13 100644 --- a/REFERENCE.md +++ b/REFERENCE.md @@ -1085,7 +1085,7 @@ Default value: `'slurmdbd'` ##### `slurmdbd_storage_port` -Data type: `Stdlib::Port` +Data type: `Variant[Stdlib::Port, String[0,0]]` diff --git a/manifests/init.pp b/manifests/init.pp index c1ff7a28..8083f227 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -337,7 +337,7 @@ Stdlib::Host $slurmdbd_storage_host = 'localhost', String[1] $slurmdbd_storage_loc = 'slurm_acct_db', String[1] $slurmdbd_storage_pass = 'slurmdbd', - Stdlib::Port $slurmdbd_storage_port = 3306, + Variant[Stdlib::Port, String[0,0]] $slurmdbd_storage_port = 3306, String[1] $slurmdbd_storage_type = 'accounting_storage/mysql', String[1] $slurmdbd_storage_user = 'slurmdbd', String[1] $slurmdbd_db_charset = 'utf8', diff --git a/spec/shared_examples/slurm_slurmdbd_config.rb b/spec/shared_examples/slurm_slurmdbd_config.rb index e87bcc9a..c33e8d8d 100644 --- a/spec/shared_examples/slurm_slurmdbd_config.rb +++ b/spec/shared_examples/slurm_slurmdbd_config.rb @@ -74,6 +74,14 @@ end end + context 'when slurmdbd_storage_port => ""' do + let(:param_override) { { slurmdbd_storage_port: '' } } + + it 'overrides values' do + verify_contents(catalogue, 'slurmdbd.conf', ['StoragePort=""']) + end + end + context 'when use_syslog => true' do let(:param_override) { { use_syslog: true } } diff --git a/templates/slurmdbd/slurmdbd.conf.erb b/templates/slurmdbd/slurmdbd.conf.erb index 193770c3..7c21369e 100644 --- a/templates/slurmdbd/slurmdbd.conf.erb +++ b/templates/slurmdbd/slurmdbd.conf.erb @@ -13,6 +13,8 @@ # <%= key %> <%- elsif value.is_a?(Array) -%> <%= key %>=<%= value.join(',') %> +<%- elsif value == '' -%> +<%= key %>="" <%- elsif value.is_a?(Hash) -%> <%- v = value.map {|k,v| "#{k}=#{v}" }.join(',') %> <%= key %>=<%= v %>