We want the provisioning scripts to run independent of Coin, so that people without Coin can provision the same VMs.
Currently, Coin includes some logic that goes through certain directories in alphabetical order and executes all scripts it finds. This logic is very simple and it currently is in src/agent/build.go:runProvisionScripts().
This task is about moving this logic to a (power)shell script.
- People can call one script and replicate the whole provisioning process
- Common environment can be defined in that shell script, and kept valid for all sub-scripts executed; for example variables like PROVISIONING_DIR and OS_NAME and avoid repetition that is currently everywhere in the provisioning scripts
- The whole provisioning process will then be opaque to Coin, i.e. the whole process appears as a single command to it.