dpsctl import
dpsctl import Usage Guide
Overview
dpsctl import includes commands for importing entities from external sources into DPS.
Entity import uses an asynchronous workflow:
- Start import —
dpsctl import entityinitiates entity generation from the specified source (BCM or Nautobot). The server runs generation in the background and returns a request ID immediately. - Check status —
dpsctl import entity-statuspolls the server with the request ID, waits for completion, and then streams the generated entities.
Generation runs with a server default timeout of 10 minutes (maximum 30 minutes). Request state is cleaned up 30 minutes after the request is created.
Supported Sources
| Source | --source value |
Description |
|---|---|---|
| Base Command Manager (BCM) | bcm |
Generate entities from BCM cluster inventory |
| Nautobot | nautobot |
Generate entities from Nautobot DCIM inventory via the Topology Management gRPC service |
Usage
dpsctl import entity --source=<bcm|nautobot> [flags]Flags
Includes global dpsctl options.
| Flag | Source | Description |
|---|---|---|
--source value |
both | Entity source: bcm or nautobot (required) |
--url value |
BCM | BCM server URL (required when --source=bcm) |
--username value |
BCM | Authentication username (required when --source=bcm) |
--password value |
BCM | Authentication password (required when --source=bcm) |
--tls-insecure-skip-verify |
BCM | Skip TLS certificate verification |
--locations value |
Nautobot | Comma-separated locations (UUIDs or names) to filter import |
--racks value |
Nautobot | Comma-separated racks (UUIDs or names) to filter import |
--device-types value |
Nautobot | Comma-separated device types (UUIDs or names) to filter import |
--request-string value |
Nautobot | Free-form URL param string; defined filter flags take precedence over overlapping keys |
--help, -h |
both | Show help |
When --source=nautobot, BCM flags (--url, --username, --password, --tls-insecure-skip-verify) are ignored. When --source=bcm, Nautobot filter flags are ignored.
Examples
Generate Entities from BCM
$ dpsctl import entity \
--source bcm \
--url https://bcm.example.com:8443 \
--username admin \
--password secretpassword
{
"request_id": "abc123-def456-ghi789"
}The command returns a request_id that you use to retrieve the generated entities.
Retrieve Entities Using Request ID
After starting entity generation, use the request ID with import entity-status:
$ dpsctl import entity-status --request-id abc123-def456-ghi789See dpsctl import entity-status for full details.
Generate Entities with TLS Skip Verify
$ dpsctl import entity \
--source bcm \
--url https://bcm.example.com:8443 \
--username admin \
--password secretpassword \
--tls-insecure-skip-verifyGenerate Entities from Nautobot with Filters
$ dpsctl import entity \
--source nautobot \
--locations "dc1,dc2" \
--racks "rack-a" \
--device-types "server-type-1" \
--request-string "status=active"
{
"request_id": "abc123-def456-ghi789"
}Nautobot connects to the Topology Management gRPC service (configured via dpsctl login/connection).
Notes
- The
--sourceflag is required. Supported values arebcmandnautobot. - BCM:
--url,--username, and--passwordare required. BCM source requires BCM version 11 or later. BCM credentials must have sufficient privileges to read cluster inventory. - Nautobot: Uses the Topology Management gRPC service. No BCM credentials are needed. Filters (
--locations,--racks,--device-types,--request-string) scope the import to a subset of Nautobot DCIM inventory. At least one filter is required. - Entity generation runs asynchronously on the server. The command returns immediately with a request ID.
- Use
dpsctl import entity-statuswith the returned request ID to poll for and retrieve the generated entities.