script 模式下,CLI 命令的输入和输出应采用 YAML 格式。这需要将 API 输入和输出中以 JSON 格式呈现的内容直接转换为 YAML 格式。

之所以选择以 YAML 格式呈现,是因为它允许更轻松地进行交互,而无需考虑逗号、引号、大括号等语法方面的问题。使用 YAML 主要是为了更加轻松地对现有对象进行剪切和粘贴以及增量更改。对象的多行配置采用 Bash Heredoc 样式。更多相关信息,请访问 https://en.wikipedia.org/wiki/Here_document

terminal mode script
show pool p1
name: p1
server_count: 3
servers:
- hostname: 1.1.1.1
ip:
addr: 1.1.1.1
type: V4
- hostname: 2.2.2.2
ip:
addr: 2.2.2.2
type: V4
tenant_ref: https://localhost/api/tenant/admin
uuid: pool-b0cb56dc-cc24-4b87-9d19-7bf790d2e582

使用脚本模式配置池

configure pool p1 << END
name: p1
server_count: 3
servers:
- hostname: 1.1.1.1
ip:
addr: 1.1.1.1
type: V4
- hostname: 2.2.2.2
ip:
addr: 2.2.2.2
type: V4
- hostname: 3.3.3.3
ip:
addr: 3.3.3.3
type: V4
tenant_ref: https://localhost/api/tenant/admin
uuid: pool-b0cb56dc-cc24-4b87-9d19-7bf790d2e582
END
Updating an existing object
name: p1
server_count: 3
servers:
- hostname: 1.1.1.1
ip:
addr: 1.1.1.1
type: V4
- hostname: 2.2.2.2
ip:
addr: 2.2.2.2
type: V4
- hostname: 3.3.3.3
ip:
addr: 3.3.3.3
type: V4
tenant_ref: https://localhost/api/tenant/admin
uuid: pool-b0cb56dc-cc24-4b87-9d19-7bf790d2e582