Author: nickboldt
Date: 2011-07-21 16:47:34 -0400 (Thu, 21 Jul 2011)
New Revision: 33115
Modified:
trunk/build/publish.sh
Log:
JBIDE-8667 instead of just using rsync --delete to replace previous builds, use folder
rotation scheme to avoid lengthy broken folders (incomplete updates)
Modified: trunk/build/publish.sh
===================================================================
--- trunk/build/publish.sh 2011-07-21 20:24:29 UTC (rev 33114)
+++ trunk/build/publish.sh 2011-07-21 20:47:34 UTC (rev 33115)
@@ -284,10 +284,38 @@
fi
# and create/replace a snapshot dir outside Hudson which is file:// accessible
- date; rsync -arzq --delete ${STAGINGDIR} $INTRNALDEST/builds/staging/
+ date; rsync -arzq --delete ${STAGINGDIR}/*
$INTRNALDEST/builds/staging/${STAGINGDIR}.next
# and create/replace a snapshot dir w/ static URL
- date; rsync -arzq --delete ${STAGINGDIR} $DESTINATION/builds/staging/
+ date; rsync -arzq --delete ${STAGINGDIR}/*
$DESTINATION/builds/staging/${STAGINGDIR}.next
+
+ # 1. To recursively purge contents of .../staging.previous/foobar/ folder:
+ # mkdir -p /tmp/foobar;
+ # rsync -aPrz --delete /tmp/foobar
tools@filemgmt.jboss.org:/downloads_htdocs/tools/builds/staging.previous/
+ # 2. To then remove entire .../staging.previous/foobar/ folder:
+ # echo -e "rmdir foobar" | sftp
tools@filemgmt.jboss.org:/downloads_htdocs/tools/builds/staging.previous/
+ # rmdir /tmp/foobar
+
+ # TODO: JBIDE-8667 move current to previous; move next to current
+
+ # create folders if not already there (could be empty)
+ echo -e "-mkdir ${JOB_NAME}" $DESTINATION/builds/staging.previous/
+ echo -e "-mkdir ${JOB_NAME}.2" $DESTINATION/builds/staging.previous/
+
+ # purge contents of /builds/staging.previous/${JOB_NAME}.2 and remove empty dir
+ mkdir -p /tmp/${JOB_NAME}.2
+ rsync -arzq --delete /tmp/${JOB_NAME}.2 $DESTINATION/builds/staging.previous/
+ echo -e "rmdir ${JOB_NAME}.2" | sftp
tools@filemgmt.jboss.org:/downloads_htdocs/tools/builds/staging.previous/
+ rmdir /tmp/${JOB_NAME}.2
+
+ # move contents of /builds/staging.previous/${JOB_NAME} into
/builds/staging.previous/${JOB_NAME}.2
+ echo -e "rename ${JOB_NAME} ${JOB_NAME}.2"
$DESTINATION/builds/staging.previous/
+
+ # move contents of /builds/staging/${JOB_NAME} into
/builds/staging.previous/${JOB_NAME}
+ echo -e "rename ${JOB_NAME} ../staging.previous/${JOB_NAME}"
$DESTINATION/builds/staging/
+
+ # move contents of /builds/staging/${JOB_NAME}.next into /builds/staging/${JOB_NAME}
+ echo -e "rename ${JOB_NAME}.next ${JOB_NAME}" $DESTINATION/builds/staging/
fi
# extra publish step for aggregate update sites ONLY
Show replies by date