3
3
Remove-Variable - Name PSBPreference - Scope Script - Force - ErrorAction Ignore
4
4
Set-Variable - Name PSBPreference - Option ReadOnly - Scope Script - Value (. ([IO.Path ]::Combine($PSScriptRoot , ' build.properties.ps1' )))
5
5
6
- properties {}
6
+ Properties {}
7
7
8
8
FormatTaskName {
9
9
param ($taskName )
@@ -15,24 +15,24 @@ FormatTaskName {
15
15
# Can't have two 'default' tasks
16
16
# Task default -depends Test
17
17
18
- task Init {
18
+ Task Init {
19
19
Initialize-PSBuild - UseBuildHelpers - BuildEnvironment $PSBPreference
20
20
} - description ' Initialize build environment variables'
21
21
22
- task Clean - depends Init {
22
+ Task Clean - depends $PSBPreference .TaskDependencies.Clean {
23
23
Clear-PSBuildOutputFolder - Path $PSBPreference.Build.ModuleOutDir
24
24
} - description ' Clears module output directory'
25
25
26
- task StageFiles - depends Clean {
26
+ Task StageFiles - depends $PSBPreference .TaskDependencies.StageFiles {
27
27
$buildParams = @ {
28
- Path = $PSBPreference.General.SrcRootDir
29
- ModuleName = $PSBPreference.General.ModuleName
30
- DestinationPath = $PSBPreference.Build.ModuleOutDir
31
- Exclude = $PSBPreference.Build.Exclude
32
- Compile = $PSBPreference.Build.CompileModule
33
- CompileDirectories = $PSBPreference.Build.CompileDirectories
34
- CopyDirectories = $PSBPreference.Build.CopyDirectories
35
- Culture = $PSBPreference.Help.DefaultLocale
28
+ Path = $PSBPreference.General.SrcRootDir
29
+ ModuleName = $PSBPreference.General.ModuleName
30
+ DestinationPath = $PSBPreference.Build.ModuleOutDir
31
+ Exclude = $PSBPreference.Build.Exclude
32
+ Compile = $PSBPreference.Build.CompileModule
33
+ CompileDirectories = $PSBPreference.Build.CompileDirectories
34
+ CopyDirectories = $PSBPreference.Build.CopyDirectories
35
+ Culture = $PSBPreference.Help.DefaultLocale
36
36
}
37
37
38
38
if ($PSBPreference.Help.ConvertReadMeToAboutHelp ) {
@@ -53,7 +53,7 @@ task StageFiles -depends Clean {
53
53
Build-PSBuildModule @buildParams
54
54
} - description ' Builds module based on source directory'
55
55
56
- task Build - depends $PSBPreference.Build.Dependencies - description ' Builds module and generate help documentation'
56
+ Task Build - depends $PSBPreference.TaskDependencies.Build - description ' Builds module and generate help documentation'
57
57
58
58
$analyzePreReqs = {
59
59
$result = $true
@@ -67,11 +67,11 @@ $analyzePreReqs = {
67
67
}
68
68
$result
69
69
}
70
- task Analyze - depends Build - precondition $analyzePreReqs {
70
+ Task Analyze - depends $PSBPreference .TaskDependencies.Analyze - precondition $analyzePreReqs {
71
71
$analyzeParams = @ {
72
- Path = $PSBPreference.Build.ModuleOutDir
72
+ Path = $PSBPreference.Build.ModuleOutDir
73
73
SeverityThreshold = $PSBPreference.Test.ScriptAnalysis.FailBuildOnSeverityLevel
74
- SettingsPath = $PSBPreference.Test.ScriptAnalysis.SettingsPath
74
+ SettingsPath = $PSBPreference.Test.ScriptAnalysis.SettingsPath
75
75
}
76
76
Test-PSBuildScriptAnalysis @analyzeParams
77
77
} - description ' Execute PSScriptAnalyzer tests'
@@ -92,27 +92,27 @@ $pesterPreReqs = {
92
92
}
93
93
return $result
94
94
}
95
- task Pester - depends Build - precondition $pesterPreReqs {
95
+ Task Pester - depends $PSBPreference .TaskDependencies.Pester - precondition $pesterPreReqs {
96
96
$pesterParams = @ {
97
- Path = $PSBPreference.Test.RootDir
98
- ModuleName = $PSBPreference.General.ModuleName
99
- ModuleManifest = Join-Path $PSBPreference.Build.ModuleOutDir " $ ( $PSBPreference.General.ModuleName ) .psd1"
100
- OutputPath = $PSBPreference.Test.OutputFile
101
- OutputFormat = $PSBPreference.Test.OutputFormat
102
- CodeCoverage = $PSBPreference.Test.CodeCoverage.Enabled
103
- CodeCoverageThreshold = $PSBPreference.Test.CodeCoverage.Threshold
104
- CodeCoverageFiles = $PSBPreference.Test.CodeCoverage.Files
105
- CodeCoverageOutputFile = $PSBPreference.Test.CodeCoverage.OutputFile
97
+ Path = $PSBPreference.Test.RootDir
98
+ ModuleName = $PSBPreference.General.ModuleName
99
+ ModuleManifest = Join-Path $PSBPreference.Build.ModuleOutDir " $ ( $PSBPreference.General.ModuleName ) .psd1"
100
+ OutputPath = $PSBPreference.Test.OutputFile
101
+ OutputFormat = $PSBPreference.Test.OutputFormat
102
+ CodeCoverage = $PSBPreference.Test.CodeCoverage.Enabled
103
+ CodeCoverageThreshold = $PSBPreference.Test.CodeCoverage.Threshold
104
+ CodeCoverageFiles = $PSBPreference.Test.CodeCoverage.Files
105
+ CodeCoverageOutputFile = $PSBPreference.Test.CodeCoverage.OutputFile
106
106
CodeCoverageOutputFileFormat = $PSBPreference.Test.CodeCoverage.OutputFileFormat
107
- ImportModule = $PSBPreference.Test.ImportModule
107
+ ImportModule = $PSBPreference.Test.ImportModule
108
108
}
109
109
Test-PSBuildPester @pesterParams
110
110
} - description ' Execute Pester tests'
111
111
112
- task Test - depends Pester , Analyze {
112
+ Task Test - depends $PSBPreference .TaskDependencies.Test {
113
113
} - description ' Execute Pester and ScriptAnalyzer tests'
114
114
115
- task BuildHelp - depends GenerateMarkdown , GenerateMAML {} - description ' Builds help documentation'
115
+ Task BuildHelp - depends $PSBPreference .TaskDependencies.BuildHelp {} - description ' Builds help documentation'
116
116
117
117
$genMarkdownPreReqs = {
118
118
$result = $true
@@ -122,12 +122,12 @@ $genMarkdownPreReqs = {
122
122
}
123
123
$result
124
124
}
125
- task GenerateMarkdown - depends StageFiles - precondition $genMarkdownPreReqs {
125
+ Task GenerateMarkdown - depends $PSBPreference .TaskDependencies.GenerateMarkdown - precondition $genMarkdownPreReqs {
126
126
$buildMDParams = @ {
127
127
ModulePath = $PSBPreference.Build.ModuleOutDir
128
128
ModuleName = $PSBPreference.General.ModuleName
129
- DocsPath = $PSBPreference.Docs.RootDir
130
- Locale = $PSBPreference.Help.DefaultLocale
129
+ DocsPath = $PSBPreference.Docs.RootDir
130
+ Locale = $PSBPreference.Help.DefaultLocale
131
131
}
132
132
Build-PSBuildMarkdown @buildMDParams
133
133
} - description ' Generates PlatyPS markdown files from module help'
@@ -140,7 +140,7 @@ $genHelpFilesPreReqs = {
140
140
}
141
141
$result
142
142
}
143
- task GenerateMAML - depends GenerateMarkdown - precondition $genHelpFilesPreReqs {
143
+ Task GenerateMAML - depends $PSBPreference .TaskDependencies.GenerateMAML - precondition $genHelpFilesPreReqs {
144
144
Build-PSBuildMAMLHelp - Path $PSBPreference.Docs.RootDir - DestinationPath $PSBPreference.Build.ModuleOutDir
145
145
} - description ' Generates MAML-based help from PlatyPS markdown files'
146
146
@@ -152,18 +152,18 @@ $genUpdatableHelpPreReqs = {
152
152
}
153
153
$result
154
154
}
155
- task GenerateUpdatableHelp - depends BuildHelp - precondition $genUpdatableHelpPreReqs {
155
+ Task GenerateUpdatableHelp - depends $PSBPreference .TaskDependencies.GenerateUpdatableHelp - precondition $genUpdatableHelpPreReqs {
156
156
Build-PSBuildUpdatableHelp - DocsPath $PSBPreference.Docs.RootDir - OutputPath $PSBPreference.Help.UpdatableHelpOutDir
157
157
} - description ' Create updatable help .cab file based on PlatyPS markdown help'
158
158
159
- task Publish - depends Test {
159
+ Task Publish - depends $PSBPreference .TaskDependencies.Publish {
160
160
Assert - conditionToCheck ($PSBPreference.Publish.PSRepositoryApiKey -or $PSBPreference.Publish.PSRepositoryCredential ) - failureMessage " API key or credential not defined to authenticate with [$ ( $PSBPreference.Publish.PSRepository ) ] with."
161
161
162
162
$publishParams = @ {
163
- Path = $PSBPreference.Build.ModuleOutDir
164
- Version = $PSBPreference.General.ModuleVersion
163
+ Path = $PSBPreference.Build.ModuleOutDir
164
+ Version = $PSBPreference.General.ModuleVersion
165
165
Repository = $PSBPreference.Publish.PSRepository
166
- Verbose = $VerbosePreference
166
+ Verbose = $VerbosePreference
167
167
}
168
168
if ($PSBPreference.Publish.PSRepositoryApiKey ) {
169
169
$publishParams.ApiKey = $PSBPreference.Publish.PSRepositoryApiKey
@@ -176,7 +176,7 @@ task Publish -depends Test {
176
176
Publish-PSBuildModule @publishParams
177
177
} - description ' Publish module to the defined PowerShell repository'
178
178
179
- task ? - description ' Lists the available tasks' {
179
+ Task ? - description ' Lists the available tasks' {
180
180
' Available tasks:'
181
181
$psake.context.Peek ().Tasks.Keys | Sort-Object
182
182
}
0 commit comments