#!/bin/bash
# SPDX-License-Identifier: GPL-2.0-only
#
# Copyright 2024 Greg Kroah-Hartman <gregkh@linuxfoundation.org>
#
# Given a git commit id, see if it has been reverted in the tree anywhere
#
# Relies on the sql database to be present.

REAL_SCRIPT=$(realpath -e "${BASH_SOURCE[0]}")
SCRIPT_TOP="${SCRIPT_TOP:-$(dirname "${REAL_SCRIPT}")}"

# Location of our database.  Should be initialized already.
DB="${SCRIPT_TOP}"/../verhaal.db

id=$1

if [ "${id}" == "" ] ; then
        echo "$0 ID_TO_FIND"
        exit 1
fi

reverts=$(sqlite3 ${DB} "SELECT id FROM commits WHERE reverts='${id}';")
for revert in ${reverts}; do
	release=$(sqlite3 ${DB} "SELECT release FROM commits WHERE id='${revert}';")
	echo "commit ${id} was reverted by commit ${revert} in release ${release}"
done

exit 0
