aboutsummaryrefslogtreecommitdiffstats
path: root/net-mgmt/librenms
diff options
context:
space:
mode:
authorbofh <bofh@FreeBSD.org>2017-04-12 06:11:39 +0800
committerbofh <bofh@FreeBSD.org>2017-04-12 06:11:39 +0800
commit50567a976b10011adefe4ec9b4acef3a3bea66a4 (patch)
tree2dbbe599cb82909efdbc838a0d696075f17abb20 /net-mgmt/librenms
parent9a8f69a4acc99c205f6d3e389c373ed98f3f57c7 (diff)
downloadfreebsd-ports-gnome-50567a976b10011adefe4ec9b4acef3a3bea66a4.tar.gz
freebsd-ports-gnome-50567a976b10011adefe4ec9b4acef3a3bea66a4.tar.zst
freebsd-ports-gnome-50567a976b10011adefe4ec9b4acef3a3bea66a4.zip
net-mgmt/librenms: Update version 1.25=>1.26
- Fix validate.php - Created logs dir, used by daily.php - fixed daily.sh to use sudo (replaces GNU su command) - made daily.sh executable - Disabled update checks in daily.sh, as they try to use git - Updated the username in config.php to www PR: 218351 Submitted by: freebsd@jonathanprice.org
Diffstat (limited to 'net-mgmt/librenms')
-rw-r--r--net-mgmt/librenms/Makefile44
-rw-r--r--net-mgmt/librenms/distinfo6
-rw-r--r--net-mgmt/librenms/files/patch-config.php.default11
-rw-r--r--net-mgmt/librenms/files/patch-daily.sh47
-rw-r--r--net-mgmt/librenms/files/pkg-message.in6
5 files changed, 100 insertions, 14 deletions
diff --git a/net-mgmt/librenms/Makefile b/net-mgmt/librenms/Makefile
index 39dae831008d..7da37bdf168d 100644
--- a/net-mgmt/librenms/Makefile
+++ b/net-mgmt/librenms/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= librenms
-PORTVERSION= 1.25
+PORTVERSION= 1.26
PORTEPOCH= 1
CATEGORIES= net-mgmt
@@ -15,16 +15,33 @@ USE_GITHUB= yes
GH_ACCOUNT= librenms
USES= php:cli python shebangfix
-SHEBANG_FILES= mibs/process.pl scripts/deploy-docs.sh scripts/ifAlias \
+SHEBANG_FILES= mibs/process.pl scripts/deploy-docs.sh \
scripts/Migration/Standard_Conversion/convert_no_xml.sh \
scripts/Migration/Standard_Conversion/destwork_no_xml.sh \
scripts/Migration/Standard_Conversion/mkdir.sh \
scripts/Migration/XML_Conversion/convert.sh \
scripts/Migration/XML_Conversion/destwork.sh \
- scripts/Migration/XML_Conversion/mkdir.sh validate.php \
+ scripts/Migration/XML_Conversion/mkdir.sh \
scripts/removespikes.php scripts/agent-local/nfs-stats.sh \
- scripts/removespikes.pl scripts/watchmaillog/watchmaillog.pl
-USE_PHP= ctype filter gd json mcrypt mysqli session snmp tokenizer xml
+ scripts/removespikes.pl scripts/watchmaillog/watchmaillog.pl \
+ vendor/ezyang/htmlpurifier/maintenance/add-vimline.php \
+ vendor/ezyang/htmlpurifier/maintenance/config-scanner.php \
+ vendor/ezyang/htmlpurifier/maintenance/flush-definition-cache.php \
+ vendor/ezyang/htmlpurifier/maintenance/flush.php \
+ vendor/ezyang/htmlpurifier/maintenance/generate-entity-file.php \
+ vendor/ezyang/htmlpurifier/maintenance/generate-includes.php \
+ vendor/ezyang/htmlpurifier/maintenance/generate-schema-cache.php \
+ vendor/ezyang/htmlpurifier/maintenance/generate-standalone.php \
+ vendor/ezyang/htmlpurifier/maintenance/merge-library.php \
+ vendor/ezyang/htmlpurifier/maintenance/old-extract-schema.php \
+ vendor/ezyang/htmlpurifier/maintenance/old-remove-require-once.php \
+ vendor/ezyang/htmlpurifier/maintenance/old-remove-schema-def.php \
+ vendor/ezyang/htmlpurifier/maintenance/rename-config.php \
+ vendor/ezyang/htmlpurifier/maintenance/remove-trailing-whitespace.php \
+ vendor/ezyang/htmlpurifier/maintenance/update-config.php \
+ vendor/tecnickcom/tcpdf/tools/tcpdf_addfont.php
+
+USE_PHP= ctype curl filter gd hash json mcrypt mysqli openssl session simplexml snmp tokenizer xml
NO_BUILD= yes
@@ -33,7 +50,8 @@ RUN_DEPENDS+= rrdtool:databases/rrdtool \
${LOCALBASE}/share/pear/Net/IPv4.php:net/pear-Net_IPv4 \
${LOCALBASE}/share/pear/Net/IPv6.php:net/pear-Net_IPv6 \
snmpget:net-mgmt/net-snmp \
- bash:shells/bash
+ bash:shells/bash \
+ sudo:security/sudo
OPTIONS_DEFINE= APACHEMOD FPING IPMITOOL LIBVIRT MYSQLD NAGPLUGINS NMAP PYPOLLER WMIC DOCS EXAMPLES X11
OPTIONS_DEFAULT= APACHEMOD FPING IPMITOOL LIBVIRT NAGPLUGINS NMAP PYPOLLER WMIC
@@ -64,12 +82,13 @@ SUB_LIST+= PHP="${PHPBASE}/bin/php" PYTHON=${PYTHON_CMD}
ROOT_FILES= addhost.php adduser.php alerts.php build-base.php build.sql \
billing-calculate.php \
- check-services.php config_to_json.php daily.php daily.sh \
- delhost.php discovery.php dist-pollers.php irc.php \
- poll-billing.php poller.php poller-service.py poller-wrapper.py renamehost.php \
+ check-services.php composer.json config_to_json.php cronic daily.php daily.sh \
+ delhost.php discovery-wrapper.py discovery.php dist-pollers.php irc.php \
+ mkdocs.yml pbin.sh phpunit.xml poll-billing.php poller.php poller-service.py \
+ poller-wrapper.py readmegen.yml renamehost.php services-wrapper.py \
snmp-scan.php snmptrap.php syslog.php validate.php
-ROOT_DIRS= LibreNMS contrib html includes lib mibs scripts sql-schema
+ROOT_DIRS= LibreNMS contrib doc html includes lib mibs misc scripts sql-schema tests vendor
DOCS= AUTHORS.md CHANGELOG CONTRIBUTING.md LICENSE.txt README.md
PORTDOCS= *
@@ -102,6 +121,10 @@ do-install:
# Create empty rrd dir writable by www
@${MKDIR} ${STAGEDIR}/${WWWDIR}/rrd
@${CHMOD} 0775 ${STAGEDIR}/${WWWDIR}/rrd
+# Create empty logs dir
+ @${MKDIR} ${STAGEDIR}/${WWWDIR}/logs
+# Make daily.sh executable
+ @${CHMOD} 0755 ${STAGEDIR}/${WWWDIR}/daily.sh
# Files in scripts dir should be executable
@${FIND} ${STAGEDIR}/${WWWDIR}/scripts -type f -exec ${CHMOD} +x {} \;
# Ensure PHP and Python scripts are executable
@@ -130,6 +153,7 @@ post-install:
${STAGEDIR}/${WWWDIR}/config.php.sample
@${ECHO} @sample ${WWWDIR}/config.php.sample >> ${TMPPLIST}
@${ECHO} @dir ${WWWDIR}/rrd >> ${TMPPLIST}
+ @${ECHO} @dir ${WWWDIR}/logs >> ${TMPPLIST}
@${ECHO} @dir ${WWWDIR}/lib/influxdb-php/vendor/guzzlehttp/guzzle/build >> ${TMPPLIST}
@${ECHO} @dir ${WWWDIR}/lib/influxdb-php/vendor/guzzlehttp/guzzle/docs >> ${TMPPLIST}
@${ECHO} @dir ${WWWDIR}/lib/influxdb-php/vendor/guzzlehttp/guzzle/tests >> ${TMPPLIST}
diff --git a/net-mgmt/librenms/distinfo b/net-mgmt/librenms/distinfo
index 3f50b27f4b2e..45b2f20e44d8 100644
--- a/net-mgmt/librenms/distinfo
+++ b/net-mgmt/librenms/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1489149658
-SHA256 (librenms-librenms-1.25_GH0.tar.gz) = 7b966c668dd215dd35add4d96f5cb04b63e83956e9db32a962dfd9da2717827d
-SIZE (librenms-librenms-1.25_GH0.tar.gz) = 55302189
+TIMESTAMP = 1491554959
+SHA256 (librenms-librenms-1.26_GH0.tar.gz) = cc76a343296c48a6a2423efc9138e2a52d2827178ba733c0714dc6ef38d264e8
+SIZE (librenms-librenms-1.26_GH0.tar.gz) = 57165188
diff --git a/net-mgmt/librenms/files/patch-config.php.default b/net-mgmt/librenms/files/patch-config.php.default
new file mode 100644
index 000000000000..c10b1cdda1e5
--- /dev/null
+++ b/net-mgmt/librenms/files/patch-config.php.default
@@ -0,0 +1,11 @@
+--- config.php.default.orig 2017-04-11 17:32:28 UTC
++++ config.php.default
+@@ -10,7 +10,7 @@ $config['db_name'] = 'librenms';
+
+ // This is the user LibreNMS will run as
+ //Please ensure this user is created and has the correct permissions to your install
+-$config['user'] = 'librenms';
++$config['user'] = 'www';
+
+ ### This should *only* be set if you want to *force* a particular hostname/port
+ ### It will prevent the web interface being usable form any other hostname
diff --git a/net-mgmt/librenms/files/patch-daily.sh b/net-mgmt/librenms/files/patch-daily.sh
new file mode 100644
index 000000000000..08520dd739e0
--- /dev/null
+++ b/net-mgmt/librenms/files/patch-daily.sh
@@ -0,0 +1,47 @@
+--- daily.sh.orig 2017-03-26 12:06:00 UTC
++++ daily.sh
+@@ -113,7 +113,7 @@ main () {
+ # only try to su if we are root (or sudo)
+ if [[ "$EUID" -eq 0 ]]; then
+ echo "Re-running ${DAILY_SCRIPT} as ${LIBRENMS_USER} user"
+- su -l "$LIBRENMS_USER" -c "$DAILY_SCRIPT $@"
++ sudo -u "$LIBRENMS_USER" "$DAILY_SCRIPT"
+ exit;
+ fi
+
+@@ -123,27 +123,6 @@ main () {
+ fi
+
+ if [[ -z "$arg" ]]; then
+- up=$(php daily.php -f update >&2; echo $?)
+- if [[ "$up" == "0" ]]; then
+- $DAILY_SCRIPT no-code-update
+- exit
+- elif [[ "$up" == "1" ]]; then
+- # Update to Master-Branch
+- old_ver=$(git show --pretty="%H" -s HEAD)
+- status_run 'Updating to latest codebase' 'git pull --quiet' 'update'
+- new_ver=$(git show --pretty="%H" -s HEAD)
+- if [ "$old_ver" != "$new_ver" ]; then
+- status_run "Updated from $old_ver to $new_ver" ''
+- fi
+- elif [[ "$up" == "3" ]]; then
+- # Update to last Tag
+- old_ver=$(git describe --exact-match --tags $(git log -n1 --pretty='%h'))
+- status_run 'Updating to latest release' 'git fetch --tags && git checkout $(git describe --tags $(git rev-list --tags --max-count=1))' 'update'
+- new_ver=$(git describe --exact-match --tags $(git log -n1 --pretty='%h'))
+- if [[ "$old_ver" != "$new_ver" ]]; then
+- status_run "Updated from $old_ver to $new_ver" ''
+- fi
+- fi
+
+ cnf=$(echo $(grep '\[.distributed_poller.\]' config.php | egrep -v -e '^//' -e '^#' | cut -d = -f 2 | sed 's/;//g'))
+ if ((${BASH_VERSINFO[0]} < 4)); then
+@@ -167,7 +146,6 @@ main () {
+ post-pull)
+ # List all tasks to do after pull in the order of execution
+ status_run 'Updating SQL-Schema' 'php includes/sql-schema/update.php'
+- status_run 'Updating submodules' "$DAILY_SCRIPT submodules"
+ status_run 'Cleaning up DB' "$DAILY_SCRIPT cleanup"
+ status_run 'Fetching notifications' "$DAILY_SCRIPT notifications"
+ status_run 'Caching PeeringDB data' "$DAILY_SCRIPT peeringdb"
diff --git a/net-mgmt/librenms/files/pkg-message.in b/net-mgmt/librenms/files/pkg-message.in
index aa68172e01cd..955d686fcc15 100644
--- a/net-mgmt/librenms/files/pkg-message.in
+++ b/net-mgmt/librenms/files/pkg-message.in
@@ -19,5 +19,9 @@ with the following notes:
33 */6 * * * www cd %%WWWDIR%% && %%PHP%% discovery.php -h all >> /dev/null 2>&1
*/5 * * * * www cd %%WWWDIR%% && %%PHP%% discovery.php -h new >> /dev/null 2>&1
*/5 * * * * www cd %%WWWDIR%% && %%PYTHON%% poller-wrapper.py 16 >> /dev/null 2>&1
-15 0 * * * www sh %%WWWDIR%%/daily.sh >> /dev/null 2>&1
+15 0 * * * www %%LOCALBASE%%/bin/bash %%WWWDIR%%/daily.sh >> /dev/null 2>&1
* * * * * www %%PHP%% %%WWWDIR%%/alerts.php >> /dev/null 2>&1
+*/5 * * * * www %%PHP%% %%WWWDIR%%/poll-billing.php >> /dev/null 2>&1
+01 * * * * www %%PHP%% %%WWWDIR%%/billing-calculate.php >> /dev/null 2>&1
+*/5 * * * * www %%PHP%% %%WWWDIR%%/check-services.php >> /dev/null 2>&1
+