Browse Source

better debian_bash_upgrade

master
pvincent 3 years ago
parent
commit
9d038ffcba
  1. 1
      lib/functions.sh
  2. 10
      tools/debian_bash_upgrade

1
lib/functions.sh

@ -1,3 +1,4 @@
# TODO: remove, leave it in miaou-server/lib/functions.sh only!
# idempotent apt install [package1 package2 ...]
function idem_apt_install() {
for i in $@; do

10
tools/debian_bash_upgrade

@ -3,26 +3,30 @@
if [[ -d /opt/debian-bash ]]; then
local_release=$(cat /opt/debian-bash/.semver_git_tag)
fi
echo -n "debian-bash: collecting latest release from server url ... "
remote_release=$(wget_semver artcode pvincent/debian-bash)
echo "$remote_release"
if [[ $local_release != $remote_release ]]; then
echo "upgrading from <$local_release> to <$remote_release> ..."
curl https://git.artcode.re/pvincent/debian-bash/raw/master/install.sh | sudo bash -s -- --full
else
echo "debian-bash version $local_release already up-to-date!"
echo "debian-bash: local version $local_release already up-to-date!"
# install inside active LXC containers
if [[ -f '/snap/bin/lxc' ]]; then
echo "refreshing containers ..."
echo "debian-bash: refreshing containers ..."
for container in $(lxc list --format=json | yq '.[] | select(.state.status == "Running") | .name' -); do
container_release=$(lxc exec $container -- cat /opt/debian-bash/.semver_git_tag)
if [[ $container_release != $remote_release ]]; then
echo "upgrade container <$container> from <$container_release> to <$remote_release>"
/snap/bin/lxc file push /opt/debian-bash "${container}/opt/" -r
else
echo "container <$container> already up-to-date!"
echo -e "\\tcontainer <$container> already up-to-date!"
fi
done
echo DONE
fi
fi
Loading…
Cancel
Save