Earlier quoted context omitted.
Did you mean argowf instead of argocd? Argocd is pretty simple and only syncs k8 resources.
I mean that node (not js) dashboard to build pipelines and make things look logical instead of writing 4 lines of bash. I'm not a fan of anything that adds complexity. ArgoCD/WF/ALL ARGO... is just a pretty dashboard over cli tooling. ./deploy.sh @ This is the contract you should focus on. Whatever you need to make ./deploy.sh do this, do it.
No one EVER should run deploy.sh like how you propose it.
ArgoCD abstracts away access to a k8s cluster (login through dex).
It has strategies of how to deploy k8s resources like through retry, replace (which you would need to write manually in your deploy.sh).
It gives you debug output for your deploy process (yes thats a thing, you do not assume every deploy just works).
ArgoCD also can and should be used to reference secerts from secret store like vault.
And it gives you a history/audit.