Skip to content

Commit ba8cfba

Browse files
authored
Merge pull request #197 from wilson208/dotnet35-install
(maint) Prime Feature and Instance installation with .Net 3.5 source
2 parents bb38c4c + 72a3053 commit ba8cfba

5 files changed

+31
-16
lines changed

spec/acceptance/sqlserver_config_spec.rb

+1
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ def ensure_sqlserver_instance(host,inst_name, ensure_val = 'present')
2121
sql_sysadmin_accounts => ['Administrator'],
2222
security_mode => 'SQL',
2323
sa_pwd => 'Pupp3t1@',
24+
windows_feature_source => 'I:\\sources\\sxs',
2425
}
2526
MANIFEST
2627

spec/acceptance/sqlserver_instance_spec.rb

+1
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ def ensure_sqlserver_instance(host, features, inst_name, ensure_val = 'present',
2323
sql_sysadmin_accounts => #{sysadmin_accounts},
2424
agt_svc_account => 'Administrator',
2525
agt_svc_password => 'Qu@lity!',
26+
windows_feature_source => 'I:\\sources\\sxs',
2627
}
2728
MANIFEST
2829

spec/acceptance/z_last_sqlserver_features_spec.rb

+1
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ def ensure_sql_features(host, features, ensure_val = 'present')
1818
is_svc_account => "$::hostname\\\\Administrator",
1919
is_svc_password => 'Qu@lity!',
2020
features => [ <%= mssql_features %> ],
21+
windows_feature_source => 'I:\\sources\\sxs',
2122
}
2223
MANIFEST
2324

spec/spec_helper_acceptance.rb

+10
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
require 'sql_testing_helpers'
44
require 'beaker/puppet_install_helper'
55

6+
WIN_ISO_ROOT = "http://int-resources.ops.puppetlabs.net/ISO/Windows/2012"
7+
WIN_2012R2_ISO = "en_windows_server_2012_r2_with_update_x64_dvd_6052708.iso"
68
QA_RESOURCE_ROOT = "http://int-resources.ops.puppetlabs.net/QA_resources/microsoft_sql/iso/"
79
SQL_2014_ISO = "SQLServer2014-x64-ENU.iso"
810
SQL_2012_ISO = "SQLServer2012SP1-FullSlipstream-ENU-x64.iso"
@@ -70,6 +72,14 @@
7072
# Install sqlserver dependencies.
7173
on(agent, puppet('module install puppetlabs-stdlib'))
7274

75+
# Mount windows 2012R2 ISO to allow install of .NET 3.5 Windows Feature
76+
iso_opts = {
77+
:folder => WIN_ISO_ROOT,
78+
:file => WIN_2012R2_ISO,
79+
:drive_letter => 'I'
80+
}
81+
mount_iso(agent, iso_opts)
82+
7383
# Install sqlserver module from local source.
7484
# See FM-5062 for more details.
7585
copy_module_to(agent, local)

spec/sql_testing_helpers.rb

+18-16
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,20 @@
1+
12
def mount_iso(host, opts = {})
2-
# This method mounts the ISO on a given host
3-
qa_iso_resource_root = opts[:qa_iso_resource_root]
4-
sqlserver_iso = opts[:sqlserver_iso]
5-
sqlserver_version = opts[:sqlserver_version]
3+
folder = opts[:folder];
4+
file = opts[:file];
5+
drive_letter = opts[:drive_letter];
6+
67
pp = <<-MANIFEST
7-
$p_src = '#{qa_iso_resource_root}/#{sqlserver_iso}'
8-
$source = 'C:\\#{sqlserver_iso}'
9-
pget{"Download #{sqlserver_version} Iso":
8+
$p_src = '#{folder}/#{file}'
9+
$source = 'C:\\#{file}'
10+
pget{"Download #{file} Iso":
1011
source => $p_src,
1112
target => 'C:',
1213
timeout => 150000,
1314
}
1415
mount_iso{$source:
15-
require => Pget['Download #{sqlserver_version} Iso'],
16-
drive_letter => 'H',
16+
require => Pget['Download #{file} Iso'],
17+
drive_letter => '#{drive_letter}',
1718
}
1819
MANIFEST
1920
apply_manifest_on(host, pp)
@@ -37,7 +38,8 @@ def install_sqlserver(host, opts = {})
3738
'INSTANCEDIR' => 'C:\\Program Files\\Microsoft SQL Server',
3839
'INSTALLSHAREDDIR' => 'C:\\Program Files\\Microsoft SQL Server',
3940
'INSTALLSHAREDWOWDIR' => 'C:\\Program Files (x86)\\Microsoft SQL Server',
40-
}
41+
},
42+
windows_feature_source => 'I:\\sources\\sxs',
4143
}
4244
MANIFEST
4345
apply_manifest_on(host, pp)
@@ -83,15 +85,15 @@ def base_install(sql_version)
8385
case sql_version.to_i
8486
when 2012
8587
iso_opts = {
86-
:qa_iso_resource_root => QA_RESOURCE_ROOT,
87-
:sqlserver_iso => SQL_2012_ISO,
88-
:sqlserver_version => '2012',
88+
:folder => QA_RESOURCE_ROOT,
89+
:file => SQL_2012_ISO,
90+
:drive_letter => 'H'
8991
}
9092
when 2014
9193
iso_opts = {
92-
:qa_iso_resource_root => QA_RESOURCE_ROOT,
93-
:sqlserver_iso => SQL_2014_ISO,
94-
:sqlserver_version => '2014',
94+
:folder => QA_RESOURCE_ROOT,
95+
:file => SQL_2014_ISO,
96+
:drive_letter => 'H'
9597
}
9698
end
9799
host = find_only_one('sql_host')

0 commit comments

Comments
 (0)