From 5dd16e14dd41f1565687142ba7cefa7c4cf64658 Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Tue, 12 Nov 2013 13:39:41 +0100 Subject: wip --- hooks/post-receive | 89 ++---------------------------------------------------- 1 file changed, 3 insertions(+), 86 deletions(-) (limited to 'hooks/post-receive') diff --git a/hooks/post-receive b/hooks/post-receive index c52ac9c..7cc91f5 100755 --- a/hooks/post-receive +++ b/hooks/post-receive @@ -10,93 +10,10 @@ APPSTORE_HOME=$(git config appstore.home) # stdin contains the refs pushed. -conf_get() { - name=$1; shift - var=$1; shift - value=$(app cat-conf -f "$APPS/appstore.config" -k "$var" | cut -f 2- -d =) - eval ${name}='${value}' -} - -check_app() { - local app=$1; shift - - dir=$app - conf_get resolver "${app}.resolver" - conf_get resolver_args "${app}.resolver_args" - conf_get version "${app}.version" - conf_get state "${app}.state" - - if [[ -z $resolver ]] || [[ -z $resolver_args ]] || [[ -z $version ]] || [[ -z $state ]] - then - echo "$app: invalid configuration, missing one of ${app}.resolver, ${app}.resolver_args, ${app}.version, ${app}.state" - return - fi - - cd "$APPS" - - if [ -d "$dir" ] - then - cd "$dir" - dir=`pwd` - old_version=$(app conf get app.version) - - if [[ $new_version = $old_version ]] - then - echo "$dir: already at $version" - continue - fi - - echo "$dir: updating to $version" - app conf set app.version "$version" - app update - else - echo "$dir: new app" - if [[ -r ${dir}.config ]] - then - append_config="${dir}.config" - fi - - app init \ - ${append_config:+-c} $append_config \ - -d "$dir" \ - "$resolver" "$resolver_args" - cd "$dir" - dir=`pwd` - fi - - cd "$dir" - - if [[ $state = enabled ]] - then - app start || true - else - app stop || true - fi -} - +#REPO="$(pwd)" +REPO="$GIT_DIR" APPS="$(git config appstore.apps)" -REPO="$(pwd)" - -cd "$APPS" - unset GIT_DIR -git pull -q "$REPO" master - -conf_get apps appstore.apps -apps=$(echo "$apps" | sed "s/, */,/g") - -IFS=, -for app in $apps -do - if [[ $app = "" ]] - then - continue - fi - - assert_valid_app_name "$app" - - check_app "$app" || true -done -echo "Done." +exec appstore server-sync "$REPO" "$APPS" -- cgit v1.2.3