-
Notifications
You must be signed in to change notification settings - Fork 27
/
build.yaml
131 lines (115 loc) · 3.39 KB
/
build.yaml
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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
---
CopyDirectories:
- en-US
- DSCResources
- Modules
Encoding: UTF8 # With BOM in WinPS, noBOM in PSCore.
VersionedOutputDirectory: true
BuiltModuleSubdirectory: module
####################################################
# ModuleBuilder Submodules Configuration #
####################################################
NestedModule:
DscResource.Common:
CopyOnly: true
Path: ./output/RequiredModules/DscResource.Common
AddToManifest: false
Exclude: PSGetModuleInfo.xml
BuildWorkflow:
'.': # "." is the default Invoke-Build workflow. It is called when no -Tasks is specified to the build.ps1
- build
- test
- hqrmtest
build:
- Clean
- Build_Module_ModuleBuilder
- Build_NestedModules_ModuleBuilder
- Create_changelog_release_output
#- Generate_Conceptual_Help
pack:
- build
- package_module_nupkg
hqrmtest:
- Invoke_HQRM_Tests_Stop_On_Fail
test:
- Pester_Tests_Stop_On_Fail
- Convert_Pester_Coverage
- Pester_if_Code_Coverage_Under_Threshold
publish:
- Publish_release_to_GitHub
- publish_module_to_gallery # runs if nuget is not available
- Create_ChangeLog_GitHub_PR
Pester: #Passthru, OutputFile, CodeCoverageOutputFile not supported
Configuration:
Run:
Path:
- tests/Unit
- tests/QA
Output:
Verbosity: Detailed
StackTraceVerbosity: Full
CIFormat: Auto
CodeCoverage:
CoveragePercentTarget: 50
OutputPath: JaCoCo_coverage.xml
OutputEncoding: ascii
# There is a bug in Pester when running unit tests for classes when 'UseBreakpoints' is turned off.
# See error in gist: https://gist.github.com/johlju/c16dfd9587c7e066e8825fc54b33a703
UseBreakpoints: true
TestResult:
OutputFormat: NUnitXML
OutputEncoding: ascii
ExcludeFromCodeCoverage:
- Modules/DscResource.Common
ExcludeTag:
- helpQuality
- FunctionalQuality
- TestQuality
####################################################
# Pester Configuration (DscResource.Test) #
####################################################
DscTest:
Pester:
Configuration:
Filter:
ExcludeTag:
- "Common Tests - New Error-Level Script Analyzer Rules"
Output:
Verbosity: Detailed
CIFormat: Auto
TestResult:
OutputFormat: NUnitXML
OutputEncoding: ascii
OutputPath: ./output/testResults/NUnitXml_HQRM_Tests.xml
Script:
ExcludeSourceFile:
- output
ExcludeModuleFile:
- Modules/DscResource.Common
MainGitBranch: main
ModuleBuildTasks:
Sampler:
- '*.build.Sampler.ib.tasks' # this means: import (dot source) all aliases ending with .ib.tasks exported by sampler module
Sampler.GitHubTasks:
- '*.ib.tasks'
DscResource.DocGenerator:
- 'Task.*'
DscResource.Test:
- 'Task.*'
# Invoke-Build Header to be used to 'decorate' the terminal output of the tasks.
TaskHeader: |
param($Path)
""
"=" * 79
Write-Build Cyan "`t`t`t$($Task.Name.replace("_"," ").ToUpper())"
Write-Build DarkGray "$(Get-BuildSynopsis $Task)"
"-" * 79
Write-Build DarkGray " $Path"
Write-Build DarkGray " $($Task.InvocationInfo.ScriptName):$($Task.InvocationInfo.ScriptLineNumber)"
""
GitHubConfig:
GitHubFilesToAdd:
- 'CHANGELOG.md'
GitHubConfigUserName: dscbot
GitHubConfigUserEmail: [email protected]
UpdateChangelogOnPrerelease: false