kickstart/lib/kickstart-compile

54 lines
988 B
Plaintext
Raw Normal View History

2014-02-20 15:53:24 +00:00
#!/bin/bash -e
module_loading=$(cat <<MODULE
current_dir=\$(pwd)
cd modules/kickstart
source install.sh
cd \$current_dir
2014-02-20 15:53:24 +00:00
for module in modules/*; do
if [ ! \$module = module/kickstart ]; then
cd \$module
source install.sh
cd \$current_dir
fi
2014-02-20 15:53:24 +00:00
done
MODULE
)
clean_up_compile_folder() {
[ -d compile ] && rm -rf compile
mkdir -p compile
}
link_folder() {
[[ -h compile/$1 ]] || ln -s ../$1 compile/$1
}
link_modules() {
mkdir -p compile/modules
ln -s `kickstart root-dir`/kickstart compile/modules/kickstart
if [ -d modules ]; then
for module in modules/*; do
ln -s `pwd`/$module compile/$module
2014-02-20 15:53:24 +00:00
done
fi
}
compile_install() {
cat <( echo -e "$module_loading" ) install.sh > compile/install.sh
for role in $@; do
echo "source roles/${role}.sh" >> compile/install.sh
done
}
clean_up_compile_folder
link_folder files
link_folder recipes
link_folder roles
link_modules
compile_install $@
echo -e "\necho Done" >> compile/install.sh