# vyos_lldp_interfaces – Manages attributes of lldp interfaces on VyOS devices

New in version 2.9.

- Synopsis

- Parameters

- Notes

- Examples

- Return Values

- Status

## Synopsis

- This module manages attributes of lldp interfaces on VyOS network devices.

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---
config list |  | A list of lldp interfaces configurations.

enable
boolean

Choices:
- no
- yes ←

to disable lldp on the interface.

| location dictionary |  | LLDP-MED location data.
|  | civic_based dictionary |  | Civic-based location data.
|  |  | ca_info list |  | LLDP-MED address info
|  |  |  | ca_type integer / required |  | LLDP-MED Civic Address type.
|  |  |  | ca_value string / required |  | LLDP-MED Civic Address value.
|  |  | country_code string / required |  | Country Code
|  | coordinate_based dictionary |  | Coordinate-based location.
|  |  | altitude integer |  | Altitude in meters.

datum
string

Choices:
- WGS84
- NAD83
- MLLW

Coordinate datum type.

|  |  | latitude string / required |  | Latitude.
|  |  | longitude string / required |  | Longitude.
|  | elin string |  | Emergency Call Service ELIN number (between 10-25 numbers).
| name string / required |  | Name of the lldp interface.

state
string

Choices:
- merged ←
- replaced
- overridden
- deleted

The state of the configuration after module completion.

## Notes

Note

- Tested against VyOS 1.1.8 (helium).

- This module works with connection `network_cli`. See the VyOS OS Platform Options.

## Examples

    # Using merged
    #
    # Before state:
    # -------------
    #
    # vyos@vyos:~$ show configuration  commands | grep lldp
    #
    - name: Merge provided configuration with device configuration
      vyos_lldp_interfaces:
        config:
          - name: 'eth1'
            location:
              civic_based:
                country_code: 'US'
                ca_info:
                  - ca_type: 0
                    ca_value: 'ENGLISH'

          - name: 'eth2'
            location:
              coordinate_based:
               altitude: 2200
               datum: 'WGS84'
               longitude: '222.267255W'
               latitude: '33.524449N'
        state: merged
    #
    #
    # -------------------------
    # Module Execution Result
    # -------------------------
    #
    # before": []
    #
    #    "commands": [
    #        "set service lldp interface eth1 location civic-based country-code 'US'",
    #        "set service lldp interface eth1 location civic-based ca-type 0 ca-value 'ENGLISH'",
    #        "set service lldp interface eth1",
    #        "set service lldp interface eth2 location coordinate-based latitude '33.524449N'",
    #        "set service lldp interface eth2 location coordinate-based altitude '2200'",
    #        "set service lldp interface eth2 location coordinate-based datum 'WGS84'",
    #        "set service lldp interface eth2 location coordinate-based longitude '222.267255W'",
    #        "set service lldp interface eth2 location coordinate-based latitude '33.524449N'",
    #        "set service lldp interface eth2 location coordinate-based altitude '2200'",
    #        "set service lldp interface eth2 location coordinate-based datum 'WGS84'",
    #        "set service lldp interface eth2 location coordinate-based longitude '222.267255W'",
    #        "set service lldp interface eth2"
    #
    # "after": [
    #        {
    #            "location": {
    #                "coordinate_based": {
    #                    "altitude": 2200,
    #                    "datum": "WGS84",
    #                    "latitude": "33.524449N",
    #                    "longitude": "222.267255W"
    #                }
    #            },
    #            "name": "eth2"
    #        },
    #        {
    #            "location": {
    #                "civic_based": {
    #                    "ca_info": [
    #                        {
    #                            "ca_type": 0,
    #                            "ca_value": "ENGLISH"
    #                        }
    #                    ],
    #                    "country_code": "US"
    #                }
    #            },
    #            "name": "eth1"
    #        }
    #    ],
    #
    # After state:
    # -------------
    #
    # vyos@vyos:~$ show configuration commands | grep lldp
    # set service lldp interface eth1 location civic-based ca-type 0 ca-value 'ENGLISH'
    # set service lldp interface eth1 location civic-based country-code 'US'
    # set service lldp interface eth2 location coordinate-based altitude '2200'
    # set service lldp interface eth2 location coordinate-based datum 'WGS84'
    # set service lldp interface eth2 location coordinate-based latitude '33.524449N'
    # set service lldp interface eth2 location coordinate-based longitude '222.267255W'

    # Using replaced
    #
    # Before state:
    # -------------
    #
    # vyos@vyos:~$ show configuration commands | grep lldp
    # set service lldp interface eth1 location civic-based ca-type 0 ca-value 'ENGLISH'
    # set service lldp interface eth1 location civic-based country-code 'US'
    # set service lldp interface eth2 location coordinate-based altitude '2200'
    # set service lldp interface eth2 location coordinate-based datum 'WGS84'
    # set service lldp interface eth2 location coordinate-based latitude '33.524449N'
    # set service lldp interface eth2 location coordinate-based longitude '222.267255W'
    #
    - name: Replace device configurations of listed LLDP interfaces with provided configurations
      vyos_lldp_interfaces:
        config:
          - name: 'eth2'
            location:
              civic_based:
                country_code: 'US'
                ca_info:
                  - ca_type: 0
                    ca_value: 'ENGLISH'

          - name: 'eth1'
            location:
              coordinate_based:
               altitude: 2200
               datum: 'WGS84'
               longitude: '222.267255W'
               latitude: '33.524449N'
        state: replaced
    #
    #
    # -------------------------
    # Module Execution Result
    # -------------------------
    #
    #    "before": [
    #        {
    #            "location": {
    #                "coordinate_based": {
    #                    "altitude": 2200,
    #                    "datum": "WGS84",
    #                    "latitude": "33.524449N",
    #                    "longitude": "222.267255W"
    #                }
    #            },
    #            "name": "eth2"
    #        },
    #        {
    #            "location": {
    #                "civic_based": {
    #                    "ca_info": [
    #                        {
    #                            "ca_type": 0,
    #                            "ca_value": "ENGLISH"
    #                        }
    #                    ],
    #                    "country_code": "US"
    #                }
    #            },
    #            "name": "eth1"
    #        }
    #    ]
    #
    #    "commands": [
    #        "delete service lldp interface eth2 location",
    #        "set service lldp interface eth2 'disable'",
    #        "set service lldp interface eth2 location civic-based country-code 'US'",
    #        "set service lldp interface eth2 location civic-based ca-type 0 ca-value 'ENGLISH'",
    #        "delete service lldp interface eth1 location",
    #        "set service lldp interface eth1 'disable'",
    #        "set service lldp interface eth1 location coordinate-based latitude '33.524449N'",
    #        "set service lldp interface eth1 location coordinate-based altitude '2200'",
    #        "set service lldp interface eth1 location coordinate-based datum 'WGS84'",
    #        "set service lldp interface eth1 location coordinate-based longitude '222.267255W'"
    #    ]
    #
    #    "after": [
    #        {
    #            "location": {
    #                "civic_based": {
    #                    "ca_info": [
    #                        {
    #                            "ca_type": 0,
    #                            "ca_value": "ENGLISH"
    #                        }
    #                    ],
    #                    "country_code": "US"
    #                }
    #            },
    #            "name": "eth2"
    #        },
    #        {
    #            "location": {
    #                "coordinate_based": {
    #                    "altitude": 2200,
    #                    "datum": "WGS84",
    #                    "latitude": "33.524449N",
    #                    "longitude": "222.267255W"
    #                }
    #            },
    #            "name": "eth1"
    #        }
    #    ]
    #
    # After state:
    # -------------
    #
    # vyos@vyos:~$ show configuration commands | grep lldp
    # set service lldp interface eth1 'disable'
    # set service lldp interface eth1 location coordinate-based altitude '2200'
    # set service lldp interface eth1 location coordinate-based datum 'WGS84'
    # set service lldp interface eth1 location coordinate-based latitude '33.524449N'
    # set service lldp interface eth1 location coordinate-based longitude '222.267255W'
    # set service lldp interface eth2 'disable'
    # set service lldp interface eth2 location civic-based ca-type 0 ca-value 'ENGLISH'
    # set service lldp interface eth2 location civic-based country-code 'US'

    # Using overridden
    #
    # Before state
    # --------------
    #
    # vyos@vyos:~$ show configuration commands | grep lldp
    # set service lldp interface eth1 'disable'
    # set service lldp interface eth1 location coordinate-based altitude '2200'
    # set service lldp interface eth1 location coordinate-based datum 'WGS84'
    # set service lldp interface eth1 location coordinate-based latitude '33.524449N'
    # set service lldp interface eth1 location coordinate-based longitude '222.267255W'
    # set service lldp interface eth2 'disable'
    # set service lldp interface eth2 location civic-based ca-type 0 ca-value 'ENGLISH'
    # set service lldp interface eth2 location civic-based country-code 'US'
    #
    - name: Overrides all device configuration with provided configuration
      vyos_lag_interfaces:
        config:
         - name: 'eth2'
           location:
             elin: 0000000911

        state: overridden
    #
    #
    # -------------------------
    # Module Execution Result
    # -------------------------
    #
    # "before": [
    #        {
    #            "enable": false,
    #            "location": {
    #                "civic_based": {
    #                    "ca_info": [
    #                        {
    #                            "ca_type": 0,
    #                            "ca_value": "ENGLISH"
    #                        }
    #                    ],
    #                    "country_code": "US"
    #                }
    #            },
    #            "name": "eth2"
    #        },
    #        {
    #            "enable": false,
    #            "location": {
    #                "coordinate_based": {
    #                    "altitude": 2200,
    #                    "datum": "WGS84",
    #                    "latitude": "33.524449N",
    #                    "longitude": "222.267255W"
    #                }
    #            },
    #            "name": "eth1"
    #        }
    #    ]
    #
    #    "commands": [
    #        "delete service lldp interface eth2 location",
    #        "delete service lldp interface eth2 disable",
    #        "set service lldp interface eth2 location elin 0000000911"
    #
    #
    #    "after": [
    #        {
    #            "location": {
    #                "elin": 0000000911
    #            },
    #            "name": "eth2"
    #        }
    #    ]
    #
    #
    # After state
    # ------------
    #
    # vyos@vyos# run show configuration commands | grep lldp
    # set service lldp interface eth2 location elin '0000000911'

    # Using deleted
    #
    # Before state
    # -------------
    #
    # vyos@vyos# run show configuration commands | grep lldp
    # set service lldp interface eth2 location elin '0000000911'
    #
    - name: Delete lldp  interface attributes of given interfaces.
      vyos_lag_interfaces:
        config:
         - name: 'eth2'
        state: deleted
    #
    #
    # ------------------------
    # Module Execution Results
    # ------------------------
    #
        "before": [
            {
                "location": {
                    "elin": 0000000911
                },
                "name": "eth2"
            }
        ]
    # "commands": [
    #    "commands": [
    #        "delete service lldp interface eth2"
    #    ]
    #
    # "after": []
    # After state
    # ------------
    # vyos@vyos# run show configuration commands | grep lldp
    # set service 'lldp'

## Return Values

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

Key | Returned | Description
--- | --- | ---
after list | when changed | The configuration as structured data after module completion. Sample: The configuration returned will always be in the same format of the parameters above.
before list | always | The configuration as structured data prior to module invocation. Sample: The configuration returned will always be in the same format of the parameters above.
commands list | always | The set of commands pushed to the remote device. Sample: ["set service lldp interface eth2 'disable'", 'delete service lldp interface eth1 location']

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]

- This module is maintained by the Ansible Network Team. [network]

### Red Hat Support

More information about Red Hat’s support of this module is available from this Red Hat Knowledge Base article.

### Authors

- Rohit Thakur (@rohitthakur2590)

Hint

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