-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.PSScriptAnalyzerSettings.psd1
104 lines (94 loc) · 3.47 KB
/
.PSScriptAnalyzerSettings.psd1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
# Rule design is provided based on https://github.com/PowerShell/PSScriptAnalyzer/tree/master/RuleDocumentation
@{
# Process ONLY the following rules
IncludeRules = @(
# General
'PSAvoidDefaultValueSwitchParameter',
'PSAvoidDefaultValueForMandatoryParameter',
'PSAvoidAssignmentToAutomaticVariable',
'PSMissingModuleManifestField',
'PSPossibleIncorrectComparisonWithNull',
'PSPossibleIncorrectUsageOfRedirectionOperator',
'PSReservedCmdletChar',
'PSReservedParams',
'PSShouldProcess',
'PSUseApprovedVerbs',
'PSUseToExportFieldsInManifest',
'PSUseUsingScopeModifierInNewRunspaces',
# Security
'PSAvoidUsingComputerNameHardcoded',
# Code style
'PSAvoidLongLines',
'PSAvoidTrailingWhitespace',
'PSAvoidUsingWriteHost',
'PSAvoidUsingCmdletAliases',
'PSAvoidUsingDoubleQuotesForConstantString',
'PSProvideCommentHelp',
'PSPossibleIncorrectUsageOfAssignmentOperator',
'PSPossibleIncorrectUsageOfRedirectionOperator',
'PSMisleadingBacktick',
'PSUseLiteralInitializerForHashtable',
# Code formatting OTBS
'PSPlaceOpenBrace',
'PSPlaceCloseBrace',
'PSUseConsistentWhitespace',
'PSUseConsistentIndentation',
'PSAlignAssignmentStatement',
'PSUseCorrectCasing',
# Functions
'PSAvoidUsingWMICmdlet',
'PSAvoidUsingEmptyCatchBlock',
'PSAvoidUsingPositionalParameters',
'PSReservedCmdletChar',
'PSReservedParams',
# 'PSReviewUnusedParameter',
'PSUseCmdletCorrectly',
'PSUseDeclaredVarsMoreThanAssignments',
'PSUseSingularNouns',
'PSUseOutputTypeCorrectly'
)
# Configuration for the rules defined above
Rules = @{
# Code style
PSAvoidUsingDoubleQuotesForConstantString = @{
Enable = $true
}
# Code formatting OTBS
PSPlaceOpenBrace = @{
Enable = $true
OnSameLine = $true
NewLineAfter = $true
IgnoreOneLineBlock = $true
}
PSPlaceCloseBrace = @{
Enable = $true
NewLineAfter = $false
IgnoreOneLineBlock = $true
NoEmptyLineBefore = $false
}
PSUseConsistentIndentation = @{
Enable = $true
Kind = 'space'
PipelineIndentation = 'IncreaseIndentationForFirstPipeline'
IndentationSize = 4
}
PSUseConsistentWhitespace = @{
Enable = $true
CheckInnerBrace = $true
CheckOpenBrace = $true
CheckOpenParen = $true
CheckOperator = $false # https://github.com/PowerShell/PSScriptAnalyzer/issues/769
CheckPipe = $true
CheckPipeForRedundantWhitespace = $true
CheckSeparator = $true
CheckParameter = $true
}
PSAlignAssignmentStatement = @{
Enable = $true
CheckHashtable = $true
}
PSUseCorrectCasing = @{
Enable = $true
}
}
}