Skip to content

Human friendly endpoint table#879

Open
wanyunSu wants to merge 5 commits into
developfrom
wanyunSu/endpoint-hostname-fix
Open

Human friendly endpoint table#879
wanyunSu wants to merge 5 commits into
developfrom
wanyunSu/endpoint-hostname-fix

Conversation

@wanyunSu
Copy link
Copy Markdown
Contributor

@wanyunSu wanyunSu commented Apr 15, 2026

Description

Fixes issue #792 #859

The status table now shows both user-friendly hostname and the actual endpoints that applications connect to:

K8s session:

drunc-unified-shell > status
                                                 claudia-k8s-ehn1-test status                                                  
┏━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━┳━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Name                   ┃ Info ┃ State   ┃ Substate ┃ In error ┃ Included ┃ Endpoint                                         ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━╇━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ root-controller        │      │ initial │ initial  │ No       │ Yes      │ grpc://np04-srv-019:30006 (actual: 10.244.21.58) │
│   df-controller        │      │ initial │ initial  │ No       │ Yes      │ grpc://np04-srv-019:38701 (actual: 10.73.136.38) │
│     df-01              │      │ initial │ idle     │ No       │ Yes      │ rest://np04-srv-019:44067 (actual: 10.73.136.38) │
│     dfo-01             │      │ initial │ idle     │ No       │ Yes      │ rest://np04-srv-019:49895 (actual: 10.73.136.38) │
│     tp-stream-writer   │      │ initial │ idle     │ No       │ Yes      │ rest://np04-srv-019:60739 (actual: 10.73.136.38) │
│   hsi-fake-controller  │      │ initial │ initial  │ No       │ Yes      │ grpc://np04-srv-019:40771 (actual: 10.73.136.38) │
│     hsi-fake-01        │      │ initial │ idle     │ No       │ Yes      │ rest://np04-srv-019:44305 (actual: 10.73.136.38) │
│     hsi-fake-to-tc-app │      │ initial │ idle     │ No       │ Yes      │ rest://np04-srv-019:55657 (actual: 10.73.136.38) │
│   ru-controller        │      │ initial │ initial  │ No       │ Yes      │ grpc://np04-srv-019:36865 (actual: 10.73.136.38) │
│     ru-01              │      │ initial │ idle     │ No       │ Yes      │ rest://np04-srv-019:60167 (actual: 10.73.136.38) │
│   trg-controller       │      │ initial │ initial  │ No       │ Yes      │ grpc://np04-srv-019:45467 (actual: 10.73.136.38) │
│     mlt                │      │ initial │ idle     │ No       │ Yes      │ rest://np04-srv-019:50567 (actual: 10.73.136.38) │
│     tc-maker-1         │      │ initial │ idle     │ No       │ Yes      │ rest://np04-srv-019:36751 (actual: 10.73.136.38) │
└────────────────────────┴──────┴─────────┴──────────┴──────────┴──────────┴──────────────────────────────────────────────────┘
[2026/04/15 09:52:20 UTC] INFO       shell_utils.py:165                       drunc.utils.ShellContext                           Current 
FSM status is initial. Available transitions are conf. Available sequence commands are start-run.
drunc-unified-shell > conf
[2026/04/15 09:52:22 UTC] INFO       shell_utils.py:552                       drunc.controller.iface.shell_utils                 Running 
transition 'conf' on controller 'root-controller', targeting: 'root-controller'
                                                    claudia-k8s-ehn1-test status                                                    
┏━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Name                   ┃ Info ┃ State      ┃ Substate   ┃ In error ┃ Included ┃ Endpoint                                         ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ root-controller        │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:30006 (actual: 10.244.21.58) │
│   df-controller        │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:38701 (actual: 10.73.136.38) │
│     df-01              │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:44067 (actual: 10.73.136.38) │
│     dfo-01             │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:49895 (actual: 10.73.136.38) │
│     tp-stream-writer   │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:60739 (actual: 10.73.136.38) │
│   hsi-fake-controller  │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:40771 (actual: 10.73.136.38) │
│     hsi-fake-01        │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:44305 (actual: 10.73.136.38) │
│     hsi-fake-to-tc-app │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:55657 (actual: 10.73.136.38) │
│   ru-controller        │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:36865 (actual: 10.73.136.38) │
│     ru-01              │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:60167 (actual: 10.73.136.38) │
│   trg-controller       │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:45467 (actual: 10.73.136.38) │
│     mlt                │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:50567 (actual: 10.73.136.38) │
│     tc-maker-1         │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:36751 (actual: 10.73.136.38) │
└────────────────────────┴──────┴────────────┴────────────┴──────────┴──────────┴──────────────────────────────────────────────────┘
Waiting for conf to complete... ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━   0% -:--:--
                            conf execution report                             
┏━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Name                   ┃ Command execution     ┃ FSM transition            ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ root-controller        │ Executed Successfully │ Fsm Executed Successfully │
│   df-controller        │ Executed Successfully │ Fsm Executed Successfully │
│     df-01              │ Executed Successfully │ Fsm Executed Successfully │
│     dfo-01             │ Executed Successfully │ Fsm Executed Successfully │
│     tp-stream-writer   │ Executed Successfully │ Fsm Executed Successfully │
│   hsi-fake-controller  │ Executed Successfully │ Fsm Executed Successfully │
│     hsi-fake-01        │ Executed Successfully │ Fsm Executed Successfully │
│     hsi-fake-to-tc-app │ Executed Successfully │ Fsm Executed Successfully │
│   ru-controller        │ Executed Successfully │ Fsm Executed Successfully │
│     ru-01              │ Executed Successfully │ Fsm Executed Successfully │
│   trg-controller       │ Executed Successfully │ Fsm Executed Successfully │
│     mlt                │ Executed Successfully │ Fsm Executed Successfully │
│     tc-maker-1         │ Executed Successfully │ Fsm Executed Successfully │
└────────────────────────┴───────────────────────┴───────────────────────────┘
                                                    claudia-k8s-ehn1-test status                                                    
┏━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Name                   ┃ Info ┃ State      ┃ Substate   ┃ In error ┃ Included ┃ Endpoint                                         ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ root-controller        │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:30006 (actual: 10.244.21.58) │
│   df-controller        │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:38701 (actual: 10.73.136.38) │
│     df-01              │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:44067 (actual: 10.73.136.38) │
│     dfo-01             │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:49895 (actual: 10.73.136.38) │
│     tp-stream-writer   │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:60739 (actual: 10.73.136.38) │
│   hsi-fake-controller  │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:40771 (actual: 10.73.136.38) │
│     hsi-fake-01        │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:44305 (actual: 10.73.136.38) │
│     hsi-fake-to-tc-app │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:55657 (actual: 10.73.136.38) │
│   ru-controller        │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:36865 (actual: 10.73.136.38) │
│     ru-01              │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:60167 (actual: 10.73.136.38) │
│   trg-controller       │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:45467 (actual: 10.73.136.38) │
│     mlt                │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:50567 (actual: 10.73.136.38) │
│     tc-maker-1         │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:36751 (actual: 10.73.136.38) │
└────────────────────────┴──────┴────────────┴────────────┴──────────┴──────────┴──────────────────────────────────────────────────┘
[2026/04/15 09:52:22 UTC] INFO       shell_utils.py:165                       drunc.utils.ShellContext                           Current 
FSM status is configured. Available transitions are start, scrap. Available sequence commands are shutdown, start-run.

and in SSH session:

                                                     claudia-ssh status                                                     
┏━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━┳━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Name                   ┃ Info ┃ State   ┃ Substate ┃ In error ┃ Included ┃ Endpoint                                      ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━╇━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ root-controller        │      │ initial │ initial  │ No       │ Yes      │ grpc://localhost:30006 (actual: 10.73.136.38) │
│   df-controller        │      │ initial │ initial  │ No       │ Yes      │ grpc://localhost:33561 (actual: 10.73.136.38) │
│     df-01              │      │ initial │ idle     │ No       │ Yes      │ rest://localhost:57267 (actual: 10.73.136.38) │
│     dfo-01             │      │ initial │ idle     │ No       │ Yes      │ rest://localhost:50557 (actual: 10.73.136.38) │
│     tp-stream-writer   │      │ initial │ idle     │ No       │ Yes      │ rest://localhost:59713 (actual: 10.73.136.38) │
│   hsi-fake-controller  │      │ initial │ initial  │ No       │ Yes      │ grpc://localhost:35701 (actual: 10.73.136.38) │
│     hsi-fake-01        │      │ initial │ idle     │ No       │ Yes      │ rest://localhost:40095 (actual: 10.73.136.38) │
│     hsi-fake-to-tc-app │      │ initial │ idle     │ No       │ Yes      │ rest://localhost:47477 (actual: 10.73.136.38) │
│   ru-controller        │      │ initial │ initial  │ No       │ Yes      │ grpc://localhost:34525 (actual: 10.73.136.38) │
│     ru-01              │      │ initial │ idle     │ No       │ Yes      │ rest://localhost:35873 (actual: 10.73.136.38) │
│   trg-controller       │      │ initial │ initial  │ No       │ Yes      │ grpc://localhost:34503 (actual: 10.73.136.38) │
│     mlt                │      │ initial │ idle     │ No       │ Yes      │ rest://localhost:59025 (actual: 10.73.136.38) │
│     tc-maker-1         │      │ initial │ idle     │ No       │ Yes      │ rest://localhost:60825 (actual: 10.73.136.38) │
└────────────────────────┴──────┴─────────┴──────────┴──────────┴──────────┴───────────────────────────────────────────────┘

Type of change

  • New feature / enhancement
  • Optimization
  • Bug fix
  • Breaking change
  • Documentation

List of required branches from other repositories

n/a

Change log

Add a helper function get_endpoint_display_host_overrides to improve the readability of the controller status table display by replacing raw endpoint IPs with human-readable hostnames when available.

Note it only overrides the table when a Process Manager is available, the mapping is populated from ProcessDescription.metadata.hostname
This allows Kubernetes node names (or other host metadata) to be used for display.
The default implementation returns {} (no overrides).

The change is purely cosmetic and should not affect connectivity or controller behaviour.

Suggested manual testing checklist

LIST COMMANDS TO DEMONSTRATE CHANGE

Developer checklist

Prior to marking this as "Ready for Review"

Tests ran on: np04 019, with NFD_DEV_260414_A9

Unit tests - some tests can't be ran on the CI. This is documented. If this PR checks a feature that can't be tested with CI, this has been marked appropriately.

Integration tests - the daqsystemtest_integtest_bundle requires a lot of resources, and connections to the EHN1 infrastructure. Check the cross referenced list if you can't run these. The developer needs to run at least the .

  • Unit tests (pytest --marker) passed
    • With relevant marker
    • Without marker
  • Integration tests passed
    • Only daqsystemtest_integtest_bundle.sh -k minimal_system_quick_test.py
    • Full daqsystemtest_integtest_bundle.sh
  • Testing skipped as there are no core code changes in this PR, this only relates to documentation/CI workflows

Final checklist prior to marking this as "Ready for Review"

  • Code is clearly commented.
  • New unit tests have been added, or is documented in # ISSUE NUMBER
  • A suitable reviewer has been chosen from this list.

Reviewer checklist

  • This branch has been rebased with develop prior to testing.
  • Suggested manual tests show changes.
  • CI workflows fails documented (if present)
  • Integration tests passed
    • Only concern yourself if failures related to drunc are in the log files
    • If non-drunc failure appears:
      • Validate failure in fresh working area
      • Contact Pawel if unsure

Once the features are validated and both the unit and integration tests pass, the PRs is ready to be merged.

Prior to merging

Choose one of the following an complete all substeps
  • Changes only affect the Run Control, are in a single repository, and do not affect the end user.
    • Changes are documented in docstrings and code comments
    • Wiki has been updated if architectural or endpoint changes
  • Otherwise
    • Workflow changes demonstrated in the Change Log (if necessary)
    • Wiki has been updated (if necessary)
    • #daq-sw-librarians Slack channel notified (see below)

Once completed, the reviewer can merge the PR.

Notification message for a Slack channel

Note - this should be to #dunedaq-integration for general workflow that isn't during a release candidate period, and to #daq-release-prep otherwise.

For an single merge that changes the user workflow

The CCM WG has an isolated PR ready to merge that affects user workflows. The PR is:

_URL_

I will leave time for any comments, otherwise will merge these at the end of the work day _Insert your time zone_.

For co-ordinated merge

The CCM WG has a set of co-ordinated merges ready to merge. The PRs are:

_URL_

_URL_


I will leave time for any comments, otherwise will merge these at the end of the day.

@wanyunSu wanyunSu self-assigned this Apr 15, 2026
@wanyunSu wanyunSu mentioned this pull request Apr 15, 2026
22 tasks
@emmuhamm emmuhamm self-requested a review May 6, 2026 09:08
Copy link
Copy Markdown
Contributor

@emmuhamm emmuhamm left a comment

Choose a reason for hiding this comment

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

Thanks for this @wanyunSu, this is really good to see.

I've got two main comments that I think would be nice to be implemented.

  1. SSH table endpoint

With these changes the outcome of the endpoint becomes like so:

Image

I would much prefer if we have the previous behaviour of showing the actual server name, rather than localhost. For example, in develop it looks like this:

Image

This will come in super handy when we're having the multi-shell stuff when we're using two different host, so its good to be able to tell what host its actually running on.

  1. Suggestion on the actual output of the table.

This is more of a cosmetic thing but I think it'll come in handy. Feel free to discuss with Pawel if you want to implement it or not.

I like that the actual endpoints are shown in the tty; but I'm wondering if its better to shove the actual endpoint IP address in a separate column, eg the 'actual endpoint' column? And also to have this disabled by default, but you can enable this with some flag (for example a status --full or something).

Suggesting mainly because as is the table gets quite long, and tables have a nasty habit of truncating / wrapping around when its in a smaller terminal that makes it shorten relevant info. So maybe its better if its in another column and if its hidden by default, but that you can call up.

I've also left a couple of code suggestions to improve the code itself.


Some other information

  • tested against develop as of 6 May 2026
  • rebased against master
  • msqt passes
  • Confirm it fixes #859
  • Cannot confirm if it fixes #792 as this needs to be tested on hardware and I don't have access to it. @wanyunSu do you have hardware access? cc @PawelPlesniak

Comment thread src/drunc/controller/interface/shell_utils.py
Comment thread src/drunc/controller/interface/shell_utils.py Outdated
Comment thread src/drunc/controller/interface/shell_utils.py Outdated
Comment thread src/drunc/controller/interface/shell_utils.py Outdated
Comment thread src/drunc/unified_shell/context.py Outdated
Comment thread src/drunc/unified_shell/context.py Outdated
Comment thread src/drunc/unified_shell/context.py
self.status_receiver_controller = BroadcastHandler(broadcast_configuration=bcch)


def get_endpoint_display_host_overrides(self) -> dict[str, str]:
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Any chance this can be pytested?

strong preference if possible, but I don't think this is a blocker for this to go in

@PawelPlesniak
Copy link
Copy Markdown
Collaborator

PawelPlesniak commented May 6, 2026

Following @emmuhamm's comments

@emmuhamm
Copy link
Copy Markdown
Contributor

Just checking back in:

If we can resolve localhost to the true hostname, this will be needed for the #830, which preliminary testing shows we already need.

Thankfully this already exists:

def resolve_localhost_to_hostname(address: str) -> str:

And is something I've just used for the PMaaS, so thought it might be useful to flag up here

@wanyunSu
Copy link
Copy Markdown
Contributor Author

Thanks @PawelPlesniak @emmuhamm for the comments!
The changes in this PR are summarised below:

  1. Add an optional "Actual Endpoint" column, hidden by default, shown with status --full. Replaces the old inline (actual: ...) dim text.
  2. localhost now resolve to the real machine hostname via socket.gethostname().
  3. Clean up get_endpoint_display_host_overrides(), replace bare Exception and add comments.

The expected status table should look like (with NFD_DEV_260507_A9):

drunc-unified-shell > status
                                             claudia-test status                                             
┏━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Name                   ┃ Info ┃ State      ┃ Substate   ┃ In error ┃ Included ┃ Endpoint                  ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ root-controller        │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:32203 │
│   df-controller        │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:39709 │
│     df-01              │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:33039 │
│     dfo-01             │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:35587 │
│     tp-stream-writer   │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:48639 │
│   hsi-fake-controller  │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:33391 │
│     hsi-fake-01        │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:41613 │
│     hsi-fake-to-tc-app │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:47035 │
│   ru-controller        │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:36827 │
│     ru-01              │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:56875 │
│   trg-controller       │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:44411 │
│     mlt                │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:38673 │
│     tc-maker-1         │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:41577 │
└────────────────────────┴──────┴────────────┴────────────┴──────────┴──────────┴───────────────────────────┘
[2026/05/12 14:06:38 UTC] INFO       shell_utils.py:165                       drunc.utils.ShellContext                           Current FSM status is configured. Available 
transitions are start, scrap. Available sequence commands are shutdown, start-run.
drunc-unified-shell > status --full
                                                           claudia-test status                                                           
┏━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Name                   ┃ Info ┃ State      ┃ Substate   ┃ In error ┃ Included ┃ Endpoint                  ┃ Actual Endpoint           ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ root-controller        │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:32203 │ grpc://10.73.136.38:32203 │
│   df-controller        │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:39709 │ grpc://10.73.136.38:39709 │
│     df-01              │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:33039 │ rest://10.73.136.38:33039 │
│     dfo-01             │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:35587 │ rest://10.73.136.38:35587 │
│     tp-stream-writer   │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:48639 │ rest://10.73.136.38:48639 │
│   hsi-fake-controller  │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:33391 │ grpc://10.73.136.38:33391 │
│     hsi-fake-01        │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:41613 │ rest://10.73.136.38:41613 │
│     hsi-fake-to-tc-app │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:47035 │ rest://10.73.136.38:47035 │
│   ru-controller        │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:36827 │ grpc://10.73.136.38:36827 │
│     ru-01              │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:56875 │ rest://10.73.136.38:56875 │
│   trg-controller       │      │ configured │ configured │ No       │ Yes      │ grpc://np04-srv-019:44411 │ grpc://10.73.136.38:44411 │
│     mlt                │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:38673 │ rest://10.73.136.38:38673 │
│     tc-maker-1         │      │ configured │ idle       │ No       │ Yes      │ rest://np04-srv-019:41577 │ rest://10.73.136.38:41577 │
└────────────────────────┴──────┴────────────┴────────────┴──────────┴──────────┴───────────────────────────┴───────────────────────────┘
[2026/05/12 14:06:42 UTC] INFO       shell_utils.py:165                       drunc.utils.ShellContext                           Current FSM status is configured. Available 
transitions are start, scrap. Available sequence commands are shutdown, start-run.

Copy link
Copy Markdown
Contributor

@emmuhamm emmuhamm left a comment

Choose a reason for hiding this comment

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

Thanks for the update! I've gone through the code and they look good to me.

Couple of review notes:

  • Pytest fails. This is likely not due to this PR, since this is known in develop. See #918
  • Still untested on #792
  • Most recent changes pass msqt
  • The pytest addition still hasn't been addressed. However, as I mentioned in my comment I don't consider this a blocker for this PR.

I'll submit my review as a comment for now. I can't approve on GitHub it since I can't test it against #792, but barring that I'm happy with this.

@PawelPlesniak feel free to test on hardware whenever, and feel free to proceed if you're happy.

@emmuhamm emmuhamm self-requested a review May 13, 2026 13:06
@emmuhamm emmuhamm dismissed their stale review May 13, 2026 13:07

Superseeded by newest review

@emmuhamm emmuhamm requested a review from PawelPlesniak May 13, 2026 13:08
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