Skip to content

add cabinet discovery and configuration#4

Open
PowellTravis wants to merge 1 commit intoOpenCHAMI:mainfrom
PowellTravis:main
Open

add cabinet discovery and configuration#4
PowellTravis wants to merge 1 commit intoOpenCHAMI:mainfrom
PowellTravis:main

Conversation

@PowellTravis
Copy link

@PowellTravis PowellTravis commented Mar 4, 2026

  • Extend inventory schema with a top‑level cabinets[] list.
  • Implement DiscoverCabinets to extract cabinet xnames from BMC entries, query the Redfish manager (/Managers/BMC/EthernetInterfaces) for each cabinet, and populate MAC and IP (fallback to BMC values).
  • Add ManagerInfo and DiscoverManagerInfo helpers in the redfish package to retrieve manager Ethernet interface details.
  • Update discover CLI command to invoke cabinet discovery and apply SSH authorized‑key configuration to cabinets (re‑using the same key as for BMCs).
  • Provide comprehensive unit tests:
    • cabinets_test.go validates Redfish manager discovery.

Pull Request Template

Thank you for your contribution! Please ensure the following before submitting:

Checklist

  • My code follows the style guidelines of this project
  • I have added/updated comments where needed
  • I have added tests that prove my fix is effective or my feature works
  • I have run make test (or equivalent) locally and all tests pass
  • DCO Sign-off: All commits are signed off (git commit -s) with my real name and email
  • REUSE Compliance:
    • Each new/modified source file has SPDX copyright and license headers
    • Any non-commentable files include a <filename>.license sidecar
    • All referenced licenses are present in the LICENSES/ directory

Description

Please include a summary of the change and which issue is fixed.
Also include relevant motivation and context.

Fixes #(issue)

Type of Change

  • Bug fix
  • New feature
  • Breaking change
  • Documentation update

For more info, see Contributing Guidelines.

- Extend inventory schema with a top‑level `cabinets[]` list.
- Implement `DiscoverCabinets` to extract cabinet xnames from BMC entries,
  query the Redfish manager (`/Managers/BMC/EthernetInterfaces`) for each
  cabinet, and populate MAC and IP (fallback to BMC values).
- Add `ManagerInfo` and `DiscoverManagerInfo` helpers in the redfish
  package to retrieve manager Ethernet interface details.
- Update `discover` CLI command to invoke cabinet discovery and apply
  SSH authorized‑key configuration to cabinets (re‑using the same key as
  for BMCs).
- Provide comprehensive unit tests:
  * `cabinets_test.go` validates Redfish manager discovery.

Signed-off-by: Travis Powell <developer.travis@outlook.com>
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.

1 participant