(See the sample Shellshock provisioning directory for examples)
A Shellshock provisioning directory should be structured like so:
files/
scripts/
settings/
shellshock.json
The shellshock.json
file is the Shellshock configuration file. Each directory is explained below.
Any files to be copied to the remote machine should be stored in the files
directory. These files will be available to the provisioning scripts, but will be deleted after provisioning so any files needed after provisioning should be copied by the scripts to persistent locations.
The scripts
directory contains one or more shell scripts. These will be referenced in the settings
directory, explained below. See the full docs on writing scripts for more.
The settings
directory contains a number of JSON files, matching the names of groups in the main config file. Each file should contain the following format:
{
"files": [
...
],
"scripts": [
...
]
}
files
is an array of paths within the files
directory to be copied with this group, and the scripts
is an array of paths to scripts within the scripts
directory to be run for this group.