diff options
Diffstat (limited to 'lib/hydra/provision')
-rw-r--r-- | lib/hydra/provision | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/lib/hydra/provision b/lib/hydra/provision new file mode 100644 index 0000000..5c85e04 --- /dev/null +++ b/lib/hydra/provision @@ -0,0 +1,45 @@ +#!/bin/bash + +# Load provision configuration +function hydra_provision_load_config { +if [ ! -z "$1" ]; then + if [ -f "$1" ]; then + echo "Using configuration from file $1..." + source "$1" + elif [ -f "$1.conf" ]; then + echo "Using configuration from file $1.conf..." + source "$1.conf" + elif [ -f "$HYDRA_FOLDER/config/provision/$1" ]; then + echo "Using configuration from $HYDRA_FOLDER/config/provision/$1..." + source "$HYDRA_FOLDER/config/provision/$1" + elif [ -f "$HYDRA_FOLDER/config/provision/$1.conf" ]; then + echo "Using configuration from $HYDRA_FOLDER/config/provision/$1.conf..." + source "$HYDRA_FOLDER/config/provision/$1.conf" + elif [ -f "$APP_BASE/share/config/provision/$1" ]; then + echo "Using configuration from $APP_BASE/share/config/provision/$1..." + source "$APP_BASE/share/config/provision/$1" + elif [ -f "$APP_BASE/share/config/provision/$1.conf" ]; then + echo "Using configuration from $APP_BASE/share/config/provision/$1.conf..." + source "$APP_BASE/share/config/provision/$1.conf" + else + echo "Profile not found: $1" + exit 1 + fi +fi +} + +# Networking. +function hydra_provision_networking { + echo "Doing a basic network config..." + cat <<-EOF | $SUDO tee $WORK/etc/network/interfaces > /dev/null +auto eth0 +allow-hotplug eth0 +iface eth0 inet dhcp +EOF +} + +function hydra_provision_fingerprints { + echo "OpenSSH fingerprints:" + hydra_sudo_run chroot $WORK ssh-keygen -l -f /etc/ssh/ssh_host_dsa_key.pub + hydra_sudo_run chroot $WORK ssh-keygen -l -f /etc/ssh/ssh_host_rsa_key.pub +} |