Skip to content

External connector configuration normalized to label format that CML 2.10.x does not accept #204

Description

@bpethel68

Description

When configuring an external_connector node, the provider normalizes device names
(e.g. bridge041) to a label format (e.g. Bridge 041) before sending to the CML API.
CML 2.10.x does not recognize the label format and the connector shows as "(non-existent)"
in the UI and fails to connect.

Environment

  • CML version: 2.10.0+build.13
  • Provider version: 0.9.1

Steps to reproduce

  1. Set configuration = "bridge041" on an external_connector node
  2. Run terraform apply
  3. Provider warns: "normalized to label 'Bridge 041'"
  4. CML stores Bridge 041 but connector shows "(non-existent)" — bridge is non-functional

Root cause

The provider calls /api/v0/external_connectors to map device names to labels.
This endpoint returns 404 on CML 2.10.x. The provider falls back to string formatting
(bridge041Bridge 041), which CML does not accept.

Querying the node via API confirms CML stores Bridge 041 but requires bridge041.

Expected behavior

When /api/v0/external_connectors returns 404, fall back to using the device name
as-is rather than applying label formatting.

Workaround

Add lifecycle { ignore_changes = [configuration] } to external connector resources,
then manually set the correct bridge in the CML UI.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions