-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Browse the repository at this point in the history
* [TestbedV2]Migrate t0 and t1-lag to TestbedV2 (#12383) signed-off-by: [email protected] Migrate the t0 and t1-lag test jobs in buildimage repo to TestbedV2. Why I did it Migrate the t0 and t1-lag test jobs in buildimage repo to TestbedV2. How I did it Migrate the t0 and t1-lag test jobs in buildimage repo to TestbedV2. Remove ceos type setting Use 202012 branch as sonic-mgmt branch * Modify template to use 202012 branch
- Loading branch information
1 parent
4bbfcf0
commit 95b979d
Showing
2 changed files
with
218 additions
and
12 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,119 @@ | ||
parameters: | ||
- name: TOPOLOGY | ||
type: string | ||
|
||
- name: POLL_INTERVAL | ||
type: number | ||
default: 10 | ||
|
||
- name: POLL_TIMEOUT | ||
type: number | ||
default: 36000 | ||
|
||
- name: MIN_WORKER | ||
type: number | ||
default: 1 | ||
|
||
- name: MAX_WORKER | ||
type: number | ||
default: 2 | ||
|
||
- name: TEST_SET | ||
type: string | ||
default: "" | ||
|
||
- name: DEPLOY_MG_EXTRA_PARAMS | ||
type: string | ||
default: "" | ||
|
||
- name: MGMT_BRANCH | ||
type: string | ||
default: master | ||
|
||
steps: | ||
- script: | | ||
set -ex | ||
# always use the test plan script from master branch. | ||
wget -O ./.azure-pipelines/test_plan.py https://raw.githubusercontent.com/sonic-net/sonic-mgmt/master/.azure-pipelines/test_plan.py | ||
wget -O ./.azure-pipelines/pr_test_scripts.yaml https://raw.githubusercontent.com/sonic-net/sonic-mgmt/${{ parameters.MGMT_BRANCH }}/.azure-pipelines/pr_test_scripts.yaml | ||
displayName: Download TestbedV2 scripts | ||
- script: | | ||
set -ex | ||
pip install PyYAML | ||
rm -f new_test_plan_id.txt | ||
python ./.azure-pipelines/test_plan.py create -t ${{ parameters.TOPOLOGY }} -o new_test_plan_id.txt --min-worker ${{ parameters.MIN_WORKER }} --max-worker ${{ parameters.MAX_WORKER }} --test-set ${{ parameters.TEST_SET }} --kvm-build-id $(KVM_BUILD_ID) --deploy-mg-extra-params "${{ parameters.DEPLOY_MG_EXTRA_PARAMS }}" --mgmt-branch ${{ parameters.MGMT_BRANCH }} | ||
TEST_PLAN_ID=`cat new_test_plan_id.txt` | ||
echo "Created test plan $TEST_PLAN_ID" | ||
echo "Check https://www.testbed-tools.org/scheduler/testplan/$TEST_PLAN_ID for test plan status" | ||
echo "##vso[task.setvariable variable=TEST_PLAN_ID]$TEST_PLAN_ID" | ||
env: | ||
TESTBED_TOOLS_URL: $(TESTBED_TOOLS_URL) | ||
TENANT_ID: $(TESTBED_TOOLS_MSAL_TENANT_ID) | ||
CLIENT_ID: $(TESTBED_TOOLS_MSAL_CLIENT_ID) | ||
CLIENT_SECRET: $(TESTBED_TOOLS_MSAL_CLIENT_SECRET) | ||
displayName: Trigger test | ||
- script: | | ||
set -ex | ||
echo "Lock testbed" | ||
echo "TestbedV2 is just online and might not be stable enough, for any issue, please send email to [email protected]" | ||
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 | ||
env: | ||
TESTBED_TOOLS_URL: $(TESTBED_TOOLS_URL) | ||
displayName: Lock testbed | ||
timeoutInMinutes: 240 | ||
- script: | | ||
set -ex | ||
echo "Prepare testbed" | ||
echo "Preparing the testbed(add-topo, deploy-mg) may take 15-30 minutes. Before the testbed is ready, the progress of the test plan keeps displayed as 0, please be patient(We will improve the indication in a short time)" | ||
echo "If the progress keeps as 0 for more than 1 hour, please cancel and retry this pipeline" | ||
echo "TestbedV2 is just online and might not be stable enough, for any issue, please send email to [email protected]" | ||
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 | ||
env: | ||
TESTBED_TOOLS_URL: $(TESTBED_TOOLS_URL) | ||
displayName: Prepare testbed | ||
timeoutInMinutes: 40 | ||
- script: | | ||
set -ex | ||
echo "Run test" | ||
echo "TestbedV2 is just online and might not be stable enough, for any issue, please send email to [email protected]" | ||
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 | ||
env: | ||
TESTBED_TOOLS_URL: $(TESTBED_TOOLS_URL) | ||
displayName: Run test | ||
timeoutInMinutes: 300 | ||
- script: | | ||
set -ex | ||
echo "KVM dump" | ||
echo "TestbedV2 is just online and might not be stable enough, for any issue, please send email to [email protected]" | ||
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 | ||
condition: succeededOrFailed() | ||
env: | ||
TESTBED_TOOLS_URL: $(TESTBED_TOOLS_URL) | ||
displayName: KVM dump | ||
timeoutInMinutes: 20 | ||
- script: | | ||
set -ex | ||
echo "Try to cancel test plan $TEST_PLAN_ID, cancelling finished test plan has no effect." | ||
python ./.azure-pipelines/test_plan.py cancel -i "$(TEST_PLAN_ID)" | ||
condition: always() | ||
env: | ||
TESTBED_TOOLS_URL: $(TESTBED_TOOLS_URL) | ||
TENANT_ID: $(TESTBED_TOOLS_MSAL_TENANT_ID) | ||
CLIENT_ID: $(TESTBED_TOOLS_MSAL_CLIENT_ID) | ||
CLIENT_SECRET: $(TESTBED_TOOLS_MSAL_CLIENT_SECRET) | ||
displayName: Finalize running test plan |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters