forked from tjanczuk/iisnode
-
Notifications
You must be signed in to change notification settings - Fork 101
/
addiisnodesectiongroup_iisexpress.js
37 lines (32 loc) · 1.33 KB
/
addiisnodesectiongroup_iisexpress.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
// Installs iisnode configuration section into system.webServer section group in
// %userprofile%\documents\iisexpress\config\applicationHost.config
// TODO, tjanczuk, find a programmatic way of registering iisnode section in IIS Express configuration
try {
var fso = new ActiveXObject("Scripting.FileSystemObject");
WScript.Echo("Created FileSystemObject");
var f = fso.OpenTextFile(WScript.Arguments.Item(0), 1);
WScript.Echo("Opened file " + WScript.Arguments.Item(0) + " for reading");
var config = f.ReadAll();
WScript.Echo("Read all content");
f.Close();
WScript.Echo("Closed file");
if (!config.match(/\<\s*section\s*name\s*=\s*"iisnode"\s*\/s*>/)) {
WScript.Echo("iisnode section registration not found");
config = config.replace(/(\<\s*sectionGroup\s*name\s*=\s*"system.webServer"\s*>)/, '$1<section name="iisnode"/>');
WScript.Echo("added iisnode section registration");
}
else {
WScript.Echo("existing iisnode section registration found");
WScript.Quit(0);
}
f = fso.OpenTextFile(WScript.Arguments.Item(0), 2, true);
WScript.Echo("Open file for writing");
f.Write(config);
WScript.Echo("Written file");
f.Close();
WScript.Echo("Closed file");
WScript.Quit(0);
} catch (e) {
WScript.Echo("Exception");
WScript.Quit(1);
}