6

argoproj/argocd:v1.8.7

有一个舵图(1 个带有入口,1 个带有部署/服务/cm)。它具有自动(修剪和自我修复)的同步策略。当试图从 argocd 仪表板中删除它们时,它们被删除(在 k8s 集群上不再存在),但是仪表板上的状态一直停留在删除。

在此处输入图像描述

如果我尝试单击同步,它会显示 -> 无法部署修订:应用程序正在删除。任何想法为什么即使所有资源都已被删除,它仍停留在删除状态?有没有办法刷新仪表板中的状态以反映实际状态?

谢谢!

=================

更新:在进行级联删除之后,这是屏幕截图(我已经删除了应用程序名称,为什么它的某些部分是白色的) 在此处输入图像描述

执行 kubectl get all -A 显示所有资源不再存在(例如,甚至 cm、svc、deploy 等)

4

2 回答 2

4

我实际上能够通过更新应用程序 yaml 来完成这项工作:

  1. 添加spec.syncPolicy.allowEmpty: true
  2. 消除metadata.finalizers

没有卡在删除状态的工作版本:

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
    name: service-name
    namespace: argocd
spec:
    destination:
        server: https://kubernetes.default.svc
        namespace: argocd
    project: proj-name
    source:
        path: service-name
        repoURL: ssh://...git
        targetRevision: dev
        helm:
            valueFiles:
                - ../values.yaml
                - ../values_version_dev.yaml
    syncPolicy:
        automated:
            prune: true
            allowEmpty: true
            selfHeal: true
于 2021-08-26T05:47:40.343 回答
0

这已经发生在我身上好几次了。在每种情况下,都是因为我有两个同名的应用程序声明。

于 2021-12-28T09:04:12.627 回答