From b968eff8ad6eba91c3fb725d0de6a425f962d6b5 Mon Sep 17 00:00:00 2001 From: jalr Date: Sun, 18 Mar 2018 14:38:49 +0100 Subject: [PATCH] Fix labsync seeder --- .../roles/labsync/files/labsync-seeder.sh | 26 ++++++------------- packer/initramfs/labsync | 17 ++++++++---- 2 files changed, 20 insertions(+), 23 deletions(-) diff --git a/packer/ansible/roles/labsync/files/labsync-seeder.sh b/packer/ansible/roles/labsync/files/labsync-seeder.sh index 27879a4..5b4b203 100755 --- a/packer/ansible/roles/labsync/files/labsync-seeder.sh +++ b/packer/ansible/roles/labsync/files/labsync-seeder.sh @@ -2,25 +2,15 @@ set -e -set -- $(cat /proc/cmdline) -for x in "$@"; do - arg="$(echo $x | cut -d= -f1)" - case "$arg" in - disk|torrent_file|torrent) - eval $arg="$(echo $x | cut -d= -f2)" - ;; - esac -done - cd /tmp -ln -s "${disk}1" "$torrent_file" +ln -s "$LABSYNC_SQUASHFS_LV" "$LABSYNC_SQUASHFS_FILE" exec aria2c \ ---allow-overwrite \ ---check-integrity \ ---seed-ratio=0.0 \ ---summary-interval=60 \ ---file-allocation=none \ ---enable-dht=false \ -"$torrent" + --allow-overwrite \ + --check-integrity \ + --seed-ratio=0.0 \ + --summary-interval=60 \ + --file-allocation=none \ + --enable-dht=false \ + "$LABSYNC_TORRENT" diff --git a/packer/initramfs/labsync b/packer/initramfs/labsync index a52ea91..0aada90 100755 --- a/packer/initramfs/labsync +++ b/packer/initramfs/labsync @@ -1,5 +1,13 @@ #!/bin/sh +labsync_set_environment() { + if grep -q "^${1}=" /root/etc/environment; then + sed -i "s/^\(${1}\)=.*$/\1='${2}'/" /root/etc/environment + else + echo "${1}='${2}'" >> /root/etc/environment + fi +} + labsync_lv_path() { lvm lvs "$1/$2" -o LV_PATH --noheadings | sed 's/\s//g' } @@ -175,11 +183,10 @@ PARTTABLE mount -t overlay overlay -o lowerdir=/ro_root,upperdir=/rw_root/upper,workdir=/rw_root/work /root if [ -z "$labsync_localboot" ]; then - if grep -q '^LABSYNC=' /root/etc/environment; then - sed -i "s/^\(LABSYNC\)=.*$/\1='$torrent_name'/" /root/etc/environment - else - echo "LABSYNC='$torrent_name'" >> /root/etc/environment - fi + labsync_set_environment LABSYNC "$torrent_name" + labsync_set_environment LABSYNC_TORRENT "${labsync_torrent}" + labsync_set_environment LABSYNC_SQUASHFS_FILE "$squashfs_file" + labsync_set_environment LABSYNC_SQUASHFS_LV "$lv_path_squashfs" fi case "$labsync_wait" in