Roger Luethi 0caf4cf52e Add and enable Vagrant script
This changeset adds vagrant/run_scripts.sh, a script executed by the
Vagrant shell provisioner inside the node VM.

run_scripts.sh executes the scripts enabled in:

config/scripts.nodeinit_vagrant
config/scripts.ubuntu
config/scripts.$HOSTNAME

Note that while Vagrant calls run_scripts.sh through symlinks named
after the nodes (controller.sh, network.sh, compute.sh), this has no
effect because run_scripts.sh relies on the hostname to select the
configuration.

The symlinks (and the Vagrantfile section that calls them) can be removed
once we are reasonably sure that we don't want to have node-specific
scripts for Vagrant on the host-side.

Partial-Bug: 1312764
Implements: blueprint openstack-training-labs
Change-Id: Ia5cfee0acddae26bd41e39b9185ed3d5990539f6
2014-06-17 12:23:48 +02:00

22 lines
596 B
Bash

#!/usr/bin/env bash
set -o errexit
# Shell provisioning script is renamed and copied to /tmp before being run as
# root
TOP_DIR=/vagrant
source "$TOP_DIR/config/paths"
source "$LIB_DIR/functions.guest"
clean_dir "$LOG_DIR"
exec_logpath "$LOG_DIR/$HOSTNAME.log"
# The Vagrantfile uses precise, so we know it's Ubuntu
for CONFIG_FILE in "scripts.nodeinit_vagrant" "scripts.ubuntu" "scripts.$HOSTNAME"; do
echo "Config file $CONFIG_FILE"
get_script_paths_from_config "$CONFIG_FILE" | while read SCR_PATH; do
echo "$SCR_PATH"
as_root_exec_script "$SCR_PATH"
done
done