Skip env processing on matrix import step (#5435)

Co-authored-by: Ben Broderick Phillips <bebroder@microsoft.com>
This commit is contained in:
Azure SDK Bot 2024-03-11 17:07:08 -04:00 committed by GitHub
parent 3dd2a25283
commit 4affaf7b6a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -96,7 +96,8 @@ function GenerateMatrix(
[String]$displayNameFilter = ".*", [String]$displayNameFilter = ".*",
[Array]$filters = @(), [Array]$filters = @(),
[Array]$replace = @(), [Array]$replace = @(),
[Array]$nonSparseParameters = @() [Array]$nonSparseParameters = @(),
[Switch]$skipEnvironmentVariables
) { ) {
$matrixParameters, $importedMatrix, $combinedDisplayNameLookup = ` $matrixParameters, $importedMatrix, $combinedDisplayNameLookup = `
ProcessImport $config.matrixParameters $selectFromMatrixType $nonSparseParameters $config.displayNamesLookup ProcessImport $config.matrixParameters $selectFromMatrixType $nonSparseParameters $config.displayNamesLookup
@ -124,7 +125,9 @@ function GenerateMatrix(
$matrix = FilterMatrix $matrix $filters $matrix = FilterMatrix $matrix $filters
$matrix = ProcessReplace $matrix $replace $combinedDisplayNameLookup $matrix = ProcessReplace $matrix $replace $combinedDisplayNameLookup
$matrix = ProcessEnvironmentVariableReferences $matrix $combinedDisplayNameLookup if (!$skipEnvironmentVariables) {
$matrix = ProcessEnvironmentVariableReferences $matrix $combinedDisplayNameLookup
}
$matrix = FilterMatrixDisplayName $matrix $displayNameFilter $matrix = FilterMatrixDisplayName $matrix $displayNameFilter
return $matrix return $matrix
} }
@ -427,10 +430,14 @@ function ProcessImport([MatrixParameter[]]$matrix, [String]$selection, [Array]$n
exit 1 exit 1
} }
$importedMatrixConfig = GetMatrixConfigFromFile (Get-Content -Raw $importPath) $importedMatrixConfig = GetMatrixConfigFromFile (Get-Content -Raw $importPath)
# Add skipEnvironmentVariables so we don't process environment variables on import
# because we want top level filters to work against the the env key, not the value.
# The environment variables will get resolved after the import.
$importedMatrix = GenerateMatrix ` $importedMatrix = GenerateMatrix `
-config $importedMatrixConfig ` -config $importedMatrixConfig `
-selectFromMatrixType $selection ` -selectFromMatrixType $selection `
-nonSparseParameters $nonSparseParameters -nonSparseParameters $nonSparseParameters `
-skipEnvironmentVariables
$combinedDisplayNameLookup = $importedMatrixConfig.displayNamesLookup $combinedDisplayNameLookup = $importedMatrixConfig.displayNamesLookup
foreach ($lookup in $displayNamesLookup.GetEnumerator()) { foreach ($lookup in $displayNamesLookup.GetEnumerator()) {