dellemc.enterprise_sonic.sonic_api 模块 – 管理运行 Enterprise SONiC 的设备上的 REST 操作

注意

此模块是 dellemc.enterprise_sonic 集合 (版本 2.5.1) 的一部分。

如果您使用的是 ansible 软件包,则可能已经安装了此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install dellemc.enterprise_sonic

要在剧本中使用它,请指定:dellemc.enterprise_sonic.sonic_api

dellemc.enterprise_sonic 1.0.0 中的新增功能

概要

  • 管理戴尔科技公司提供的 Enterprise SONiC 分发版设备上的 REST 操作。此模块提供了一种以确定性方式处理 SONiC REST 操作的实现。

注意

此模块具有相应的 action 插件

参数

参数

注释

body

任意

发送到 Web 服务的 HTTP 请求/响应的主体,其中包含有效负载。

method

字符串 / 必需

请求或响应的 HTTP 方法。必须是服务处理请求时接受的有效方法。

选项

  • "GET"

  • "PUT"

  • "POST"

  • "PATCH"

  • "DELETE"

status_code

列表 / 元素=整数 / 必需

表示请求成功的有效数字 HTTP 状态码列表。

url

路径 / 必需

请求在“restconf/”之后的 HTTP 路径。

备注

注意

  • 针对戴尔科技公司提供的 Enterprise SONiC 分发版进行了测试。

  • 支持 check_mode

示例

- name: Checks that you can connect (GET) to a page and it returns a status 200
  dellemc.enterprise_sonic.sonic_api:
    url: data/openconfig-interfaces:interfaces/interface=Ethernet60
    method: "GET"
    status_code: 200

- name: Appends data to an existing interface using PATCH and verifies if it returns status 204
  dellemc.enterprise_sonic.sonic_api:
    url: data/openconfig-interfaces:interfaces/interface=Ethernet60/config/description
    method: "PATCH"
    body: {"openconfig-interfaces:description": "Eth-60"}
    status_code: 204

- name: Deletes an associated IP address using DELETE and verifies if it returns status 204
  dellemc.enterprise_sonic.sonic_api:
    url: >
      data/openconfig-interfaces:interfaces/interface=Ethernet64/subinterfaces/subinterface=0/
      openconfig-if-ip:ipv4/addresses/address=1.1.1.1/config/prefix-length
    method: "DELETE"
    status_code: 204

- name: Adds a VLAN network instance using PUT and verifies if it returns status 204
  dellemc.enterprise_sonic.sonic_api:
    url: data/openconfig-network-instance:network-instances/network-instance=Vlan100/
    method: "PUT"
    body: {"openconfig-network-instance:network-instance": [{"name": "Vlan100","config": {"name": "Vlan100"}}]}
    status_code: 204

- name: Adds a prefix-set to a routing policy using POST and verifies if it returns 201
  dellemc.enterprise_sonic.sonic_api:
        url: data/openconfig-routing-policy:routing-policy/defined-sets/prefix-sets/prefix-set=p1
        method: "POST"
        body: {"openconfig-routing-policy:config": {"name": "p1","mode": "IPV4" }}
        status_code: 201

返回值

常见的返回值已在 此处 记录,以下是此模块独有的字段

描述

msg

字符串

来自请求的 HTTP 错误消息。

返回:HTTP 错误

response

列表 / 元素=字符串

网络设备端对 REST 调用的响应,其中包含状态码。

返回:始终

示例:{"response": [204, {"": null}]}

作者

  • Abirami N (@abirami-n)