Skip to content
Snippets Groups Projects
  1. Aug 18, 2020
  2. Aug 05, 2020
  3. Aug 04, 2020
  4. Jul 31, 2020
  5. Jul 29, 2020
  6. Jul 23, 2020
  7. Jul 21, 2020
  8. Jul 09, 2020
    • Simon McVittie's avatar
      tests: Ignore inability to load libOSMesa.so.8 · 68303f6b
      Simon McVittie authored
      
      This is included in prerelease versions of SteamRT 2 'soldier',
      but because it uses the post-gcc-5 C++ ABI of libLLVM-7.so.1, it's
      incompatible with versions of libLLVM-7.so.1 that were compiled to be
      compatible with the gcc 4 C++ ABI, and in particular the one in
      SteamOS 2 'brewmaster'.
      
      This and the previous commit are sufficient to make tests/containers.py
      pass on SteamOS 2 'brewmaster', if we also configure libxcb.so.1 to
      be chosen by counting symbols (T22538) and libgcc_s.so.1 to be chosen
      by counting verdefs (T16561).
      
      Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
      68303f6b
    • Simon McVittie's avatar
      tests: Run s-r-s-i on host with LD_BIND_NOW=1 · 32cb6de9
      Simon McVittie authored
      
      If we allow lazy binding, we can succeed in loading a GIO module from
      the host (which depends on a newer GObject than the one bundled with
      pressure-vessel), then find that a symbol reference fails at the time
      that we try to actually use it. Make it fail early, instead.
      
      In particular, this is helpful on SteamOS 2 'brewmaster'.
      
      Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
      32cb6de9
    • Simon McVittie's avatar
      tests: Add support for basic testing on a soldier container · 02e57b93
      Simon McVittie authored
      
      For the moment, this is basically scout with fewer guarantees: we
      can't assume whether the host glibc is newer (like Arch Linux or
      Ubuntu 20.04) or older (like SteamOS 2 'brewmaster').
      
      Only tested successfully on Debian testing/unstable, for now.
      
      Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
      02e57b93
  9. Jun 23, 2020
  10. Jun 17, 2020
  11. Jun 16, 2020
  12. Jun 12, 2020
    • Simon McVittie's avatar
      tests: Add an integration test for running in a container · 1a9769dd
      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: default avatarSimon McVittie <smcv@collabora.com>
      1a9769dd
    • Simon McVittie's avatar
      testutils: Move most test setup to be once per class · d5eed758
      Simon McVittie authored
      
      The result of this setup will be the same every time, so there isn't
      much point in repeating it. When we add tests with time-consuming setup
      like running steam-runtime-system-info, we'll only want to do that once.
      
      Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
      d5eed758
    • Simon McVittie's avatar
      testutils: Make sure the artifacts path is absolute · 0db2c839
      Simon McVittie authored
      
      If we're passing it across a container boundary, relative paths are
      going to get error-prone.
      
      Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
      0db2c839
Loading