The following variables are supported and can be selected by placing them in
the ks_meta attribute in the recipe element. In many cases, these
variables correspond to the similarly-named kickstart option.
- auth=<authentication configuration options>
- Authentication configuration to use. For example,
auth='--enableshadow --enablemd5'. See
authconfig(8) to learn more.
- autopart_type=<fstype>
- Partioning scheme for automatic partitioning (must be one of lvm,
btrfs, plain and thinp). On supported distros, it is
passed as --type <fstype> to the autopart kickstart
command. On distros where autopart does not support the
--type option, this is ignored.
- beah_rpm=<pkgarg>
- Name of the Beah RPM to be installed. The value can be any package
specification accepted by yum (for example it can include a version, such
as beah-0.6.48). The default is beah which installs the latest
version from the harness repos. This variable has no effect when using
alternative harnesses.
- beah_no_console_output
- If specified, Beah will not send any log messages to /dev/console. The log
messages will still be available in the systemd journal (on systemd-based
distros).
- beah_no_ipv6
- If specified, Beah will function in IPv4 only mode even if IPv6
connectivity is possible.
- bootloader_type
- Specify an alternative bootloader. It is passed on to the bootloader
kickstart command.
- dhcp_networks=<device>[;<device>...]
Configure additional network devices to start on boot with DHCP activation.
The device should be given as a kernel device name (for example, em1)
or MAC address.
Note that the network device used for installation is always set to start
on boot with DHCP activation.
- conflicts_groups
- This is a list of comps.xml group ids (without the @ symbol) which contain
packages conflicting with the rest of the package set, e.g. Samba 3 vs.
Samba 4. Empty list is a valid value as well so templates can iterate over
the list without testing if the variable has been defined. Usually
applicable for RHEL and CentOS.
- contained_harness
If specified, runs the test harness and hence the tasks in a Docker
container. The test harness to be run defaults to “restraint”. A
different test harness can be specified using the harness
variable. Also see contained_harness_entrypoint below.
The host distro and architecture must support Docker for this to
be possible.
- contained_harness_entrypoint=<entrypoint>
Specify how the harness should be started. This defaults to
“/usr/sbin/init” and expects “systemd” to be the process
manager. Alternatively, another binary can be specified. The entry
point must be in one of the forms understood by Docker’s CMD
instruction.
This is only required if the test harness is run in a Docker
container. See contained_harness above.
- contained_harness_ro_host_volumes=</volume1>[,</volume2>..]
Specify the host volumes to be mounted as read-only inside the container. The
default volumes mounted as read-only are
/var/log/messages, /etc/localtime and
/etc/timezone.
For example, contained_harness_ro_host_volumes='/var/run,/etc' will
then mount /var/run and /etc as read-only volumes.
- contained_harness_rw_host_volumes=</volume1>[,</volume2>..]
Specify the host volumes to be mounted with write permissions inside the container. The
default volumes with write permissions are /mnt and
/root.
For example, harness_rw_host_volumes='/myvolume' will then only
mount the /myvolume with write permissions.
- disable_repo_<id>
- Disable repo of the given id. By default, the kickstart will include repo.
Repo is also created in yum.repos.d/ and enabled. Set this variable if you
want to omit repo command in kickstart and disable it in yum.repos.d/.
You can find repo id for a particular distro tree under the
Repos tab on the distro tree page.
For example disable_repo_CRB.
- disable_<type>_repos
- Disable repos of the given types. Valid types include variant, addon,
optional, and debug. By default, the kickstart will include all repos
of the given type. Repos are also created in yum.repos.d/ and enabled.
Set this variable if you want to omit repo command in kickstart and
disable them in yum.repos.d/. You can find repo id for a particular distro
tree under the Repos tab on the distro tree page.
For example disable_debug_repos.
- disable_onerror
- Don’t add the %onerror section to the kickstart. By default the section
is added for RHEL 7 and newer. It handles the installation failure reporting
it to Beaker and aborting the recipe. This option disables this functionality.
- ethdevices=<module>[,<module>...]
- Comma-separated list of network modules to be loaded during installation.
- firewall=<port>:<protocol>[,<port>:<protocol>...]
- Firewall ports to allow, for example firewall=imap:tcp,1234:ucp,47. If
this variable is not set, the firewall is disabled.
- firstboot=<option>
- Option to be passed directly to the firstboot kickstart command.
The complete option string must be given, including -- and =.
- fstype
- Filesystem type for all filesystems. Default is to allow the installer to
choose.
- grubport=<hexaddr>
- Hex address of the I/O port which GRUB should use for serial output. If
this variable is set, the value will be passed to the --port option of
the serial command in the GRUB configuration. Refer to serial in the
GRUB manual.
- harness=<alternative harness>
Specify the test harness to use instead of the default test
harness, “beah”. With the contained_harness variable
specified, this defaults to “restraint”.
To learn more, see the Alternative Harness Guide.
- harness_docker_base_image=<image>
If specified, uses this docker image to build the Docker container
that the test runs in. The <image> is expected to be in a form usable in a Dockerfile’s
FROM
instruction. If contained_harness_entrypoint is not specified,
the distro should use “systemd” as the process manager.
If not specified, Beaker will attempt to build the container by
fetching the same image as that of the host distro from the Docker
public registry. Thus, if Fedora 20 is used on the host machine,
the image used will be: “registry.hub.docker.com/fedora:20”.
- hwclock_is_utc
- If defined, the hardware clock is assumed to be set in UTC rather than
local time. It’s defined by default for guest recipes and dynamic VMs.
- ignoredisk=<options>
Options to be passed directly to the ignoredisk kickstart command. The
complete option string must be given, including -- and =.
Use this to skip certain disks during the installation, for example
ignoredisk=--drives=sdb,sdc, or to use only certain disks for the
installation, for example ignoredisk=--only-use=sda,sdb.
- install_task_requires
If defined, Beaker will include the packages required by every task in the
recipe. The packages will be populated in the kickstart %packages section,
causing Anaconda to install them.
For Fedora 29 and RHEL8 and later versions, this variable is not defined
by default. The default harness, Restraint, will install task requirements
before executing each task.
This variable is defined by default for older distros, where the default harness is Beah.
Beah does not install task requirements, instead it relies on the requirements being
populated in %packages and installed by Anaconda.
- keyboard=<layout>
- Keyboard layout to use. Default is us.
- ks_keyword
- Change the normal kickstart kernel command line keyword from ‘ks’ to user
specified value. This can be useful for instance if wanting to install an
operating system like Debian. Could do ks_keyword=preseed and then the
kickstart file will be generated but on kernel command it would be present
as preseed=http://example.com/kickstart/18 as an example. A custom
preseed template will need to be created and put in
/etc/beaker/kickstarts/. For example if doing a Debian install the
file /etc/beaker/kickstarts/Debian should be created.
- lang=<localeid>
- Locale to use. Default is en_US.UTF-8.
- manual
- Omits most kickstart commands, causing Anaconda to prompt for details. The
effect is similar to booting from install media with no kickstart.
Typically it is also necessary to set mode=vnc. For systems with
console log monitoring enabled, it will also be necessary to switch off
installation failure monitoring.
- method=<method>
- Installation method to use. Default is nfs, supported alternatives
include http and nfs+iso. The specific installation methods
supported for a particular distro tree in a particular lab will depend on
how the distro was imported into Beaker. The available methods can be
determined through the web UI by looking at the URL schemes listed for
the distro tree.
- mode=<mode>
- Installation mode to use. Valid values are text (curses-like
interface), cmdline (plain text with no interaction), graphical
(local X server), and vnc (graphical interface over VNC). The default
mode is either text or cmdline, depending on arch and distro.
- no_autopart
- Omits the autopart command. By default when no specific partitions are
requested for a recipe, the kickstart will include autopart which causes
the installer to automatically select a suitable partition layout. Set this
variable if you want to supply explicit partitioning commands in some other
way, for example in a <ks_append/> section.
- no_ks_template
- The whole kickstart has to be defined by user in <kickstart /> tag.
Default Beaker’s templating is not used; however, user does have
access to snippets and restricted context.
- no_networks
- Omits the network command. By default when no specific network is
requested for a recipe, the kickstart will include
network --bootproto=dhcp which causes the installer to obtain it’s
networking configuration from DHCP server. Set this variable if you want
to supply explicit network setting in kernel options.
- no_repo_<id>
- Omits repo of the given id. You can find repo id for a particular distro
tree under the Repos tab on the distro tree page.
For example no_repo_CRB-debuginfo.
- no_<type>_repos
- Omits repos of the given type. Valid types include variant, addon,
optional, and debug. You can find which repo types are available
for a particular distro tree under the Repos tab on the distro
tree page.
- no_clock_sync
- Omits additional packages and scripts which ensure the system clock is
synchronized after installation.
- no_default_harness_repo
- If you have your own repository providing a test harness, this
variable can be used to prevent Beaker from configuring the default Beaker
harness repository in the kickstart.
- no_disable_readahead
- By default Beaker disables readahead collection, because it is not
generally useful in Beaker recipes and the harness interferes with normal
data collection. If this variable is set, Beaker omits the snippet which
disables readahead collection.
- no_updates_repos
- Omits the fedora-updates repo for Fedora.
- liveimg
- Specify a relative path to an image file or rpm that contains a squashfs
image. For more details, see the kickstart documentation <http://pykickstart.readthedocs.io/en/latest/kickstart-docs.html#liveimg>
- ostree_repo_url
- Specify the repo location for rpm-ostree. See has_rpmostree below.
- ostree_ref
- Specify the remote ref for rpm-ostree. See has_rpmostree below.
- packages=<package>:<package>
Colon-separated list of package names to be installed during provisioning.
If this variable is set, it replaces any packages defined by default in the
kickstart templates. It also replaces any packages requested by the recipe,
including task requirements.
In a recipe, considering using the <package/> element instead. This
augments the package list instead of replacing it completely.
- password=<encrypted>
- Root password to use. Must be encrypted in the conventional
crypt(3) format.
- pkgoptions=<options>
- Options to pass to the %packages section in the kickstart file. If
this variable is set, it overrides the default option --ignoremissing.
See the kickstart documentation <http://pykickstart.readthedocs.io/en/latest/kickstart-docs.html#chapter-7-package-selection>
for the available options to %packages.
- remote_post=<url>
- Specify a URL to a script to be executed post-install. The script must specify a
interpreter using the #! line if not a bash script. This is especially useful
for systems set to Manual mode. If you are scheduling a job, a
simpler alternative is to embed a %post scriptlet directly in your
job XML using the <ks_append/> element.
- rootfstype
- Filesystem type for the root filesystem. Default is to allow the installer
to choose.
- scsidevices=<module>[,<module>...]
- Comma-separated list of SCSI modules to be loaded during installation.
- selinux=<state>
- SELinux state to set. Valid values are --disabled, --permissive,
and --enforcing. Default is --enforcing.
- skipx
- Do not configure X on the installed system. This is needed for headless
systems which lack graphics support.
- skip_taskrepo
- Configure skip_if_unavailable yum repo attribute for task repository.
Default value is 0.
- static_networks=<device>,<ipv4_address>[;...]
Configure one or more network devices to start on boot with static IPv4
addresses. The device should be given as a kernel device name (for example,
em1) or MAC address. The IPv4 address should be given with its netmask
in CIDR notation (for example, 192.168.99.1/24).
Note that the network device used for installation is always set to start
on boot with DHCP activation.
- swapsize
- Size of the swap partition in MB.
- timezone=<tzname>
- Time zone to use. Default is America/New_York unless overridden by the
administrator.
- yum_install_extra_opts
Extra command-line options which will be passed to all invocations of yum
install which Beaker produces in the generated kickstart.
On RHEL3 and RHEL4 this variable defaults to “-d 1” which inhibits Yum’s
progress bar made up of hashes which can take a long time to print. On
newer releases, where Yum’s progress bar produces less output, this
variable is undefined.