Skip to content

1. set格式和限制

--set 选项使用0或多个 name/value 对

1.1 最简单的name/value对

bash
--set name=value
等价于
name: value
--set name=value
等价于
name: value

1.2 多个name/value对

bash
--set a=b,c=d
等价于
a: b
c: d
--set a=b,c=d
等价于
a: b
c: d

1.3 更复杂的表达式

bash
--set outer.inner=value
等价于
outer:
  inner: value
--set outer.inner=value
等价于
outer:
  inner: value

1.4 列表的表达

bash
--set name={a, b, c}
等价于
name:
  - a
  - b
  - c
--set name={a, b, c}
等价于
name:
  - a
  - b
  - c

1.5 name/key可以设置为null或者空数组

bash
--set name=[],a=null

name:
  - a
  - b
  - c
a: b
变为了
name: []
a: null
--set name=[],a=null

name:
  - a
  - b
  - c
a: b
变为了
name: []
a: null

1.6 使用数组下标的语法来访问列表中的元素

从 2.5.0 版本开始支持

bash
--set servers[0].port=80
等价于
servers:
  - port: 80
--set servers[0].port=80
等价于
servers:
  - port: 80

1.7 多个值得数组下标语法

bash
--set servers[0].port=80,servers[0].host=example
等价于
servers:
  - port: 80
    host: example
--set servers[0].port=80,servers[0].host=example
等价于
servers:
  - port: 80
    host: example

1.8 特殊字符转义

bash
--set name=value1\,value2
等价于
name: "value1,value2"
--set name=value1\,value2
等价于
name: "value1,value2"

1.9 转义.

bash
--set nodeSelector."kubernetes\.io/role"=master
等价于
nodeSelector:
  kubernetes.io/role: master
--set nodeSelector."kubernetes\.io/role"=master
等价于
nodeSelector:
  kubernetes.io/role: master