qubesos / openqa-tests-qubesos Goto Github PK
View Code? Open in Web Editor NEWOpenQA tests for QubesOS
License: GNU General Public License v2.0
OpenQA tests for QubesOS
License: GNU General Public License v2.0
OpenQA Tests for Qubes OS To install, clone this repo to /var/lib/openqa/tests/qubesos Example command for posting new ISO for test: openqa-client --host https://openqa.qubes-os.org isos post iso=Qubes-DVD-x86_64-20180224.iso DISTRI=qubesos VERSION=4.0 FLAVOR=install-iso ARCH=x86_64 BUILD=20180224 UEFI_DIRECT=1 Example command for starting tests of updates in current-testing: openqa-client --host https://openqa.qubes-os.org isos post DISTRI=qubesos VERSION=4.0 FLAVOR=update ARCH=x86_64 BUILD=$(date +%Y%m%d%H) UEFI_DIRECT=1 Updates test on R4.1: openqa-cli api isos -X post VERSION=4.1 BUILD=$(date +%Y%m%d%H) DISTRI=qubesos ARCH=x86_64 FLAVOR=update UPDATE=1 UPDATE_TEMPLATES=fedora-34-xfce GUIVM=1 Example command for starting tests for a template in templates-*-testing: openqa-client --host https://openqa.qubes-os.org isos post DISTRI=qubesos VERSION=4.0 FLAVOR=templates ARCH=x86_64 BUILD=2020022706-4.0-fedora-31 UPDATE_TEMPLATES='fedora-31 fedora-31-minimal' TEST_TEMPLATES='fedora-31 fedora-31-minimal' Job templates: This is now edited via web UI. The templates.json file is git is a backup. Dump the templates: openqa-dump-templates --json | jq -S > templates.json Load the templates: openqa-load-templates templates.json Variables: - `DISTRI` - always `qubesos` - `VERSION` - system version, currently not interpreted (but displayed in UI) - `FLAVOR` - `install-iso` for installation tests, `update` for updates system tests - `ARCH` - always `x86_64` - `BUILD` - build number, not interpreted (but displayed in UI) - `UEFI_DIRECT` - UEFI boots directly to Xen, no separate bootloader Variables used in tests: - `INSTALL_TEMPLATES` - space separated list of template groups (`debian`, `whonix`), or `all`; can include also specific template versions (`debian-11`) - they they will be installed/reinstalled from online repo after the initial install process - `USBVM` - USB VM configuration: `none` (assert that already disabled by default), `disable` (disable explicitly), `sys-usb` (default), `sys-net` (combined with Net VM) - `KEYBOARD_LAYOUT` - install with non-default keyboard layout; currently only `us-colemak` value is supported - `LOCALE` - install with non-default locale; currently only `en_DK.utf8` value is supported - `SYSTEM_TESTS` - run system tests from those (space separated) modules, each module can be suffixed with ":TIMEOUT" (in seconds); tests are run using nose2 - `VERBOSE_LIBVIRT` - increase libvirt log level, including libxl logging; slows down the system and may lead to huge logs - `REPO_1` - repository name to install updates (dom0 and vm) from - in addition to standard repos - `KEY_1` - repository key short fingerprint to use for REPO_1 - `SALT_SYSTEM_TESTS` - run salt formula preparing for system tests (mostly install extra packages) - `UPDATE_TEMPLATES` - update listed template packages as a whole (space separated list of templates to update) - `TEST_TEMPLATES` - limit tests to listed templates only (space separated list of templates to test) - `UPDATE` - install updates in dom0 and all templates - `QUBES_TEST_EXTRA_INCLUDE`, `QUBES_TEST_EXTRA_EXCLUDE` - passed directly to the test environment - `TEST_GUI_INTERACTIVE` - simple GUI interactive tests (start application from menu etc) - `TEST_WINDOWS_GUI_INTERACTIVE` - simple GUI interactive tests for Windows with QWT installed - `WINDOWS_VERSION` - create Windows VM of specific version and install QWT inside (argument as for qvm-create-windows-qube) - `QWT_DOWNLOAD` - download specific QWT build (can be URL to iso or rpm file); otherwise qubes-windows-tools dom0 packages is installed from standard repositories - `GUIVM` - create GUI VM - `KEEP_SCREENLOCKER` - do not disable xscreensaver (or whatever screenlocker is there) - `PARTITIONING` - partition layout ('standard', 'xfs', 'btrfs', 'default', 'unencrypted'); on install - set via installer options, later - created manually on sdb, and all templates are migrated there - `HEADS` - when set to `1`, the test will handle Heads boot menu. Currently relevant only with `BACKEND=generalhw`. It's supposed to be sed in "machine" definition. - `RELEASE_UPGRADE_REPO` - relevant for release-upgrade flavor, download scripts from specific URL, like: `https://raw.githubusercontent.com/marmarek/qubes-dist-upgrade/<branch-name>` - `WHONIXCHECK` - run whonixcheck / systemcheck on all Whonix-related VMs (including templates) - `WHONIX_INTERACTIVE` - run interactive tests on Whonix-related VMs (mostly anon-whonix) - `KERNEL_VERSION` - which kernel flavor should be used - currently supported value is 'latest', which will switch to kernel-latest and kernel-latest-qubes-vm during update - `PIPEWIRE` - when set to `1`, VMs are set to use pipewire instead of pulseaudio, including switching native pulseaudio to pipewire-pulse. - `SUSPEND_MODE` - what suspend mode should be used; default is `S3`, set to `S0ix` to use S0ix suspend - `INSTALL_OEM` - do fully automated OEM installation - `INSTALL_OEM_STARTUP` - start OEM installation, but still expect interactive prompts during installation
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.