Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Wait for job/pod completion in Kubernetes or Google Container Engine

What's the best way in script to wait for a job or pod to complete in Kubernetes or Google Container Engine?

In particular, it would be better to be notified rather than polling for status in kubectl, but I'd be happy with a fairly efficient loop without any slips between the cracks. Essentially, I'd like the equivalent of a plain docker run since that blocks until command termination, but I don't want to use docker directly in this case.

I looked at Github Issue #1899 but it looks unresolved as yet.

like image 673
Glen Low Avatar asked Oct 30 '22 04:10

Glen Low


1 Answers

It's not really what it was designed for, but you could run kubectl attach $POD. It'll show you the output of the pod while it's running and automatically terminate once the pod is done running.

Of course, you'll have to handle the error that it prints if the pod is already done running, since it's only really meant for use on pods that are currently running.

like image 167
Alex Robinson Avatar answered Nov 10 '22 14:11

Alex Robinson