feat: detect LMS availability and report to console#1290
Draft
sinchubhat wants to merge 1 commit into
Draft
Conversation
4 tasks
4 tasks
rsdmike
requested changes
Apr 24, 2026
Member
rsdmike
left a comment
There was a problem hiding this comment.
Before going too far on this, I would suggest surfacing islmsavailable in the WSMANer interface: IsLMSAvailable() bool since SetupWsmanClient essentially already does this. and remove the lm/detect.go.
3df81c0 to
e17281d
Compare
There was a problem hiding this comment.
Pull request overview
This PR adds Intel LMS (Local Manageability Service) reachability detection during activation and includes that signal in the device registration payload sent to Console, enabling Console to persist and expose LMS availability for each device.
Changes:
- Track LMS reachability in the local WSMAN client (
GoWSMANMessages) via a TCP probe duringSetupWsmanClient. - Add
isLMSAvailableto the device payload sent to Console during activation (with a fallback direct TCP probe when WSMAN isn’t initialized yet). - Extend the WSMAN interface + gomock to expose
IsLMSAvailable(), and add unit tests for the new flag behavior.
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| internal/mocks/wsman_mock.go | Updates gomock WSMAN mock to include IsLMSAvailable() (and reorders Close()). |
| internal/local/amt/wsman_test.go | Adds unit tests covering the new LMS availability flag behavior. |
| internal/local/amt/wsman.go | Adds lmsAvailable state, sets it during LMS probe in SetupWsmanClient, and exposes IsLMSAvailable(). |
| internal/interfaces/wsman.go | Extends WSMANer interface with IsLMSAvailable(). |
| internal/device/api.go | Adds IsLMSAvailable to the JSON payload sent to Console (isLMSAvailable). |
| internal/commands/activate/activate.go | Detects LMS availability during activation and includes it in the Console device payload (with fallback TCP probe). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
e17281d to
06c9063
Compare
78b3b70 to
64fa498
Compare
* Add shared utils.DetectLMS() TCP probe for Intel LMS on localhost:16992 (or :16993 for local TLS enforced). * Usage: Local activation (addDeviceToConsole payload), Remote activation (RPS message payload) and amtinfo --sync (deviceInfo.lmsInstalled) Resolves #1246
64fa498 to
fa51888
Compare
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Resolves #1246
Testing:
Activate the edge node
Query from host
Output
Sync Command
Query from host
Output