#!/bin/bash # # Setup submodules. # # Parameters DIRNAME="`dirname $0`" # Usage function usage { echo "Usage: $1 add-submodules " exit $2 } # Set puppet folder if [ -d "puppet" ]; then PUPPET_FOLDER="puppet" else PUPPET_FOLDER="." fi # Get module list repos="`grep = $DIRNAME/../.mrconfig | cut -d = -f 2 | cut -d ' ' -f 4`" # Add submodules for repo in $repos; do module="`basename $repo .git | sed -e s/^puppet-//`" if [ ! -d "$PUPPET_FOLDER/modules/$module" ]; then echo "Processing puppet module $module..." git submodule add -f $repo $PUPPET_FOLDER/modules/$module elif [ -e "modules/$module/.git" ]; then # The puppet module exists and is a git submodule, so update it ( cd $PUPPET_FOLDER/modules/$module && git pull origin master ) fi done # Update all modules git submodule update --init