git: a918c77a1344 - main - net-mgmt/librenms: patch daily.sh with full paths
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 17 Jul 2024 13:12:32 UTC
The branch main has been updated by dvl:
URL: https://cgit.FreeBSD.org/ports/commit/?id=a918c77a13444c5bedfd7dbfb067f59bbb628976
commit a918c77a13444c5bedfd7dbfb067f59bbb628976
Author: Dan Langille <dvl@FreeBSD.org>
AuthorDate: 2024-07-10 15:58:55 +0000
Commit: Dan Langille <dvl@FreeBSD.org>
CommitDate: 2024-07-17 13:09:17 +0000
net-mgmt/librenms: patch daily.sh with full paths
References to bash and php now use %%LOCALBASE%%
These errors seemed to cause the librenms service to fall over.
Solves these types of errors:
* /usr/local/www/librenms/daily.sh: line 30: php: command not found
* /usr/local/www/librenms/daily.sh: line 63: bash: command not found
---
net-mgmt/librenms/Makefile | 4 +-
net-mgmt/librenms/files/patch-daily.sh | 76 ++++++++++++++++++++++++++++++++++
2 files changed, 79 insertions(+), 1 deletion(-)
diff --git a/net-mgmt/librenms/Makefile b/net-mgmt/librenms/Makefile
index ac36c0e0131e..ec34d71a0601 100644
--- a/net-mgmt/librenms/Makefile
+++ b/net-mgmt/librenms/Makefile
@@ -1,5 +1,6 @@
PORTNAME= librenms
PORTVERSION= 24.6.0
+PORTREVISION= 1
PORTEPOCH= 1
CATEGORIES= net-mgmt
MASTER_SITES= LOCAL/dvl:vendor
@@ -156,7 +157,8 @@ post-patch:
${WRKSRC}/config.php.default \
${WRKSRC}/includes/html/output/capture.inc.php \
${WRKSRC}/poller-wrapper.py \
- ${WRKSRC}/snmp-scan.py
+ ${WRKSRC}/snmp-scan.py \
+ ${WRKSRC}/daily.sh
${REINPLACE_CMD} 's|%%PORTVERSION%%|${PORTVERSION}|g' ${WRKSRC}/LibreNMS/Util/Version.php
${REINPLACE_CMD} 's|%%RELEASE_TIMESTAMP%%|${_RELEASE_TIMESTAMP}|g' ${WRKSRC}/LibreNMS/Util/Version.php
${REINPLACE_CMD} 's|%%WWWDIR%%|${WWWDIR}|g' ${WRKSRC}/dist/librenms-scheduler.cron
diff --git a/net-mgmt/librenms/files/patch-daily.sh b/net-mgmt/librenms/files/patch-daily.sh
new file mode 100644
index 000000000000..90e5b2f4a48e
--- /dev/null
+++ b/net-mgmt/librenms/files/patch-daily.sh
@@ -0,0 +1,76 @@
+--- daily.sh.orig 2024-07-09 01:33:51 UTC
++++ daily.sh
+@@ -23,11 +23,11 @@ LIBRENMS_DIR=$(dirname "$DAILY_SCRIPT")
+ # define DAILY_SCRIPT as the full path to this script and LIBRENMS_DIR as the directory this script is in
+ DAILY_SCRIPT=$(readlink -f "$0")
+ LIBRENMS_DIR=$(dirname "$DAILY_SCRIPT")
+-COMPOSER="php ${LIBRENMS_DIR}/scripts/composer_wrapper.php --no-interaction"
++COMPOSER="%%LOCALBASE%%/bin/php ${LIBRENMS_DIR}/scripts/composer_wrapper.php --no-interaction"
+
+ # set log_file, using librenms 'log_dir' config setting, if set
+ # otherwise we default to <LibreNMS Install Directory>/logs
+-LOG_DIR=$(php -r "@include '${LIBRENMS_DIR}/config.php'; echo isset(\$config['log_dir']) ? \$config['log_dir'] : '${LIBRENMS_DIR}/logs';")
++LOG_DIR=$(%%LOCALBASE%%/bin/php -r "@include '${LIBRENMS_DIR}/config.php'; echo isset(\$config['log_dir']) ? \$config['log_dir'] : '${LIBRENMS_DIR}/logs';")
+
+ # get the librenms user
+ # shellcheck source=.env.example
+@@ -60,7 +60,7 @@ status_run() {
+
+ printf "%-50s" "${arg_text}"
+ echo "${arg_text}" >> "${log_file}"
+- tmp=$(bash -c "${arg_command}" 2>&1)
++ tmp=$(%%LOCALBASE%%/bin/bash -c "${arg_command}" 2>&1)
+ exit_code=$?
+ echo "${tmp}" >> "${log_file}"
+ echo "Returned: ${exit_code}" >> "${log_file}"
+@@ -72,7 +72,7 @@ status_run() {
+ else
+ printf " \\033[0;31mFAIL\\033[0m\\n"
+ if [[ "${arg_option}" == "update" ]]; then
+- php "${LIBRENMS_DIR}/daily.php" -f notify -o "${tmp}"
++ %%LOCALBASE%%/bin/php "${LIBRENMS_DIR}/daily.php" -f notify -o "${tmp}"
+ fi
+ if [[ -n "${tmp}" ]]; then
+ # print output in case of failure
+@@ -99,7 +99,7 @@ call_daily_php() {
+ args=("$@")
+
+ for arg in "${args[@]}"; do
+- php "${LIBRENMS_DIR}/daily.php" -f "${arg}"
++ %%LOCALBASE%%/bin/php "${LIBRENMS_DIR}/daily.php" -f "${arg}"
+ done
+ }
+
+@@ -121,7 +121,7 @@ set_notifiable_result() {
+ arg_type=$1
+ arg_result=$2
+
+- php "${LIBRENMS_DIR}/daily.php" -f handle_notifiable -t "${arg_type}" -r "${arg_result}"
++ %%LOCALBASE%%/bin/php "${LIBRENMS_DIR}/daily.php" -f handle_notifiable -t "${arg_type}" -r "${arg_result}"
+ }
+
+ #######################################
+@@ -135,10 +135,10 @@ check_dependencies() {
+ branch=$(git rev-parse --abbrev-ref HEAD)
+ scripts/check_requirements.py > /dev/null 2>&1 || pip3 install -r requirements.txt > /dev/null 2>&1
+
+- ver_71=$(php -r "echo (int)version_compare(PHP_VERSION, '7.1.3', '<');")
+- ver_72=$(php -r "echo (int)version_compare(PHP_VERSION, '7.2.5', '<');")
+- ver_73=$(php -r "echo (int)version_compare(PHP_VERSION, '7.3', '<');")
+- ver_81=$(php -r "echo (int)version_compare(PHP_VERSION, '8.1', '<');")
++ ver_71=$(%%LOCALBASE%%/bin/php -r "echo (int)version_compare(PHP_VERSION, '7.1.3', '<');")
++ ver_72=$(%%LOCALBASE%%/bin/php -r "echo (int)version_compare(PHP_VERSION, '7.2.5', '<');")
++ ver_73=$(%%LOCALBASE%%/bin/php -r "echo (int)version_compare(PHP_VERSION, '7.3', '<');")
++ ver_81=$(%%LOCALBASE%%/bin/php -r "echo (int)version_compare(PHP_VERSION, '8.1', '<');")
+ python3=$(python3 -c "import sys;print(int(sys.version_info < (3, 4)))" 2> /dev/null)
+ python_deps=$("${LIBRENMS_DIR}/scripts/check_requirements.py" > /dev/null 2>&1; echo $?)
+ phpver="master"
+@@ -276,7 +276,7 @@ main () {
+ fi
+
+ if [[ -z "$arg" ]]; then
+- up=$(php daily.php -f update >&2; echo $?)
++ up=$(%%LOCALBASE%%/bin/php daily.php -f update >&2; echo $?)
+ if [[ "$up" == "0" ]]; then
+ "${DAILY_SCRIPT}" no-code-update
+ set_notifiable_result update 1 # make sure there are no update notifications if update is disabled