Most of the Ansible plays are generic enough to work on all distributions that have SSSD and FreeIPA available. However a set of package names must be provided for each distributions, since the package names may be different across Linux families like Fedora and Debian and they may vary even on different versions of the same distribution.
The packages are installed via the packages
role located at
./provision/roles/packages
. Its main tasks/main.yml
file includes
distribution specific files from tasks/$distro-name$distro-version.yml
(e.g. tasks/Fedora30.yml)
so this file needs to be created.
This file must make sure that all required packages are installed, such as
packages required to build SSSD and run its tests. There are also other packages
to help with working with the system such as terminal multiplexors, tig, git
and others. Please, use Fedora27.yml
and other files as as reference.
You can create a new vagrant box from your guests by using
./sssd-test-suite box create
command. This is most helpful to issue a new
pre-provisioned boxes. You can do this with one command:
$ ./sssd-test-suite box create --linux $linux-os --windows $windows-os --update --from-scratch all
Or to provision only the Linux guests:
$ ./sssd-test-suite box create --linux $linux-os --update --from-scratch ipa ldap client
See ./sssd-test-suite box create --help
for more information.
You can also upload the newly created boxes to the vagrant cloud.
./sssd-test-suite cloud upload -u $cloud-username -t $api-token box-file1 box-file2 ...
This commands expects name in a specific format so be sure to upload only these
boxes that are generated by box create
command.