因为rally的task有json和yaml两种格式,我一般常用的json格式,但是为了统一还是决定用yaml格式来写rally task。
学习了一下yaml格式,发现格式非常的简洁,能让参数(比如:列表和字典)简单明了化
yaml 格式
-
缩进
使用空格缩进,缩进距离为两个空格,不能用tab缩进 -
.yaml 文件开头
以”---“ 开头,表明一个文件的开始 -
列表表示
使用一个短横杠加一个空格,多个项使用同样的缩进级别作为同一列表的一部分
- value
-
字典表示
以“key: value"的形式,冒号后面要加一个空格
pool:
name: "rally_pool"
protocol: "TCP"
lb_method: "LEAST_CONNECTIONS"
subnet_id: "f30db620-862c-4d3a-9e1c-d29f326389e8"
总体来说还是很容易学会的。最后放一段写的task
---
Neutron.create_different_protocol_pools:
-
args:
pool:
name: "rally_pool"
lb_method: "ROUND_ROBIN"
protocol: "HTTP"
subnet_id: "f30db620-862c-4d3a-9e1c-d29f326389e8"
runner:
type: "serial"
time: 1
context:
create_network:
name: "rally_network"
create_router:
name: "rally_router"
external_gateway_info:
network_id: "f64f4451-7441-4a81-8cac-a4c4acd4cc40"
create_subnet:
subnet_name: "rally_subnet"
cidr: "8.8.8.0/24"