I have a custom docker image (simplified):
FROM ubuntu:19.10 # Update anything that might be out of date RUN apt-get -qq update \ && apt-get clean # Compiler agnostic requirements RUN apt-get install -y --no-install-recommends \ git \ python3 \ python3-pip \ && apt-get clean # Update pip to avoid error messages RUN pip3 install --no-cache-dir --upgrade \ pip ENTRYPOINT ["/bin/bash", "-c"] CMD ["/bin/bash"]
If I use this image on the shared runners it fails with
sh: 3: set: Illegal option -o pipefail
The script is running with /bin/sh, which links to /bin/dash, which doesn’t have the pipefail option.
Strangely enough, if the ENTRYPOINT and CMD lines are removed from the docker file, it then runs successfully. Either by not trying to set pipefail during the gitlab generated script or by using bash.
I can continue working without the entrypoint, but I am curious as to why this is happening.
Thanks in advance