Helm 回滚命令在子图表场景中回滚整个版本
Helm rollback commands rollback the entire release in sub-chart scenario
假设我们有 Helm 图表 A
,其中包含一个子图表 B
。让我们执行以下操作顺序。
helm install test /path/to/A
。它安装子图表 B
以及相同的 Helm release
名称,即 test
- 做一些影响两个图表的配置更改。例如更改一些环境变量。
- 做
helm upgrade test /path/to/A
。升级图表 A
和 B
下所有受影响的 pods
- 由于某些原因,我只想回滚
sub-chart B
上所做的新更改,但保留 A
上的新更改。
- 做
helm rollback test
.
现在,第 5 步回滚图表 A
更改。现在,问题是,我可以将回滚限制为图表 B
吗?可以吗
这是不可能的。父图表 A
和子图表 B
是同一 Helm 版本的一部分,一旦安装,您只能升级或回滚整个版本,不能升级或回滚它的片段。
如果您将部署配置保留在源代码管理中,则可以像对任何其他文件进行部分还原一样,对每个环境的配置文件进行部分还原,然后 helm upgrade
再次回到“新”(部分还原)配置。
假设我们有 Helm 图表 A
,其中包含一个子图表 B
。让我们执行以下操作顺序。
helm install test /path/to/A
。它安装子图表B
以及相同的Helm release
名称,即test
- 做一些影响两个图表的配置更改。例如更改一些环境变量。
- 做
helm upgrade test /path/to/A
。升级图表A
和B
下所有受影响的 pods
- 由于某些原因,我只想回滚
sub-chart B
上所做的新更改,但保留A
上的新更改。 - 做
helm rollback test
.
现在,第 5 步回滚图表 A
更改。现在,问题是,我可以将回滚限制为图表 B
吗?可以吗
这是不可能的。父图表 A
和子图表 B
是同一 Helm 版本的一部分,一旦安装,您只能升级或回滚整个版本,不能升级或回滚它的片段。
如果您将部署配置保留在源代码管理中,则可以像对任何其他文件进行部分还原一样,对每个环境的配置文件进行部分还原,然后 helm upgrade
再次回到“新”(部分还原)配置。