#! /bin/sh
#
# Copyright (c) 2019,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) NFS client PMDA to latest (python) version
#

. $PCP_DIR/etc/pcp.env

if grep -q ^nfsclient "$PCP_PMCDCONF_PATH" 2>/dev/null
then
    if grep ^nfsclient "$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 or python3 binary to PCP_PYTHON_PROG
	sed -i $PCP_PMCDCONF_PATH 2>/dev/null \
	    -e "s,python3 $PCP_PMDAS_DIR/nfsclient/,$PCP_PYTHON_PROG $PCP_PMDAS_DIR/nfsclient/,g" \
	    -e "s,python $PCP_PMDAS_DIR/nfsclient/,$PCP_PYTHON_PROG $PCP_PMDAS_DIR/nfsclient/,g" \
	# end
    fi
    if grep -q '^nfsclient.*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/nfsclient/pmdanfsclient.pl,$PCP_PYTHON_PROG $PCP_PMDAS_DIR/nfsclient/pmdanfsclient.python,g"
    fi
fi

exit 0
