diff --git a/pipelines/azure-benchmarks.yml b/pipelines/azure-benchmarks.yml new file mode 100644 index 00000000..89f2a9b9 --- /dev/null +++ b/pipelines/azure-benchmarks.yml @@ -0,0 +1,22 @@ +stages: +- stage: RunBenchmark + pool: + name: $(LINUXPOOL) + image: $(LINUXVMIMAGE) + os: linux + variables: + - template: /pipelines/templates/variables/image.yml + - template: /pipelines/templates/variables/globals.yml + jobs: + - job: RunBenchmark + displayName: 'Run Copilot Benchmarks' + steps: + - task: AzureCLI@2 + displayName: 'Run Copilot Benchmarks script' + inputs: + azureSubscription: 'Azure SDK Engineering System' + scriptType: 'pscore' + scriptLocation: 'scriptPath' + scriptPath: $(Build.SourcesDirectory)/pipelines/scripts/Invoke-CopilotBenchmarks.ps1 + arguments: > + -BuildId $(OfficialBuildId) diff --git a/pipelines/scripts/Invoke-CopilotBenchmarks.ps1 b/pipelines/scripts/Invoke-CopilotBenchmarks.ps1 new file mode 100644 index 00000000..cb4e4386 --- /dev/null +++ b/pipelines/scripts/Invoke-CopilotBenchmarks.ps1 @@ -0,0 +1,5 @@ +param( + [string]$BuildId +) + +Write-Host "Invoking Copilot Benchmarks for Build ID: $BuildId" diff --git a/pipelines/templates/variables/globals.yml b/pipelines/templates/variables/globals.yml new file mode 100644 index 00000000..31743ad1 --- /dev/null +++ b/pipelines/templates/variables/globals.yml @@ -0,0 +1,5 @@ +variables: + OfficialBuildId: $(Build.BuildNumber) + skipComponentGovernanceDetection: true + nugetMultiFeedWarnLevel: 'none' + GDN_SUPPRESS_FORKED_BUILD_WARNING: true diff --git a/pipelines/templates/variables/image.yml b/pipelines/templates/variables/image.yml new file mode 100644 index 00000000..87ab8d56 --- /dev/null +++ b/pipelines/templates/variables/image.yml @@ -0,0 +1,28 @@ +# Default pool image selection. Set as variable so we can override at pipeline level + +variables: + - name: LINUXPOOL + value: azsdk-pool + - name: LINUXARMPOOL + value: azsdk-pool-arm64 + - name: WINDOWSPOOL + value: azsdk-pool + - name: MACPOOL + value: Azure Pipelines + + - name: LINUXVMIMAGE + value: ubuntu-24.04 + - name: LINUXARMVMIMAGE + value: azure-linux-3-arm64 + - name: WINDOWSVMIMAGE + value: windows-2022 + - name: MACVMIMAGE + value: macos-latest + + # Values required for pool.os field in 1es pipeline templates + - name: LINUXOS + value: linux + - name: WINDOWSOS + value: windows + - name: MACOS + value: macOS