142 lines
4.8 KiB
PowerShell
142 lines
4.8 KiB
PowerShell
@{
|
|
Severity = 'Error', 'Warning', 'Information'
|
|
|
|
IncludeRules = @(
|
|
'PSAlignAssignmentStatement',
|
|
'PSAvoidAssignmentToAutomaticVariable',
|
|
'PSAvoidDefaultValueForMandatoryParameter',
|
|
'PSAvoidDefaultValueSwitchParameter',
|
|
'PSAvoidGlobalAliases',
|
|
'PSAvoidGlobalFunctions',
|
|
'PSAvoidGlobalVars',
|
|
'PSAvoidInvokingEmptyMembers',
|
|
'PSAvoidLongLines',
|
|
'PSAvoidNullOrEmptyHelpMessageAttribute',
|
|
'PSAvoidOverwritingBuiltInCmdlets',
|
|
'PSAvoidShouldContinueWithoutForce',
|
|
'PSAvoidTrailingWhitespace',
|
|
'PSAvoidUsingCmdletAliases',
|
|
'PSAvoidUsingComputerNameHardcoded',
|
|
'PSAvoidUsingConvertToSecureStringWithPlainText',
|
|
'PSAvoidUsingDeprecatedManifestFields',
|
|
'PSAvoidUsingDoubleQuotesForConstantString',
|
|
'PSAvoidUsingEmptyCatchBlock',
|
|
'PSAvoidUsingInvokeExpression',
|
|
'PSAvoidUsingPlainTextForPassword',
|
|
'PSAvoidUsingPositionalParameters',
|
|
'PSAvoidUsingUsernameAndPasswordParams',
|
|
'PSAvoidUsingWMICmdlet',
|
|
'PSAvoidUsingWriteHost',
|
|
'PSMisleadingBacktick',
|
|
'PSMissingModuleManifestField',
|
|
'PSPlaceCloseBrace',
|
|
'PSPlaceOpenBrace',
|
|
'PSPossibleIncorrectComparisonWithNull',
|
|
'PSPossibleIncorrectUsageOfAssignmentOperator',
|
|
'PSPossibleIncorrectUsageOfRedirectionOperator',
|
|
'PSProvideCommentHelp',
|
|
'PSReservedCmdletChar',
|
|
'PSReservedParams',
|
|
'PSReviewUnusedParameter',
|
|
'PSShouldProcess',
|
|
'PSUseApprovedVerbs',
|
|
'PSUseBOMForUnicodeEncodedFile',
|
|
'PSUseCmdletCorrectly',
|
|
# There is no predefined set for Pwsh7 Cmdlets
|
|
'PSUseCompatibleCmdlets',
|
|
#'PSUseCompatibleCommands',
|
|
'PSUseCompatibleSyntax',
|
|
#'PSUseCompatibleTypes',
|
|
'PSUseConsistentIndentation',
|
|
# Disable if bug in 1.19.1 version occurs.
|
|
'PSUseConsistentWhitespace',
|
|
'PSUseCorrectCasing',
|
|
'PSUseDeclaredVarsMoreThanAssignments',
|
|
'PSUseLiteralInitializerForHashtable',
|
|
'PSUseOutputTypeCorrectly',
|
|
'PSUsePSCredentialType',
|
|
'PSUseProcessBlockForPipelineCommand',
|
|
'PSUseShouldProcessForStateChangingFunctions',
|
|
'PSUseSingularNouns',
|
|
'PSUseSupportsShouldProcess',
|
|
'PSUseToExportFieldsInManifest',
|
|
'PSUseUTF8EncodingForHelpFile',
|
|
'PSUseUsingScopeModifierInNewRunspaces'
|
|
)
|
|
|
|
Rules = @{
|
|
|
|
PSAvoidLongLines = @{
|
|
Enable = $true
|
|
MaximumLineLength = 116
|
|
}
|
|
|
|
PSPlaceOpenBrace = @{
|
|
Enable = $true
|
|
OnSameLine = $true
|
|
NewLineAfter = $true
|
|
IgnoreOneLineBlock = $true
|
|
}
|
|
|
|
PSPlaceCloseBrace = @{
|
|
Enable = $true
|
|
NewLineAfter = $true
|
|
IgnoreOneLineBlock = $true
|
|
NoEmptyLineBefore = $false
|
|
}
|
|
|
|
PSProvideCommentHelp = @{
|
|
Enable = $true
|
|
ExportedOnly = $false
|
|
BlockComment = $true
|
|
VSCodeSnippetCorrection = $false
|
|
Placement = "begin"
|
|
}
|
|
|
|
PSUseCompatibleCmdlets = @{
|
|
compatibility = @(
|
|
"desktop-5.1.14393.206-windows",
|
|
"core-6.1.0-windows"
|
|
)
|
|
}
|
|
|
|
PSUseCompatibleSyntax = @{
|
|
Enable = $true
|
|
TargetVersions = @(
|
|
"7.0",
|
|
"5.1"
|
|
)
|
|
}
|
|
|
|
PSUseConsistentIndentation = @{
|
|
Enable = $true
|
|
Kind = 'space'
|
|
PipelineIndentation = 'IncreaseIndentationForFirstPipeline'
|
|
IndentationSize = 4
|
|
}
|
|
|
|
PSUseConsistentWhitespace = @{
|
|
Enable = $true
|
|
CheckInnerBrace = $true
|
|
CheckOpenBrace = $true
|
|
CheckOpenParen = $true
|
|
CheckOperator = $true
|
|
CheckPipe = $true
|
|
CheckPipeForRedundantWhitespace = $false
|
|
CheckSeparator = $true
|
|
CheckParameter = $false
|
|
IgnoreAssignmentOperatorInsideHashTable = $true
|
|
}
|
|
|
|
PSAlignAssignmentStatement = @{
|
|
Enable = $true
|
|
CheckHashtable = $false
|
|
}
|
|
|
|
PSUseCorrectCasing = @{
|
|
Enable = $true
|
|
}
|
|
}
|
|
|
|
}
|