Browse Source
live.updates allows you to specify the URL for an "updates image" that should be applied to the live runtime before switch_root. The URL can be anything supported by url-lib (http, https, ftp, possibly nfs) and the image can be anything supported by img-lib (xz/gzip compressed cpio/tar, uncompressed cpio/tar, filesystem image, etc.)master


3 changed files with 44 additions and 1 deletions
@ -0,0 +1,32 @@
@@ -0,0 +1,32 @@
|
||||
#!/bin/sh |
||||
# fetch-liveupdate - fetch an update image for dmsquash-live media. |
||||
# this gets called by the "initqueue/online" hook for each network interface |
||||
# that comes online. |
||||
|
||||
# no updates requested? we're not needed. |
||||
[ -e /tmp/liveupdates.info ] || return 0 |
||||
|
||||
command -v getarg >/dev/null || . /lib/dracut-lib.sh |
||||
command -v fetch_url >/dev/null || . /lib/url-lib.sh |
||||
command -v unpack_img >/dev/null || . /lib/img-lib.sh |
||||
|
||||
read url < /tmp/liveupdates.info |
||||
|
||||
info "fetching live updates from $url" |
||||
|
||||
fetch_url "$url" /tmp/updates.img |
||||
if [ $? != 0 ]; then |
||||
warn "failed to fetch update image!" |
||||
warn "url: $url" |
||||
return 1 |
||||
fi |
||||
|
||||
unpack_img /tmp/updates.img /updates.tmp.$$ |
||||
if [ $? != 0 ]; then |
||||
warn "failed to unpack update image!" |
||||
warn "url: $url" |
||||
return 1 |
||||
fi |
||||
rm -rf /updates |
||||
mv -f /updates.tmp.$$ /updates |
||||
mv /tmp/liveupdates.info /tmp/liveupdates.done |
Loading…
Reference in new issue