#!/bin/sh

INSTALL_DI=true
FIND_BODHI_UPDATE_ARGS=""
# if bz is set to false it also disables bodhi, because it needs it's result
WITH_BUGZILLA=true
for opt in "$@"; do
    if [ x"$opt" = x"--without-di" ]; then
        INSTALL_DI=false
    fi

    if [ x"$opt" = x"--without-bz" ]; then
        WITH_BUGZILLA=false
    fi

    if [ x"$opt" = x"--without-bodhi" ]; then
        FIND_BODHI_UPDATE_ARGS="--without-bodhi"
    fi
done

if $INSTALL_DI; then
    # On some systems debuginfo install needs root privileges.
    # Running a suided-to-abrt wrapper would make
    # debuginfo install fail even for root.
    # Therefore, if we are root, we don't use the wrapper.
    if [ x"`id -u`" = x"0" ]; then
        abrt-action-analyze-core --core=coredump -o build_ids && abrt-action-install-debuginfo --size_mb=4096
    else
        abrt-action-analyze-core --core=coredump -o build_ids && /usr/libexec/abrt-action-install-debuginfo-to-abrt-cache --size_mb=4096
    fi
fi

if [ $? = 0 ]; then
    abrt-action-generate-backtrace &&
    abrt-action-analyze-backtrace
    if [ "$?" == "0" ]; then
        if $WITH_BUGZILLA; then
            abrt-action-find-bodhi-update $FIND_BODHI_UPDATE_ARGS
        fi
    fi
fi
