Revert "dockerctl: Update authorized_keys in bootstrap images during restore"
This reverts commit fce2e2a764
.
Change-Id: I01d9c25b06cf65c0b68cb1bcfa4ae89513cd0185
This commit is contained in:
parent
fce2e2a764
commit
dd08faa0e1
@ -735,56 +735,6 @@ function check_nailgun_tasks {
|
||||
return $?
|
||||
}
|
||||
|
||||
# Defer expression evaluation until the current subshell exits
|
||||
function defer {
|
||||
declare -ga traps
|
||||
traps[${#traps[*]}]=`trap`
|
||||
trapcmd="$(printf "%q " "$@"); __finally"
|
||||
trap "eval eval \"$(printf '"%q" ' "$trapcmd")\"" EXIT
|
||||
}
|
||||
|
||||
# Helper function for "defer"
|
||||
function __finally {
|
||||
declare -ga traps
|
||||
local cmd
|
||||
cmd="${traps[${#traps[@]}-1]}"
|
||||
unset traps[${#traps[@]}-1]
|
||||
eval set -- "${cmd}"
|
||||
if [ "$1/$2/$4" = "trap/--/EXIT" ]; then
|
||||
eval "$3" || true
|
||||
else
|
||||
eval "${cmd}"
|
||||
fi
|
||||
}
|
||||
|
||||
function update_ssh_keys {
|
||||
# Copy masternode's .ssh/id*.pub to all bootstrap images
|
||||
cat /root/.ssh/id*.pub > /tmp/authorized_keys
|
||||
SQ_MOUNT_POINT=$(mktemp -d)
|
||||
sqfs=/var/www/nailgun/bootstraps/active_bootstrap/root.squashfs
|
||||
test -e /var/www/nailgun/bootstraps/active_bootstrap/root.squashfs || return 0
|
||||
b=${sqfs#/var/www/nailgun/bootstraps/}
|
||||
(
|
||||
set -e
|
||||
mount -o loop,ro $sqfs $SQ_MOUNT_POINT
|
||||
defer umount $SQ_MOUNT_POINT
|
||||
mount -t tmpfs tmpfs $SQ_MOUNT_POINT/mnt
|
||||
defer umount $SQ_MOUNT_POINT/mnt
|
||||
mkdir $SQ_MOUNT_POINT/mnt/{bootstraps,src}
|
||||
defer rmdir $SQ_MOUNT_POINT/mnt/{bootstraps,src}
|
||||
mount --bind /var/www/nailgun/bootstraps $SQ_MOUNT_POINT/mnt/bootstraps
|
||||
defer umount $SQ_MOUNT_POINT/mnt/bootstraps
|
||||
mount --bind $SQ_MOUNT_POINT $SQ_MOUNT_POINT/mnt/src
|
||||
defer umount $SQ_MOUNT_POINT/mnt/src
|
||||
COMP=$(chroot $SQ_MOUNT_POINT unsquashfs -s /mnt/bootstraps/$b | awk '/Compression/ { print $2 }')
|
||||
mount --bind /tmp/authorized_keys $SQ_MOUNT_POINT/root/.ssh/authorized_keys
|
||||
defer umount $SQ_MOUNT_POINT/root/.ssh/authorized_keys
|
||||
chroot $SQ_MOUNT_POINT mksquashfs /mnt/src/ /mnt/bootstraps/$b~ -comp $COMP -no-progress -noappend
|
||||
mv $sqfs~ $sqfs
|
||||
)
|
||||
rmdir $SQ_MOUNT_POINT
|
||||
}
|
||||
|
||||
function restore {
|
||||
#TODO(mattymo): Optionally not include system dirs during restore
|
||||
#TODO(mattymo): support remote file such as ssh://user@myhost/backup.tar.lrz
|
||||
@ -832,7 +782,6 @@ finish or cancel them. Run \"fuel task list\" for more details." 1>&2
|
||||
unpack_archive "$backupfile" "$restoredir"
|
||||
[ "$fullrestore" == "1" ] && restore_images "$restoredir"
|
||||
[ "$fullrestore" == "1" ] && rename_images "$timestamp"
|
||||
[ "$fullrestore" == "1" ] || update_ssh_keys
|
||||
restore_systemdirs "$restoredir"
|
||||
set +e
|
||||
echo "Starting containers..."
|
||||
|
Loading…
Reference in New Issue
Block a user