Child pages
  • ISetInterface

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

При выставлении флага debug=True не происходит реального изменения настроек порта, в log возвращается перечень команд для выполнения.

В configs обязательным является имя интерфейса.

Для остальных параметров:

  • Пропущенный параметр означает, что его менять не надо
  • description в виде пустой строки означает, что текущий description надо удалить

Описание

Интерфейс позволяет изменять настройки нескольких портов сразу, для каждого по

Code Block
class ISetInterface(Interface):
    configs = ListOfParameter(element=DictParameter(attrs={
        # Interface name
        "interface": InterfaceNameParameter(),
        # Port admin status: True - up, False - down
        "status": BooleanParameter(default=True, required=False),
        # Port description
        # Empty string -- reset description
        "description": StringParameter(required=False),
    }))
    # Do not actually apply changes, just return them in "log"
    debug = BooleanParameter(default=False)
    returns = DictParameter(attrs={
        # Operation status. True - success, False - failure
        "status": BooleanParameter(),
        # Optional message
        "message": StringParameter(required=False),
        # Optional command log
        "log": StringParameter(required=False)
    })

Пример запроса:

Code Block
{
    "configs": [
        {
            "interface": "Gi 0/1",
            "status": True,
            "description": "Test1"
        },
        {
            "interface": "Gi 0/2",
            "status": True,
            "description": ""
        }
    ]
}