回滚前运行的头盔挂钩

问题描述 投票:3回答:2

假设我有两个版本的图表Foo-v1和v2。我已经安装了v1(作为修订版1),然后又升级到了v2(修订版2)。

现在,我想回滚到第一修订版(helm rollback Foo 1)。是否有任何方法可以在回滚after v1的某个点上运行作业在v2中定义,还原了v1资源。

它必须在v1资源上执行某些操作,因为在v2中进行了向后不兼容的更改。

我假设v2中定义的预回滚挂钩可以完成这项工作。不幸的是,图表生命周期文档对我来说有点令人困惑。

kubernetes kubernetes-helm
2个回答
0
投票

pre-rollback在创建任何资源之前执行。您的期望状态是让该作业在已创建的资源上运行,因此您必须按照文档中所述使用post-rollback钩子:

修改所有资源后,在回滚后执行回滚请求


0
投票

以下文档和示例应消除您的困惑-

https://helm.sh/docs/topics/charts_hooks/#the-available-hooks

https://helm.sh/docs/topics/charts_hooks/#writing-a-hook

tldr

将以下内容添加到要执行的作业中。

annotations:
  "helm.sh/hook": post-rollback
© www.soinside.com 2019 - 2024. All rights reserved.