|
20 | 20 | - name: Setup .NET Core
|
21 | 21 | uses: actions/setup-dotnet@v2
|
22 | 22 | with:
|
23 |
| - dotnet-version: '8.x' |
| 23 | + dotnet-version: | |
| 24 | + 6.x |
| 25 | + 8.x |
24 | 26 |
|
25 | 27 | - name: Restore dependencies
|
26 | 28 | run: dotnet restore Microsoft-Perf-Tools-Linux-Android.sln
|
|
47 | 49 | - name: Test projects
|
48 | 50 | run: dotnet test Microsoft-Perf-Tools-Linux-Android.sln --no-restore --verbosity normal
|
49 | 51 |
|
| 52 | + - name: Install PluginTool |
| 53 | + run: dotnet tool install --global Microsoft.Performance.Toolkit.Plugins.Cli --version 0.1.25-preview |
| 54 | + |
| 55 | + - name: Create PTIX |
| 56 | + run: | |
| 57 | + $dirs = @{ |
| 58 | + "PerfDataExtension" = "PerfDataExtension/bin/Release/netstandard2.1/" |
| 59 | + "PerfDataTxtExtension" = "PerfDataTxtExtension/bin/Release/netstandard2.1/" |
| 60 | + "LTTngDataExtensions" = "LTTngDataExtensions/bin/Release/netstandard2.1/" |
| 61 | + "LTTngDriver" = "LTTngDriver/bin/Release/netcoreapp8.0/" |
| 62 | + "Perfetto" = "PerfettoCds/bin/Release/netstandard2.1/" |
| 63 | + "Cloud-init" = "LinuxLogParsers/LinuxPlugins-MicrosoftPerformanceToolkSDK/Cloud-init/bin/Release/netstandard2.1/" |
| 64 | + "Dmesg" = "LinuxLogParsers/LinuxPlugins-MicrosoftPerformanceToolkSDK/DmesgIsoLog/bin/Release/netstandard2.1/" |
| 65 | + "WaLinuxAgent" = "LinuxLogParsers/LinuxPlugins-MicrosoftPerformanceToolkSDK/WaLinuxAgent/bin/Release/netstandard2.1/" |
| 66 | + "AndroidLogCat" = "LinuxLogParsers/LinuxPlugins-MicrosoftPerformanceToolkSDK/AndroidLogCat/bin/Release/netstandard2.1/" |
| 67 | + } |
| 68 | +
|
| 69 | + foreach ($plugin in $dirs.Keys) { |
| 70 | + $sourcePath = $dirs[$plugin] |
| 71 | + $targetPath = "${{ github.workspace }}/drop/Microsoft-Performance-Tools-Linux/MicrosoftPerfToolkitAddins/PTIX" |
| 72 | + New-Item -ItemType Directory -Force -Path $targetPath |
| 73 | + $pluginManifestPath = "$sourcePath/pluginManifest.json" |
| 74 | +
|
| 75 | + if (!(Test-Path $pluginManifestPath)) { |
| 76 | + Write-Error "pluginManifest.json not found in $sourcePath" |
| 77 | + } |
| 78 | +
|
| 79 | + $pluginManifest = Get-Content -Path $pluginManifestPath | ConvertFrom-Json |
| 80 | +
|
| 81 | + $pluginId = $pluginManifest.identity.id |
| 82 | + $pluginVersion = $pluginManifest.identity.version |
| 83 | + $packageName = "$pluginId-$pluginVersion.ptix" |
| 84 | +
|
| 85 | + plugintool pack -s $sourcePath -o "$targetPath/$packageName" |
| 86 | + } |
| 87 | +
|
50 | 88 | - name: Copy files and prepare artifacts
|
51 | 89 | run: |
|
52 | 90 | $dirs = @{
|
|
0 commit comments