vmtests: move skip-by date of xfs root and xfs boot out 1 year.
This pushes out the skip-by date of bug 1652822 for a year.
xfs root and xfs boot seems an unlikely use case, and thus a bug
not likely to be fixed. So we do not want to see warnings on it.
vmtests: network_mtu move fixby date out 4 months from last value
The upstream changes needed to handle mixed ipv4/ipv6 mtu have not
been completed in networkd so this test is currently failing.
Move our skipby date out 4 months.
Fix WorkingDir class to support already existing target directory.
The WorkingDir class can take a config that defines a target directory.
If that directory already existed, then WorkingDir would raise a
OSError (FileExistsError) when it attempted to os.mkdir.
The fix here just allows a target to exist already as long as it is empty.
Curtin would fail to extract an image if the image was a
local filesystem path or a file:// url.
Also here is a fix for ensure_dir which would be tripped if you
call write_file("foo.txt"). In that path, ensure_dir would be called
with the result of os.path.dirname("foo.txt") which is "" and
os.makedirs("") would fail.
subp: update return value of subp with combine_capture=True.
combine_capture previously would return None in the stderr response.
This was inconsistent with capture=True, combine_capture=False.
It seems more consistent to always return the bytes or string as
documented. Test case and docstring are updated accordingly.
tox: add a xenial environments, default envlist changes.
A previous commit used mock.assert_called, which is not
present in xenial versions of mock so build would fail on xenial.
Due to bugs that are present in the trusty versions of mock it would
pass there.
So we add a tox environment 'xenial-py3' and add that to the
default set of environments that are run with a 'tox' invocation.
Other changes to the envlist here:
a.) make it multiple lines for easier future diffing.
b.) run py3-flake8 first, it runs quickly and gives good feedback.
c.) drop trusty-check which was running trusty pyflakes. We do not
run pyflakes in package build any more.
d.) replace trusty-py3 with xenial-py3. Just to save time in default 'tox'
run we only run one "old" python3 unit tests.