Skip to content

Feature: Add configuration support for Interface Breakout #8

@Exonical

Description

@Exonical

Feature: Add configuration support for Interface Breakout

Description:
Add the necessary YAML structure and Terraform logic within this module to configure interface breakout on NX-OS devices.

This feature depends on the CiscoDevNet/nxos provider adding support for managing interface breakout configurations. An issue has been proposed/created upstream: [Link to the upstream issue you created/will create, if available]

Proposed YAML Structure: We need to define how users will specify breakout configurations in the input YAML files. A potential structure under system or perhaps a dedicated interfaces section could be:

Option 1: Under system configuration per device

nxos:
  devices:
    - name: Switch1
      configuration:
        system:
          # ... other system settings ...
          interface_breakouts:
            - module: 1
              port: 49
              map: "10g-4x"
            - module: 1
              port: 50
              map: "10g-4x"

Option 2: More tied to interface definitions (if module handles interfaces)

This might be more complex depending on current module structure

nxos:
  devices:
    - name: Switch1
      configuration:
        interfaces:
          physical:
            Eth1/49:
              breakout: "10g-4x"
              # ... other interface settings ...

(Decision needed on the best YAML structure based on module design)

Required Module Changes:

Define YAML Schema: Finalize the input structure in variables.tf or documentation.
Update Locals: Add logic (likely in locals.tf) to process the breakout configuration from the input YAML.
Add Terraform Resource: Create resource blocks (e.g., in a new nxos_interface_breakout.tf file?) that utilize the (future) nxos_interface_breakout resource from the upstream provider, feeding it data processed in the locals block.
Add Example: Update example YAML files (examples/*) to demonstrate usage.

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