diff options
author | Silvio Rhatto <rhatto@riseup.net> | 2011-11-28 23:41:57 -0200 |
---|---|---|
committer | Silvio Rhatto <rhatto@riseup.net> | 2011-11-28 23:41:57 -0200 |
commit | 90fda0e707593f541831fe6d44b2af902c0ead2d (patch) | |
tree | 3b51ea76e0461ad262206c08e24dd28cd956c70c | |
parent | 78945d56a0c78d0cef891f5797ef9807a4b298b2 (diff) | |
download | hydra-90fda0e707593f541831fe6d44b2af902c0ead2d.tar.gz hydra-90fda0e707593f541831fe6d44b2af902c0ead2d.tar.bz2 |
Support for updating multiple modules at once
-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 |