Skip to content

Commit bae4ba0

Browse files
author
Travis Fields
committed
Found a bug in the way we added parameters to the command line, if any metaparameters were used we added them as well which causes install to fail
1 parent d139bf6 commit bae4ba0

File tree

1 file changed

+11
-2
lines changed
  • lib/puppet/provider/sqlserver_instance

1 file changed

+11
-2
lines changed

lib/puppet/provider/sqlserver_instance/mssql.rb

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -110,8 +110,10 @@ def basic_cmd_args(features, action)
110110
def build_cmd_args(features, action="install")
111111
cmd_args = basic_cmd_args(features, action)
112112
if action == 'install'
113-
(@resource.parameters.keys - %w(ensure loglevel features name provider source sql_sysadmin_accounts sql_security_mode install_switches).map(&:to_sym)).sort.collect do |key|
114-
cmd_args << "/#{key.to_s.gsub(/_/, '').upcase}=\"#{@resource[key]}\""
113+
%w(pid sa_pwd sql_svc_account sql_svc_password agt_svc_account agt_svc_password as_svc_account as_svc_password rs_svc_account rs_svc_password security_mode).map(&:to_sym).sort.collect do |key|
114+
if not_nil_and_not_empty? @resource[key]
115+
cmd_args << "/#{key.to_s.gsub(/_/, '').upcase}=\"#{@resource[key]}\""
116+
end
115117
end
116118
if not_nil_and_not_empty? @resource[:sql_sysadmin_accounts]
117119
if @resource[:sql_sysadmin_accounts].kind_of?(Array)
@@ -120,6 +122,13 @@ def build_cmd_args(features, action="install")
120122
cmd_args << "/SQLSYSADMINACCOUNTS=\"#{@resource[:sql_sysadmin_accounts]}\""
121123
end
122124
end
125+
if not_nil_and_not_empty? @resource[:as_sysadmin_accounts]
126+
if @resource[:as_sysadmin_accounts].kind_of?(Array)
127+
cmd_args << "/ASSYSADMINACCOUNTS=#{ Array.new(@resource[:as_sysadmin_accounts]).collect { |account| "\"#{account}\"" }.join(' ')}"
128+
else
129+
cmd_args << "/ASSYSADMINACCOUNTS=\"#{@resource[:as_sysadmin_accounts]}\""
130+
end
131+
end
123132
end
124133
cmd_args
125134
end

0 commit comments

Comments
 (0)