FreeBSD/jails/jails-update-pkgs.sh

109 lines
2.4 KiB
Bash
Executable File

#!/usr/local/bin/bash
# Copyright (c) 2018-2020, diyIT.org
# All rights reserved.
#
# BSD 2-Clause License ("Simplified BSD License" or "FreeBSD License")
# https://diyit.org/license/
#
#
pkg_jail="pj121"
pkg_repo="pkgp121"
if [[ $1 == "pkgp-skip" ]]; then
echo "skipping pkgp update"
else
#<<'UNCOMMENT-TO-SKIP-PKG-BUILD'
iocage exec pkgp "pkg update"
iocage exec pkgp "pkg upgrade -y"
iocage exec pkgp "pkg clean -ay"
iocage set securelevel=0 pkgp
iocage exec pkgp "poudriere jail -l"
iocage exec pkgp "poudriere jail -u -j $pkg_jail"
iocage set securelevel=2 pkgp
iocage exec pkgp "portsnap auto"
iocage exec pkgp "poudriere ports -l"
iocage exec pkgp "poudriere ports -u"
iocage exec pkgp "poudriere bulk -f /mnt/config/mypkgs -j $pkg_jail"
#UNCOMMENT-TO-SKIP-PKG-BUILD
cd /mnt/ship/ldap/phpLDAPadmin
pwd
git pull
cd /mnt/ship/r-ldap/phpLDAPadmin
pwd
git pull
cd /mnt/ship/book/calibre-web
pwd
git pull
cd /mnt/ship/plex/PlexConnect
pwd
git pull
cd /mnt/ship/maps/networkmaps
pwd
git pull
fi
if [[ $1 == "pkgp-only" ]]; then
exit
fi
#read -p "Return/Enter to continue, ctrl-c to abort? " RESP
for i in `iocage list -h | cut -f 2`;
do
echo "## $i JAIL ##"
iocage exec $i "pkg update"
if [[ "$i" == "ldap" || "$i" == "r-ldap" ]]; then
iocage exec $i "pkg unlock -y openldap-sasl-server"
iocage exec $i "pkg unlock -y openldap-sasl-client"
iocage exec $i "pkg upgrade -y -r $pkg_repo openldap-sasl-server openldap-sasl-client"
iocage exec $i "pkg lock -y openldap-sasl-server"
iocage exec $i "pkg lock -y openldap-sasl-client"
fi
if [[ "$i" == "atm" || "$i" == "hub" || "$i" == "mail" || "$i" == "web" ]]; then
iocage exec $i "pkg unlock -y openldap-sasl-client"
iocage exec $i "pkg upgrade -y -r $pkg_repo openldap-sasl-client"
iocage exec $i "pkg lock -y openldap-sasl-client"
fi
iocage exec $i "pkg autoremove -y"
iocage exec $i "pkg upgrade -y"
iocage exec $i "pkg clean -ay"
echo "####"
#read -p "continue, ctrl-c to abort? " RESP
done
echo "NOTES:"
echo "update base system by running:"
echo "pkg update"
echo "pkg autoremove -y"
echo "pkg upgrade -y"
echo "pkg clean -ay"
echo "iocage stop ALL"
echo "iocage start ALL"
echo "hub check for index.html and adminer version"
echo "iocage exec cert \"/root/.acme.sh/acme.sh --upgrade\""
echo "iocage exec cert \"cp -r /root/.acme.sh /mnt/certs\""