eos_interfaces
Configure Ethernet interfaces on Arista EOS devices
Collection: arista.eos
Full Name: arista.eos.eos_interfaces
Controller module — runs on the local controller, not on remote hosts.
Synopsis
Configure Ethernet interfaces on Arista EOS devices
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| config | list | |||
| running_config | str | |||
| state | str | merged |
Example
yaml
# Using merged
# Before state:
# -------------
#
# test#show running-config | section interface
# interface Ethernet1
# !
# interface Ethernet2
# !
# interface Management1
# ip address dhcp
# dhcp client accept default-route
- name: Merge provided configuration with device configuration
arista.eos.eos_interfaces:
config:
- name: Ethernet1
enabled: true
mode: layer3
- name: Ethernet2
description: Configured by Ansible
enabled: false
state: merged
# Task Output
# -----------
#
# before:
# - enabled: true
# name: Ethernet1
# - enabled: true
# name: Ethernet2
# - enabled: true
# name: Management1
# commands:
# - interface Ethernet1
# - no switchport
# - interface Ethernet2
# - shutdown
# - description Configured by Ansible
# after:
# - enabled: true
# mode: layer3
# name: Ethernet1
# - description: Configured by Ansible
# enabled: false
# name: Ethernet2
# - enabled: true
# name: Management1
# After state:
# ------------
#
# test#show running-config | section interface
# interface Ethernet1
# no switchport
# !
# interface Ethernet2
# description Configured by Ansible
# shutdown
# !
# interface Management1
# ip address dhcp
# dhcp client accept default-route
# Using replaced
# Before state:
# -------------
#
# test#show running-config | section interface
# interface Ethernet1
# no switchport
# !
# interface Ethernet2
# description Configured by Ansible
# shutdown
# !
# interface Management1
# ip address dhcp
# dhcp client accept default-route
- name: Replaces device configuration of listed interfaces with provided configuration
arista.eos.eos_interfaces:
config:
- name: Ethernet1
enabled: true
- name: Ethernet2
description: Configured by Ansible
enabled: false
state: replaced
# Task Output
# -----------
#
# before:
# - enabled: true
# mode: layer3
# name: Ethernet1
# - description: Configured by Ansible
# enabled: false
# name: Ethernet2
# - enabled: true
# name: Management1
# commands:
# - interface Ethernet1
# - switchport
# after:
# - enabled: true
# name: Ethernet1
# - description: Configured by Ansible
# enabled: false
# name: Ethernet2
# - enabled: true
# name: Management1
# After state:
# ------------
#
# test#show running-config | section interface
# interface Ethernet1
# !
# interface Ethernet2
# description Configured by Ansible
# shutdown
# !
# interface Management1
# ip address dhcp
# dhcp client accept default-route
# Using overridden
# Before state:
# -------------
#
# test#show running-config | section interface
# interface Ethernet1
# !
# interface Ethernet2
# description Configured by Ansible
# shutdown
# !
# interface Management1
# ip address dhcp
# dhcp client accept default-route
- name: Overrides all device configuration with provided configuration
arista.eos.eos_interfaces:
config:
- name: Ethernet1
enabled: true
- name: Ethernet2
description: Configured by Ansible
enabled: false
state: overridden
# Task Output
# -----------
#
# before:
# - enabled: true
# name: Ethernet1
# - description: Configured by Ansible
# enabled: false
# name: Ethernet2
# - enabled: true
# name: Management1
# commands:
# - interface Management1
# - no shutdown
# after:
# - enabled: true
# name: Ethernet1
# - description: Configured by Ansible
# enabled: false
# name: Ethernet2
# - enabled: true
# name: Management1
# After state:
# ------------
#
# test#show running-config | section interface
# interface Ethernet1
# !
# interface Ethernet2
# description Configured by Ansible
# shutdown
# !
# interface Management1
# ip address dhcp
# dhcp client accept default-route
# Using deleted
# Before state:
# -------------
#
# test#show running-config | section interface
# interface Ethernet1
# !
# interface Ethernet2
# description Configured by Ansible
# shutdown
# !
# interface Management1
# ip address dhcp
# dhcp client accept default-route
- name: Delete or return interface parameters to default settings
arista.eos.eos_interfaces:
config:
- name: Ethernet1
state: deleted
# Task Output
# -----------
#
# before:
# - enabled: true
# name: Ethernet1
# - description: Configured by Ansible
# enabled: false
# name: Ethernet2
# - enabled: true
# name: Management1
# commands:
# - interface Ethernet1
# - no shutdown
# after:
# - enabled: true
# name: Ethernet1
# - description: Configured by Ansible
# enabled: false
# name: Ethernet2
# - enabled: true
# name: Management1
# After state:
# ------------
#
# test#show running-config | section interface
# interface Ethernet1
# !
# interface Ethernet2
# description Configured by Ansible
# shutdown
# !
# interface Management1
# ip address dhcp
# dhcp client accept default-route
# Using rendered
- name: Render the provided configuration into platform specific configuration lines
arista.eos.eos_interfaces:
config:
- name: Ethernet1
enabled: true
mode: layer3
- name: Ethernet2
description: Configured by Ansible
enabled: false
state: rendered
# Module Execution Result:
# ------------------------
#
# rendered:
# - interface Ethernet1
# - no shutdown
# - no switchport
# - interface Ethernet2
# - shutdown
# - description Configured by Ansible
# Using Parsed
# File: parsed.cfg
# ----------------
#
# interface Ethernet1
# description "Interface 1"
# !
# interface Ethernet2
# description "Configured by Ansible"
# shutdown
# !
- name: Parse the commands for provided configuration
arista.eos.interfaces:
running_config: "{{ lookup('file', 'parsed.cfg') }}"
state: parsed
# Module Execution Result:
# ------------------------
#
# parsed:
# - name: Ethernet1
# enabled: True
# mode: layer2
# - name: Ethernet2
# description: 'Configured by Ansible'
# enabled: False
# mode: layer2
# Using Gathered
# Before state:
# -------------
#
# test#show running-config | section interface
# interface Ethernet1
# !
# interface Ethernet2
# description Configured by Ansible
# shutdown
# !
# interface Management1
# ip address dhcp
# dhcp client accept default-route
- name: Gather interfaces facts from the device
arista.eos.interfaces:
state: gathered
# Module Execution Result:
# ------------------------
#
# gathered:
# - enabled: true
# name: Ethernet1
# - description: Configured by Ansible
# enabled: false
# name: Ethernet2
# - enabled: true
# name: Management1