#! /bin/sh
#
# Copyright (c) 2019,2021,2024 Red Hat.
#
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
# Free Software Foundation; either version 2 of the License, or (at your
# option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
# or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
# for more details.
#
# Upgrade an older (perl) elasticsearch PMDA to latest python version
#

. $PCP_DIR/etc/pcp.env

if grep -q ^elasticsearch "$PCP_PMCDCONF_PATH" 2>/dev/null
then
    if grep ^elasticsearch "$PCP_PMCDCONF_PATH" | grep -q "$PCP_PYTHON_PROG" 2>/dev/null
    then
	:	# already using $PCP_PYTHON_PROG, leave this line untouched
    else
	# convert hard-coded python binary to PCP_PYTHON_PROG
        sed -i $PCP_PMCDCONF_PATH 2>/dev/null \
	    -e "s,python3 $PCP_PMDAS_DIR/elasticsearch/,$PCP_PYTHON_PROG $PCP_PMDAS_DIR/elasticsearch/,g" \
	    -e "s,python $PCP_PMDAS_DIR/elasticsearch/,$PCP_PYTHON_PROG $PCP_PMDAS_DIR/elasticsearch/,g" \
	# end
    fi
    if grep -q '^elasticsearch.*perl ' "$PCP_PMCDCONF_PATH"
    then
	# convert original perl implementation to python
        sed -i $PCP_PMCDCONF_PATH 2>/dev/null \
	    -e "s,perl $PCP_PMDAS_DIR/elasticsearch/pmdaelasticsearch.pl,$PCP_PYTHON_PROG $PCP_PMDAS_DIR/elasticsearch/pmdaelasticsearch.python,g"
    fi
fi
exit 0
