Yesterday, pipelines started failing for one of our repositories. Every run got stuck in the "Build setup" phase and eventually the pipeline would fail because the time limit was exceeded. This happened even for past commits that previously had passed successfully.
Inspecting the pipeline run log, it looks like it actually completes the build setup phase and is about to move onto the next step. (ie it successfully pulls down the docker image, checks out the source code, configures the environment, etc)
After lots of investigating I discovered the problem seems to be connected to the docker "USER" instruction.
Our repo uses a custom docker image based on node:
FROM node:18.16.0
# etc....
USER node
If I comment out the "USER" line the pipeline runs and passes. If I leave it in the pipelines get stuck at "Build setup" and eventually time out.
Posting this in case another team has run into the same problem. Anybody have some insight into this?