By default, Kubernetes and OpenShift keep completed pods in namespaces indefinitely, which can make the namespace difficult to navigate using the command-line and web interfaces. There are ways to optional set history for completed or failed jobs, but this may not be an option for you if the application is not under active development.

You can delete completed resources using the kubectl delete or oc delete commands, like this:

# Delete a pod in the current Kubernetes namespace
kubectl delete pod ste4site-web-test

# Delete a pod in the current OpenShift namespace
oc delete pod ste4site-web-test

You can manually remove completed pods individually, but this could be time-consuming if there are many completed pods, and you could accidentally delete an active resource. An easier way is to use a field selector to select all the pods in the Completed state.

Use the --field-selector filter to delete all completed pod jobs in the current namespace with a single command:

# Clean up all completed pods in the current Kubernetes namespace 
kubectl delete pod --field-selector=status.phase==Succeeded

# Clean up all completed pods in the current OpenShift namespace
oc delete pod --field-selector=status.phase==Succeeded

This will go through the namespace and clean up all the completed pods. I use a script with the above command for every namespace I use on a regular basis. That way I can run the script to clean up all my projects in one go.