Unattended use case broken due to docker TTY option
Executing atomic run <atomicapp> in a Jenkins job fails with cannot enable tty mode on non tty input. The unattended use case is important so we need to figure out a way to account for this requirement.
Output
...
11:34:12 docker run -it --rm --privileged -v /home/jenkins/workspace/ ...
11:34:12 cannot enable tty mode on non tty input
What type of Jenkins build are you using? Docker Jenkins slaves / libvirt ? It could be because it's trying to run docker-in-docker
seems to work fine for the gate job we have been using.. probably need to understand the environment more so we can fix it.
What type of Jenkins build are you using? Docker Jenkins slaves / libvirt ? It could be because it's trying to run docker-in-docker
I'm not sure. I can find out. I know it's not docker-in-docker.
The point is if you're running a script and the host has requiretty in /etc/sudoers then you're going to be blocked. Maybe I misunderstand something.
are these tests running via ssh? if so can you try to add the -toption to the ssh command to Force pseudo-tty allocation.
@aweiteka
Looks like I encountered this exact same issue when creating my Jenkins cluster :( I'm going to have to revert to using a different SSH slave plugin.
Nothing we can do as using exec / interactive commands with Docker is essential in atomic and atomicapp.
@cdrage this is presumably an issue that would occur for a container-ized test suite so I'm very interested in what you find for a solution. Let me know!
@aweiteka
Tried everything within Jenkins. They have absolutely no support for running interactive shells within their plugins.
Although running atomic / atomicapp with non-tty support would be a good use-case.
I've filed issue https://github.com/projectatomic/atomic/issues/279