-
Notifications
You must be signed in to change notification settings - Fork 0
Common Roles
These roles are used by machines that are defined in the default minicoin configuration.
The following roles are implemented for Linux, Windows, and macOS as host development platforms.
Installs development tools such as cmake, ninja, perl, git, and python.
Installs the tools and packages required to build (most of) Qt.
Can be parameterized to install some optional packages:
- roles:
- role: qt-builder
sqldrivers:
- psql
- mysql
- ibase
- odbc
Note that not all optional packages are available on all platforms.
For Windows, this role can also be parameterized with compiler
(can be msvc
or mingw
) and version
(2017
, 2019
, or 2022
for msvc; or a mingw version
such as `11.2.0.07112021). Installing multiple compilers is not supported.
Generic roles allow performing specific actions as part of machine provisioning, and always need to be parameterized, often with platform-specific values.
Installs a package on the guest using the guest-specific package management system.
roles:
- role: install
packages: [ cmake, ninja ]
Runs the provided script on the guest.
roles:
- role: script
script: "sed -i 's/^SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config"
Uploads a file or directory to the guest. The input is a dictionary of
source
: target
mappings.
roles:
- role: upload
files:
$HOME/.gitconfig: ~/.gitconfig
These roles are platform specific (it is usually obvious which platform they are for), and perform a series of complex provisioning steps inside the guest virtual machine to enable it to execute certain jobs. They can all be used without any parameters to provision the default configuration, but many can be modified.
Installs the Android SDK.
Installs the Android Emulator. This requires a provider that supports nested virtualization.
Installs a linux desktop environment on a linux machine. The desktop
environment can be configured using the desktop
parameter, but not all
environments are supported for all linux distributions.
Provider settings allow for detail configuration of the provider.
See the Provider Notes for the documentation of this role for each provider.