Skip to content

Commit

Permalink
restore support for old persistence media
Browse files Browse the repository at this point in the history
  • Loading branch information
evgeni committed Jun 26, 2015
1 parent c9f691f commit 14f658f
Show file tree
Hide file tree
Showing 3 changed files with 47 additions and 1 deletion.
3 changes: 3 additions & 0 deletions components/9990-aaa-fixme.sh
Expand Up @@ -26,5 +26,8 @@ then
export PATH
fi

old_root_overlay_label="live-rw"
old_home_overlay_label="home-rw"
custom_overlay_label="persistence"
old_custom_overlay_label="custom-ov"
persistence_list="persistence.conf"
26 changes: 26 additions & 0 deletions components/9990-misc-helpers.sh
Expand Up @@ -1646,6 +1646,32 @@ activate_custom_mounts ()
echo ${used_devices}
}

fix_backwards_compatibility ()
{
local device dir opt backing include_list
device=${1}
dir=${2}
opt=${3}

if [ -n "${PERSISTENCE_READONLY}" ]
then
return
fi

backing="$(mount_persistence_media ${device})"
if [ -z "${backing}" ]
then
return
fi

include_list="${backing}/${persistence_list}"
if [ ! -r "${include_list}" ] && [ ! -r "${backing}/${old_persistence_list}" ]
then
echo "# persistence backwards compatibility:
${dir} ${opt},source=." > "${include_list}"
fi
}

is_mountpoint ()
{
directory="$1"
Expand Down
19 changes: 18 additions & 1 deletion components/9990-overlay.sh
Expand Up @@ -190,7 +190,7 @@ setup_unionfs ()

if is_in_comma_sep_list overlay ${PERSISTENCE_METHOD}
then
overlays="${custom_overlay_label}"
overlays="${old_root_overlay_label} ${old_home_overlay_label} ${custom_overlay_label} ${old_custom_overlay_label}"
fi

local overlay_devices
Expand All @@ -202,10 +202,27 @@ setup_unionfs ()
media="$(echo ${media} | tr ":" " ")"

case ${media} in
${old_root_overlay_label}=*)
device="${media#*=}"
fix_backwards_compatibility ${device} / union
overlay_devices="${overlay_devices} ${device}"
;;

${old_home_overlay_label}=*)
device="${media#*=}"
fix_backwards_compatibility ${device} /home bind
overlay_devices="${overlay_devices} ${device}"
;;

${custom_overlay_label}=*)
device="${media#*=}"
overlay_devices="${overlay_devices} ${device}"
;;

${old_custom_overlay_label}=*)
device="${media#*=}"
overlay_devices="${overlay_devices} ${device}"
;;
esac
done
fi
Expand Down

0 comments on commit 14f658f

Please sign in to comment.