Explicitely check Kubernetes pull failure are traced as script_failure

The goal of this issue is o achieve here is explicitness and not implicitness. It wasn't clear that with the changes introduced in !2995 (merged), the behaviour of the Kubernetes executor was also changed.

With this issue, the intent is to update the Kubernetes executor tests in other to make sure that a ScriptFailure is returned for pull image error.

More details in the thread linked below.

The following discussion from !2995 (merged) should be addressed:

  • @ratchade started a discussion: (+4 comments)

    @steveazz back to you 🏓

    I was available to make more test and the results show that the change don't break existing runner system failure.

    Existing integration tests, testKubernetesMissingImage, testKubernetesMissingTag, testKubernetesFailingToPullImageTwiceFeatureFlag, testKubernetesFailingToPullServiceImageTwiceFeatureFlag, testKubernetesFailingToPullHelperTwiceFeatureFlag, which were failing with a SystemFailure ERROR: Job failed (system failure): (in the main branch) now fail with a ScriptFailure ERROR: Job failed:.

    In the meantime, the TestDeletedPodSystemFailureDuringExecution is still failing as a runner_system_failure

    I also rebased to make sure the changes pass the integration_k8s tests and it does.

    I believe it is safe to say that the changes turn the k8s pulling image error (missing image, missing tag, missing service image) into script_failure without breaking the existing the existing runner_system_failure

    Please, let me know if there is anything you believe I have missed 🙇🏿

Edited by Romuald Atchadé