# icx_interface – Manage Interface on Ruckus ICX 7000 series switches

New in version 2.9.

- Synopsis
- Parameters
- Notes
- Examples
- Return Values
- Status

## Synopsis

- This module provides declarative management of Interfaces on ruckus icx devices.

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---
aggregate list |  | List of Interfaces definitions.

check_running_config
boolean

Choices:
- no
- yes

Check running configuration. This can be set as environment variable.
Module will use environment variable value(default:True), unless it is overridden, by specifying it as module parameter.

| delay integer |  | Time in seconds to wait before checking for the operational state on remote device. This wait is applicable for operational state argument which are state with values `up`/`down`, tx_rate and rx_rate.
| description string |  | Name of the description.

enabled
boolean

Choices:
- no
- yes

Interface link status

| name string |  | Name of the Interface.
| neighbors list |  | Check the operational state of given interface `name` for CDP/LLDP neighbor. The following suboptions are available.
|  | host string |  | CDP/LLDP neighbor host for given interface `name`.
|  | port string |  | CDP/LLDP neighbor port to which given interface `name` is connected.
| power dictionary |  | Inline power on Power over Ethernet (PoE) ports.

by_class
string

Choices:
- 0
- 1
- 2
- 3
- 4

The range is 0-4
The power limit based on class value for given interface `name`

enabled
boolean

Choices:
- no
- yes

enable/disable the poe of the given interface `name`

|  | limit string |  | The range is 1000-15400|30000mW. For PoH ports the range is 1000-95000mW The power limit based on actual power value for given interface `name`

priority
string

Choices:
- 1
- 2
- 3

The range is 1 (highest) to 3 (lowest)
The priority for power management or given interface `name`

| rx_rate string |  | Receiver rate in bits per second (bps). This is state check parameter only. Supports conditionals, see Conditionals in Networking Modules

speed
string

Choices:
- 10-full
- 10-half
- 100-full
- 100-half
- 1000-full
- 1000-full-master
- 1000-full-slave
- 10g-full
- 10g-full-master
- 10g-full-slave
- 2500-full
- 2500-full-master
- 2500-full-slave
- 5g-full
- 5g-full-master
- 5g-full-slave
- auto

Interface link speed/duplex

state
string

Choices:
- present
- absent
- up
- down

State of the Interface configuration, `up` means present and operationally up and `down` means present and operationally `down`

stp
boolean

Choices:
- no
- yes

enable/disable stp for the interface

| tx_rate string |  | Transmit rate in bits per second (bps). This is state check parameter only. Supports conditionals, see Conditionals in Networking Modules

check_running_config
boolean

Choices:
- no
- yes ←

Check running configuration. This can be set as environment variable.
Module will use environment variable value(default:True), unless it is overridden, by specifying it as module parameter.

delay integer | Default: 10 | Time in seconds to wait before checking for the operational state on remote device. This wait is applicable for operational state argument which are state with values `up`/`down`, tx_rate and rx_rate.
description string |  | Name of the description.

enabled
boolean

Choices:
- no
- yes ←

Interface link status

name string |  | Name of the Interface.
neighbors list |  | Check the operational state of given interface `name` for CDP/LLDP neighbor. The following suboptions are available.
| host string |  | CDP/LLDP neighbor host for given interface `name`.
| port string |  | CDP/LLDP neighbor port to which given interface `name` is connected.
power dictionary |  | Inline power on Power over Ethernet (PoE) ports.

by_class
string

Choices:
- 0
- 1
- 2
- 3
- 4

The range is 0-4
The power limit based on class value for given interface `name`

enabled
boolean

Choices:
- no ←
- yes

enable/disable the poe of the given interface `name`

| limit string |  | The range is 1000-15400|30000mW. For PoH ports the range is 1000-95000mW The power limit based on actual power value for given interface `name`

priority
string

Choices:
- 1
- 2
- 3

The range is 1 (highest) to 3 (lowest)
The priority for power management or given interface `name`

rx_rate string |  | Receiver rate in bits per second (bps). This is state check parameter only. Supports conditionals, see Conditionals in Networking Modules

speed
string

Choices:
- 10-full
- 10-half
- 100-full
- 100-half
- 1000-full
- 1000-full-master
- 1000-full-slave
- 10g-full
- 10g-full-master
- 10g-full-slave
- 2500-full
- 2500-full-master
- 2500-full-slave
- 5g-full
- 5g-full-master
- 5g-full-slave
- auto

Interface link speed/duplex

state
string

Choices:
- present ←
- absent
- up
- down

State of the Interface configuration, `up` means present and operationally up and `down` means present and operationally `down`

stp
boolean

Choices:
- no
- yes

enable/disable stp for the interface

tx_rate string |  | Transmit rate in bits per second (bps). This is state check parameter only. Supports conditionals, see Conditionals in Networking Modules

## Notes

Note

- Tested against ICX 10.1.
- For information on using ICX platform, see the ICX OS Platform Options guide.

## Examples

    - name: enable ethernet port and set name
      icx_interface:
        name: ethernet 1/1/1
        description: interface-1
        stp: true
        enabled: true

    - name: disable ethernet port 1/1/1
      icx_interface:
          name: ethernet 1/1/1
          enabled: false

    - name: enable ethernet port range, set name and speed.
      icx_interface:
          name: ethernet 1/1/1 to 1/1/10
          description: interface-1
          speed: 100-full
          enabled: true

    - name: enable poe. Set class.
      icx_interface:
          name: ethernet 1/1/1
          power:
           by_class: 2

    - name: configure poe limit of interface
      icx_interface:
          name: ethernet 1/1/1
          power:
           limit: 10000

    - name: disable poe of interface
      icx_interface:
          name: ethernet 1/1/1
          power:
           enabled: false

    - name: set lag name for a range of lags
      icx_interface:
          name: lag 1 to 10
          description: test lags

    - name: Disable lag
      icx_interface:
          name: lag 1
          enabled: false

    - name: enable management interface
      icx_interface:
          name: management 1
          enabled: true

    - name: enable loopback interface
      icx_interface:
          name: loopback 10
          enabled: true

    - name: Add interface using aggregate
      icx_interface:
          aggregate:
          - { name: ethernet 1/1/1, description: test-interface-1, power: { by_class: 2 } }
          - { name: ethernet 1/1/3, description: test-interface-3}
          speed: 10-full
          enabled: true

    - name: Check tx_rate, rx_rate intent arguments
      icx_interface:
        name: ethernet 1/1/10
        state: up
        tx_rate: ge(0)
        rx_rate: le(0)

    - name: Check neighbors intent arguments
      icx_interface:
        name: ethernet 1/1/10
        neighbors:
        - port: 1/1/5
          host: netdev

## Return Values

Common return values are documented here, the following are the fields unique to this module:

Key | Returned | Description
--- | --- | ---
commands list | always | The list of configuration mode commands to send to the device. Sample: ['interface ethernet 1/1/1', 'port-name interface-1', 'state present', 'speed-duplex 100-full', 'inline power priority 1']

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]
- This module is maintained by the Ansible Community. [community]

### Authors

- Ruckus Wireless (@Commscope)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.