control-repo/modules/sqlserver_install/manifests/wbapplicationdbsetup.pp
jhejda@wmpromus.com c9ccf1852d sql
2019-05-23 09:12:07 +02:00

61 lines
2.8 KiB
Puppet

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',
}
}