Docs

Powerstrip Management

RobusTest supports hardware-controlled power management for physical devices through network-attached powerstrips. Administrators can turn device ports on or off remotely, which is useful for recovering unresponsive devices or managing power in a large device lab.

Overview

Each powerstrip port is registered against a node. When you perform an action on a port, RobusTest sends the command to the node agent, which relays it to the physical powerstrip.

Powerstrip management is an administrator function. Port configuration is set up during lab setup and is not changed during normal operation.


Listing Ports

All ports across all nodes:

GET /v3/powerstrips

Ports for a specific node:

GET /v3/powerstrips/node/:nodeID

Single port by ID:

GET /v3/powerstrip/:id

Controlling a Port

By port ID:

PUT /v3/powerstrip/:id/:action

By entity ID (device or other entity mapped to a port):

PUT /v3/powerstrip/entity/:id/:action

Valid actions:

Action Effect
on Powers the port on
off Powers the port off

Example — power off port:

curl -X PUT \
  '<RobusTest URL>/v3/powerstrip/<portID>/off?accesskey=<ACCESS_KEY>'

Port-to-Entity Mapping

Ports can be mapped to devices (or other entities) so that power actions can be performed by referencing the device rather than the raw port ID.

Get map by entity:

GET /v3/powerstrip/map/entity/:entityID

Get map by port:

GET /v3/powerstrip/map/port/:portID

Create a mapping:

POST /v3/powerstrip/map
{
  "powerstripPortID": "<port ID>",
  "entityID": "<device or entity ID>"
}

Delete a mapping:

DELETE /v3/powerstrip/map/:id

Action History

Every power action is logged. You can retrieve the history for auditing or troubleshooting.

History for a specific port:

GET /v3/powerstrip/actionhistories/port/:portID

History for a specific node:

GET /v3/powerstrip/actionhistories/node/:nodeID

All history:

GET /v3/powerstrip/actionhistories