Skip to content

Commit b37cd38

Browse files
committed
feat: alz version check skip
1 parent b6bf165 commit b37cd38

File tree

3 files changed

+51
-18
lines changed

3 files changed

+51
-18
lines changed

src/ALZ/Private/Tools/Test-Tooling.ps1

Lines changed: 33 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,10 @@
11
function Test-Tooling {
2+
[CmdletBinding(SupportsShouldProcess = $true)]
3+
param(
4+
[Parameter(Mandatory = $false)]
5+
[switch]$skipAlzModuleVersionCheck
6+
)
7+
28
$checkResults = @()
39
$hasFailure = $false
410

@@ -149,24 +155,38 @@ function Test-Tooling {
149155
}
150156
}
151157

152-
# Check if latest ALZ module is installed
153-
Write-Verbose "Checking ALZ module version"
154-
$alzModuleCurrentVersion = Get-InstalledModule -Name ALZ
155-
$alzModuleLatestVersion = Find-Module -Name ALZ
156-
if ($alzModuleCurrentVersion.Version -lt $alzModuleLatestVersion.Version) {
157-
$checkResults += @{
158-
message = "ALZ module is not the latest version. Your version: $($alzModuleCurrentVersion.Version), Latest version: $($alzModuleLatestVersion.Version). Please update to the latest version using 'Update-Module ALZ'."
159-
result = "Failure"
160-
}
161-
$hasFailure = $true
158+
if($skipAlzModuleVersionCheck.IsPresent) {
159+
Write-Verbose "Skipping ALZ module version check"
162160
} else {
163-
$checkResults += @{
164-
message = "ALZ module is the latest version ($($alzModuleCurrentVersion.Version))."
165-
result = "Success"
161+
# Check if latest ALZ module is installed
162+
Write-Verbose "Checking ALZ module version"
163+
$alzModuleCurrentVersion = Get-InstalledModule -Name ALZ -ErrorAction SilentlyContinue
164+
if($null -eq $alzModuleCurrentVersion) {
165+
$checkResults += @{
166+
message = "ALZ module is not correctly installed. Please install the latest version using 'Install-Module ALZ'."
167+
result = "Failure"
168+
}
169+
$hasFailure = $true
170+
}
171+
$alzModuleLatestVersion = Find-Module -Name ALZ
172+
if ($null -ne $alzModuleCurrentVersion) {
173+
if ($alzModuleCurrentVersion.Version -lt $alzModuleLatestVersion.Version) {
174+
$checkResults += @{
175+
message = "ALZ module is not the latest version. Your version: $($alzModuleCurrentVersion.Version), Latest version: $($alzModuleLatestVersion.Version). Please update to the latest version using 'Update-Module ALZ'."
176+
result = "Failure"
177+
}
178+
$hasFailure = $true
179+
} else {
180+
$checkResults += @{
181+
message = "ALZ module is the latest version ($($alzModuleCurrentVersion.Version))."
182+
result = "Success"
183+
}
184+
}
166185
}
167186
}
168187

169188
Write-Verbose "Showing check results"
189+
Write-Verbose $(ConvertTo-Json $checkResults -Depth 100)
170190
$checkResults | ForEach-Object {[PSCustomObject]$_} | Format-Table -Property @{
171191
Label = "Check Result"; Expression = {
172192
switch ($_.result) {

src/ALZ/Public/Deploy-Accelerator.ps1

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -175,9 +175,15 @@ function Deploy-Accelerator {
175175
Mandatory = $false,
176176
HelpMessage = "[OPTIONAL] Determines whether to skip the requirements check. This is not recommended."
177177
)]
178-
[Alias("sr")]
179178
[Alias("skipRequirementsCheck")]
180-
[switch] $skip_requirements_check
179+
[switch] $skip_requirements_check,
180+
181+
[Parameter(
182+
Mandatory = $false,
183+
HelpMessage = "[OPTIONAL] Determines whether to skip the requirements check for the ALZ PowerShell Module version only. This is not recommended."
184+
)]
185+
[Alias("skipAlzModuleVersionRequirementsCheck")]
186+
[switch] $skip_alz_module_version_requirements_check
181187
)
182188

183189
$ProgressPreference = "SilentlyContinue"
@@ -186,7 +192,7 @@ function Deploy-Accelerator {
186192
Write-InformationColored "WARNING: Skipping the software requirements check..." -ForegroundColor Yellow -InformationAction Continue
187193
} else {
188194
Write-InformationColored "Checking the software requirements for the Accelerator..." -ForegroundColor Green -InformationAction Continue
189-
Test-Tooling
195+
Test-Tooling -skipAlzModuleVersionCheck:$skip_alz_module_version_requirements_check.IsPresent
190196
}
191197

192198
Write-InformationColored "Getting ready to deploy the accelerator with you..." -ForegroundColor Green -NewLineBefore -InformationAction Continue

src/ALZ/Public/Test-AcceleratorRequirement.ps1

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,13 @@ function Test-AcceleratorRequirement {
1515
.COMPONENT
1616
ALZ
1717
#>
18-
19-
Test-Tooling
18+
param (
19+
[Parameter(
20+
Mandatory = $false,
21+
HelpMessage = "[OPTIONAL] Determines whether to skip the requirements check for the ALZ PowerShell Module version only. This is not recommended."
22+
)]
23+
[Alias("skipAlzModuleVersionRequirementsCheck")]
24+
[switch] $skip_alz_module_version_requirements_check
25+
)
26+
Test-Tooling -skipAlzModuleVersionCheck:$skip_alz_module_version_requirements_check.IsPresent
2027
}

0 commit comments

Comments
 (0)