-
Simon McVittie authored
This requires resources external to pressure-vessel, and makes some assumptions about the container - but that's OK, because the first significant user of pressure-vessel is Steam Runtime 1 'scout', which is not exactly a moving target. We also do some of these checks in various OSs' virtual machines when we build Steam Runtime releases, but having this in-tree with the pressure-vessel source should shorten the testing cycle. See the doc-comment in tests/containers.py for usage. At the moment all tests require a working version of bubblewrap, but current/future work in the direction of pre-preparing a modified runtime on disk should mean that we can do a subset of these tests even if we cannot run bubblewrap. In particular, if we can do that inside a Docker container, that will make it a lot easier for CI to validate our assumptions on non-Debian-derived host operating systems. Attentive reviewers will notice that there's infrastructure here to be able to skip generating locales, but it isn't yet used. It will be used when we have more variations on the theme of "enter a scout container and run inside-scout.py", to avoid the time cost of generating locales every time - but at the moment we only have two runs, so the time taken to generate locales is not problematic. This test is a bit slow, and it's going to get slower as we add more thorough testing, so increase its timeout away from the Meson default. Signed-off-by:
Simon McVittie <smcv@collabora.com>
Simon McVittie authoredThis requires resources external to pressure-vessel, and makes some assumptions about the container - but that's OK, because the first significant user of pressure-vessel is Steam Runtime 1 'scout', which is not exactly a moving target. We also do some of these checks in various OSs' virtual machines when we build Steam Runtime releases, but having this in-tree with the pressure-vessel source should shorten the testing cycle. See the doc-comment in tests/containers.py for usage. At the moment all tests require a working version of bubblewrap, but current/future work in the direction of pre-preparing a modified runtime on disk should mean that we can do a subset of these tests even if we cannot run bubblewrap. In particular, if we can do that inside a Docker container, that will make it a lot easier for CI to validate our assumptions on non-Debian-derived host operating systems. Attentive reviewers will notice that there's infrastructure here to be able to skip generating locales, but it isn't yet used. It will be used when we have more variations on the theme of "enter a scout container and run inside-scout.py", to avoid the time cost of generating locales every time - but at the moment we only have two runs, so the time taken to generate locales is not problematic. This test is a bit slow, and it's going to get slower as we add more thorough testing, so increase its timeout away from the Meson default. Signed-off-by:
Simon McVittie <smcv@collabora.com>