#! /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 BCC PMDA install with missing 'notready' keyword to # latest python version. # . $PCP_DIR/etc/pcp.env if grep -q ^bcc "$PCP_PMCDCONF_PATH" 2>/dev/null then if grep ^bcc "$PCP_PMCDCONF_PATH" | grep -q notready 2>/dev/null then : # already has the keyword, so nothing to update here else sed -i -e "s,^\(bcc.*binary\),\1 notready,g" $PCP_PMCDCONF_PATH fi if grep -q '^bcc.*python ' "$PCP_PMCDCONF_PATH" 2>/dev/null then if grep '^bcc.*python ' "$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/bcc/,$PCP_PYTHON_PROG $PCP_PMDAS_DIR/bcc/,g" \ -e "s,python $PCP_PMDAS_DIR/bcc/,$PCP_PYTHON_PROG $PCP_PMDAS_DIR/bcc/,g" \ # end fi fi fi exit 0