Skip to content
Draft
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
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,39 @@ stages:
credential_type: service_connection
ssh_key_enabled: false

- stage: azure_australiaeast_small_scale_on_demand
condition: eq(variables['Build.Reason'], 'Manual')
dependsOn: []
jobs:
- template: /jobs/competitive-test.yml
parameters:
cloud: azure
regions:
- australiaeast
engine: clusterloader2
engine_input:
image: "ghcr.io/azure/clusterloader2:v20250423"
topology: karpenter
matrix:
small-scale-on-demand:
cpu_per_node: 4
node_count: 10
pod_count: 100
scale_up_timeout: "15m"
scale_down_timeout: "15m"
node_label_selector: "karpenter.sh/nodepool = default"
node_selector: "{karpenter.sh/nodepool: default}"
loop_count: 5
karpenter_cooldown: 900 #seconds
warmup_deployment: true
warmup_deployment_template: warmup_deployment.yaml
vm_size: Standard_D4ds_v4
capacity_type: on-demand
max_parallel: 1
timeout_in_minutes: 560
credential_type: service_connection
ssh_key_enabled: false

- stage: azure_australiaeast_small_scale
condition: |
or(
Expand Down
60 changes: 42 additions & 18 deletions pipelines/system/new-pipeline-test.yml
Original file line number Diff line number Diff line change
@@ -1,25 +1,49 @@
trigger: none

schedules:
# canadacentral - daily
- cron: "0 21 * * *"
displayName: "Every day at 9:00 PM"
branches:
include:
- main
always: true
variables:
SCENARIO_TYPE: <scenario-type>
SCENARIO_NAME: <scenario-name>
SCENARIO_TYPE: perf-eval
SCENARIO_NAME: nap-complex

stages:
- stage: <stage-name> # format: <cloud>[_<region>]+ (e.g. azure_eastus2, aws_eastus_westus)
- stage: azure_canadacentral_ondemand_complex_config
dependsOn: []
variables:
- group: NAP-MS-CanadaCentral
jobs:
- template: /jobs/competitive-test.yml # must keep as is
- template: /jobs/competitive-test.yml
parameters:
cloud: <cloud> # e.g. azure, aws
regions: # list of regions
- region1 # e.g. eastus2
topology: <topology> # e.g. cluster-autoscaler
engine: <engine> # e.g. clusterloader2
matrix: # list of test parameters to customize the provisioned resources
<case-name>:
<key1>: <value1>
<key2>: <value2>
max_parallel: <number of concurrent jobs> # required
credential_type: service_connection # required
ssh_key_enabled: false
timeout_in_minutes: 60 # if not specified, default is 60
cloud: azure
regions:
- canadacentral
engine: clusterloader2
engine_input:
image: "ghcr.io/azure/clusterloader2:v20250912"
topology: karpenter-private-cluster
matrix:
complex-nap:
pod_count: 5000
pod_cpu_request: 16
pod_memory_request: "60Gi"
scale_up_timeout: "900s" # 15 minutes
scale_down_timeout: "900s"
node_selector: "{karpenter.sh/nodepool: default}"
loop_count: 1
warmup_deployment: true
warmup_deployment_template: warmup_deployment.yaml
capacity_type: on-demand
cl2_config_file: "ms_complex_config.yaml"
enable_prometheus: True
scrape_kubelets: True
scrape_ksm: True
enable_apiserver_vnet_integration: "true"
max_parallel: 1
timeout_in_minutes: 120
credential_type: service_connection
ssh_key_enabled: true
5 changes: 5 additions & 0 deletions steps/execute-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,11 @@ parameters:
default: {}

steps:
- script: |
echo "Waiting 20 minutes before starting test execution..."
sleep 1200 # 20 minutes = 1200 seconds
echo "Wait period completed, proceeding with tests"
displayName: "Pre-test wait period"
- template: /steps/topology/${{ parameters.topology }}/execute-${{ parameters.engine }}.yml@self
parameters:
cloud: ${{ parameters.cloud }}
Expand Down
Loading