autopkgtest package "lxd" test has started failing
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
| autopkgtest (Ubuntu) |
Low
|
Unassigned | ||
| Xenial |
Low
|
Unassigned | ||
| Bionic |
Low
|
Unassigned | ||
| Disco |
Low
|
Unassigned | ||
| Eoan |
Low
|
Unassigned |
Bug Description
[impact]
"lxd launch" behavior recently changed to parse any queued input on stdin and process it as a yaml file.
Since the "autopkgtest-
the failure is seen in (at least) the "lxd" autopkgtest from the autopkgtest package itself, e.g.:
https:/
[test case]
root@autopkgtest:~# cat <<EOF | su - ubuntu
> autopkgtest-
> echo ok done
> EOF
Error: yaml: unmarshal errors:
line 1: cannot unmarshal !!str `echo ok...` into api.ContainerPut
run the autopkgtests for the package 'autopkgtest', or check autopkgtest.
http://
http://
http://
http://
the autopkgtest test case is failing only for disco and eoan, and only for amd64/i386 as the 'lxd' test is skipped for non-intel archs.
the autopkgtest test case does not fail on bionic or xenial, because the tests there run with the lxd deb, which is still at the older version.
http://
However, the lxd snap can be installed in xenial or bionic, and the failure is reproducable when the lxd snap is installed, i.e.:
$ sudo apt remove lxd
$ sudo snap install lxd
...perform test case
[regression potential]
this only redirects stdin from /dev/null, for the call to 'lxc launch' inside autopkgtest-
[other info]
this is reproducable with the current packages from disco-updates using a local qemu vm for testing.
note that the autopkgtest fails only for disco and eoan, becuase on xenial and bionic the lxd deb is used, which still has the older behavior, however the lxd snap is available to install on both xenial and bionic, so this problem still exists for both those releases, as well as disco and eoan.
also, this is not just a testcase failure - this is actual new behavior that can break existing users of the "autopkgtest-
I put the 'importance' of this as low because this bug will only be reproduced when calling autopkgtest-
Dan Streetman (ddstreet) wrote : | #2 |
ah, ok, thanks @stgraber!
This will indeed need some surgery to autopkgtest, and might start causing more widespread failures since the autopkgtest LxdRunner itself appears to be at fault.
Changed in autopkgtest (Ubuntu): | |
assignee: | nobody → Dan Streetman (ddstreet) |
importance: | Undecided → High |
status: | New → In Progress |
Dan Streetman (ddstreet) wrote : | #3 |
> might start causing more widespread failures since the autopkgtest LxdRunner itself appears to be at fault.
bah, those are classes in autopkgtest's self-tests, so should only affect autopkgtest's tests. still needs fixing, but not urgent.
Changed in autopkgtest (Ubuntu Eoan): | |
importance: | High → Low |
Changed in autopkgtest (Ubuntu Disco): | |
importance: | Undecided → Low |
Changed in autopkgtest (Ubuntu Bionic): | |
importance: | Undecided → Low |
Changed in autopkgtest (Ubuntu Xenial): | |
importance: | Undecided → Low |
Changed in autopkgtest (Ubuntu Disco): | |
status: | New → In Progress |
Changed in autopkgtest (Ubuntu Bionic): | |
status: | New → In Progress |
Changed in autopkgtest (Ubuntu Xenial): | |
status: | New → In Progress |
Changed in autopkgtest (Ubuntu Disco): | |
assignee: | nobody → Dan Streetman (ddstreet) |
Changed in autopkgtest (Ubuntu Bionic): | |
assignee: | nobody → Dan Streetman (ddstreet) |
Changed in autopkgtest (Ubuntu Xenial): | |
assignee: | nobody → Dan Streetman (ddstreet) |
Dan Streetman (ddstreet) wrote : | #4 |
@stgraber, just to clarify, calls to lxd like this now fail:
root@autopkgtest:~# cat <<EOF | su - ubuntu
> lxc launch ubuntu:bionic
> echo ok done
> EOF
Error: yaml: unmarshal errors:
line 1: cannot unmarshal !!str `echo ok...` into api.ContainerPut
is it really expected that lxd should fail when used with input queued on stdin like this?
description: | updated |
description: | updated |
Dan Streetman (ddstreet) wrote : | #5 |
fixed upstream in Debian:
https:/
description: | updated |
description: | updated |
Hello Dan, or anyone else affected,
Accepted autopkgtest into disco-proposed. The package will build now and be available at https:/
Please help us by testing this new package. See https:/
If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-
Further information regarding the verification process can be found at https:/
N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.
tags: | added: block-proposed-disco |
Changed in autopkgtest (Ubuntu Disco): | |
status: | In Progress → Fix Committed |
tags: | added: verification-needed verification-needed-disco |
Changed in autopkgtest (Ubuntu Eoan): | |
status: | In Progress → Fix Committed |
Launchpad Janitor (janitor) wrote : | #7 |
This bug was fixed in the package autopkgtest - 5.10ubuntu2
---------------
autopkgtest (5.10ubuntu2) eoan; urgency=medium
* tools/autopkgte
(LP: #1845037)
-- Dan Streetman <email address hidden> Thu, 26 Sep 2019 08:48:21 -0400
Changed in autopkgtest (Ubuntu Eoan): | |
status: | Fix Committed → Fix Released |
Łukasz Zemczak (sil2100) wrote : | #8 |
Hello Dan, or anyone else affected,
Accepted autopkgtest into bionic-proposed. The package will build now and be available at https:/
Please help us by testing this new package. See https:/
If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-
Further information regarding the verification process can be found at https:/
N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.
Changed in autopkgtest (Ubuntu Bionic): | |
status: | In Progress → Fix Committed |
tags: | added: verification-needed-bionic |
Changed in autopkgtest (Ubuntu Xenial): | |
status: | In Progress → Fix Committed |
tags: | added: verification-needed-xenial |
Łukasz Zemczak (sil2100) wrote : | #9 |
Hello Dan, or anyone else affected,
Accepted autopkgtest into xenial-proposed. The package will build now and be available at https:/
Please help us by testing this new package. See https:/
If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-
Further information regarding the verification process can be found at https:/
N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (autopkgtest/5.3.1ubuntu1) | #10 |
All autopkgtests for the newly accepted autopkgtest (5.3.1ubuntu1) for bionic have finished running.
The following regressions have been reported in tests triggered by the package:
libnftnl/unknown (ppc64el, amd64, arm64, armhf, i386)
Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUp
[1] https:/
Thank you!
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (autopkgtest/3.20.4ubuntu1.1) | #11 |
All autopkgtests for the newly accepted autopkgtest (3.20.4ubuntu1.1) for xenial have finished running.
The following regressions have been reported in tests triggered by the package:
autopkgtest/
debci/1.0.2 (arm64)
Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUp
[1] https:/
Thank you!
Dan Streetman (ddstreet) wrote : | #12 |
autopkgtest failures:
autopkgtest (xenial/armhf): bug 1847242, ignore
also i'm re-running several other failed tests
Dan Streetman (ddstreet) wrote : | #13 |
The 'lxd' autopkgtest now passes on all archs/releases.
tags: |
added: verification-done verification-done-bionic verification-done-disco verification-done-xenial removed: verification-needed verification-needed-bionic verification-needed-disco verification-needed-xenial |
Dan Streetman (ddstreet) wrote : | #14 |
only autopkgtest failures left can be ignored:
autopkgtest (xenial/armhf): bug 1847242, ignore
debci (xenial/arm64): flaky, test usually fails, ignore.
tags: | added: block-proposed-bionic block-proposed-xenial |
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : | #15 |
All autopkgtests for the newly accepted autopkgtest (3.20.4ubuntu1.1) for xenial have finished running.
The following regressions have been reported in tests triggered by the package:
autopkgtest/
Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUp
[1] https:/
Thank you!
Changed in autopkgtest (Ubuntu Disco): | |
status: | Fix Committed → Won't Fix |
Changed in autopkgtest (Ubuntu Eoan): | |
assignee: | Dan Streetman (ddstreet) → nobody |
Changed in autopkgtest (Ubuntu Disco): | |
assignee: | Dan Streetman (ddstreet) → nobody |
Changed in autopkgtest (Ubuntu Bionic): | |
assignee: | Dan Streetman (ddstreet) → nobody |
Changed in autopkgtest (Ubuntu Xenial): | |
assignee: | Dan Streetman (ddstreet) → nobody |
Changed in autopkgtest (Ubuntu): | |
assignee: | Dan Streetman (ddstreet) → nobody |
This is because the test is somehow passing data to "lxc init" or "lxc launch" through stdin.
Up until LXD 3.17, we'd only consume stdin in some rare cases during init/launch. But now we're using it as a way to pre-seed the container's YAML configuration, as the data fed through stdin isn't a YAML document, this fails.
autopkgtest should be changed to either call those commands in a way that doesn't provide them with invalid stdin input or by simply using "< /dev/null" to ensure the particular command does not inherit whatever stdin currently contains.