projects
/
fbsd-stable-mgmt.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
take a snapshot before upgrading
[fbsd-stable-mgmt.git]
/
portupgrade.sh
diff --git
a/portupgrade.sh
b/portupgrade.sh
index bc766e40ebf2a316d916f9279113f25f920a945d..1e29340d46b58e373aab41be4c0554e538e2117e 100755
(executable)
--- a/
portupgrade.sh
+++ b/
portupgrade.sh
@@
-1,9
+1,15
@@
#!/bin/sh
all_jails=`jls jid`
#!/bin/sh
all_jails=`jls jid`
+
DO_CLEAN=""
DO_DIST=""
DO_CLEAN=""
DO_DIST=""
+do_snap()
+{
+ zfs snap -r zroot/JAILS/master@up || exit 0
+}
+
do_all_jails(){
echo '---------------------------------------'
do_all_jails(){
echo '---------------------------------------'
@@
-14,9
+20,11
@@
do_all_jails(){
echo Cleaning host
echo
[ -n "${DO_CLEAN}" ] && pkg ${DO_CLEAN}
echo Cleaning host
echo
[ -n "${DO_CLEAN}" ] && pkg ${DO_CLEAN}
- [ -n "${DO_CLEAN}" ] && pkg ${DO_DIST}
+ [ -n "${DO_DIST}" ] && pkg ${DO_DIST}
+ echo '---------------------------------------'
for j in ${all_jails}
do
for j in ${all_jails}
do
+ echo
echo '---------------------------------------'
echo ":: jail `jls -j ${j} name` [ ${j} ] ::"
echo ''
echo '---------------------------------------'
echo ":: jail `jls -j ${j} name` [ ${j} ] ::"
echo ''
@@
-29,7
+37,8
@@
do_all_jails(){
echo
echo Cleanup distfiles
echo
echo
echo Cleanup distfiles
echo
- [ -n "${DO_CLEAN}" ] && pkg -j ${j} ${DO_DIST}
+ [ -n "${DO_DIST}" ] && pkg -j ${j} ${DO_DIST}
+ echo '---------------------------------------'
done
}
done
}
@@
-52,10
+61,12
@@
echo
case "${yn}" in
[Yy][eE][sS]|[yY])
case "${yn}" in
[Yy][eE][sS]|[yY])
- DO_DIST="clean -a"
+ DO_DIST="clean -a
-y
"
;;
*)
;;
esac
;;
*)
;;
esac
-echo removing distfiles
+
+zfs list -H -t snap -r zroot/JAILS/master@up || do_snap
+
do_all_jails
do_all_jails