From bb0f738d7813bb0e3e15b883d40c9b4021af7453 Mon Sep 17 00:00:00 2001 From: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com> Date: Tue, 6 Dec 2022 10:17:15 +0800 Subject: [PATCH] [TestbedV2][202211]Sync pipeline in 202211 branch with master. (#12942) Sync pipeline in 202211 branch with master. Why I did it Sync pipeline in 202211 branch with master. How I did it 1. Remove the timeout in each step of a job, and control the timout outside. 2. Set all job mandatory. Signed-off-by: Yutong Zhang --- .../run-test-scheduler-template.yml | 16 +++----- azure-pipelines.yml | 39 ++++++++++--------- 2 files changed, 26 insertions(+), 29 deletions(-) diff --git a/.azure-pipelines/run-test-scheduler-template.yml b/.azure-pipelines/run-test-scheduler-template.yml index f43ce59d8a..8b1395adff 100644 --- a/.azure-pipelines/run-test-scheduler-template.yml +++ b/.azure-pipelines/run-test-scheduler-template.yml @@ -11,11 +11,11 @@ parameters: default: 36000 - name: MIN_WORKER - type: number + type: string default: 1 - name: MAX_WORKER - type: number + type: string default: 2 - name: TEST_SET @@ -81,11 +81,10 @@ steps: echo "TestbedV2 is just online and might not be stable enough, for any issue, please send email to sonictestbedtools@microsoft.com" echo "Runtime detailed progress at https://www.testbed-tools.org/scheduler/testplan/$TEST_PLAN_ID" # When "LOCK_TESTBED" finish, it changes into "PREPARE_TESTBED" - python ./.azure-pipelines/test_plan.py poll -i "$(TEST_PLAN_ID)" --timeout 43200 --expected-states PREPARE_TESTBED EXECUTING KVMDUMP FINISHED CANCELLED FAILED + python ./.azure-pipelines/test_plan.py poll -i "$(TEST_PLAN_ID)" --expected-states PREPARE_TESTBED EXECUTING KVMDUMP FINISHED CANCELLED FAILED env: TESTBED_TOOLS_URL: $(TESTBED_TOOLS_URL) displayName: Lock testbed - timeoutInMinutes: 240 - script: | set -ex @@ -95,11 +94,10 @@ steps: echo "TestbedV2 is just online and might not be stable enough, for any issue, please send email to sonictestbedtools@microsoft.com" echo "Runtime detailed progress at https://www.testbed-tools.org/scheduler/testplan/$TEST_PLAN_ID" # When "PREPARE_TESTBED" finish, it changes into "EXECUTING" - python ./.azure-pipelines/test_plan.py poll -i "$(TEST_PLAN_ID)" --timeout 2400 --expected-states EXECUTING KVMDUMP FINISHED CANCELLED FAILED + python ./.azure-pipelines/test_plan.py poll -i "$(TEST_PLAN_ID)" --expected-states EXECUTING KVMDUMP FINISHED CANCELLED FAILED env: TESTBED_TOOLS_URL: $(TESTBED_TOOLS_URL) displayName: Prepare testbed - timeoutInMinutes: 40 - script: | set -ex @@ -107,11 +105,10 @@ steps: echo "TestbedV2 is just online and might not be stable enough, for any issue, please send email to sonictestbedtools@microsoft.com" echo "Runtime detailed progress at https://www.testbed-tools.org/scheduler/testplan/$TEST_PLAN_ID" # When "EXECUTING" finish, it changes into "KVMDUMP", "FAILED", "CANCELLED" or "FINISHED" - python ./.azure-pipelines/test_plan.py poll -i "$(TEST_PLAN_ID)" --timeout 18000 --expected-states KVMDUMP FINISHED CANCELLED FAILED + python ./.azure-pipelines/test_plan.py poll -i "$(TEST_PLAN_ID)" --expected-states KVMDUMP FINISHED CANCELLED FAILED env: TESTBED_TOOLS_URL: $(TESTBED_TOOLS_URL) displayName: Run test - timeoutInMinutes: 300 - script: | set -ex @@ -119,12 +116,11 @@ steps: echo "TestbedV2 is just online and might not be stable enough, for any issue, please send email to sonictestbedtools@microsoft.com" echo "Runtime detailed progress at https://www.testbed-tools.org/scheduler/testplan/$TEST_PLAN_ID" # When "KVMDUMP" finish, it changes into "FAILED", "CANCELLED" or "FINISHED" - python ./.azure-pipelines/test_plan.py poll -i "$(TEST_PLAN_ID)" --timeout 43200 --expected-states FINISHED CANCELLED FAILED + python ./.azure-pipelines/test_plan.py poll -i "$(TEST_PLAN_ID)" --expected-states FINISHED CANCELLED FAILED condition: succeededOrFailed() env: TESTBED_TOOLS_URL: $(TESTBED_TOOLS_URL) displayName: KVM dump - timeoutInMinutes: 20 - script: | set -ex diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 073702ba3f..543ca418b0 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -177,21 +177,21 @@ stages: pool: vmImage: 'ubuntu-20.04' displayName: "kvmtest-t0 by TestbedV2" - timeoutInMinutes: 1080 + timeoutInMinutes: 240 condition: and(succeeded(), eq(variables.BUILD_IMG_RUN_TESTBEDV2_TEST, 'YES')) continueOnError: false steps: - template: .azure-pipelines/run-test-scheduler-template.yml parameters: TOPOLOGY: t0 - MIN_WORKER: 2 - MAX_WORKER: 3 + MIN_WORKER: $(T0_INSTANCE_NUM) + MAX_WORKER: $(T0_INSTANCE_NUM) - job: t0_2vlans_testbedv2 pool: vmImage: 'ubuntu-20.04' displayName: "kvmtest-t0-2vlans by TestbedV2" - timeoutInMinutes: 1080 + timeoutInMinutes: 240 condition: and(succeeded(), eq(variables.BUILD_IMG_RUN_TESTBEDV2_TEST, 'YES')) continueOnError: false steps: @@ -199,7 +199,8 @@ stages: parameters: TOPOLOGY: t0 TEST_SET: t0-2vlans - MAX_WORKER: 1 + MAX_WORKER: $(T0_2VLANS_INSTANCE_NUM) + MIN_WORKER: $(T0_2VLANS_INSTANCE_NUM) DEPLOY_MG_EXTRA_PARAMS: "-e vlan_config=two_vlan_a" - job: @@ -254,15 +255,15 @@ stages: pool: vmImage: 'ubuntu-20.04' displayName: "kvmtest-t1-lag by TestbedV2" - timeoutInMinutes: 600 + timeoutInMinutes: 240 condition: and(succeeded(), eq(variables.BUILD_IMG_RUN_TESTBEDV2_TEST, 'YES')) continueOnError: false steps: - template: .azure-pipelines/run-test-scheduler-template.yml parameters: TOPOLOGY: t1-lag - MIN_WORKER: 2 - MAX_WORKER: 3 + MIN_WORKER: $(T1_LAG_INSTANCE_NUM) + MAX_WORKER: $(T1_LAG_INSTANCE_NUM) - job: pool: @@ -320,46 +321,46 @@ stages: displayName: "kvmtest-multi-asic-t1-lag by TestbedV2" pool: vmImage: 'ubuntu-20.04' - timeoutInMinutes: 1080 + timeoutInMinutes: 240 condition: and(succeeded(), eq(variables.BUILD_IMG_RUN_TESTBEDV2_TEST, 'YES')) - continueOnError: true + continueOnError: false steps: - template: .azure-pipelines/run-test-scheduler-template.yml parameters: TOPOLOGY: t1-8-lag TEST_SET: multi-asic-t1-lag - MIN_WORKER: 1 - MAX_WORKER: 1 + MIN_WORKER: $(MULTI_ASIC_INSTANCE_NUM) + MAX_WORKER: $(MULTI_ASIC_INSTANCE_NUM) NUM_ASIC: 4 - job: dualtor_testbedv2 pool: vmImage: 'ubuntu-20.04' displayName: "kvmtest-dualtor-t0 by TestbedV2" - timeoutInMinutes: 1080 + timeoutInMinutes: 240 condition: and(succeeded(), eq(variables.BUILD_IMG_RUN_TESTBEDV2_TEST, 'YES')) continueOnError: false steps: - template: .azure-pipelines/run-test-scheduler-template.yml parameters: TOPOLOGY: dualtor - MIN_WORKER: 1 - MAX_WORKER: 1 + MIN_WORKER: $(T0_DUALTOR_INSTANCE_NUM) + MAX_WORKER: $(T0_DUALTOR_INSTANCE_NUM) COMMON_EXTRA_PARAMS: "--disable_loganalyzer " - job: sonic_t0_testbedv2 displayName: "kvmtest-t0-sonic by TestbedV2" pool: vmImage: 'ubuntu-20.04' - timeoutInMinutes: 1080 + timeoutInMinutes: 240 condition: and(succeeded(), eq(variables.BUILD_IMG_RUN_TESTBEDV2_TEST, 'YES')) - continueOnError: true + continueOnError: false steps: - template: .azure-pipelines/run-test-scheduler-template.yml parameters: TOPOLOGY: t0-64-32 - MIN_WORKER: 1 - MAX_WORKER: 2 + MIN_WORKER: $(T0_SONIC_INSTANCE_NUM) + MAX_WORKER: $(T0_SONIC_INSTANCE_NUM) TEST_SET: t0-sonic COMMON_EXTRA_PARAMS: "--neighbor_type=sonic --enable_macsec --macsec_profile=128_SCI,256_XPN_SCI" VM_TYPE: vsonic