Prepare Plugins

ansible

Warning

Please, be aware that the documentation below is a work in progress. We are working on fixing it, adding missing bits and generally making it better. Also, it was originaly used for command line help only, therefore the formatting is often suboptional.

Prepare guest using Ansible.

Run a single playbook on the guest:

prepare:
    how: ansible
    playbook: ansible/packages.yml

Run multiple playbook in one phase, with extra arguments for ansible-playbook:

prepare:
    how: ansible
    playbook:
      - playbook/one.yml
      - playbook/two.yml
      - playbook/three.yml
    extra-args: '-vvv'

Remote playbooks can be referenced as well as local ones, and both kinds can be intermixed:

prepare:
    how: ansible
    playbook:
      - playbook/one.yml
      - https://foo.bar/two.yml
      - playbook/three.yml

The playbook path must be relative to the metadata tree root.

The playbook path should be relative to the metadata tree root.

Configuration

extra-args: EXTRA-ARGS

Optional arguments for ansible-playbook.

Default: not set

playbook: PATH|URL

Path or URL of an ansible playbook to run. The playbook path must be relative to the metadata tree root.

Default: not set

Common Keys

name:

The name of the step phase.

order:

Order in which the phase should be handled.

Default: 50

summary:

Concise summary describing purpose of the phase.

Default: not set

where: GUEST|ROLE

Run this phase on given guest or guests with the given role only.

Default: not set


feature

Warning

Please, be aware that the documentation below is a work in progress. We are working on fixing it, adding missing bits and generally making it better. Also, it was originaly used for command line help only, therefore the formatting is often suboptional.

Enable or disable common features like repositories on the guest.

Example config:

prepare:
    how: feature
    epel: enabled

Or

prepare:
    how: feature
    epel: disabled

Configuration

epel: enabled|disabled

Whether EPEL repository should be installed & enabled or disabled.

Default: not set

Common Keys

name:

The name of the step phase.

order:

Order in which the phase should be handled.

Default: 50

summary:

Concise summary describing purpose of the phase.

Default: not set

where: GUEST|ROLE

Run this phase on given guest or guests with the given role only.

Default: not set


install

Warning

Please, be aware that the documentation below is a work in progress. We are working on fixing it, adding missing bits and generally making it better. Also, it was originaly used for command line help only, therefore the formatting is often suboptional.

Install packages on the guest.

Example config:

prepare:
    how: install
    copr: psss/tmt
    package: tmt-all
    missing: fail

Use copr for enabling desired Copr repository and missing to choose whether missing packages should be silently ignored (skip) or a preparation error should be reported (fail), which is the default.

In addition to package name you can also use one or more paths to local rpm files to be installed:

prepare:
    how: install
    package:
        - tmp/RPMS/noarch/tmt-0.15-1.fc31.noarch.rpm
        - tmp/RPMS/noarch/python3-tmt-0.15-1.fc31.noarch.rpm

Use directory to install all packages from given folder and exclude to skip selected packages:

prepare:
    how: install
    directory: tmp/RPMS/noarch
    exclude: tmt+provision-virtual

Note

When testing ostree booted deployments tmt will use rpm-ostree as the package manager to perform the installation of requested packages. The current limitations of the rpm-ostree implementation are:

  • Cannot install new version of already installed local rpm.

  • No support for installing debuginfo packages at this time.

Configuration

copr: REPO

Copr repository to be enabled.

Default: not set

directory: PATH

Path to a local directory with rpm packages.

Default: not set

exclude: PACKAGE

Packages to be skipped during installation.

Default: not set

missing: ACTION

Action on missing packages, fail (default) or skip.

Default: fail

package: PACKAGE

Package name or path to rpm to be installed.

Default: not set

Common Keys

name:

The name of the step phase.

order:

Order in which the phase should be handled.

Default: 50

summary:

Concise summary describing purpose of the phase.

Default: not set

where: GUEST|ROLE

Run this phase on given guest or guests with the given role only.

Default: not set


shell

Warning

Please, be aware that the documentation below is a work in progress. We are working on fixing it, adding missing bits and generally making it better. Also, it was originaly used for command line help only, therefore the formatting is often suboptional.

Prepare guest using shell (Bash) scripts.

Run various commands and scripts on the guest:

prepare:
    how: shell
    script:
      - sudo dnf install -y 'dnf-command(copr)'
      - sudo dnf copr enable -y psss/tmt
      - sudo dnf install -y tmt

Configuration

script: SCRIPT

Shell script to be executed. Can be used multiple times.

Default: not set

Common Keys

name:

The name of the step phase.

order:

Order in which the phase should be handled.

Default: 50

summary:

Concise summary describing purpose of the phase.

Default: not set

where: GUEST|ROLE

Run this phase on given guest or guests with the given role only.

Default: not set