[03:42] <pitti> Good morning
[09:36] <jibel> pitti, IIRC if autopkgtest runs in jenkins I must force tty allocation in ssh, we had problems in the past with test never returning, right?
[09:37] <pitti> jibel: right; in run-adt-test we sprinkled lots of -tt for that reason :)
[09:37] <pitti> and that seems to have worked well enough
[09:39] <jibel> hm, it I pass -tt there is a message 'Connection closed' that breaks the protocol
[09:39] <jibel> and if I pass -q this command '/tmp/adt-virt-ssh.ex6dc0pf/runcmd sh -ec cat >/tmp/adt-run.INajPs/adt-satdep.deb' never returns
[09:43] <pitti> jibel: uh, runcmd? is that with the qemu testbed?
[09:43] <pitti> jibel: ah no, I suppose runcmd is your printf %q wrapper
[09:43] <jibel> pitti, no with ssh
[09:43] <jibel> pitti, yes
[09:44] <jibel> http://paste.ubuntu.com/7638095/ this is what is contains
[09:44] <jibel> the command line is built dynamically from adt-virt-ssh
[09:45] <pitti> ah, I see: "ssh piware.de whoami" doesn't have any extra stuff, but "ssh -tt piware.de whoami" shows this "connection to piware.de closed" spam
[09:45] <pitti> but -qtt seems to work, so I guess that's what it should use
[09:47] <jibel> pitti, that's what I use but then runcmd never returns
[09:48] <pitti> $ echo hello | ssh piware.de -qtt -- 'sh -ec cat > /tmp/world.txt'
[09:48] <pitti> jibel: indeed, that hangs
[09:48] <pitti> /tmp/world.txt is fine on the server, but it doesn't seem to recognize the EOF
[09:49] <pitti> jibel: it works with -t, but I think that's then a no-op with piping to stdin?
[09:50] <pitti> jibel: did you get any hangs/failures without -tt so far?
[09:50] <pitti> $ echo hello | ssh piware.de -qtt -- 'sh -ec cat > /tmp/world.txt; echo done' 2>&1|cat
[09:50] <pitti> hello
[09:50] <pitti> that is wrong, I shouldn't get "hello" on local stdout
[09:50] <jibel> pitti, but only 1 -t makes adt-run cry: adt-run [11:50:36]: ERROR: erroneous package: got 75 lines of results from extract where 4 expected
[09:51] <pitti> (I redirected everything to completely detach it from my local tty)
[09:51] <jibel> pitti, without -tt it works fine
[09:51] <pitti> jibel: that sounds like a quoting issue somewhere
[09:51] <pitti> or again corruption of stdout
[09:52] <pitti> jibel: didn't the hangs without -tt also happen locally? I'm fairly sure I saw that here, too
[10:01] <jibel> pitti, I didn't see any hang without -tt
[10:01] <pitti> jibel: you mean with run-adt-test or adt-virt-ssh?
[10:01] <jibel> pitti, yes
[10:01] <pitti> jibel: I hope we can just generally live without it
[10:02] <pitti> jibel: yes to which of the two? :-)
[10:02] <pitti> jibel: I have a gut feeling that for some cases/tests we'll need it, perhaps we need to differentiate between the "interactive/run test" and "noninteractive/pipe stdin" cases
[10:03] <jibel> pitti, both. with adt-run-test I only had the problem in the lab when it's been deployed in jenkins
[10:05] <pitti> jibel: you can probably test that by running the whole thing in "nohup"? (i. e. not having a local terminal)
[13:03] <pitti> jibel: btw, I pushed a lot of changed code to autopkgtest since yesterday; python 3 now, factorized/cleaned up/testcased the debian/test/control parsing support, and others
[13:03] <pitti> so it's now relatively easy to add a new parser for click manifests to produce Tests objects
[13:06] <jibel> pitti, great, thanks. I'll pull the changes. I'm still on the ssh runner, writing a setup script to configure a fresh lxc container
[13:08] <pitti> jibel: yeah, it shouldn't be affected, other than using adtlog.{debug,info,warning,error}() now
[13:09] <pitti> jibel: ah, for testing this could just clone/ephemeral an existing adt-$release container?