Skip to content

Commit 8069b24

Browse files
Add release build for MMI and restructure CI build (PowerShell#39)
1 parent 233fd52 commit 8069b24

File tree

6 files changed

+153
-38
lines changed

6 files changed

+153
-38
lines changed

.vsts-ci/ci.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: MMI-$(Build.BuildId)
2+
trigger:
3+
branches:
4+
include:
5+
- master
6+
- release*
7+
pr:
8+
branches:
9+
include:
10+
- master
11+
- release*
12+
13+
pool:
14+
vmImage: 'ubuntu-latest'
15+
16+
steps:
17+
- template: templates/build.yml
18+
19+
- template: templates/test.yml

.vsts-ci/releaseBuild.yml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
name: MMI-$(Build.BuildId)
2+
trigger:
3+
branches:
4+
include:
5+
- master
6+
- release*
7+
pr:
8+
branches:
9+
include:
10+
- master
11+
- release*
12+
13+
jobs:
14+
15+
- job: build_MMI
16+
displayName: Build MMI
17+
pool:
18+
vmImage: 'ubuntu-latest'
19+
steps:
20+
- template: templates/build.yml
21+
22+
- template: templates/compliance.yml
23+
parameters:
24+
parentJob: build_MMI

.vsts-ci/templates/build.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
steps:
2+
- checkout: self
3+
4+
- bash: sudo apt-get install libpam0g-dev libssl-dev libcurl4-openssl-dev
5+
displayName: 'apt-get dependencies'
6+
7+
- bash: ./build.sh
8+
displayName: 'Build MMI'
9+
10+
- task: PublishBuildArtifacts@1
11+
inputs:
12+
artifactName: 'release'
13+
pathToPublish: src/Microsoft.Management.Infrastructure/bin/Microsoft.Management.Infrastructure.dll
14+
15+
- task: PublishBuildArtifacts@1
16+
inputs:
17+
artifactName: 'release'
18+
pathToPublish: src/Microsoft.Management.Infrastructure/bin/Microsoft.Management.Infrastructure.pdb

.vsts-ci/templates/compliance.yml

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
parameters:
2+
parentJob: build
3+
4+
jobs:
5+
- job: compliance
6+
displayName: Compliance for MMI
7+
pool:
8+
name: Package ES CodeHub Lab E
9+
dependsOn:
10+
${{ parameters.parentJob }}
11+
12+
steps:
13+
- task: DownloadBuildArtifacts@0
14+
displayName: 'Download artifacts'
15+
inputs:
16+
buildType: current
17+
downloadType: single
18+
artifactName: release
19+
downloadPath: '$(System.ArtifactsDirectory)'
20+
21+
- task: securedevelopmentteam.vss-secure-development-tools.build-task-antimalware.AntiMalware@3
22+
displayName: 'Run Defender Scan'
23+
24+
- task: securedevelopmentteam.vss-secure-development-tools.build-task-credscan.CredScan@2
25+
displayName: 'Run CredScan'
26+
inputs:
27+
debugMode: false
28+
continueOnError: true
29+
30+
- task: securedevelopmentteam.vss-secure-development-tools.build-task-binskim.BinSkim@3
31+
displayName: 'Run BinSkim '
32+
inputs:
33+
InputType: Basic
34+
AnalyzeTarget: '$(System.ArtifactsDirectory)/*.dll'
35+
AnalyzeSymPath: 'SRV*'
36+
AnalyzeVerbose: true
37+
AnalyzeHashes: true
38+
AnalyzeStatistics: true
39+
continueOnError: true
40+
41+
- task: securedevelopmentteam.vss-secure-development-tools.build-task-policheck.PoliCheck@1
42+
displayName: 'Run PoliCheck'
43+
inputs:
44+
targetType: F
45+
optionsFC: 0
46+
optionsXS: 0
47+
optionsPE: '1|2|3|4'
48+
optionsHMENABLE: 0
49+
toolVersion: 5.8.2.1
50+
continueOnError: true
51+
52+
- task: securedevelopmentteam.vss-secure-development-tools.build-task-publishsecurityanalysislogs.PublishSecurityAnalysisLogs@2
53+
displayName: 'Publish Security Analysis Logs to Build Artifacts'
54+
continueOnError: true
55+
56+
- task: securedevelopmentteam.vss-secure-development-tools.build-task-uploadtotsa.TSAUpload@1
57+
displayName: 'TSA upload to Codebase: MMI_20190701 Version: TsaV2'
58+
inputs:
59+
tsaVersion: TsaV2
60+
codeBaseName: 'MMI_20190701'
61+
uploadAPIScan: false
62+
uploadFortifySCA: false
63+
uploadFxCop: false
64+
uploadModernCop: false
65+
uploadPREfast: false
66+
uploadRoslyn: false
67+
uploadTSLint: false
68+
69+
- task: securedevelopmentteam.vss-secure-development-tools.build-task-report.SdtReport@1
70+
displayName: 'Create Security Analysis Report'
71+
inputs:
72+
TsvFile: false
73+
APIScan: true
74+
BinSkim: true
75+
CredScan: true
76+
PoliCheck: true
77+
PoliCheckBreakOn: Severity2Above
78+
79+
- task: ms.vss-governance-buildtask.governance-build-task-component-detection.ComponentGovernanceComponentDetection@0
80+
displayName: 'Component Detection'
81+
inputs:
82+
sourceScanPath: '$(Build.SourcesDirectory)'
83+
snapshotForceEnabled: true

.vsts-ci/templates/test.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
steps:
2+
- bash: ./test.sh
3+
displayName: 'Execute Tests'
4+
5+
- task: PublishTestResults@2
6+
inputs:
7+
testResultsFormat: 'VSTest'
8+
testResultsFiles: '**/*TestResults.trx'
9+
failTaskOnFailedTests: 'true'

azure-pipelines.yml

Lines changed: 0 additions & 38 deletions
This file was deleted.

0 commit comments

Comments
 (0)