summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJordan Borean <jborean93@gmail.com>2021-10-08 06:30:30 +1000
committerMatt Clay <matt@mystile.com>2021-10-07 14:19:37 -0700
commit6ccd35cd7caf5c9ec7d50e7cc5ecb4c5a1fb085e (patch)
treedd636bb0a248f96ce869bd7a5a8fb7c9c5714533
parente2c4d046a99677f6495a94b1480984d0a66f7cf4 (diff)
downloadansible-6ccd35cd7caf5c9ec7d50e7cc5ecb4c5a1fb085e.tar.gz
ansible-test pslint - fix warning with nested objects (#75792)
* ansible-test pslint - fix warning with nested objects (cherry picked from commit 7e19957afa02245f9ff791c7b6ad17700db4385b)
-rw-r--r--changelogs/fragments/pslint-sanity-warning.yml2
-rw-r--r--test/lib/ansible_test/_util/controller/sanity/pslint/pslint.ps113
2 files changed, 8 insertions, 7 deletions
diff --git a/changelogs/fragments/pslint-sanity-warning.yml b/changelogs/fragments/pslint-sanity-warning.yml
new file mode 100644
index 0000000000..8c16b69669
--- /dev/null
+++ b/changelogs/fragments/pslint-sanity-warning.yml
@@ -0,0 +1,2 @@
+bugfixes:
+- ansible-test pslint - Fix error when encountering validation results that are highly nested - https://github.com/ansible/ansible/issues/74151
diff --git a/test/lib/ansible_test/_util/controller/sanity/pslint/pslint.ps1 b/test/lib/ansible_test/_util/controller/sanity/pslint/pslint.ps1
index 9138a29904..f9d11d9de4 100644
--- a/test/lib/ansible_test/_util/controller/sanity/pslint/pslint.ps1
+++ b/test/lib/ansible_test/_util/controller/sanity/pslint/pslint.ps1
@@ -1,7 +1,6 @@
#Requires -Version 6
#Requires -Modules PSScriptAnalyzer, PSSA-PSCustomUseLiteralPath
-Set-StrictMode -Version 2.0
$ErrorActionPreference = "Stop"
$WarningPreference = "Stop"
@@ -20,14 +19,12 @@ $PSSAParams = @{
Setting = (Join-Path -Path $PSScriptRoot -ChildPath "settings.psd1")
}
-$Results = @()
-
-ForEach ($Path in $Args) {
+$Results = @(ForEach ($Path in $Args) {
$Retries = 3
Do {
Try {
- $Results += Invoke-ScriptAnalyzer -Path $Path @PSSAParams 3> $null
+ Invoke-ScriptAnalyzer -Path $Path @PSSAParams 3> $null
$Retries = 0
}
Catch {
@@ -37,6 +34,8 @@ ForEach ($Path in $Args) {
}
}
Until ($Retries -le 0)
-}
+})
-ConvertTo-Json -InputObject $Results
+# Since pwsh 7.1 results that exceed depth will produce a warning which fails the process.
+# Ignore warnings only for this step.
+ConvertTo-Json -InputObject $Results -Depth 1 -WarningAction SilentlyContinue