Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add config for 1ES hosted Linux pool. #17472

Merged
merged 7 commits into from
Jan 4, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 36 additions & 9 deletions eng/pipelines/templates/jobs/archetype-sdk-client.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,35 @@
parameters:
- name: Artifacts
type: object
default: []
- name: TestPipeline
type: boolean
default: false
- name: ArtifactName
type: string
default: packages
- name: ServiceDirectory
type: string
default: not-specified
- name: ServiceToTest
type: string
default: ''
- name: TestSetupSteps
type: stepList
default: []
- name: WindowsPool
type: string
default: azsdk-pool-mms-win-2019-general
- name: LinuxPool
type: string
default: azsdk-pool-mms-ubuntu-1804-general

jobs:
- job: Build
variables:
- template: ../variables/globals.yml
pool:
name: azsdk-pool-mms-win-2019-general # Comment this line back-out to switch to public pools.
name: ${{ parameters.WindowsPool }} # Comment this line back-out to switch to public pools.
# vmImage: windows-2019 # Comment this line back-in to switch to public pools.
steps:
- ${{if eq(parameters.TestPipeline, 'true')}}:
Expand Down Expand Up @@ -68,7 +94,8 @@ jobs:
variables:
- template: ../variables/globals.yml
pool:
vmImage: ubuntu-18.04
name: ${{ parameters.LinuxPool }}
vmImage:
steps:
- task: UsePythonVersion@0
displayName: "Use Python 3.6"
Expand Down Expand Up @@ -121,25 +148,25 @@ jobs:
maxParallel: $[ variables['MaxParallelTestJobs'] ]
matrix:
Linux:
Pool: # Intentionally blank.
OSVmImage: "ubuntu-18.04"
Pool: ${{ parameters.LinuxPool }} # Comment out to swap back to public hosted pool.
OSVmImage: # "ubuntu-18.04" # Comment back in to swap back to public hosted pool.
TestTargetFramework: netcoreapp2.1
Windows_NetCoreApp:
Pool: azsdk-pool-mms-win-2019-general # Comment out to swap back to public hosted pool.
Pool: ${{ parameters.WindowsPool }} # Comment out to swap back to public hosted pool.
OSVmImage: # "windows-2019" # Comment back in to swap back to public hosted pool.
TestTargetFramework: netcoreapp2.1
CollectCoverage: true
Windows_NetCoreApp_ProjectReferences:
Pool: azsdk-pool-mms-win-2019-general # Comment out to swap back to public hosted pool.
Pool: ${{ parameters.WindowsPool }} # Comment out to swap back to public hosted pool.
OSVmImage: # "windows-2019" # Comment back in to swap back to public hosted pool.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

At what point do we think we should remove these empty properties? As for my other comment about could we control these at the higher level I guess we could have 2 parameters that we treat as mutually exclusive WindowsPool and WindowsImage and we can just have one be empty and the other set in order to toggle between these 2 if we need that functionality.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also we need to figure out how we want to handle the verify-agent-os templates when we start to run with a larger matrix. Personally I think it is even more important to ensure we are running the expected agent now that we are going to be swapping around pools.

TestTargetFramework: netcoreapp2.1
ConvertToProjectReferenceOption: /p:UseProjectReferenceToAzureClients=true
Windows_NetFramework:
Pool: azsdk-pool-mms-win-2019-general # Comment out to swap back to public hosted pool.
Pool: ${{ parameters.WindowsPool }} # Comment out to swap back to public hosted pool.
OSVmImage: # "windows-2019" # Comment back in to swap back to public hosted pool.
TestTargetFramework: net461
Windows_NetFramework_ProjectReferences:
Pool: azsdk-pool-mms-win-2019-general # Comment out to swap back to public hosted pool.
Pool: ${{ parameters.WindowsPool }} # Comment out to swap back to public hosted pool.
OSVmImage: # "windows-2019" # Comment back in to swap back to public hosted pool.
TestTargetFramework: net461
ConvertToProjectReferenceOption: /p:UseProjectReferenceToAzureClients=true
Expand All @@ -148,7 +175,7 @@ jobs:
OSVmImage: "macOS-10.15"
TestTargetFramework: netcoreapp2.1
Windows_Net50:
Pool: azsdk-pool-mms-win-2019-general # Comment out to swap back to public hosted pool.
Pool: ${{ parameters.WindowsPool }} # Comment out to swap back to public hosted pool.
OSVmImage: # "windows-2019" # Comment back in to swap back to public hosted pool.
TestTargetFramework: net5.0
pool:
Expand Down
8 changes: 8 additions & 0 deletions eng/pipelines/templates/stages/archetype-sdk-client.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,12 @@ parameters:
- name: TestSetupSteps
type: stepList
default: []
- name: WindowsPool
type: string
default: azsdk-pool-mms-win-2019-general
- name: LinuxPool
type: string
default: azsdk-pool-mms-ubuntu-1804-general

stages:
- stage: Build
Expand All @@ -42,6 +48,8 @@ stages:
TestPipeline: ${{ parameters.TestPipeline }}
ArtifactName: packages
TestSetupSteps: ${{ parameters.TestSetupSteps }}
WindowsPool: ${{ parameters.WindowsPool }}
LinuxPool: ${{ parameters.LinuxPool }}

# The Prerelease and Release stages are conditioned on whether we are building a pull request and the branch.
- ${{if and(ne(variables['Build.Reason'], 'PullRequest'), eq(variables['System.TeamProject'], 'internal'))}}:
Expand Down
2 changes: 2 additions & 0 deletions sdk/storage/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ extends:
template: ../../eng/pipelines/templates/stages/archetype-sdk-client.yml
parameters:
ServiceDirectory: storage
LinuxPool: azsdk-pool-mms-ubuntu-1804-general
WindowsPool: azsdk-pool-mms-win-2019-general
ArtifactName: packages
Artifacts:
- name: Azure.Storage.Blobs
Expand Down