From 7d7b08fadf3514577b2b83270477e05ec03f9971 Mon Sep 17 00:00:00 2001 From: Benjamin Schanzel Date: Tue, 10 Mar 2020 11:11:51 +0100 Subject: [PATCH] Kubernetes/OpenShift Provider: Don't Require Bash in Container Images Currently the Kubernetes and OpenShift providers set the entrypoint of their build node pods to `/bin/bash`, which then requires `bash` to be available in the respective container image. This might not always be the case (e.g. with Alpine based images). This change makes sure the entrypoint is set to `/bin/sh`, which we can more reliably assume to be available in the container image. Change-Id: I799ea95b715e50d9c22e66cc80579cf119db8f38 --- nodepool/driver/kubernetes/provider.py | 2 +- nodepool/driver/openshift/provider.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/nodepool/driver/kubernetes/provider.py b/nodepool/driver/kubernetes/provider.py index 97701c0c6..f18807e12 100644 --- a/nodepool/driver/kubernetes/provider.py +++ b/nodepool/driver/kubernetes/provider.py @@ -277,7 +277,7 @@ class KubernetesProvider(Provider): 'name': label.name, 'image': label.image, 'imagePullPolicy': label.image_pull, - 'command': ["/bin/bash", "-c", "--"], + 'command': ["/bin/sh", "-c"], 'args': ["while true; do sleep 30; done;"], 'workingDir': '/tmp' }] diff --git a/nodepool/driver/openshift/provider.py b/nodepool/driver/openshift/provider.py index 42390fe56..52f0980a7 100644 --- a/nodepool/driver/openshift/provider.py +++ b/nodepool/driver/openshift/provider.py @@ -205,7 +205,7 @@ class OpenshiftProvider(Provider): 'name': label.name, 'image': label.image, 'imagePullPolicy': label.image_pull, - 'command': ["/bin/bash", "-c", "--"], + 'command': ["/bin/sh", "-c"], 'args': ["while true; do sleep 30; done;"], 'workingDir': '/tmp', }