Child pages
  • ISetInterface
Skip to end of metadata
Go to start of metadata

Назначение

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

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

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

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

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

Описание

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

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)
    })

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

{
    "configs": [
        {
            "interface": "Gi 0/1",
            "status": True,
            "description": "Test1"
        },
        {
            "interface": "Gi 0/2",
            "status": True,
            "description": ""
        }
    ]
}
  • No labels