-
Notifications
You must be signed in to change notification settings - Fork 235
Stress development maturity updates #3481
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
Changes from all commits
fe43088
c9c05b1
577b5fb
e642009
090651a
6e77c36
8cb8610
84e82c0
e63b00c
75d5c60
6f3aa65
fc4bb32
1b8ec23
7b46f3b
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,20 @@ | ||
| pr: none | ||
|
|
||
| trigger: none | ||
|
|
||
| parameters: | ||
| - name: Environment | ||
| type: string | ||
| default: test | ||
| values: | ||
| - prod | ||
| - test | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Should it be pg?
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes I was planning on rebasing/updating after your changes went in. |
||
| - name: WhatIf | ||
| type: boolean | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This will be an interesting pattern. If you find that it works out OK can you please write up some guideline docs about this pattern.
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yep can do. Plumbing WhatIf support through all our scripts will be pretty useful for general testing and development, I think. Similarly we could run a lot more validation pipelines/scripts on PR changes if we had WhatIf enabled to catch surface level issues. |
||
| default: false | ||
|
|
||
| extends: | ||
| template: /eng/pipelines/templates/jobs/stress-cluster-provision.yml | ||
| parameters: | ||
| Environment: ${{ parameters.Environment }} | ||
| WhatIf: ${{ parameters.WhatIf }} | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,28 @@ | ||
| parameters: | ||
| - name: Environment | ||
| type: string | ||
| - name: WhatIf | ||
| type: boolean | ||
| default: true | ||
|
|
||
| jobs: | ||
| - job: | ||
| variables: | ||
| - template: /eng/pipelines/templates/variables/globals.yml | ||
| ${{ if eq(parameters.WhatIf, true) }}: | ||
| displayName: 'Validate Provision' | ||
| ${{ else }}: | ||
| displayName: 'Provision' | ||
| pool: | ||
| name: 'azsdk-pool-mms-ubuntu-2004-general' | ||
| vmImage: 'MMSUbuntu20.04' | ||
| steps: | ||
| - pwsh: | | ||
| $subscriptionConfiguration = @' | ||
| $(sub-config-azure-cloud-test-resources) | ||
| '@ | ConvertFrom-Json -AsHashtable; | ||
|
|
||
| tools/stress-cluster/cluster/provision.ps1 ` | ||
| -WhatIf:$${{ parameters.WhatIf }} ` | ||
| -Environment ${{ parameters.Environment }} ` | ||
| @subscriptionConfiguration |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,76 @@ | ||
| parameters: | ||
| - name: Environment | ||
| type: string | ||
| default: test | ||
| - name: TestRepository | ||
| type: string | ||
| default: all | ||
| - name: DeployFromBranchOrCommit | ||
| type: string | ||
| default: main | ||
|
|
||
| jobs: | ||
| - job: | ||
| variables: | ||
| - template: /eng/pipelines/templates/variables/globals.yml | ||
| strategy: | ||
| matrix: | ||
| ${{ if or(eq(parameters.TestRepository, 'examples'), eq(parameters.TestRepository, 'all')) }}: | ||
| examples: | ||
| Repository: Azure/azure-sdk-tools | ||
| Filters: '@{ "example" = "true" }' | ||
| ${{ if or(eq(parameters.TestRepository, 'javascript'), eq(parameters.TestRepository, 'all')) }}: | ||
| javascript: | ||
| Repository: Azure/azure-sdk-for-js | ||
| Filters: '@{}' | ||
| ${{ if or(eq(parameters.TestRepository, 'java'), eq(parameters.TestRepository, 'all')) }}: | ||
| java: | ||
| Repository: Azure/azure-sdk-for-java | ||
| Filters: '@{}' | ||
| ${{ if or(eq(parameters.TestRepository, 'net'), eq(parameters.TestRepository, 'all')) }}: | ||
| net: | ||
| Repository: Azure/azure-sdk-for-net | ||
| Filters: '@{}' | ||
| ${{ if or(eq(parameters.TestRepository, 'python'), eq(parameters.TestRepository, 'all')) }}: | ||
| python: | ||
| Repository: Azure/azure-sdk-for-python | ||
| Filters: '@{}' | ||
| ${{ if or(eq(parameters.TestRepository, 'go'), eq(parameters.TestRepository, 'all')) }}: | ||
| go: | ||
| Repository: Azure/azure-sdk-for-go | ||
| Filters: '@{}' | ||
| pool: | ||
| name: 'azsdk-pool-mms-ubuntu-2004-general' | ||
| vmImage: 'MMSUbuntu20.04' | ||
| steps: | ||
| - template: /eng/common/pipelines/templates/steps/sparse-checkout.yml | ||
| parameters: | ||
| Repositories: | ||
| - Name: $(Repository) | ||
| Commitish: ${{ parameters.DeployFromBranchOrCommit }} | ||
| WorkingDirectory: $(System.DefaultWorkingDirectory)/$(Repository) | ||
| Paths: | ||
| - '/*' | ||
| - '!sdk/**/recordings/*' | ||
| - '!sdk/**/test-recordings/*' | ||
| - '!sdk/**/session-records/*' | ||
| - '!sdk/**/SessionRecords/*' | ||
|
|
||
| - task: AzureCLI@2 | ||
| displayName: Build and Deploy Stress Tests | ||
| inputs: | ||
| ${{ if eq(parameters.Environment, 'prod') }}: | ||
| azureSubscription: Azure SDK Test Resources | ||
| ${{ if eq(parameters.Environment, 'test') }}: | ||
| azureSubscription: Azure SDK Playground | ||
| scriptType: pscore | ||
| scriptPath: $(System.DefaultWorkingDirectory)/$(Repository)/eng/common/scripts/stress-testing/deploy-stress-tests.ps1 | ||
| arguments: | ||
| -SearchDirectory '$(System.DefaultWorkingDirectory)/$(Repository)' | ||
| -Filters $(Filters) | ||
| -Environment '${{ parameters.Environment }}' | ||
| -Repository '$(Agent.JobName)' | ||
| -PushImages | ||
| -Login | ||
| -DeployId '$(Build.BuildNumber)' | ||
| -CI |
Uh oh!
There was an error while loading. Please reload this page.