1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-28 05:29:48 +00:00

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
This commit is contained in:
Muhammad Moinur Rahman 2017-04-11 22:11:39 +00:00
parent aa42fd9860
commit d21e40cdd9
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=438321
5 changed files with 100 additions and 14 deletions

View File

@ -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}

View File

@ -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

View File

@ -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

View File

@ -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"

View File

@ -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