Provisioning scripts
After Steep’s cloud manager has created a VM, it uploads the provisioning scripts defined in the corresponding setup to the VM and executes them. The scripts can be used to deploy software to the VM and to make sure all required services (including Steep) are running.
Each provisioning script is a simple executable script file with a valid UNIX shebang at the beginning.
Script files will be processed by a template engine before they are uploaded. The following sections describe supported template instructions.
Global variables
Here is a list of the global variables defined in provisioning scripts:
Environment variables
Access any environment variable defined on the system where Steep is running (not the VM to be provisioned) as follows:
Configuration values
Use values from Steep’s main configuration file (steep.yaml) as follows:
Read local files
Insert the contents of a local file into the provisioning script.
Upload local files to remote
Upload one or more local files to the remote VM.
source
may contain a glob pattern (e.g. *.sh
or **/*.yaml
) if you want to
upload multiple files or if you want to recursively transfer a whole directory
tree. In this case, destination
should be a directory and it should exist.