Made it a function and put in better place

This commit is contained in:
Lucas Gravley 2020-07-01 07:49:17 -05:00
parent 6792c8bbfa
commit 7bc0f9b8bb
2 changed files with 47 additions and 38 deletions

View file

@ -85,7 +85,6 @@ LINTER_ARRAY=("jsonlint" "yamllint" "xmllint" "markdownlint" "shellcheck"
"stylelint" "dotenv-linter" "pwsh" "ktlint" "protolint" "clj-kondo" "stylelint" "dotenv-linter" "pwsh" "ktlint" "protolint" "clj-kondo"
"spectral" "cfn-lint") "spectral" "cfn-lint")
############################# #############################
# Language array for prints # # Language array for prints #
############################# #############################
@ -642,6 +641,48 @@ GetGitHubVars()
fi fi
} }
################################################################################ ################################################################################
#### Function ValidatePowershellModules ########################################
function ValidatePowershellModules()
{
VALIDATE_PSSA_MODULE=$(pwsh -c "(Get-Module -Name PSScriptAnalyzer -ListAvailable | Select-Object -First 1).Name" 2>&1)
# If module found, ensure Invoke-ScriptAnalyzer command is available
if [[ "$VALIDATE_PSSA_MODULE" == "PSScriptAnalyzer" ]]; then
VALIDATE_PSSA_CMD=$(pwsh -c "(Get-Command Invoke-ScriptAnalyzer | Select-Object -First 1).Name" 2>&1)
else
# Failed to find module
exit 1
fi
#########################################
# validate we found the script analyzer #
#########################################
if [[ "$VALIDATE_PSSA_CMD" != "Invoke-ScriptAnalyzer" ]]; then
# Failed to find module
exit 1
fi
#######################
# Load the error code #
#######################
ERROR_CODE=$?
##############################
# Check the shell for errors #
##############################
if [ $ERROR_CODE -ne 0 ]; then
# Failed
echo "ERROR! Failed find module [PSScriptAnalyzer] for [$LINTER_NAME] in system!"
echo "ERROR:[PSSA_MODULE $VALIDATE_PSSA_MODULE] [PSSA_CMD $VALIDATE_PSSA_CMD]"
exit 1
else
# Success
if [[ "$ACTIONS_RUNNER_DEBUG" == "true" ]]; then
echo "Successfully found module [$VALIDATE_PSSA_MODULE] in system"
echo "Successfully found command [$VALIDATE_PSSA_CMD] in system"
fi
fi
}
################################################################################
#### Function Footer ########################################################### #### Function Footer ###########################################################
Footer() Footer()
{ {
@ -1088,6 +1129,11 @@ fi
# POWERSHELL LINTING # # POWERSHELL LINTING #
###################### ######################
if [ "$VALIDATE_POWERSHELL" == "true" ]; then if [ "$VALIDATE_POWERSHELL" == "true" ]; then
###############################################################
# For POWERSHELL, ensure PSScriptAnalyzer module is available #
###############################################################
ValidatePowershellModules
############################# #############################
# Lint the powershell files # # Lint the powershell files #
############################# #############################

View file

@ -61,43 +61,6 @@ function LintCodebase()
fi fi
fi fi
###############################################################
# For POWERSHELL, ensure PSScriptAnalyzer module is available #
###############################################################
if [[ "$FILE_TYPE" == "POWERSHELL" ]]; then
VALIDATE_PSSA_MODULE=$(pwsh -c "(Get-Module -Name PSScriptAnalyzer -ListAvailable | Select-Object -First 1).Name" 2>&1)
# If module found, ensure Invoke-ScriptAnalyzer command is available
if [[ "$VALIDATE_PSSA_MODULE" == "PSScriptAnalyzer" ]]; then
VALIDATE_PSSA_CMD=$(pwsh -c "(Get-Command Invoke-ScriptAnalyzer | Select-Object -First 1).Name" 2>&1)
else
exit 1
fi
if [[ "$VALIDATE_PSSA_CMD" != "Invoke-ScriptAnalyzer" ]]; then
exit 1
fi
#######################
# Load the error code #
#######################
ERROR_CODE=$?
##############################
# Check the shell for errors #
##############################
if [ $ERROR_CODE -ne 0 ]; then
# Failed
echo "ERROR! Failed find module [PSScriptAnalyzer] for [$LINTER_NAME] in system!"
echo "ERROR:[PSSA_MODULE $VALIDATE_PSSA_MODULE] [PSSA_CMD $VALIDATE_PSSA_CMD]"
exit 1
else
# Success
if [[ "$ACTIONS_RUNNER_DEBUG" == "true" ]]; then
echo "Successfully found module [$VALIDATE_PSSA_MODULE] in system"
echo "Successfully found command [$VALIDATE_PSSA_CMD] in system"
fi
fi
fi
########################## ##########################
# Initialize empty Array # # Initialize empty Array #
########################## ##########################