diff options
Diffstat (limited to 'share')
-rwxr-xr-x | share/hydra/module-update | 51 |
1 files changed, 29 insertions, 22 deletions
diff --git a/share/hydra/module-update b/share/hydra/module-update index ac19b57..1b0563e 100755 --- a/share/hydra/module-update +++ b/share/hydra/module-update @@ -7,26 +7,33 @@ source $APP_BASE/lib/hydra/functions || exit 1 hydra_config_load -# Command line arguments -MODULE="$1" +function hydra_module_update { + # Command line arguments + MODULE="$1" + + # Validation + if [ -z "$MODULE" ]; then + echo "Usage: hydra <hydra> module-update <module>" + exit 1 + elif [ ! -d "$PUPPET/modules/$MODULE" ]; then + echo "No such module $MODULE at $HYDRA puppet configuration." + exit 1 + fi + + # Update the module + ( cd $PUPPET/modules/$MODULE; git pull origin master ) + + # Verify the module + if ! hydra $HYDRA module-verify $MODULE; then + echo "ERROR: Updated module doesn't match hash, please verify and update manually." + exit 1 + fi + + # Commit + ( cd $PUPPET; git commit -a -m "Updating module $MODULE"; git push ) +} -# Validation -if [ -z "$MODULE" ]; then - echo "Usage: hydra <hydra> module-update <module>" - exit 1 -elif [ ! -d "$PUPPET/modules/$MODULE" ]; then - echo "No such module $MODULE at $HYDRA puppet configuration." - exit 1 -fi - -# Update the module -( cd $PUPPET/modules/$MODULE; git pull origin master ) - -# Verify the module -if ! hydra $HYDRA module-verify $MODULE; then - echo "ERROR: Updated module doesn't match hash, please verify and update manually." - exit 1 -fi - -# Commit -( cd $PUPPET; git commit -a -m "Updating module $MODULE"; git push ) +for module in $*; do + echo "Updating module $module..." + hydra_module_update $module +done |