Mirror repo of "Kickstart-driven tests for the Anaconda installer"
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Radek Vykydal d816fb308e
Merge pull request #539 from rvykydal/reboot-i-s-test-on-rhel-8
1 year ago
.github Revert "Disable 2 tests temporarily on rhel8 (#1975786)" 1 year ago
ansible Update defaults of linchpin tooling configuration 2 years ago
containers Kill reboot tests after the timeout 1 year ago
docs Move network tests from virsh custom networks to user network 2 years ago
fragments Add fragments/platform/rhel9 2 years ago
lib Fix proxy-auth test 2 years ago
linchpin Move kstests-in-cloud.sh into scripts/ 2 years ago
scripts Ignore kernel warning about team devices being deprecated 1 year ago
.gitignore Add data folder to .gitignore 2 years ago
.travis.yml Support HTTP cache for running tests 2 years ago
README.rst Revert "Define network names only in defaults file" 2 years ago
WORKLIST And add --fsoptions for btrfs, too. 7 years ago
addrepo.ks.in Add addrepo test 4 years ago
addrepo.sh Add addrepo test 4 years ago
anaconda-conf.ks.in Update anaconda-conf test for different message on rhel 2 years ago
anaconda-conf.sh Add a kickstart test for the configuration snippet 2 years ago
anaconda-modules.ks.in Add a kickstart test that checks the Anaconda DBus modules 2 years ago
anaconda-modules.sh Add a kickstart test that checks the Anaconda DBus modules 2 years ago
authconfig.ks.in Use fragments in authselect tests 3 years ago
authconfig.sh Add tests for authselect 3 years ago
authselect-not-set.ks.in Use fragments in authselect tests 3 years ago
authselect-not-set.sh Add tests for authselect 3 years ago
authselect.ks.in Use fragments in authselect tests 3 years ago
authselect.sh Add tests for authselect 3 years ago
autopart-encrypted-1.ks.in Remove deprecated install command 2 years ago
autopart-encrypted-1.sh Create a group that covers the basic installation cases 3 years ago
autopart-encrypted-2.ks.in Remove deprecated install command 2 years ago
autopart-encrypted-2.sh Add tests for autopart --encrypted 5 years ago
autopart-encrypted-3.ks.in Remove deprecated install command 2 years ago
autopart-encrypted-3.sh Add tests for autopart --encrypted 5 years ago
autopart-fstype.ks.in Remove deprecated install command 2 years ago
autopart-fstype.sh Merge pull request #100 from poncovka/master-skip 5 years ago
autopart-luks-1.ks.in Remove deprecated install command 2 years ago
autopart-luks-1.sh Add tests for LUKS2 options in autopart 4 years ago
autopart-luks-2.ks.in Remove deprecated install command 2 years ago
autopart-luks-2.sh Add tests for LUKS2 options in autopart 4 years ago
autopart-luks-3.ks.in Remove deprecated install command 2 years ago
autopart-luks-3.sh Add tests for LUKS2 options in autopart 4 years ago
autopart-luks-4.ks.in Remove deprecated install command 2 years ago
autopart-luks-4.sh Add tests for LUKS2 options in autopart 4 years ago
autopart-luks-5.ks.in Remove deprecated install command 2 years ago
autopart-luks-5.sh Add tests for LUKS2 options in autopart 4 years ago
autopart-nohome.ks.in Remove deprecated install command 2 years ago
autopart-nohome.sh Add autopart tests to the storage category 5 years ago
basic-ftp.ks.in Remove deprecated install command 2 years ago
basic-ftp.sh Mark basic-ftp as knownfailure 2 years ago
basic-ostree.ks.in Remove deprecated install command 2 years ago
basic-ostree.sh Skip failing tests because of bad Jenkins settings 6 years ago
bindtomac-bond-vlan-httpks.ks.in Remove deprecated install command 2 years ago
bindtomac-bond-vlan-httpks.sh Share .sh test definitions in bindtomac tests where possible. 5 years ago
bindtomac-bond2-httpks.ks.in Remove deprecated install command 2 years ago
bindtomac-bond2-httpks.sh Share .sh test definitions in bindtomac tests where possible. 5 years ago
bindtomac-bond2-pre.ks.in Remove deprecated install command 2 years ago
bindtomac-bond2-pre.sh Share .sh test definitions in bindtomac tests where possible. 5 years ago
bindtomac-bridge-2devs-httpks.ks.in Check for rhel 8 specifically in some of the tests 2 years ago
bindtomac-bridge-2devs-httpks.sh Update default ifcfg file check for bridge slave for rhel 8 2 years ago
bindtomac-bridge-2devs-pre.ks.in Check for rhel 8 specifically in some of the tests 2 years ago
bindtomac-bridge-2devs-pre.sh Update default ifcfg file check for bridge slave for rhel 8 2 years ago
bindtomac-bridge-httpks.ks.in Remove deprecated install command 2 years ago
bindtomac-bridge-httpks.sh Update checking of gui connections for bridge for rhel 2 years ago
bindtomac-bridge-no-bootopts-net.ks.in Remove deprecated install command 2 years ago
bindtomac-bridge-no-bootopts-net.sh Mark bindtomac-bridge-no-bootopts-net as knownfailure 2 years ago
bindtomac-bridged-bond-httpks.ks.in Remove deprecated install command 2 years ago
bindtomac-bridged-bond-httpks.sh Mark bridged-bond-httpks as failing on rhel 8 2 years ago
bindtomac-ifname-httpks.ks.in Remove deprecated install command 2 years ago
bindtomac-ifname-httpks.sh Move network tests from virsh default network to user network 2 years ago
bindtomac-network-device-default-httpks.ks.in Remove deprecated install command 2 years ago
bindtomac-network-device-default-httpks.sh Do not use KICKSTART_NAME mechanism in .sh files 3 years ago
bindtomac-network-device-mac-httpks.ks.in Remove deprecated install command 2 years ago
bindtomac-network-device-mac-httpks.sh Move network tests from virsh default network to user network 2 years ago
bindtomac-network-device-mac-pre.ks.in Remove deprecated install command 2 years ago
bindtomac-network-device-mac-pre.sh Move network tests from virsh default network to user network 2 years ago
bindtomac-network-device-mac.ks.in Remove deprecated install command 2 years ago
bindtomac-network-device-mac.sh Move network tests from virsh default network to user network 2 years ago
bindtomac-network-static-2-httpks.ks.in Remove deprecated install command 2 years ago
bindtomac-network-static-2-httpks.sh Share .sh test definitions in bindtomac tests where possible. 5 years ago
bindtomac-network-static-to-dhcp-pre-single.ks.in Remove deprecated install command 2 years ago
bindtomac-network-static-to-dhcp-pre-single.sh Reuse existing .sh file in bindtomac version of a network test 4 years ago
bindtomac-onboot-activate-httpks.ks.in Remove deprecated install command 2 years ago
bindtomac-onboot-activate-httpks.sh Share .sh test definitions in bindtomac tests where possible. 5 years ago
bindtomac-onboot-bootopts-pre.ks.in Remove deprecated install command 2 years ago
bindtomac-onboot-bootopts-pre.sh Share .sh test definitions in bindtomac tests where possible. 5 years ago
bindtomac-team-httpks.ks.in Remove deprecated install command 2 years ago
bindtomac-team-httpks.sh Share .sh test definitions in bindtomac tests where possible. 5 years ago
bindtomac-team-pre.ks.in Remove deprecated install command 2 years ago
bindtomac-team-pre.sh Share .sh test definitions in bindtomac tests where possible. 5 years ago
bond-vlan-httpks.ks.in Remove deprecated install command 2 years ago
bond-vlan-httpks.sh Update static network IP configuration in network tests 2 years ago
bond-vlan-pre.ks.in Remove deprecated install command 2 years ago
bond-vlan-pre.sh Mark pre version of vlan over bond test fedora only 2 years ago
bond.ks.in Remove deprecated install command 2 years ago
bond.sh Revert "Disable bond test temporarily (#1918744)" 2 years ago
bond2-httpks.ks.in Remove deprecated install command 2 years ago
bond2-httpks.sh Move network tests from virsh default network to user network 2 years ago
bond2-pre.ks.in Remove deprecated install command 2 years ago
bond2-pre.sh Move network tests from virsh default network to user network 2 years ago
bootloader-1.ks.in Remove deprecated install command 2 years ago
bootloader-1.sh Create a group that covers the basic installation cases 3 years ago
bootloader-2.ks.in Remove deprecated install command 2 years ago
bootloader-2.sh Add tests for the bootloader 5 years ago
bootloader-3.ks.in Remove deprecated install command 2 years ago
bootloader-3.sh Add tests for the bootloader 5 years ago
bootloader-4.ks.in Remove deprecated install command 2 years ago
bootloader-4.sh Add tests for the bootloader 5 years ago
bootloader-5.ks.in Remove deprecated install command 2 years ago
bootloader-5.sh Add tests for the bootloader 5 years ago
bridge-2devs-httpks.ks.in Check for rhel 8 specifically in some of the tests 2 years ago
bridge-2devs-httpks.sh Do not override TESTTYPE tags when including .sh into a test 2 years ago
bridge-2devs-pre.ks.in Check for rhel 8 specifically in some of the tests 2 years ago
bridge-2devs-pre.sh Do not override TESTTYPE tags when including .sh into a test 2 years ago
bridge-2devs.ks.in Check for rhel 8 specifically in some of the tests 2 years ago
bridge-2devs.sh Do not override TESTTYPE tags when including .sh into a test 2 years ago
bridge-httpks.ks.in Remove deprecated install command 2 years ago
bridge-httpks.sh Do not override TESTTYPE tags when including .sh into a test 2 years ago
bridge-no-bootopts-net.ks.in Check for rhel 8 specifically in some of the tests 2 years ago
bridge-no-bootopts-net.sh Disable bridge-no-bootopts-net test temporarily on rawhide (#1973078) 1 year ago
bridged-bond-httpks.ks.in Remove deprecated install command 2 years ago
bridged-bond-httpks.sh Do not override TESTTYPE tags when including .sh into a test 2 years ago
bridged-bond-pre.ks.in Remove deprecated install command 2 years ago
bridged-bond-pre.sh Pre version of bridged bond is not supported on RHEL 2 years ago
btrfs-1.ks.in Remove deprecated install command 2 years ago
btrfs-1.sh Change which files are copied from VMs (2) 3 years ago
btrfs-2.ks.in Remove deprecated install command 2 years ago
btrfs-2.sh Disable btrfs-2 test temporarily on rawhide (#1964819) 2 years ago
clearpart-1.ks.in Remove deprecated install command 2 years ago
clearpart-1.sh Add clearpart tests 5 years ago
clearpart-2.ks.in Remove deprecated install command 2 years ago
clearpart-2.sh Add clearpart tests 5 years ago
clearpart-3.ks.in Remove deprecated install command 2 years ago
clearpart-3.sh Create a group that covers the basic installation cases 3 years ago
clearpart-4.ks.in Remove deprecated install command 2 years ago
clearpart-4.sh Add clearpart tests 5 years ago
container.ks.in Remove rpm since it is not required again 2 years ago
container.sh Mark container test as fedora-only 2 years ago
default-desktop.ks.in Add tests for default desktop and systemd target configuration 3 years ago
default-desktop.sh Create a group that covers the basic installation cases 3 years ago
default-fstype.ks.in Remove deprecated install command 2 years ago
default-fstype.sh Revert "Fix the kickstart test of the default filesystem type" 2 years ago
default-systemd-target-gui-graphical-provides.ks.in Add tests for default desktop and systemd target configuration 3 years ago
default-systemd-target-gui-graphical-provides.sh Add tests for default desktop and systemd target configuration 3 years ago
default-systemd-target-gui.ks.in Add tests for default desktop and systemd target configuration 3 years ago
default-systemd-target-gui.sh Add tests for default desktop and systemd target configuration 3 years ago
default-systemd-target-skipx.ks.in Add tests for default desktop and systemd target configuration 3 years ago
default-systemd-target-skipx.sh Add tests for default desktop and systemd target configuration 3 years ago
default-systemd-target-startxonboot.ks.in Add tests for default desktop and systemd target configuration 3 years ago
default-systemd-target-startxonboot.sh Add tests for default desktop and systemd target configuration 3 years ago
default-systemd-target-tui-graphical-provides.ks.in Add tests for default desktop and systemd target configuration 3 years ago
default-systemd-target-tui-graphical-provides.sh Add tests for default desktop and systemd target configuration 3 years ago
default-systemd-target-tui.ks.in Add tests for default desktop and systemd target configuration 3 years ago
default-systemd-target-tui.sh Create a group that covers the basic installation cases 3 years ago
default-systemd-target-vnc-graphical-provides.ks.in Add tests for default desktop and systemd target configuration 3 years ago
default-systemd-target-vnc-graphical-provides.sh Add tests for default desktop and systemd target configuration 3 years ago
default-systemd-target-vnc.ks.in Add tests for default desktop and systemd target configuration 3 years ago
default-systemd-target-vnc.sh Add tests for default desktop and systemd target configuration 3 years ago
deprecated-rhel9-part1.ks.in Add tests for deprecated commands in RHEL-9 2 years ago
deprecated-rhel9-part1.sh Make "deprecated-*" tests executable 2 years ago
deprecated-rhel9-part2.ks.in Add tests for deprecated commands in RHEL-9 2 years ago
deprecated-rhel9-part2.sh Make "deprecated-*" tests executable 2 years ago
driverdisk-disk.ks.in Remove deprecated install command 2 years ago
driverdisk-disk.sh Disable driverdisk-disk test temporarily on rawhide (#1973156) 1 year ago
encrypt-device.ks.in Remove deprecated install command 2 years ago
encrypt-device.sh Change which files are copied from VMs (2) 3 years ago
encrypt-swap.ks.in Remove deprecated install command 2 years ago
encrypt-swap.sh Change which files are copied from VMs (2) 3 years ago
escrow-cert.ks.in Remove deprecated install command 2 years ago
escrow-cert.sh Change which files are copied from VMs (2) 3 years ago
fedora-live-image-build.ks.in Fixup the Fedora live image test 2 years ago
fedora-live-image-build.sh Revert "Mark fedora-live-image-build as knownfailure (#1926632)" 1 year ago
firewall-disable-with-options.ks.in Check required packages are installed for firewall and team devices 3 years ago
firewall-disable-with-options.sh Improve test coverage of the firewall command 3 years ago
firewall-disable.ks.in Check required packages are installed for firewall and team devices 3 years ago
firewall-disable.sh Improve test coverage of the firewall command 3 years ago
firewall-use-system-defaults-ignore-options.ks.in Check required packages are installed for firewall and team devices 3 years ago
firewall-use-system-defaults-ignore-options.sh Improve test coverage of the firewall command 3 years ago
firewall-use-system-defaults.ks.in Check required packages are installed for firewall and team devices 3 years ago
firewall-use-system-defaults.sh Improve test coverage of the firewall command 3 years ago
firewall.ks.in Check required packages are installed for firewall and team devices 3 years ago
firewall.sh Create a group that covers the basic installation cases 3 years ago
functions-proxy.sh Modify proxy-kickstart test to use squid instead of proxy.py 6 years ago
functions.sh Make it possible to set per-test timeout 1 year ago
geolocation-off-by-default-with-ks.ks.in Run the checks of the geolocation test in nochroot 2 years ago
geolocation-off-by-default-with-ks.sh Add initial geolocation kickstart test 6 years ago
groups-and-envs-1.ks.in Improve test description for package related tests 4 years ago
groups-and-envs-1.sh Disable groups-and-envs-1 test temporarily on rawhide (#1964817) 2 years ago
groups-and-envs-2.ks.in Convert the packaging tests to use %ksappend 4 years ago
groups-and-envs-2.sh Increase timeout for groups-and-envs-2 test 1 year ago
groups-and-envs-3.ks.in Improve test description for package related tests 4 years ago
groups-and-envs-3.sh Mark groups-and-env-3 as fedora-only 2 years ago
groups-ignoremissing.ks.in Convert the packaging tests to use %ksappend 4 years ago
groups-ignoremissing.sh Improve testing of --ignoremissing 5 years ago
harddrive-install-tree-relative.ks.in Add harddrive test with relative repo path 3 years ago
harddrive-install-tree-relative.sh Mark harddrive-install-tree{,-relative} as fedora-only 2 years ago
harddrive-install-tree.ks.in Add harddrive installation from install tree 3 years ago
harddrive-install-tree.sh Do not override TESTTYPE tags when including .sh into a test 2 years ago
harddrive-iso.ks.in Add test for harddrive installation from ISO 3 years ago
harddrive-iso.sh Add test for harddrive installation from ISO 3 years ago
hello-world.ks.in Fix the kickstart test for the Hello World addon 3 years ago
hello-world.sh Mark hello-world test as fedora-only 2 years ago
hmc.ks.in Remove deprecated install command 2 years ago
hmc.sh Test the install method hmc with a fake support for SE/HMC 5 years ago
hostname-bootopts.ks.in Remove deprecated install command 2 years ago
hostname-bootopts.sh Update static network IP configuration in network tests 2 years ago
hostname.ks.in Remove deprecated install command 2 years ago
hostname.sh Create a group that covers the basic installation cases 3 years ago
https-repo.ks.in Run tests with http repository for cacheability 2 years ago
https-repo.sh Mark https-repo as fedora-only 2 years ago
ibft.ks.in Remove deprecated install command 2 years ago
ibft.sh Return back support for additional runner arguments 2 years ago
ifname-httpks.ks.in Remove deprecated install command 2 years ago
ifname-httpks.sh Move network tests from virsh default network to user network 2 years ago
ignoredisk-1.ks.in Remove deprecated install command 2 years ago
ignoredisk-1.sh Add test for ignoredisk --only-use 5 years ago
ignoredisk-2.ks.in Remove deprecated install command 2 years ago
ignoredisk-2.sh Add test for ignoredisk --only-use 5 years ago
image-deployment-1.ks.in Create kickstart tests for the image deployment 2 years ago
image-deployment-1.sh Create kickstart tests for the image deployment 2 years ago
image-deployment-2.ks.in Create kickstart tests for the image deployment 2 years ago
image-deployment-2.sh Create kickstart tests for the image deployment 2 years ago
initial-setup-default.ks.in Add kickstart tests for Initial Setup configuration 4 years ago
initial-setup-default.sh Create a group that covers the basic installation cases 3 years ago
initial-setup-disable.ks.in Add kickstart tests for Initial Setup configuration 4 years ago
initial-setup-disable.sh Test post_install_tools_disabled is set correctly 4 years ago
initial-setup-enable.ks.in Add kickstart tests for Initial Setup configuration 4 years ago
initial-setup-enable.sh Test post_install_tools_disabled is set correctly 4 years ago
initial-setup-gui.ks.in Add kickstart tests for Initial Setup configuration 4 years ago
initial-setup-gui.sh Test post_install_tools_disabled is set correctly 4 years ago
initial-setup-reconfig.ks.in Add kickstart tests for Initial Setup configuration 4 years ago
initial-setup-reconfig.sh Test post_install_tools_disabled is set correctly 4 years ago
iscsi-bind.ks.in Remove deprecated install command 2 years ago
iscsi-bind.sh Disable iscsi-bind test. 5 years ago
iscsi.ks.in Remove deprecated install command 2 years ago
iscsi.sh Do not override TESTTYPE tags when including .sh into a test 2 years ago
keyboard-bootopt-only.ks.in Remove deprecated install command 2 years ago
keyboard-bootopt-only.sh Keyboard boot option is not enough for unattended installation on RHEL 3 years ago
keyboard-convert-vc.ks.in Remove deprecated install command 2 years ago
keyboard-convert-vc.sh Add keyboard test from conversion from vc keympap to x layouts 3 years ago
keyboard-convert-x-override-bootopt.ks.in Merge pull request #456 from jstodola/bug_1781547 2 years ago
keyboard-convert-x-override-bootopt.sh Update keyboard convert from x to test also boot option override 3 years ago
keyboard-generic-argument.ks.in Remove deprecated install command 2 years ago
keyboard-generic-argument.sh Add keyboard test for generic argument (old deprecated way) 3 years ago
keyboard.ks.in Merge pull request #456 from jstodola/bug_1781547 2 years ago
keyboard.sh Create a group that covers the basic installation cases 3 years ago
ks-include-post.ks Import everything else from the anaconda kickstart_tests directory. 7 years ago
ks-include.ks.in Remove deprecated install command 2 years ago
ks-include.sh Import everything else from the anaconda kickstart_tests directory. 7 years ago
lang.ks.in Remove deprecated install command 2 years ago
lang.sh Create a group that covers the basic installation cases 3 years ago
liveimg.ks.in Remove deprecated install command 2 years ago
liveimg.sh Skip failing tests because of bad Jenkins settings 6 years ago
lvm-1.ks.in Remove deprecated install command 2 years ago
lvm-1.sh Create a group that covers the basic installation cases 3 years ago
lvm-2.ks.in Remove deprecated install command 2 years ago
lvm-2.sh Import everything else from the anaconda kickstart_tests directory. 7 years ago
lvm-cache-1.ks.in Remove deprecated install command 2 years ago
lvm-cache-1.sh Mark lvm-cache-{1,2} as knownfailure 2 years ago
lvm-cache-2.ks.in Remove deprecated install command 2 years ago
lvm-cache-2.sh Mark lvm-cache-{1,2} as knownfailure 2 years ago
lvm-luks-1.ks.in Remove deprecated install command 2 years ago
lvm-luks-1.sh Disable some of the tests for LUKS 4 years ago
lvm-luks-2.ks.in Remove deprecated install command 2 years ago
lvm-luks-2.sh Disable some of the tests for LUKS 4 years ago
lvm-luks-3.ks.in Remove deprecated install command 2 years ago
lvm-luks-3.sh Disable some of the tests for LUKS 4 years ago
lvm-luks-4.ks.in Remove deprecated install command 2 years ago
lvm-luks-4.sh Disable some of the tests for LUKS 4 years ago
lvm-raid-1.ks.in Remove deprecated install command 2 years ago
lvm-raid-1.sh Import everything else from the anaconda kickstart_tests directory. 7 years ago
lvm-thinp-1.ks.in Remove deprecated install command 2 years ago
lvm-thinp-1.sh Create a group that covers the basic installation cases 3 years ago
lvm-thinp-2.ks.in Remove deprecated install command 2 years ago
lvm-thinp-2.sh Import everything else from the anaconda kickstart_tests directory. 7 years ago
module-1.ks.in Don't use the modular repository by default 2 years ago
module-1.sh Remove obsolete rhbz tag from module tests 2 years ago
module-2.ks.in Don't use the modular repository by default 2 years ago
module-2.sh Remove obsolete rhbz tag from module tests 2 years ago
module-3.ks.in Don't use the modular repository by default 2 years ago
module-3.sh Remove obsolete rhbz tag from module tests 2 years ago
module-4.ks.in Don't use the modular repository by default 2 years ago
module-4.sh Remove obsolete rhbz tag from module tests 2 years ago
module-enable-one-module-multiple-streams.ks.in Don't use the modular repository by default 2 years ago
module-enable-one-module-multiple-streams.sh Disable the right packaging module test (#1928049) 2 years ago
module-enable-one-stream-install-different-stream.ks.in Don't use the modular repository by default 2 years ago
module-enable-one-stream-install-different-stream.sh Fix module installation tests 4 years ago
module-ignoremissing.ks.in Don't use the modular repo for the module-ignoremissing test 2 years ago
module-ignoremissing.sh Add tests for module installation via kickstart 4 years ago
module-install-no-stream-no-profile.ks.in Don't use the modular repository by default 2 years ago
module-install-no-stream-no-profile.sh Add tests for module installation via kickstart 4 years ago
module-install-one-module-multiple-streams-and-profiles.ks.in Don't use the modular repository by default 2 years ago
module-install-one-module-multiple-streams-and-profiles.sh Add tests for module installation via kickstart 4 years ago
module-install-one-module-multiple-streams.ks.in Don't use the modular repository by default 2 years ago
module-install-one-module-multiple-streams.sh Add tests for module installation via kickstart 4 years ago
mountpoint-assignment-1.ks.in Remove deprecated install command 2 years ago
mountpoint-assignment-1.sh Create a group that covers the basic installation cases 3 years ago
mountpoint-assignment-2.ks.in Remove deprecated install command 2 years ago
mountpoint-assignment-2.sh Add tests for the mount command 5 years ago
network-addr-gen-mode-dhcpall.ks.in Add network tests for ipv6.addr-gen-mode (#1873021) 2 years ago
network-addr-gen-mode-dhcpall.sh Revert "Disable network addr-gen-mode tests temporarily on rhel (#1928049)" 2 years ago
network-addr-gen-mode.ks.in Check for rhel 8 specifically in some of the tests 2 years ago
network-addr-gen-mode.sh Revert "Disable network addr-gen-mode tests temporarily on rhel (#1928049)" 2 years ago
network-autoconnections-dhcpall-httpks.ks.in Check for rhel 8 specifically in some of the tests 2 years ago
network-autoconnections-dhcpall-httpks.sh Update network-autoconnections tests for ks in stage2 for rhel 2 years ago
network-autoconnections-httpks.ks.in Check for rhel 8 specifically in some of the tests 2 years ago
network-autoconnections-httpks.sh Update network-autoconnections tests for ks in stage2 for rhel 2 years ago
network-bootopts-bond-dhcp-httpks.ks.in Remove deprecated install command 2 years ago
network-bootopts-bond-dhcp-httpks.sh Switch bond= and ip= order in network-bootopts-bond-dhcp-httpks 2 years ago
network-bootopts-bond-ks-override.ks.in Add test for ks reconfig of virtual device created by boot options 1 year ago
network-bootopts-bond-ks-override.sh Disable network-bootoopts-bond-ks-override test temporarily on rhel8 (#1963834) 1 year ago
network-bootopts-bootif-httpks.ks.in Remove deprecated install command 2 years ago
network-bootopts-bootif-httpks.sh Move network tests from virsh default network to user network 2 years ago
network-bootopts-bridge-dhcp-httpks.ks.in Remove deprecated install command 2 years ago
network-bootopts-bridge-dhcp-httpks.sh Move network tests from virsh default network to user network 2 years ago
network-bootopts-static-legacy-httpks.ks.in Use support for NM keyfiles in network tests 2 years ago
network-bootopts-static-legacy-httpks.sh Update static network IP configuration in network tests 2 years ago
network-bootopts-static-mac.ks.in Add network test for static ip= configuration using MAC (#1915493) 2 years ago
network-bootopts-static-mac.sh Add network test for static ip= configuration using MAC (#1915493) 2 years ago
network-bootopts-static-unspec-bootif.ks.in Test for static network config from boot options without iface with bootif 2 years ago
network-bootopts-static-unspec-bootif.sh Revert "Disable network-bootopts-static-unspec-* tests temporarily (#1910438)" 2 years ago
network-bootopts-static-unspec-single.ks.in Test for static network config from boot options without iface 2 years ago
network-bootopts-static-unspec-single.sh Revert "Disable network-bootopts-static-unspec-* tests temporarily (#1910438)" 2 years ago
network-bootopts-static.ks.in Test for static network config from boot options 2 years ago
network-bootopts-static.sh Test for static network config from boot options 2 years ago
network-bootopts-team-dhcp-httpks.ks.in Remove deprecated install command 2 years ago
network-bootopts-team-dhcp-httpks.sh Move network tests from virsh default network to user network 2 years ago
network-bootopts-vlan-static-httpks.ks.in Remove deprecated install command 2 years ago
network-bootopts-vlan-static-httpks.sh Update static network IP configuration in network tests 2 years ago
network-device-bootif-httpks.ks.in Remove deprecated install command 2 years ago
network-device-bootif-httpks.sh Revert "Disable network-device-bootif-httpks test temporarily on rhel9 (#1958142)" 1 year ago
network-device-default-httpks.ks.in Remove deprecated install command 2 years ago
network-device-default-httpks.sh Do not use KICKSTART_NAME mechanism in .sh files 3 years ago
network-device-default-ksdevice-httpks.ks.in Remove deprecated install command 2 years ago
network-device-default-ksdevice-httpks.sh Move network tests from virsh default network to user network 2 years ago
network-device-default-ksdevice-pre.ks.in Remove deprecated install command 2 years ago
network-device-default-ksdevice-pre.sh Move network tests from virsh default network to user network 2 years ago
network-device-default-pre-hostname.ks.in Remove deprecated install command 2 years ago
network-device-default-pre-hostname.sh Add test for network --device not specified. 6 years ago
network-device-default.ks.in Remove deprecated install command 2 years ago
network-device-default.sh Add test for network --device not specified. 6 years ago
network-device-mac-httpks.ks.in Remove deprecated install command 2 years ago
network-device-mac-httpks.sh Move network tests from virsh default network to user network 2 years ago
network-device-mac-pre.ks.in Remove deprecated install command 2 years ago
network-device-mac-pre.sh Move network tests from virsh default network to user network 2 years ago
network-device-mac.ks.in Check for rhel 8 specifically in some of the tests 2 years ago
network-device-mac.sh Untag network-device-mac test that has already been fixed in #440 2 years ago
network-device-names.cfg Support setting of network naming in defaults configuration 2 years ago
network-missing-ifcfg-httpks.ks.in Remove deprecated install command 2 years ago
network-missing-ifcfg-httpks.sh Move network tests from virsh default network to user network 2 years ago
network-noipv4-httpks.ks.in Remove deprecated install command 2 years ago
network-noipv4-httpks.sh Update network noipv4 tests for no default autoconnections 2 years ago
network-noipv4-pre.ks.in Remove deprecated install command 2 years ago
network-noipv4-pre.sh Update network noipv4 tests for no default autoconnections 2 years ago
network-prefixdevname.ks.in Remove deprecated install command 2 years ago
network-prefixdevname.sh Revert "Disable network-prefixdevname test temporarily on rhel9 (#1958173)" 2 years ago
network-static-2-httpks.ks.in Remove deprecated install command 2 years ago
network-static-2-httpks.sh Update static network IP configuration in network tests 2 years ago
network-static-2-pre.ks.in Remove deprecated install command 2 years ago
network-static-2-pre.sh Update static network IP configuration in network tests 2 years ago
network-static-httpks.ks.in Remove deprecated install command 2 years ago
network-static-httpks.sh Update static network IP configuration in network tests 2 years ago
network-static-to-dhcp-pre-single.ks.in Remove deprecated install command 2 years ago
network-static-to-dhcp-pre-single.sh Fix network static IP configuration used for installation 2 years ago
network-static-to-dhcp-pre.ks.in Remove deprecated install command 2 years ago
network-static-to-dhcp-pre.sh Update static network IP configuration in network tests 2 years ago
network-static.ks.in Remove deprecated install command 2 years ago
network-static.sh Update static network IP configuration in network tests 2 years ago
nfs-repo-and-addon.ks.in Remove deprecated install command 2 years ago
nfs-repo-and-addon.sh Mark nfs-repo-and-addon as knownfailure 2 years ago
nosave-1.ks.in Remove deprecated install command 2 years ago
nosave-1.sh Always drop errors when copying files (squash after testing!) 3 years ago
nosave-2.ks.in Remove deprecated install command 2 years ago
nosave-2.sh Always drop errors when copying files (squash after testing!) 3 years ago
nosave-3.ks.in Remove deprecated install command 2 years ago
nosave-3.sh Always drop errors when copying files (squash after testing!) 3 years ago
ntp-nontp-without-chrony-gui.ks.in Remove deprecated install command 2 years ago
ntp-nontp-without-chrony-gui.sh Add ntp tests 7 years ago
ntp-nontp-without-chrony.ks.in Remove deprecated install command 2 years ago
ntp-nontp-without-chrony.sh Add ntp tests 7 years ago
ntp-pools.ks.in Remove deprecated install command 2 years ago
ntp-pools.sh Mark ntp-pools as fedora-only 2 years ago
ntp-with-nontp-gui.ks.in Remove deprecated install command 2 years ago
ntp-with-nontp-gui.sh Add ntp tests 7 years ago
ntp-with-nontp.ks.in Remove deprecated install command 2 years ago
ntp-with-nontp.sh Add ntp tests 7 years ago
ntp-without-chrony-gui.ks.in Remove deprecated install command 2 years ago
ntp-without-chrony-gui.sh Add ntp tests 7 years ago
ntp-without-chrony.ks.in Remove deprecated install command 2 years ago
ntp-without-chrony.sh Add ntp tests 7 years ago
onboot-activate-httpks.ks.in Remove deprecated install command 2 years ago
onboot-activate-httpks.sh Move network tests from virsh default network to user network 2 years ago
onboot-activate.ks.in Remove deprecated install command 2 years ago
onboot-activate.sh Move network tests from virsh default network to user network 2 years ago
onboot-bootopts-pre.ks.in Remove deprecated install command 2 years ago
onboot-bootopts-pre.sh Move network tests from virsh default network to user network 2 years ago
packages-and-groups-1.ks.in Fix packages-and-groups-1 test for RHEL 3 years ago
packages-and-groups-1.sh Revert "Disable 2 tests temporarily on rhel8 (#1975786)" 1 year ago
packages-and-groups-ignoremissing.ks.in Fix package ignoremissing test on RHEL. 3 years ago
packages-and-groups-ignoremissing.sh Create a group that covers the basic installation cases 3 years ago
packages-default.ks.in Make packages-default actually test something 3 years ago
packages-default.sh Make packages-default actually test something 3 years ago
packages-excludedocs.ks.in Fix packages-excludedocs on RHEL 3 years ago
packages-excludedocs.sh Import everything else from the anaconda kickstart_tests directory. 7 years ago
packages-ignoremissing.ks.in Convert the packaging tests to use %ksappend 4 years ago
packages-ignoremissing.sh Import everything else from the anaconda kickstart_tests directory. 7 years ago
packages-instlangs-1.ks.in Improve test description for package related tests 4 years ago
packages-instlangs-1.sh Import everything else from the anaconda kickstart_tests directory. 7 years ago
packages-instlangs-2.ks.in Improve test description for package related tests 4 years ago
packages-instlangs-2.sh Remove the locale check from packages-instlangs-2 7 years ago
packages-instlangs-3.ks.in Don't check if only the requested locales were installed 2 years ago
packages-instlangs-3.sh Import everything else from the anaconda kickstart_tests directory. 7 years ago
packages-multilib.ks.in Improve test description for package related tests 4 years ago
packages-multilib.sh Import everything else from the anaconda kickstart_tests directory. 7 years ago
packages-weakdeps.ks.in Improve test description for package related tests 4 years ago
packages-weakdeps.sh Disable packages-weakdeps test temporarily on rhel9 (#1960279) 2 years ago
part-luks-1.ks.in Remove deprecated install command 2 years ago
part-luks-1.sh Disable some of the tests for LUKS 4 years ago
part-luks-2.ks.in Remove deprecated install command 2 years ago
part-luks-2.sh Disable some of the tests for LUKS 4 years ago
part-luks-3.ks.in Remove deprecated install command 2 years ago
part-luks-3.sh Disable some of the tests for LUKS 4 years ago
part-luks-4.ks.in Remove deprecated install command 2 years ago
part-luks-4.sh Disable some of the tests for LUKS 4 years ago
post-lib-keyboard.sh Fix permissions of kickstart includes 2 years ago
post-lib-network.sh Update text of the check for number of network connections 2 years ago
post-nochroot-lib-keyboard.sh Fix permissions of kickstart includes 2 years ago
post-nochroot-lib-network.sh Update comment for network gui check so it does not lie anymore 2 years ago
post-nochroot-lib-ui.sh Add kickstart tests for all user interface modes 2 years ago
pre-install.ks.in Remove deprecated install command 2 years ago
pre-install.sh Import everything else from the anaconda kickstart_tests directory. 7 years ago
proxy-auth.ks.in Remove deprecated install command 2 years ago
proxy-auth.sh Mark proxy-{auth,kickstart} as knownfailure 2 years ago
proxy-cmdline.ks.in Remove deprecated install command 2 years ago
proxy-cmdline.sh Fix the proxy-cmdline test 2 years ago
proxy-kickstart.ks.in Remove deprecated install command 2 years ago
proxy-kickstart.sh Mark proxy-{auth,kickstart} as knownfailure 2 years ago
raid-1.ks.in Remove deprecated install command 2 years ago
raid-1.sh Change which files are copied from VMs (2) 3 years ago
raid-luks-1.ks.in Remove deprecated install command 2 years ago
raid-luks-1.sh Disable some of the tests for LUKS 4 years ago
raid-luks-2.ks.in Remove deprecated install command 2 years ago
raid-luks-2.sh Disable some of the tests for LUKS 4 years ago
raid-luks-3.ks.in Remove deprecated install command 2 years ago
raid-luks-3.sh Disable some of the tests for LUKS 4 years ago
raid-luks-4.ks.in Remove deprecated install command 2 years ago
raid-luks-4.sh Disable some of the tests for LUKS 4 years ago
reboot-initial-setup-gui.ks.in Do not fail on gnome-kiosk which is not used on rhel 8 1 year ago
reboot-initial-setup-gui.sh Kill reboot tests after the timeout 1 year ago
reboot-initial-setup-tui.ks.in Improve the initial-setup checks 1 year ago
reboot-initial-setup-tui.sh Kill reboot tests after the timeout 1 year ago
reboot.ks.in Test the reboot of the installed system 2 years ago
reboot.sh Kill reboot tests after the timeout 1 year ago
reqpart.ks.in Remove deprecated install command 2 years ago
reqpart.sh Create a group that covers the basic installation cases 3 years ago
rootpw-basic.ks.in Remove deprecated install command 2 years ago
rootpw-basic.sh Create a group that covers the basic installation cases 3 years ago
rootpw-crypted.ks.in Remove deprecated install command 2 years ago
rootpw-crypted.sh Expand root and user account creation tests 4 years ago
rootpw-lock-no-password.ks.in Remove deprecated install command 2 years ago
rootpw-lock-no-password.sh Expand root and user account creation tests 4 years ago
rootpw-lock.ks.in Remove deprecated install command 2 years ago
rootpw-lock.sh Create a group that covers the basic installation cases 3 years ago
rpm-ostree.ks.in Add a kickstart test for the RPM OSTree payload 2 years ago
rpm-ostree.sh Add a kickstart test for the RPM OSTree payload 2 years ago
scripts-lib.sh Check for rhel 8 specifically in some of the tests 2 years ago
selinux-contexts.ks.in Run SElinux context test only after fixing contexts 3 years ago
selinux-contexts.sh Add test for SElinux contexts 3 years ago
selinux-disabled.ks.in Remove deprecated install command 2 years ago
selinux-disabled.sh Import everything else from the anaconda kickstart_tests directory. 7 years ago
selinux-enforcing.ks.in Remove deprecated install command 2 years ago
selinux-enforcing.sh Create a group that covers the basic installation cases 3 years ago
selinux-permissive.ks.in Remove deprecated install command 2 years ago
selinux-permissive.sh Import everything else from the anaconda kickstart_tests directory. 7 years ago
services.ks.in Remove deprecated install command 2 years ago
services.sh Create a group that covers the basic installation cases 3 years ago
snapshot-post.ks.in Remove deprecated install command 2 years ago
snapshot-post.sh Mark snapshot-post as knownfailure 2 years ago
snapshot-pre.ks.in Remove deprecated install command 2 years ago
snapshot-pre.sh Fix permissions of some tests 2 years ago
team-httpks.ks.in Remove deprecated install command 2 years ago
team-httpks.sh Move network tests from virsh default network to user network 2 years ago
team-pre.ks.in Remove deprecated install command 2 years ago
team-pre.sh Create a group that covers the basic installation cases 3 years ago
team.ks.in Remove deprecated install command 2 years ago
team.sh Move network tests from virsh default network to user network 2 years ago
timezoneLOCAL.ks.in Remove deprecated install command 2 years ago
timezoneLOCAL.sh Import everything else from the anaconda kickstart_tests directory. 7 years ago
timezoneUTC.ks.in Remove deprecated install command 2 years ago
timezoneUTC.sh Import everything else from the anaconda kickstart_tests directory. 7 years ago
tmpfs-fixed_size.ks.in Remove deprecated install command 2 years ago
tmpfs-fixed_size.sh Change which files are copied from VMs (2) 3 years ago
ui_cmdline.ks.in Add kickstart tests for all user interface modes 2 years ago
ui_cmdline.sh Add kickstart tests for all user interface modes 2 years ago
ui_graphical_interactive.ks.in Add kickstart tests for all user interface modes 2 years ago
ui_graphical_interactive.sh Add a new test type for smoke tests 2 years ago
ui_graphical_noninteractive.ks.in Add kickstart tests for all user interface modes 2 years ago
ui_graphical_noninteractive.sh Disable the ui_graphical_noninteractive test 2 years ago
ui_text_interactive.ks.in Add kickstart tests for all user interface modes 2 years ago
ui_text_interactive.sh Add a new test type for smoke tests 2 years ago
ui_text_noninteractive.ks.in Add kickstart tests for all user interface modes 2 years ago
ui_text_noninteractive.sh Add kickstart tests for all user interface modes 2 years ago
ui_vnc.ks.in Add kickstart tests for all user interface modes 2 years ago
ui_vnc.sh Add kickstart tests for all user interface modes 2 years ago
unified-cdrom.ks.in Add unified tests from CDROM 4 years ago
unified-cdrom.sh Fix permissions of some tests 2 years ago
unified-cmdline.ks.in Add test by inst.repo from unified iso test 4 years ago
unified-cmdline.sh Fix permissions of some tests 2 years ago
unified-harddrive.ks.in Remove miss-leading unified harddrive comment 3 years ago
unified-harddrive.sh Add unified test to install from the harddrive 4 years ago
unified-nfs.ks.in Add unified test from NFS repository 4 years ago
unified-nfs.sh Add unified test from NFS repository 4 years ago
unified.ks.in Add unified installation test from http server 4 years ago
unified.sh Mark unified as knownfailure 2 years ago
user-locked-root-locked-admin.ks.in Remove deprecated install command 2 years ago
user-locked-root-locked-admin.sh Expand root and user account creation tests 4 years ago
user-multiple-wheel-no-root.ks.in Remove deprecated install command 2 years ago
user-multiple-wheel-no-root.sh Expand root and user account creation tests 4 years ago
user-multiple.ks.in Remove deprecated install command 2 years ago
user-multiple.sh Revert "Disable 2 tests temporarily on rhel8 (#1975786)" 1 year ago
user-no-wheel-no-root.ks.in Remove deprecated install command 2 years ago
user-no-wheel-no-root.sh Expand root and user account creation tests 4 years ago
user-single.ks.in Remove deprecated install command 2 years ago
user-single.sh Expand root and user account creation tests 4 years ago
user-wheel-no-root.ks.in Remove deprecated install command 2 years ago
user-wheel-no-root.sh Expand root and user account creation tests 4 years ago
validate-lib-initial-setup.sh Test post_install_tools_disabled is set correctly 4 years ago
validate-lib-services.sh Add tests for default desktop and systemd target configuration 3 years ago
vlan-httpks.ks.in Remove deprecated install command 2 years ago
vlan-httpks.sh Move network tests from virsh default network to user network 2 years ago
vlan-pre.ks.in Remove deprecated install command 2 years ago
vlan-pre.sh Move network tests from virsh default network to user network 2 years ago

README.rst

Kickstart Test Documentation

Kickstart tests are one way of testing the Anaconda Installer, by running an automated installation based on a kickstart file and checking the results.

Authors

Chris Lumens <clumens@redhat.com> Martin Kolman <mkolman@redhat.com>

Chapter 1. How to run kickstart tests in a container

This is the canonical way to run tests, as it requires very little setup, does not do any permanent changes to your system, and exactly reproduces results from CI runs.

Clone the kickstart-tests repository and enter its directory:

git clone https://github.com/rhinstaller/kickstart-tests
cd kickstart-tests

The launch script downloads a current Fedora Rawhide boot.iso, downloads and starts the runner container, and runs a set of tests in it:

containers/runner/launch keyboard [test2 test3 ...]

Please see the runner documentation for further details, like how to run all tests or some test types, running the container manually, using a different boot.iso, enabling caching, and more.

Chapter 2. How to run kickstart tests manually on the host

Warning: This is deprecated now.

Setting up

Tooling for running tests on remote hosts is in linchpin and ansible.

First you need to install the needed dependencies:

  • livemedia-creator
  • Python bindings for libvirt
  • libguestfs-tools
  • virt-install
  • parallel
  • createrepo
  • python3-rpmfluff
  • squid
  • scp
  • genisoimage
  • make

You also need to start libvirt service to be able to use virt-install:

sudo systemctl start libvirtd

Then clone the kickstart-tests repository:

git clone https://github.com/rhinstaller/kickstart-tests

And you also need a rawhide boot.iso (provided you want to run the kickstart tests on Rawhide):

wget https://download.fedoraproject.org/pub/fedora/linux/development/rawhide/Server/x86_64/os/images/boot.iso

Please note that due to the dynamic nature of Rawhide the boot.iso might not always work.

Running a test

Lets just run a simple test to check that everything works correctly – for example the simple tmpfs kickstart command test. First change directory to the kickstart-tests folder:

cd kickstart-tests

Then run the single test:

scripts/run_kickstart_tests.sh -i ../boot.iso -k 2 tmpfs-fixed_size.sh

About the parameters:

-i sets the path to the boot.iso -k sets if logs from the run should be kept, as for the values:

  • 0 = keep nothing (the default)
  • 1 = keep log files
  • 2 = keep log files and disk images (will take up a lot of space)

-u use updates image given by URL or local file path -b use additional installer boot options

And at the end name of the kickstart test script to run.

The -k 2 option is especially useful if you are doing more complicated post-install test validation in you kickstart test script that needs to check contents of the disk image/images.

The results

If everything worked out, you should be greeted by a successful test result similar to this one:

===========================================================================
tmpfs-fixed_size.ks on computer.hostname
===========================================================================
PYTHONPATH=
...................................................
Domain LiveOS-1710fd05-898c-4cf2-b4e1-67d40aaf5f3d has been undefined

Pool kstest-tmpfs-fixed_size.RI8HWHMF destroyed

Pool kstest-tmpfs-fixed_size.RI8HWHMF has been undefined


RESULT:tmpfs-fixed_size:SUCCESS
2017-06-06 16:46:34,477: install_log = /var/tmp/kstest-tmpfs-fixed_size.RI8HWHMF/virt-install.log
2017-06-06 16:46:34,513: Running virt-install.
2017-06-06 16:46:35,903: Processing logs from ('127.0.0.1', 53130)
2017-06-06 16:55:06,646: Install finished. Or at least virt shut down.
2017-06-06 16:55:06,650: Shutting down LiveOS-1710fd05-898c-4cf2-b4e1-67d40aaf5f3d
error: Failed to destroy domain LiveOS-1710fd05-898c-4cf2-b4e1-67d40aaf5f3d
error: Requested operation is not valid: the domain is not running
2017-06-06 16:55:06,777: Shutting down log processing
2017-06-06 16:55:06,778: unmounting the iso
2017-06-06 16:55:06,812: Disk Image install successful
2017-06-06 16:55:06,812: SUMMARY
2017-06-06 16:55:06,812: -------
2017-06-06 16:55:06,813: Logs are in /var/tmp/kstest-tmpfs-fixed_size.RI8HWHMF
2017-06-06 16:55:06,813: Disk image(s) at /var/tmp/kstest-tmpfs-fixed_size.RI8HWHMF/disk-a.img,cache=unsafe
2017-06-06 16:55:06,813: Results are in /var/tmp/kstest-tmpfs-fixed_size.RI8HWHMF

Chapter 3. A test definition

A kickstart test consists of two files:

  • <TEST_NAME>.sh - a file defining installer boot options and procedures to set up test-specific environment (eg http server for providing the kickstart file, special virtual networks, iscsi targets for test, etc). This file name is used to specify the kickstart test to be run.
  • <TEST_NAME>.ks.in - the kickstart file belonging to the test, containing variables that would be preprocessed (as described in following chapters) to generate the actual kicstart file passed to installer. By default, the file with the same name as the .sh file is used. This can be overriden (eg to share kickstarts among tests that differ only in boot options) in .sh file using KICKSTART_NAME=<ANOTHER_TEST_NAME> variable. For example by defining

    KICKSTART_NAME=network-device-default

    in network-device-default-httpks.sh test, the test will use kickstart network-device-default.ks.in.

    NOTE: possible redefinintions of KICKSTART_NAME value in files included in the the .sh file (eg to reuse .sh file of another test) are ignored.

    NOTE: The fragments (%ksappend) mechanism does not work together with KICKSTART_NAME setting (%ksappend is not applied).

Chapter 4. Environment Variables

A lot of tests need configuration. This is information that is required by tests but typically cannot be hard coded. Typically, this configuration is a package repository needed for testing an installation method. It is up to the user running the tests to do whatever local setup is required and set these configuration parameters.

Configuration parameters come from the environment. All environment variables starting with KSTEST will be grabbed by run_kickstart_tests.sh and automatically substituted in to the kickstart file before it is run. In the kickstart file, the target of a substitution is any string starting with @KSTEST_ and ending with another @. This is similar to how the autotools work.

Configuration parameters may also come from special shell scripts that are sourced during run_kickstart_tests.sh. It will first look at the defaults in scripts/defaults.sh. It will then look at any user-specific defaults in ~/.kstests.defaults.sh. These take precedence over the local environment. Environment variables set on the command line have the highest priority.

Note that not every test needs every setting. You can determine which are required for the test you are running by simply running "grep KSTEST" on it.

The following environment variables are currently supported:

  • KSTEST_HTTP_ADDON_REPO - This variable is a URL that points to an addon repository. It is only needed if you are testing that functionality, not if you are testing something else that just happens to use the url command. It will be set up for you automatically with a web server and auto-generated packages. There is no need to specify this variable.
  • KSTEST_LIVEIMG_CHECKSUM - This variable is the checksum of the image given by KSTEST_LIVEIMG_URL. It is only needed if you are testing the liveimg command. It will be set up for you automatically. There is no need to specify this variable.
  • KSTEST_LIVEIMG_URL - This variable is a URL that points to an install.img that is used by the liveimg command. It is only needed if you are testing that command. It will be set up for you automatically based on the boot.iso specified on the command line. There is no need to specify this variable.
  • KSTEST_NFS_ADDON_REPO - This variable points to an NFS server and path where an addon repository can be found. This is different from KSTEST_NFS_PATH and KSTEST_NFS_SERVER. Those are used with the nfs command. This variable is used with the repo command, and its format is different. Here, it takes the form of nfs://<server>:<path>. See the kickstart documentation. You will need to set up your own NFS server.
  • KSTEST_NFS_PATH - This variable points to the path of a package repository on the NFS server given by KSTEST_NFS_SERVER. It is only needed if you are testing the nfs command and installation method. You will need to set up your own NFS server.
  • KSTEST_NFS_SERVER - This variable points at an NFS server, and is only needed if you are testing the nfs command and installation method. You will need to set up your own NFS server.
  • KSTEST_OSTREE_REPO - This variable points at the atomic repo, and is only needed if you are testing the ostreesetup command and installation method. You will need to set up your own repo.
  • KSTEST_FTP_URL - This variable is used by FTP tests. It is set to a Fedora mirror in Texas, USA in scripts/defaults.sh. This is potentially slow and you may want to point it at a local mirror.
  • KSTEST_URL - This variable is used by all tests that don't test installation method and instead just use the default. It is set to the Fedora mirrors in scripts/defaults.sh. This is potentially slow if you are running a lot of tests, and you may want to point it at a local mirror.
  • KSTEST_OS_NAME - This variable is read from the input boot.iso and it contains a name of the OS. Possible names can be "fedora", "rhel".
  • KSTEST_OS_VERSION - This variable is read from the input boot.iso and it contains version of the OS. For example Fedora 26 has KSTEST_OS_VERSION = 26, Fedora rawhide has "Rawhide", and RHEL 7.3 has KSTEST_OS_VERSION = 7.3 .
  • KSTEST_EXTRA_BOOTOPTS - This variable is used in functions.sh to pass additional kernel command line options. For example, setting this to inst.text enables Anaconda's text mode (instead of the default GUI).

Chapter 5. Sharing common code in kickstart (.ks.in) files

To include kickstart or code snippets into test kickstart file during its pre-processing (just after KSTEST variables are substituted) use @KSINCLUDE@ <FILE_NAME> directive.

For example to include post-lib-network.sh which is a library with functions for checking test results of network tests, include it in ks.in test file:

%post

@KSINCLUDE@ post-lib-network.sh

check_device_connected ens4 yes

%end

The including is flat, only one level is supported. Do not use @KSINCLUDE@ in included files, the results could be unexpected.

Chapter 6. Networking tests

This section contains tips for creating kicstart tests for network configuration. In some test cases special or additional network devices and virtual networks for test/virt-install instance are defined in prepare() and prepare_network() functions of .sh test file.

Network device names

Network device names used in guest may differ for tested os variants (eg RHEL vs Fedora). Actual naming scheme to be used by the tests is defined in network-device-names.cfg snippet which is sourced both in .sh files for boot options network configuration (via functions.sh) and .ks.in files for kickstart network configuration (via @KSTEST_ substitution). The variables used in .sh and .ks.in files have the form of KSTEST_NETDEV<INDEX> where <INDEX> is the numerical index of the device, starting from 1.

Static IP configuration

For tests using static IP configuration, separate NATed network is created in prepare() function for each test so IP address collisions between tests running in parallel are prevented. Static configuration generated during network creation is referred to in kickstart using @KSTEST_ substitiution described above.

Allocating device MAC addresses

For tests requiring definition of MAC address assigned to the device the address is statically assigned in prepare_network() function. For kvm/qemu virtual machines it must start with 52:54:00.

httpks tests

The tests containing httpks in its name are fetching kickstart from https server (prepare() function of .sh test file) instead of including it via initrd inject into initramfs - which is the default approach used in tests. The reason is that using the inject method the network devices are not initialized in time of parsing kickstart and obtaining information from sysfs (mostly getting hw address) fails which results in incomplete ifcfg file generated.

Chapter 7. Continuous Integration structure

Regular test runs

Every night, the scenarios workflow runs all tests on all our supported operating systems/repositories, like "Fedora Rawhide" or "RHEL 8". These are defined in the containers/runner/scenario script, which essentially calls the runner container's launch script documented above with the desired parameters.

The rawhide and daily-iso scenarios can in principle run on any host that has enough resources. The rhel8 test however needs to run on RHEL internal infrastructure.

Currently all scenarios run on self-hosted GitHub action runners, which are running in our upshift cluster. See our internal builders.git repository for details and the launch/setup playbooks. These have little magic, though, they mostly just create an OpenStack instance and install/configure the action runner binary as a service. All the actual test logic is contained in the workflow files and the runner container.

The results can be viewed on the GitHub Daily run workflows page. Each run has an artifact attached with the detailed log files. This is currently not very comfortable, and we are actively looking for a better solution how to publish the test result history.

These tests are expected to succeed normally. On failures, rhinstaller maintainers get a "failed workflow" notification email and should investigate the cause.

Sometimes tests fail due to networking/infrastructure flakes. To avoid this kind of noise, the nightly runs use the --retry option to re-run a test which failed due to an unspecific reason (i.e. not due to a skip or a syntax error in the kickstart file, etc.). The test log will still show both results right after each other, so that the original failure can be examined; but if the retry works, the test as a whole counts as success.

Pull requests

PRs are gated to avoid introducing broken or unstable tests, and to validate changes to existing tests. To keep PRs open to the whole community, we want to avoid running them in self-hosted internal infrastructure (if we did, we'd need to restrict running the tests to avoid exfiltrating secrets from the internal Red Hat network).

Thus PR tests run on Travis, which is one of the few public CI providers who offer /dev/kvm. The entry point is .travis.yml. The run_travis.sh script checks which tests are affected by the PR, and runs the first six in the runner container's launch script. Travis jobs are limited to 50 minutes, so we cannot currently run more; but that should suffice in most cases.

PR runs do not auto-retry test failures. This avoids introducing unstable tests, and PRs usually just run a few tests so that flakes are much less likely to ruin the result.

Service jobs

  • The container-autoupdate workflow refreshes the runner container every week, and pushes it to quay.io/rhinstaller/kstest-runner. Developers, CI, and the launch script usually download it from there.
  • The daily-boot-iso workflow creates a boot.iso out of current Fedora Rawhide and various COPRs every night, so that we can test updates to anaconda, dnf, or blivet before they get released. This is consumed by the daily-iso scenario.

These jobs don't have any particular infrastructure requirements. They run on GitHub's infrastructure and can be run manually by a developer.