Skip to content
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

[SmartSwitch] Extend reboot script for rebooting SmartSwitch #3566

Open
wants to merge 23 commits into
base: master
Choose a base branch
from

Conversation

vvolam
Copy link

@vvolam vvolam commented Oct 3, 2024

What I did

Extended reboot script for SmartSwitch cases to reboot entire SmartSwitch or a specific DPU

How I did it

Implemented changes according to https://github.com/sonic-net/SONiC/blob/605c3a56ac2717dbbb638433e7bb13054fc05a31/doc/smart-switch/reboot/reboot-hld.md

How to verify it

  • Verified the script on non-smart switch and didn't find any regressions. Also, script throws errors if any new smart switch related parameters are given by user.
  • Partially verified on smart switch. Waiting for image with gnmi container running to complete testing.

Previous command output (if the output of a command-line utility has changed)

New command output (if the output of a command-line utility has changed)

scripts/reboot Outdated Show resolved Hide resolved
scripts/reboot Outdated Show resolved Hide resolved
scripts/reboot Outdated Show resolved Hide resolved
scripts/reboot Outdated Show resolved Hide resolved
scripts/reboot Outdated Show resolved Hide resolved
scripts/reboot Outdated Show resolved Hide resolved
scripts/reboot Outdated Show resolved Hide resolved
scripts/reboot Outdated Show resolved Hide resolved
scripts/reboot Outdated Show resolved Hide resolved
@vvolam vvolam changed the title Extend reboot script for rebooting SmartSwitch [SmartSwitch] Extend reboot script for rebooting SmartSwitch Nov 4, 2024
@vvolam vvolam marked this pull request as ready for review November 4, 2024 19:39
scripts/reboot_helper.py Outdated Show resolved Hide resolved
scripts/reboot_helper.py Outdated Show resolved Hide resolved
scripts/reboot_helper.py Outdated Show resolved Hide resolved
scripts/reboot_helper.py Outdated Show resolved Hide resolved
1. Move module base functions to utilties_common/module_base.py
2. Use load_platform_chassis from utilities_common/util_base.py
3. Write unit tests accordingly
Returns:
bool: True if the reboot command was successfully sent, False otherwise.
"""
module_index = util.try_get(self.platform_chassis.get_module_index, module_name, default=INVALID_MODULE_INDEX)
Copy link

@gpunathilell gpunathilell Nov 27, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The current util_base.py try_get implemntation does not accept function arguments, may need to be modified

scripts/reboot Show resolved Hide resolved
@gpunathilell
Copy link

For reboot, is it also possible to check the CONFIG_DB entry for the admin state for the DPUs? if the CONFIG_DB entry is missing or set to down, then we do not need to reboot the DPUs at all

vvolam and others added 4 commits November 27, 2024 17:26
Co-authored-by: Gagan Punathil Ellath <[email protected]>
Co-authored-by: Gagan Punathil Ellath <[email protected]>
Instantiate ModuleHelper() before calling its functions
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants