#!/bin/bash

main() {
    local type="${1}"; shift
    local state="${1}"; shift

    local lib_directory="/usr/share/$type-upgrade"
    local dir="$lib_directory/$state.d"

    if [ "$state" != "pre-start" ] && \
    [ "$state" != "pre-stop" ] && \
    [ "$state" != "post-start" ] && \
    [ "$state" != "post-stop" ]; then
        echo "Can't run scripts in $dir"
        exit 1
    fi

    echo "Executing $state upgrade action..."
    for script in $dir/*; do
        if ! $script ;then
            echo "WARNING: Script $script exited with non-zero status."
        fi
    done
}

main "${@}"