Skip to content

Commit e2b4747

Browse files
authored
Set up CI with Azure Pipelines (#2)
* Set up CI with Azure Pipelines
1 parent 687cce6 commit e2b4747

File tree

1 file changed

+110
-0
lines changed

1 file changed

+110
-0
lines changed

azure-pipelines.yml

Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
# https://aka.ms/yaml
2+
3+
name: "$(date:yyyyMMdd)$(rev:.r)"
4+
5+
trigger:
6+
- main
7+
8+
pr:
9+
- main
10+
11+
#
12+
# Build Variables
13+
#
14+
variables:
15+
buildPlatform: 'Any CPU'
16+
buildConfiguration: 'Release'
17+
# The version of dotnet core to use.
18+
Build.DotNetCoreVersion: 3.x
19+
20+
jobs:
21+
- job: MicrosoftPerformanceToolsLinux
22+
pool:
23+
vmImage: 'windows-latest'
24+
name: Azure Pipelines
25+
demands:
26+
- msbuild
27+
- vstest
28+
29+
steps:
30+
- task: UseDotNet@2
31+
displayName: Use DotNet Core
32+
inputs:
33+
packageType: 'sdk'
34+
version: $(Build.DotNetCoreVersion)
35+
performMultiLevelLookup: true
36+
37+
- task: DotNetCoreCLI@2
38+
displayName: DotNetCore restore
39+
inputs:
40+
command: 'restore'
41+
projects: '$(System.DefaultWorkingDirectory)/Microsoft-Perf-Tools-Linux.sln'
42+
verbosityRestore: $(Debug.NuGetVerbosityRestore)
43+
includeNugetOrg: true
44+
45+
- task: DotNetCoreCLI@2
46+
displayName: DotNetCore build
47+
inputs:
48+
command: 'build'
49+
arguments: '--configuration Release --verbosity normal'
50+
projects: |
51+
Antlr4.Runtime\Antlr4.Runtime.dotnet.csproj
52+
CtfPlayback\CtfPlayback.csproj
53+
CtfUnitTest\CtfUnitTest.csproj
54+
LttngCds\LttngCds.csproj
55+
LttngDataExtensions\LttngDataExtensions.csproj
56+
PerfCds\PerfCds.csproj
57+
PerfDataExtensions\PerfDataExtensions.csproj
58+
LinuxLogParsers\LinuxPlugins-MicrosoftPerformanceToolkSDK\Cloud-init\Cloud-Init.csproj
59+
LinuxLogParsers\LinuxPlugins-MicrosoftPerformanceToolkSDK\DmesgIsoLog\Dmesg.csproj
60+
LinuxLogParsers\LinuxPlugins-MicrosoftPerformanceToolkSDK\WaLinuxAgent\WaLinuxAgent.csproj
61+
62+
includesymbols: true
63+
versioningScheme: 'byBuildNumber'
64+
65+
- task: DotNetCoreCLI@2
66+
displayName: DotNetCore test
67+
inputs:
68+
command: 'test'
69+
projects: '$(System.DefaultWorkingDirectory)/Microsoft-Perf-Tools-Linux.sln'
70+
71+
- task: CopyFiles@2
72+
displayName: Copy PerfDataExtensions Build to Output Artifacts
73+
inputs:
74+
SourceFolder: 'PerfDataExtensions/bin/$(BuildConfiguration)/netstandard2.1'
75+
Contents: '**'
76+
TargetFolder: '$(Build.ArtifactStagingDirectory)/Microsoft-Performance-Tools-Linux/MicrosoftPerfToolkitAddins/PerfDataExtensions'
77+
78+
- task: CopyFiles@2
79+
displayName: Copy LttngDataExtensions Build to Output Artifacts
80+
inputs:
81+
SourceFolder: 'LttngDataExtensions/bin/$(BuildConfiguration)/netstandard2.1'
82+
Contents: '**'
83+
TargetFolder: '$(Build.ArtifactStagingDirectory)/Microsoft-Performance-Tools-Linux/MicrosoftPerfToolkitAddins/LTTngDataExtensions'
84+
85+
- task: CopyFiles@2
86+
displayName: Copy Cloud-initBuild to Output Artifacts
87+
inputs:
88+
SourceFolder: 'LinuxLogParsers/LinuxPlugins-MicrosoftPerformanceToolkSDK/Cloud-init/bin/$(BuildConfiguration)/netstandard2.1'
89+
Contents: '**'
90+
TargetFolder: '$(Build.ArtifactStagingDirectory)/Microsoft-Performance-Tools-Linux/MicrosoftPerfToolkitAddins/Cloud-init'
91+
92+
- task: CopyFiles@2
93+
displayName: Copy DmesgIsoLog to Output Artifacts
94+
inputs:
95+
SourceFolder: 'LinuxLogParsers/LinuxPlugins-MicrosoftPerformanceToolkSDK/DmesgIsoLog/bin/$(BuildConfiguration)/netstandard2.1'
96+
Contents: '**'
97+
TargetFolder: '$(Build.ArtifactStagingDirectory)/Microsoft-Performance-Tools-Linux/MicrosoftPerfToolkitAddins/Dmesg'
98+
99+
- task: CopyFiles@2
100+
displayName: Copy WaLinuxAgent to Output Artifacts
101+
inputs:
102+
SourceFolder: 'LinuxLogParsers/LinuxPlugins-MicrosoftPerformanceToolkSDK/WaLinuxAgent/bin/$(BuildConfiguration)/netstandard2.1'
103+
Contents: '**'
104+
TargetFolder: '$(Build.ArtifactStagingDirectory)/Microsoft-Performance-Tools-Linux/MicrosoftPerfToolkitAddins/WaLinuxAgent'
105+
106+
- task: PublishBuildArtifacts@1
107+
inputs:
108+
PathtoPublish: '$(Build.ArtifactStagingDirectory)'
109+
ArtifactName: 'drop'
110+
publishLocation: 'Container'

0 commit comments

Comments
 (0)