#!/bin/bash

if [[ -d /opt/debian-bash ]]; then
    local_release=$(cat /opt/debian-bash/.semver_git_tag)
fi
remote_release=$(wget_semver artcode pvincent/debian-bash)

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!"
    # install inside active LXC containers
    if [[ -f '/snap/bin/lxc' ]]; then
        echo "refreshing containers ..."
        for container in `lxc list --format=json | jq -r '.[] | 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!"
            fi
        done
    fi

fi