Skip to content

[202608][system_health]: Skip LED check on BMC platforms without system status LED support (#27361) - #1397

Merged
Jianquan Ye (yejianquan) merged 1 commit into
Azure:202608from
ediwibowo-msft:backport-202608-27361
Sep 2, 2026
Merged

[202608][system_health]: Skip LED check on BMC platforms without system status LED support (#27361)#1397
Jianquan Ye (yejianquan) merged 1 commit into
Azure:202608from
ediwibowo-msft:backport-202608-27361

Conversation

@ediwibowo-msft

Copy link
Copy Markdown

Backport of #27361 to the 202608 branch.

Resolves the Cherry Pick Conflict_msft-202608 from the automated cherry-pick. The conflict arose because the 202608 branch has an older version of check_system_health_led_info (without the _fetch_led_and_status refactor present on master). Resolved by adding the BMC guard on top of the 202608 version of the function body.

What changed

check_system_health_led_info now returns early (with a warning) when duthost.is_bmc() is True, so test_service_checker and test_service_checker_with_process_exit skip the LED check on BMC platforms (e.g. Nokia-7220-Th6p) instead of failing. Non-BMC platforms are unaffected.

Original PR: #27361

…s LED support (#27361)

Summary:
Fixes #27360

`test_service_checker` and `test_service_checker_with_process_exit` fail
on BMC platforms (e.g. `Nokia-7220-Th6p` BMC topology) because BMC
devices do not implement the system status LED chassis APIs. On those
platforms `show system-health summary` exits non-zero
(`chassis.set_status_led is not implemented` / `AttributeError:
'Chassis' object has no attribute 'initizalize_system_led'`), causing
`check_system_health_led_info` to raise `RunAnsibleModuleFail`.

- [x] Bug fix
- [ ] Testbed and Framework(new/improvement)
- [ ] New Test case
    - [ ] Skipped for non-supported platforms
- [ ] Test case improvement

- [ ] 202205
- [ ] 202305
- [ ] 202311
- [ ] 202405
- [ ] 202411
- [ ] 202505
- [ ] 202511
- [x] 202608

BMC devices don't implement the system status LED APIs. The LED check
should be skipped on BMC platforms rather than failing the whole test,
while behavior on all other platforms stays unchanged.

`check_system_health_led_info` now returns early (with a warning) when
`duthost.is_bmc()` is `True`. Non-BMC platforms are unaffected.

Verified the module compiles (`python -m py_compile`). On BMC platforms
the LED check is skipped with a warning; on all other platforms the
existing LED verification runs as before.

Scoped to BMC devices (detected via `DEVICE_METADATA.localhost.type ==
'NetworkBmc'`), e.g. `Nokia-7220-Th6p` BMC topology. No behavior change
for non-BMC platforms.

N/A — existing test cases.

N/A

---------

Signed-off-by: Edi Wibowo <ediwibowo@microsoft.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
(cherry picked from commit c6ccce55353212066cfab6ff46bd7a899a5b918b)
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
There may be pipelines that require an authorized user to comment /azp run to run.

@mssonicbld

Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
1 pipeline(s) were filtered out due to trigger conditions.

@yejianquan
Jianquan Ye (yejianquan) merged commit 2be330d into Azure:202608 Sep 2, 2026
4 checks passed
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