Skip to content

[upgrade_sonic] Support upgrading all DUTs in testbed#2522

Merged
yxieca merged 1 commit intosonic-net:masterfrom
lolyu:refactor_upgrade_sonic
Nov 17, 2020
Merged

[upgrade_sonic] Support upgrading all DUTs in testbed#2522
yxieca merged 1 commit intosonic-net:masterfrom
lolyu:refactor_upgrade_sonic

Conversation

@lolyu
Copy link
Copy Markdown
Collaborator

@lolyu lolyu commented Nov 12, 2020

Add support of extra param testbed_name and testbed_file, and
upgrade_sonic.yml will upgrade the DUTs listed in the testbed entry
specified by testbed_name.

  1. Support previous usage, use -l to limit the DUTs.
  2. Support use extra variable testbed_name to upgrade all DUTs defined
    in this testbed.

Signed-off-by: Longxiang Lyu [email protected]

Description of PR

Summary:
Fixes # (issue)

Type of change

  • Bug fix
  • Testbed and Framework(new/improvement)
  • Test case(new/improvement)

Approach

What is the motivation for this PR?

Better fit multi-DUT usage.

How did you do it?

Dynamically create a host group upgrade_targets from the DUTs listed in the testbed by testbed_name in the first play.
And limit the second upgrade play with the hosts in group upgrade_targets.

How did you verify/test it?

Run upgrade_sonic.py to upgrade dual-tor testbed:

PLAY RECAP *******************************************************************************************************************************************************************************************************************************************************************
acs-devrepo.corp.microsoft.com : ok=2    changed=1    unreachable=0    failed=0    skipped=2    rescued=0    ignored=0
str2-7050cx3-acs-08        : ok=9    changed=3    unreachable=0    failed=0    skipped=6    rescued=0    ignored=0
str2-7050cx3-acs-09        : ok=8    changed=3    unreachable=0    failed=0    skipped=5    rescued=0    ignored=0

Thursday 12 November 2020  10:34:23 +0000 (0:00:15.465)       0:08:37.223 *****
===============================================================================
Remove some old sonic image(s) and install new image ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 256.15s
Wait for switch to come back (to SONiC) ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 180.38s
Wait for SONiC initialization ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 60.04s
Remove some old sonic image(s) after installing new image ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 15.47s
Set all bgp interfaces admin-up --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 1.90s
save bgp admin-up states ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 1.24s
Reboot switch --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 0.69s
Create upgrade targets group ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 0.38s
Gather testbed information -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 0.35s
Wait for switch to come back (to ONIE) -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 0.05s
fail ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 0.05s
define disk_used_pcent if not defined --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 0.05s
set_fact -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 0.05s
Reboot into ONIE ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 0.05s
Install SONiC image in ONIE ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 0.05s
Set next boot device to ONIE ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 0.05s
Stop upgrade if the target DUT doesn't belong to the testbed ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 0.04s
Pause {{pause_time}} seconds for ONIE initialization ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 0.04s
Set default testbed file ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 0.04s

Any platform specific information?

Supported testbed topology if it's a new test case?

Documentation

@lolyu lolyu requested a review from a team November 12, 2020 10:41
@lolyu lolyu force-pushed the refactor_upgrade_sonic branch from 9ae7c73 to 691a3ab Compare November 13, 2020 03:08
Add support of extra param `testbed_name` and `testbed_file`, and
`upgrade_sonic.yml` will upgrade the DUTs listed in the testbed entry
specified by `testbed_name`.

1. Support previous usage, use `-l` to limit the DUTs.
2. Support use extra variable `testbed_name` to upgrade all DUTs defined
in this testbed.

Signed-off-by: Longxiang Lyu <[email protected]>
@lolyu lolyu force-pushed the refactor_upgrade_sonic branch from 691a3ab to 63d1f2d Compare November 13, 2020 03:11
@lolyu
Copy link
Copy Markdown
Collaborator Author

lolyu commented Nov 13, 2020

Retest this please

@yxieca yxieca merged commit 971b83a into sonic-net:master Nov 17, 2020
kazinator-arista pushed a commit to kazinator-arista/sonic-mgmt that referenced this pull request Mar 4, 2026
…atform-common][py-swsssdk] advance submodule head (sonic-net#13260)

linkmgrd:
* bf75a93 2022-11-30 | Use github code scanning instead of LGTM (sonic-net#157) (HEAD -> 202205, github/202205) [Liu Shilong]

utilities:
* c1fa31d 2022-11-30 | Use github code scanning instead of LGTM (sonic-net#2530) (HEAD -> 202205) [Liu Shilong]
* 9990208 2022-05-19 | Add sonic-delayed.target to Application Extension .timer file generator (sonic-net#2176) [noaOrMlnx]

swss:
* bbccc68 2023-01-04 | [vstest] Only collect stdout of orchagent_restart_check in vstest (sonic-net#2597) (HEAD -> 202205, github/202205) [bingwang-ms]
* f7a7c05 2023-01-04 | Avoid aborting orchagent when setting TUNNEL attributes (sonic-net#2591) [Stephen Sun]
* 84064fa 2022-12-20 | Fixed a bug causing error state of same configuration is applied twice. (sonic-net#2580) [siqbal1986]
* 4851bef 2022-12-20 | Only collect stdout of orchagent_restart_check in vstest (sonic-net#2578) [bingwang-ms]
* 2904d95 2022-12-05 | sonic-swss: Fix orchagent crash in generateQueueMapPerPort. (sonic-net#2552) [Sambath Kumar Balasubramanian]
* ac84e41 2022-11-30 | Use github code scanning instead of LGTM (sonic-net#2546) [Liu Shilong]
* 502bd69 2022-12-20 | Fix `test_vlan.py` (sonic-net#2541) [Longxiang Lyu]
* 1e37d0e 2022-12-19 | [voq][chassis]Add show fabric counters port/queue commands (sonic-net#2522) [jfeng-arista]
* 17cdad3 2022-12-20 | [bufferorch] : Support for buffer profiles for VoQ on chassis (sonic-net#2465) [vmittal-msft]
* 5345338 2023-01-04 | Disable `arp_evict_nocarrier` for vlan host intf  (sonic-net#2590) [Longxiang Lyu]

swss-common:
* 9616287 2023-01-04 | Added customer monitoring  tables in app db and state db (sonic-net#725) (HEAD -> 202205) [siqbal1986]
* d03b95d 2022-11-30 |  Use github code scanning instead of LGTM (sonic-net#718) [Liu Shilong]
* 8a276c6 2022-12-28 | Fix sonic-slave docker image environment issue. (sonic-net#728) (github/202205) [Liu Shilong]
* 8fee1b4 2022-11-14 | Fix memory leak issue in ConfigDBConnector. (sonic-net#655) (sonic-net#706) [Hua Liu]

sairedis:
* 5387602 2022-11-30 | Use github code scanning instead of LGTM (sonic-net#1160) (HEAD -> 202205) [Liu Shilong]

platform-daemons:
* b499412 2022-11-30 | Use github code scanning instead of LGTM (sonic-net#316) (HEAD -> 202205, github/202205) [Liu Shilong]

platform-common:
* d11e983 2022-11-30 | Use github code scanning instead of LGTM (sonic-net#328) (HEAD -> 202205) [Liu Shilong]

py-swsssdk:
* b654e91 2022-11-30 | Use github code scanning instead of LGTM (sonic-net#131) (HEAD -> 202205) [Liu Shilong]

Signed-off-by: Ying Xie <[email protected]>

Signed-off-by: Ying Xie <[email protected]>
kazinator-arista pushed a commit to kazinator-arista/sonic-mgmt that referenced this pull request Mar 4, 2026
…le head (sonic-net#13353)

utilties:
* 7fc3fb7 2023-01-06 | [storyteller] add link prober state change to story teller (sonic-net#2585) (HEAD -> 202205, github/202205) [Jing Zhang]
* d8202e8 2023-01-12 | [202205] Added a new option in show queue counters command to display voq statistics (sonic-net#2591) [Sambath Kumar Balasubramanian]
* 98dde31 2023-01-11 | resolved conflicts (sonic-net#2589) [kannankvs]

swss:
* 268c3f3 2023-01-11 | Added new attributes for Vnet and Vxlan ecmp configurations. (sonic-net#2584) (HEAD -> 202205, github/202205) [siqbal1986]
* 50235b6 2023-01-12 | [routesync] Fix for stale dynamic neighbor (sonic-net#2553) [vganesan-nokia]
* ad9d826 2023-01-12 | [202205][voq] Add voq counters. (sonic-net#2606) [Sambath Kumar Balasubramanian]
* 34995f1 2023-01-10 | Revert "[voq][chassis]Add show fabric counters port/queue commands (sonic-net#2522)" (sonic-net#2612) [Arvindsrinivasan Lakshmi Narasimhan]

sairedis:
* 92e6442 2023-01-05 | enable cisco8000 SAI bulk API feature (sonic-net#1153) (sonic-net#1164) (github/202205) [Keith Lu]

platform-daemons:
* 10eb2e6 2023-01-06 | Fix bug where transceiver info is missing after port breakout change (sonic-net#329) (HEAD -> 202205) [Tal Berlowitz]

Signed-off-by: Ying Xie <[email protected]>

Signed-off-by: Ying Xie <[email protected]>
kazinator-arista pushed a commit to kazinator-arista/sonic-mgmt that referenced this pull request Mar 4, 2026
…aemons] advance submodule head (sonic-net#13755)

linkmgrd:
* e191338 2023-02-10 | Fix the warning of unused variables (sonic-net#167) (HEAD -> 202205) [Longxiang Lyu]

utilities:
* 2c933b0a 2023-02-07 | [sai_failure_dump]Invoking dump during SAI failure (sonic-net#2633) (HEAD -> 202205) [Sudharsan Dhamal Gopalarathnam]
* e949f318 2023-02-07 | [show] add support for gRPC show commands for `active-active` (sonic-net#2629) [vdahiya12]
* 77723927 2023-01-30 | Fixed admin state config CLI for Backport interfaces (sonic-net#2557) [anamehra]
* 32b1d4d6 2023-02-01 | [masic support] 'show run bgp' support for multi-asic (sonic-net#2427) [wenyiz2021]
* a2252d8a 2022-10-11 | Filter port invalid MTU configuration (sonic-net#2378) [pettershao-ragilenetworks]
* 0ffb4b6a 2023-02-09 | Add Transceiver PM basic CLI support to show output from TRANSCEIVER_PM table for ZR (sonic-net#2655) (github/202205) [longhuan-cisco]
* 496a0774 2023-02-09 | Add asic id for linecards so "show fabric counters queue/port" can work for single chip systems (sonic-net#2656) [jfeng-arista]
* 2591e8b5 2023-02-03 | multi asic support for show queue counter (sonic-net#2647) [zhixzhu]

swss:
* e0373a4 2023-02-07 | [autoneg]Fixing adv interface types to be set when AN is disabled (sonic-net#2638) (HEAD -> 202205, github/202205) [Sudharsan Dhamal Gopalarathnam]
* 62a09a0 2023-02-09 | [sai_failure_dump]Invoking dump during SAI failure (sonic-net#2644) (sonic-net#2661) [Sudharsan Dhamal Gopalarathnam]
* 076f63e 2023-02-08 | [202205] Revert "Revert "[voq][chassis]Add show fabric counters port/queue commands (sonic-net#2522)" (sonic-net#2612)" (sonic-net#2655) [kenneth-arista]
* a35e074 2023-02-06 | [202205][voq][chassis] Remove created ports from the default vlan. (sonic-net#2651) [arista-nwolfe]

swss-common:
* b9d4284 2023-02-08 | [202205] Fix epoll and socket resource leak issue. (sonic-net#651) (sonic-net#741) (github/202205) [Kevin Petremann]

sairedis:
* 9d8e731 2023-02-08 | [Mellanox] Enable DSCP remapping by using SAI attribute (sonic-net#1188) (HEAD -> 202205, github/202205) [Stephen Sun]
* 272a8bd 2023-02-10 | Fixing race condition for rif counters sonic-net#1136 (sonic-net#1202) [Suman Kumar]
* 211365a 2023-02-08 | [202205][submodule][SAI]Advance SAI header (sonic-net#1207) [Richard.Yu]
* 939c14b 2023-02-08 | [Submodule][upgrade]Upgrade SAI submodule (sonic-net#1203) [Richard.Yu]

platform-daemons:
* e5ccd40 2022-10-03 | [ycabled] fix naming error for error condition for CLI handling (sonic-net#302) (HEAD -> 202205, github/202205) [vdahiya12]
* cdd354d 2022-09-29 | [ycabled] add some exception catching logic to some vendor specific API's (sonic-net#301) [vdahiya12]
* cf58c08 2023-02-01 | Chassisd do an explicit stop of the config_manager (sonic-net#328) (sonic-net#336) [judyjoseph]

Signed-off-by: Ying Xie <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants