|
2 | 2 | # Licensed under the MIT license. See LICENSE.txt in the project root for license information. |
3 | 3 |
|
4 | 4 | trigger: |
| 5 | + batch: true |
5 | 6 | branches: |
6 | 7 | include: |
7 | 8 | - master |
| 9 | + - develop |
8 | 10 | paths: |
9 | 11 | exclude: |
10 | | - - appveyor.yml |
11 | | - |
12 | | -phases: |
13 | | -- phase: Build |
14 | | - queue: |
15 | | - name: VSEng-MicroBuildVS2017 |
16 | | - demands: |
17 | | - - msbuild |
18 | | - - visualstudio |
19 | | - - vstest |
20 | | - parallel: 2 |
21 | | - matrix: |
22 | | - debug: |
23 | | - Configuration: Debug |
24 | | - SignType: Test |
25 | | - release: |
26 | | - Configuration: Release |
27 | | - |
28 | | - variables: |
29 | | - Platform: Any CPU |
30 | | - Solution: '*.sln' |
31 | | - |
32 | | - steps: |
33 | | - - task: NuGetToolInstaller@0 |
34 | | - displayName: Install nuget |
35 | | - inputs: |
36 | | - versionSpec: '4.4.1' |
37 | | - |
38 | | - - task: NuGetCommand@2 |
39 | | - displayName: Restore nuget packages |
40 | | - inputs: |
41 | | - restoreSolution: $(Solution) |
42 | | - |
43 | | - - task: MicroBuildSigningPlugin@1 |
44 | | - displayName: Install MicroBuild signing plugin |
45 | | - inputs: |
46 | | - esrpSigning: true |
47 | | - signType: $(SignType) |
48 | | - |
49 | | - - powershell: | |
50 | | - $ErrorActionPreference = 'Stop' |
51 | | - Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force |
52 | | - Install-Module -Name platyPS -Repository PSGallery -SkipPublisherCheck -Force |
53 | | - displayName: Install PowerShell modules |
54 | | -
|
55 | | - - powershell: | |
56 | | - New-ExternalHelp -Path docs\VSSetup -OutputPath "src\VSSetup.PowerShell\bin\${env:CONFIGURATION}" -Force |
57 | | - displayName: Compile documentation |
58 | | - env: |
59 | | - CONFIGURATION: $(Configuration) |
60 | | - workingDirectory: $(Build.SourcesDirectory) |
61 | | -
|
62 | | - - task: VSBuild@1 |
63 | | - displayName: Build solution |
64 | | - inputs: |
65 | | - solution: $(Solution) |
66 | | - configuration: $(Configuration) |
67 | | - platform: $(Platform) |
68 | | - msbuildArgs: /p:RunCodeAnalysis=true /p:TreatWarningsAsErrors=true "/flp:Verbosity=Diagnostic;LogFile=$(Build.ArtifactStagingDirectory)\logs\build.log" |
69 | | - maximumCpuCount: true |
70 | | - |
71 | | - - task: VSTest@2 |
72 | | - displayName: Test solution |
73 | | - inputs: |
74 | | - testAssemblyVer2: | |
75 | | - **\$(Configuration)\*test*.dll |
76 | | - !**\obj\** |
77 | | - configuration: $(Configuration) |
78 | | - platform: $(Platform) |
79 | | - codeCoverageEnabled: true |
80 | | - runInParallel: true |
81 | | - |
82 | | - - powershell: | |
83 | | - If (-Not (Test-Path -Path $env:OUTDIR -PathType Container)) { $null = New-Item -Path $env:OUTDIR -Type Directory } |
84 | | - Compress-Archive -Path LICENSE.txt, "${env:SRCDIR}\*.dll", "${env:SRCDIR}\*.dll-Help.xml", "${env:SRCDIR}\about_*.help.txt", "${env:SRCDIR}\VSSetup.*" -DestinationPath "${env:OUTDIR}\VSSetup.zip" |
85 | | - displayName: Archive output |
86 | | - env: |
87 | | - CONFIGURATION: $(Configuration) |
88 | | - OUTDIR: $(Build.BinariesDirectory)\bin\$(Configuration) |
89 | | - SRCDIR: src\VSSetup.PowerShell\bin\$(Configuration) |
90 | | - workingDirectory: $(Build.SourcesDirectory) |
91 | | -
|
92 | | - - task: NuGetCommand@2 |
93 | | - displayName: Package output |
94 | | - inputs: |
95 | | - command: pack |
96 | | - basePath: $(Build.SourcesDirectory) |
97 | | - packDestination: $(Build.BinariesDirectory)\bin\$(Configuration) |
98 | | - packagesToPack: pkg\VSSetup\VSSetup.nuspec |
99 | | - configuration: $(Configuration) |
100 | | - versioningScheme: byEnvVar |
101 | | - versionEnvVar: GitBuildVersionSimple |
102 | | - includeSymbols: true |
103 | | - buildProperties: CommitId=$(Build.SourceVersion) |
104 | | - |
105 | | - - task: VSBuild@1 |
106 | | - displayName: Sign packages |
107 | | - condition: and(succeeded(), eq(variables['Configuration'], 'Release')) |
108 | | - inputs: |
109 | | - solution: pkg\VSSetup\VSSetup.signproj |
110 | | - configuration: $(Configuration) |
111 | | - platform: $(Platform) |
112 | | - msbuildArgs: /p:OutDir=$(Build.BinariesDirectory)\bin\$(Configuration) "/flp:Verbosity=Diagnostic;LogFile=$(Build.ArtifactStagingDirectory)\logs\sign.log" |
113 | | - |
114 | | - - task: MicroBuildCodesignVerify@1 |
115 | | - displayName: Validate packages |
116 | | - condition: and(succeeded(), eq(variables['Configuration'], 'Release')) |
117 | | - inputs: |
118 | | - ExcludeSNVerify: true |
119 | | - TargetFolder: $(Build.BinariesDirectory)\bin\$(Configuration) |
120 | | - WhiteListPathForCerts: build\nosign.txt |
121 | | - |
122 | | - - task: CopyFiles@2 |
123 | | - displayName: Copy output |
124 | | - inputs: |
125 | | - SourceFolder: $(Build.SourcesDirectory)\src |
126 | | - Contents: '**\bin\$(Configuration)\**' |
127 | | - TargetFolder: $(Build.ArtifactStagingDirectory)\drop\src |
128 | | - |
129 | | - - task: CopyFiles@2 |
130 | | - displayName: Copy packages |
131 | | - inputs: |
132 | | - SourceFolder: $(Build.BinariesDirectory) |
133 | | - Contents: bin\$(Configuration)\** |
134 | | - TargetFolder: $(Build.ArtifactStagingDirectory)\drop |
135 | | - |
136 | | - - task: CopyFiles@2 |
137 | | - displayName: Copy tools |
138 | | - inputs: |
139 | | - SourceFolder: $(Build.SourcesDirectory) |
140 | | - Contents: tools\** |
141 | | - TargetFolder: $(Build.ArtifactStagingDirectory)\drop |
142 | | - |
143 | | - - task: PublishBuildArtifacts@1 |
144 | | - displayName: Publish drop |
145 | | - inputs: |
146 | | - ArtifactName: drop |
147 | | - PathtoPublish: $(Build.ArtifactStagingDirectory)\drop |
148 | | - |
149 | | - - task: PublishBuildArtifacts@1 |
150 | | - displayName: Publish logs |
151 | | - condition: succeededOrFailed() |
152 | | - continueOnError: true |
153 | | - inputs: |
154 | | - ArtifactName: logs |
155 | | - PathtoPublish: $(Build.ArtifactStagingDirectory)\logs |
156 | | - |
157 | | - - task: MicroBuildCleanup@1 |
158 | | - displayName: Clean up |
159 | | - condition: succeededOrFailed() |
160 | | - |
161 | | -# vim: set ai et st=2 sts=2 sw=2: |
| 12 | + - README.md |
| 13 | + |
| 14 | +pr: none |
| 15 | + |
| 16 | +queue: |
| 17 | + name: VSEng-MicroBuildVS2017 |
| 18 | + timeoutInMinutes: 120 |
| 19 | + demands: |
| 20 | + - MSBuild |
| 21 | + - VisualStudio |
| 22 | + - VSTest |
| 23 | + |
| 24 | +steps: |
| 25 | +- task: ms-vseng.MicroBuildTasks.30666190-6959-11e5-9f96-f56098202fef.MicroBuildSigningPlugin@1 |
| 26 | + displayName: Install MicroBuild signing plugin |
| 27 | + inputs: |
| 28 | + esrpSigning: true |
| 29 | + signType: $(SignType) |
| 30 | + |
| 31 | +- template: build/build.yml |
| 32 | + parameters: |
| 33 | + BuildConfiguration: $(BuildConfiguration) |
| 34 | + BuildPlatform: $(BuildPlatform) |
| 35 | + Sign: true |
| 36 | + |
| 37 | +- task: ms.vss-governance-buildtask.governance-build-task-component-detection.ComponentGovernanceComponentDetection@0 |
| 38 | + displayName: Detect components |
| 39 | + inputs: |
| 40 | + sourceScanPath: $(Build.SourcesDirectory) |
| 41 | + |
| 42 | +- task: ms-vseng.MicroBuildTasks.521a94ea-9e68-468a-8167-6dcf361ea776.MicroBuildCleanup@1 |
| 43 | + displayName: Clean up |
| 44 | + condition: succeededOrFailed() |
0 commit comments