class sqlserver_install::wbapplicationdbsetup ( String $sqlserver = "FCL-PUP-V804", String $sqlserverinstancename = "MSSQLSERVER", String $sqlserveradminaccount = "sa", String $sqlserveradminpassword = "Passw0rd1", String $webappserver = "FCL-PUP-V805", String $sqlserverdbname = "WALLSstgSit", String $websitename = "WALLSstgSit", ) { ############################################################################ # Creating Walls Database(s) # ############################################################################ sqlserver::database{ $sqlserverdbname: instance => $sqlserverinstancename, require => Sqlserver_instance[$sqlserverinstancename], } ############################################################################ # Populate Walls Database(s) # ############################################################################ -> file { 'C:\tmp\sqlwallsinstall\script_walls_preparation.sql': ensure => file, content => template("${module_name}/script_walls_preparation.sql.erb"), require => File['C:\tmp\sqlwallsinstall'], } -> exec { 'Deploy wbapplicationsetup sql database - Preparation': command => "Import-Module SqlPs;Invoke-Sqlcmd -ServerInstance ${sqlserver} -username ${sqlserveradminaccount} -Password ${sqlserveradminpassword} -InputFile \"C:\\tmp\\sqlwallsinstall\\script_walls_preparation.sql\" | out-File -filepath \"C:\\tmp\\sqlwallsinstall\\script_walls_preparation_output.txt\"", provider => 'powershell', #logoutput => 'on_failure', onlyif => 'if ((Test-Path c:\tmp\sqlwallsinstall\script_walls_preparation_output.txt) -ne \'True\') {exit 0} Else {exit 1}', } -> exec { 'sleep before running next script - After Walls Preparation': command => 'Start-Sleep -s 60', provider => 'powershell', } -> file { 'C:\tmp\sqlwallsinstall\script_walls_data.sql': ensure => file, content => template("${module_name}/script_walls_data.sql.erb"), require => File['C:\tmp\sqlwallsinstall'], } -> exec { 'Deploy wbapplicationsetup sql database - Data': command => "Import-Module SqlPs;Invoke-Sqlcmd -ServerInstance ${sqlserver} -username ${sqlserveradminaccount} -Password ${sqlserveradminpassword} -InputFile \"C:\\tmp\\sqlwallsinstall\\script_walls_data.sql\" | out-File -filepath \"C:\\tmp\\sqlwallsinstall\\script_walls_data_output.txt\"", provider => 'powershell', #logoutput => 'on_failure', onlyif => 'if ((Test-Path c:\tmp\sqlwallsinstall\script_walls_data_output.txt) -ne \'True\') {exit 0} Else {exit 1}', } -> exec { 'sleep before running next script - After Walls Data': command => 'Start-Sleep -s 60', provider => 'powershell', } }