From 8d3e21d74fc9b3ee8810a2719cf946a5505eb7f7 Mon Sep 17 00:00:00 2001 From: Arthur Golubtsov Date: Tue, 13 Aug 2019 23:19:45 +0300 Subject: [PATCH] builder: Repo copy depends on the way of building - local or in cloud --- builder/image-build.sh | 40 +++++++++++++++++++++++++--------------- 1 file changed, 25 insertions(+), 15 deletions(-) diff --git a/builder/image-build.sh b/builder/image-build.sh index e2f70d5..37c4a1a 100755 --- a/builder/image-build.sh +++ b/builder/image-build.sh @@ -76,24 +76,34 @@ img-resize ${IMAGE_PATH} max '5G' # Include dotfiles in globs (asterisks) shopt -s dotglob -echo_stamp "Mount loop-image: ${IMAGE_PATH}" -DEV_IMAGE=$(losetup -Pf ${IMAGE_PATH} --show) -sleep 0.5 +if [[ -z $TRAVIS_TAG]] +then + echo_stamp "Mount loop-image: ${IMAGE_PATH}" + DEV_IMAGE=$(losetup -Pf ${IMAGE_PATH} --show) + sleep 0.5 -MOUNT_POINT=$(mktemp -d --suffix=.builder_image) -echo_stamp "Mount dirs ${MOUNT_POINT} & ${MOUNT_POINT}/boot" -mount "${DEV_IMAGE}p2" ${MOUNT_POINT} -mount "${DEV_IMAGE}p1" ${MOUNT_POINT}/boot + MOUNT_POINT=$(mktemp -d --suffix=.builder_image) + echo_stamp "Mount dirs ${MOUNT_POINT} & ${MOUNT_POINT}/boot" + mount "${DEV_IMAGE}p2" ${MOUNT_POINT} + mount "${DEV_IMAGE}p1" ${MOUNT_POINT}/boot -mkdir -p ${MOUNT_POINT}'/home/pi/CleverSwarm/' -for dir in ${REPO_DIR}/*; do - if [[ $dir != *"images" && $dir != *"imgcache" ]]; then - cp -r $dir ${MOUNT_POINT}'/home/pi/CleverSwarm/'$(basename $dir) - fi; -done + mkdir -p ${MOUNT_POINT}'/home/pi/CleverSwarm/' + for dir in ${REPO_DIR}/*; do + if [[ $dir != *"images" && $dir != *"imgcache" ]]; then + cp -r $dir ${MOUNT_POINT}'/home/pi/CleverSwarm/'$(basename $dir) + fi; + done -umount -fR ${MOUNT_POINT} -losetup -d ${DEV_IMAGE} + umount -fR ${MOUNT_POINT} + losetup -d ${DEV_IMAGE} +else + for dir in ${REPO_DIR}/*; do + # Don't try to copy image into itself + if [[ $dir != *"images" && $dir != *"imgcache" ]]; then + img-chroot ${IMAGE_PATH} copy $dir '/home/pi/CleverSwarm/' + fi; + done +fi # Install software img-chroot ${IMAGE_PATH} exec ${SCRIPTS_DIR}'/image-software.sh'