GoogleContainerTools/skaffold · error
deleting %v job
Error message
deleting %v job
What it means
Fires in ForceJobDelete when the pre-delete existence poll for the Kubernetes Job errors with something other than NotFound (e.g. API connectivity or permission failure) — the subsequent deletion is wrapped with the job name for context. This wraps the API error, not the deletion itself.
Source
Thrown at pkg/skaffold/k8sjob/util.go:146
},
Spec: corev1.PodSpec{},
},
},
}
}
func ForceJobDelete(ctx context.Context, jobName string, jobsManager typesbatchv1.JobInterface, kubectl *kubectl.CLI) error {
err := WithRetryablePoll(ctx, func(ctx context.Context) error {
_, err := jobsManager.Get(ctx, jobName, metav1.GetOptions{})
return err
})
if apierrs.IsNotFound(err) {
return nil
}
if err != nil {
return errors.Wrap(err, fmt.Sprintf("deleting %v job", jobName))
}
err = WithRetryablePoll(ctx, func(ctx context.Context) error {
return jobsManager.Delete(ctx, jobName, metav1.DeleteOptions{
GracePeriodSeconds: util.Ptr[int64](0),
PropagationPolicy: util.Ptr(metav1.DeletePropagationForeground),
})
})
if err != nil && !apierrs.IsNotFound(err) {
return err
}
return deleteJobPod(ctx, jobName, kubectl)
}
func deleteJobPod(ctx context.Context, jobName string, kubectl *kubectl.CLI) error {
// We execute the Pods delete with the kubectl CLI client to be able to force the deletion.View on GitHub (pinned to a1189de023)
Solutions
- Check cluster connectivity and RBAC permissions for reading/deleting Jobs in the namespace
- Verify the namespace and job name are correct (kubectl get jobs -A)
- Retry after transient API-server/network issues resolve
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at pkg/skaffold/k8sjob/util.go:146 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of GoogleContainerTools/skaffold@a1189de023 (2026-09-05).
Data as JSON: /api/errors/ac0018afd2aba2d6.
Report an issue: GitHub.