Skip to content

Commit c4ecf87

Browse files
Added checks to see if IIS can find ASP.NET modules (#78)
* Added checks to see if IIS can find ASP.NET modules * Bumped version Co-authored-by: Pedro Nunes <37883272+pintonunes@users.noreply.github.com>
1 parent 9ecc440 commit c4ecf87

4 files changed

Lines changed: 45 additions & 22 deletions

File tree

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
# Outsystems.SetupTools Release History
22

3+
## 3.5.0.0
4+
5+
- Get-OSServerPreReqs: Now check if IIS can find ASP.NET modules
6+
37
## 3.4.0.0
48

59
- ExecuteCommand: Enabled real time logging for all executed processes. This impacts the execution of PlatformInstaller, ConfigTool, Scinstall

appveyor.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
version: 3.4.0.{build}
1+
version: 3.5.0.{build}
22

33
only_commits:
44
files:

src/Outsystems.SetupTools/Functions/Get-OSServerPreReqs.ps1

Lines changed: 39 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ function Get-OSServerPreReqs
4242
$RequirementStatus = @{}
4343
$RequirementStatus.Title = $Title
4444
$RequirementStatus.Status = $Result.Status
45-
$RequirementStatus.OptionalsFailed = $Result.OptionalsFailed
45+
$RequirementStatus.OptionalsStatus = $Result.OptionalsStatus
4646

4747
$TextStatus = "OK"
4848
if (-not $($Result.Status))
@@ -68,7 +68,10 @@ function Get-OSServerPreReqs
6868
[Bool]$Status,
6969

7070
[Parameter(Mandatory = $false)]
71-
[Bool]$OptionalsFailed,
71+
[Bool]$OptionalsStatus = $True,
72+
73+
[Parameter(Mandatory = $false)]
74+
[Bool]$IISStatus = $True,
7275

7376
[Parameter(Mandatory = $true)]
7477
[AllowEmptyCollection()]
@@ -81,21 +84,19 @@ function Get-OSServerPreReqs
8184

8285
$Result = @{}
8386
$Result.Status = $Status
87+
$Result.OptionalsStatus = $OptionalsStatus
88+
$Result.IISStatus = $IISStatus
8489

85-
if ($null -eq $OptionalsFailed)
86-
{
87-
$Result.OptionalsFailed = $false
88-
}
89-
else
90-
{
91-
$Result.OptionalsFailed = $OptionalsFailed
92-
}
9390

94-
if ($Result.Status -and -not $Result.OptionalsFailed)
91+
if ($Result.Status -and $Result.OptionalsStatus)
9592
{
9693
$Result.Messages = $OKMessages
9794
}
98-
elseif ($Result.Status -and $Result.OptionalsFailed)
95+
elseif ($Result.Status -and -not $Result.OptionalsStatus)
96+
{
97+
$Result.Messages = $NOKMessages
98+
}
99+
elseif (-not $Result.IISStatus)
99100
{
100101
$Result.Messages = $NOKMessages
101102
}
@@ -109,7 +110,8 @@ function Get-OSServerPreReqs
109110

110111
$GlobalRequirementsResults = @{}
111112
$GlobalRequirementsResults.Success = $True
112-
$GlobalRequirementsResults.OptionalsFailed = $False
113+
$GlobalRequirementsResults.OptionalsStatus = $True
114+
$GlobalRequirementsResults.IISStatus = $True
113115

114116
$RequirementStatuses = @()
115117
}
@@ -145,10 +147,23 @@ function Get-OSServerPreReqs
145147
-ScriptBlock `
146148
{
147149
$Status = $([version]$(GetWindowsServerHostingVersion) -ge [version]$OS11ReqsMinDotNetCoreVersion)
150+
$aspModules = Get-WebGlobalModule | Where-Object { $_.Name -like "aspnetcoremodule*" }
148151
$OKMessages = @("Minimum .NET Core Windows Server Hosting found.")
149152
$NOKMessages = @("Minimum .NET Core Windows Server Hosting not found.")
150153

151-
return $(CreateResult -Status $Status -OKMessages $OKMessages -NOKMessages $NOKMessages)
154+
# Check if IIS can find ASP.NET modules
155+
if ($aspModules.Count -lt 1)
156+
{
157+
$Status = $False
158+
$IISStatus = $False
159+
$NOKMessages = @("IIS can't find ASP.NET modules")
160+
}
161+
else
162+
{
163+
$IISStatus = $True
164+
}
165+
166+
return $(CreateResult -Status $Status -IISStatus $IISStatus -OKMessages $OKMessages -NOKMessages $NOKMessages)
152167
}
153168
}
154169
}
@@ -255,7 +270,7 @@ function Get-OSServerPreReqs
255270
-ScriptBlock `
256271
{
257272
$Status = $True
258-
$OptionalsFailed = $False
273+
$OptionalsStatus = $True
259274
$OKMessages = @("All Event Logs are correctly configured.")
260275
$NOKMessages = @()
261276

@@ -276,7 +291,7 @@ function Get-OSServerPreReqs
276291

277292
if ($CheckMaxLogSize -or $CheckOverflowAction)
278293
{
279-
$OptionalsFailed = $True
294+
$OptionalsStatus = $False
280295
$NOKMessage += "Event Log '$EventLogName' is not correctly configured."
281296

282297
if ($CheckMaxLogSize)
@@ -295,11 +310,11 @@ function Get-OSServerPreReqs
295310
}
296311
catch
297312
{
298-
$OptionalsFailed = $True
313+
$OptionalsStatus = $False
299314
$NOKMessages += "Something went wrong when trying to obtain Event Logs information: `"$_`""
300315
}
301316

302-
return $(CreateResult -Status $Status -OptionalsFailed $OptionalsFailed -OKMessages $OKMessages -NOKMessages $NOKMessages)
317+
return $(CreateResult -Status $Status -OptionalsStatus $OptionalsStatus -OKMessages $OKMessages -NOKMessages $NOKMessages)
303318
}
304319

305320
$RequirementStatuses += CreateRequirementStatus -Title "FIPS Compliant Algorithms" `
@@ -323,9 +338,13 @@ function Get-OSServerPreReqs
323338
{
324339
$GlobalRequirementsResults.Success = $False
325340
}
326-
if ($RequirementStatus.OptionalsFailed)
341+
if (-not $RequirementStatus.OptionalsStatus)
342+
{
343+
$GlobalRequirementsResults.OptionalsStatus = $False
344+
}
345+
if (-not $RequirementStatus.IISStatus)
327346
{
328-
$GlobalRequirementsResults.OptionalsFailed = $True
347+
$GlobalRequirementsResults.IISStatus = $False
329348
}
330349
}
331350

src/Outsystems.SetupTools/OutSystems.SetupTools.psd1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
RootModule = 'OutSystems.SetupTools.psm1'
1313

1414
# Version number of this module.
15-
ModuleVersion = '3.4.0.0'
15+
ModuleVersion = '3.5.0.0'
1616

1717
# Supported PSEditions
1818
# CompatiblePSEditions = @()

0 commit comments

Comments
 (0)