0

概括:

我已经通过 JenkinsX 在 OKD 集群中部署了一个微服务,并试图在部署后立即删除与 helm 版本关联的持久卷 (PV)。所以我从 jx 文档中找到了以下命令,

jx step helm delete <release_name> -n <namespace>

重现行为的步骤:

使用带有发布名称的 jx preview 命令部署服务,

jx preview --app $APP_NAME --dir ../.. --release preview-$APP_NAME

预期行为:

jx 步骤 helm delete 应该删除与微服务部署关联的持久卷 (PV)。

实际行为:

上述删除命令无法删除导致升级到暂存构建失败并出现端口错误的 PV。

Jx版本:

jx 版本的输出为:

NAME               VERSION
jx                 2.0.785
jenkins x platform 2.0.1973
Kubernetes cluster v1.11.0+d4cacc0
kubectl            v1.11.0+d4cacc0
helm client        Client: v2.12.0+gd325d2a
git                2.22.0
Operating System   "CentOS Linux release 7.7.1908 (Core)"

詹金斯类型:

[] 无服务器 Jenkins X 流水线(Tekton + Prow)

[*] 经典詹金斯

Kubernetes 集群:

具有 1 个主节点和 2 个工作节点的 Openstack 集群。

我需要通过 jx 的 jenkinsfile 删除 PV,所以尝试使用,

1. jx step helm delete <release_name> -n <namespace> ["Unable to delete PVs"]
2. helm delete purge <release_name> ["unable to list/delete the release created through jx helm"]
3. oc/kubectl commands are not working through Jenkinsfile.

但没有任何帮助。所以,无论如何,请建议我可以通过 jx 的 Jenkinsfile 删除 PV。

4

1 回答 1

0

jx step helm delete不会删除 PV。helm delete也不会删除 PV,这是预期的行为。您需要使用--purge选项来完全删除 Helm 版本以及与之关联的所有 PV。例如jx step helm delete <release_name> -n <namespace> --purge

于 2020-03-13T11:33:07.930 回答