As pointed out here, docker exec will return the wrong status code when --tty is provided, thus failing jobs in Jenkins even though they should have been successful.
I've written a small PR for that, but I'm not sure if we can just disable the tty.
Removing the tty from plugin's call avoids that, but I am not sure if we can just drop the TTY from it, even though it is non-interactive.
Rafael Kassner
added a comment - dantran
It is a fault of docker exec command:
kassner@w:~$ DOCKER_ID=$(docker run -d -it php:7.0 /bin/cat)
kassner@w:~$ docker exec -it ${DOCKER_ID} php -r "exit(2);"
kassner@w:~$ echo $?
129
kassner@w:~$ docker exec -i ${DOCKER_ID} php -r "exit(2);"
kassner@w:~$ echo $?
2
kassner@w:~$
Removing the tty from plugin's call avoids that, but I am not sure if we can just drop the TTY from it, even though it is non-interactive.
I dont see this issue in my build, how exactly it fails on you env?