From 7e50ae7becc4ee9b89664a8ec4eca4193cc74482 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=A1s=20Reynolds?= Date: Sat, 4 Aug 2012 14:16:53 -0300 Subject: Only remove synced files, avoids removing packages added by librestage during sync --- librerelease | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/librerelease b/librerelease index a03ea98..82a6ab4 100755 --- a/librerelease +++ b/librerelease @@ -91,7 +91,7 @@ function clean_non_packages { # Clean everything if not on dry-run mode function clean { [ -z ${dryrun} ] && \ - find ${WORKDIR}/staging/ -type f -delete + rm -f $@ } if [ -w / ]; then @@ -126,6 +126,9 @@ fi find ${WORKDIR}/staging -type f -exec chmod 644 {} \; find ${WORKDIR}/staging -type d -exec chmod 755 {} \; +# Get the synced files +SYNCED_FILES=($(find ${WORKDIR}/staging -type f)) + msg "Uploading packages..." rsync --recursive \ ${dryrun} \ @@ -144,8 +147,8 @@ rsync --recursive \ exit 1 } -msg "Removing packages from local [staging]" -clean +msg "Removing ${#SYNCED_FILES[@]} packages from local [staging]" +clean ${SYNCED_FILES[@]} msg "Running db-update on repos" ssh ${PARABOLAHOST} dbscripts/db-update -- cgit v1.2.3