<p>This question is a follow up of: <a href="https://stackoverflow.com/q/66453781/562440">How to list really all objects of a nonexistant namespace?</a></p>
<p>Long story short:</p>
<pre><code>$ kubectl get namespaces
NAME              STATUS   AGE
argo              Active   27d
default           Active   27d
kube-node-lease   Active   27d
kube-public       Active   27d
kube-system       Active   27d

$ kubectl get eventbus -n argo-events
NAME      AGE
default   17h

$ kubectl get eventsource -n argo-events
NAME                  AGE
pubsub-event-source   14h
</code></pre>
<p>There are two resources in namespace argo-events which actually no longer exits because I deleted it and expected it to be gone with all resources in it. Obviously something didn't work as expected.</p>
<p>Now (after listing potentially more objects - first question) I want to really get rid of those resources because they seem to block a redeployment.</p>
<p>But this ...</p>
<pre><code>$ kubectl delete eventbus default -n argo-events
eventbus.argoproj.io &quot;default&quot; deleted
^C
$ kubectl delete eventsource pubsub-event-source -n argo-events
eventsource.argoproj.io &quot;pubsub-event-source&quot; deleted
^C
</code></pre>
<p>... doesn't work.</p>
<p>So, how do I force their deletion?</p>
<hr />
<p>UPDATE:</p>
<pre><code>$ kubectl describe eventbus default -n argo-events | grep -A 3 final
        f:finalizers:
          .:
          v:&quot;eventbus-controller&quot;:
      f:status:
$ kubectl describe eventsource pubsub-event-source -n argo-events | grep -A 3 final
        f:finalizers:
          .:
          v:&quot;eventsource-controller&quot;:
      f:spec:
</code></pre>

<p>This worked:</p>
<pre><code>$ kubectl create namespace argo-events
namespace/argo-events created

$ kubectl patch eventsource/pubsub-event-source -p '{&quot;metadata&quot;:{&quot;finalizers&quot;:[]}}' --type=merge -n argo-events
eventsource.argoproj.io/pubsub-event-source patched

$ kubectl patch eventbus/default -p '{&quot;metadata&quot;:{&quot;finalizers&quot;:[]}}' --type=merge -n argo-events
eventbus.argoproj.io/default patched

$ kubectl delete namespace argo-events
namespace &quot;argo-events&quot; deleted
</code></pre>
<p>If somebody stumbles upon this answer and knows why this works - please add an explanation in a comment. That would be cool, thanks.</p>
