1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-16 07:58:04 +00:00

Add net-mgmt/netdot, a tool designed to help network administrators

collect, organize and maintain network information.

Submitted by:	Nick Hilliard <nick@foobar.org>
This commit is contained in:
Anton Berezin 2012-03-07 20:36:31 +00:00
parent 45185299d9
commit 87bbfe30bf
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=292910
10 changed files with 2396 additions and 0 deletions

View File

@ -160,6 +160,7 @@
SUBDIR += netams-front
SUBDIR += netdisco
SUBDIR += netdisco-mibs
SUBDIR += netdot
SUBDIR += netleak
SUBDIR += netmask
SUBDIR += netmond

89
net-mgmt/netdot/Makefile Normal file
View File

@ -0,0 +1,89 @@
# New ports collection makefile for: net-mgmt/netdot
# Date created: 16 January 2012
# Whom: Nick Hilliard
#
# $FreeBSD$
#
PORTNAME= netdot
PORTVERSION= 0.9.10
CATEGORIES= net-mgmt
MASTER_SITES= https://netdot.uoregon.edu/pub/dists/
MAINTAINER= nick@foobar.org
COMMENT= An open source tool to organize and maintain network information
LICENSE= GPLv2
RUN_DEPENDS= p5-libapreq2>=0:${PORTSDIR}/www/p5-libapreq2 \
p5-Apache-Session>=1.6:${PORTSDIR}/www/p5-Apache-Session \
p5-Apache-AuthCookie>=0:${PORTSDIR}/www/p5-Apache-AuthCookie \
p5-Apache2-SiteControl>=1.0:${PORTSDIR}/www/p5-Apache2-SiteControl \
p5-URI>=0:${PORTSDIR}/net/p5-URI \
p5-DBD-mysql${MYSQL_VER}>=0:${PORTSDIR}/databases/p5-DBD-mysql${MYSQL_VER} \
p5-SQL-Translator>=0.07:${PORTSDIR}/databases/p5-SQL-Translator \
p5-Class-DBI>=3.0.17:${PORTSDIR}/databases/p5-Class-DBI \
p5-Class-DBI-AbstractSearch>=0:${PORTSDIR}/databases/p5-Class-DBI-AbstractSearch \
p5-DBIx-DataSource>=0:${PORTSDIR}/databases/p5-DBIx-DataSource \
p5-SNMP-Info>=2.01:${PORTSDIR}/net-mgmt/p5-SNMP-Info \
p5-HTML-Mason>=1.31:${PORTSDIR}/www/p5-HTML-Mason \
p5-Log-Dispatch>=0:${PORTSDIR}/devel/p5-Log-Dispatch \
p5-Log-Log4perl>=0:${PORTSDIR}/devel/p5-Log-Log4perl \
p5-Parallel-ForkManager>=0:${PORTSDIR}/devel/p5-Parallel-ForkManager \
p5-Net-IRR>=0:${PORTSDIR}/net/p5-Net-IRR \
p5-NetAddr-IP>=0:${PORTSDIR}/net-mgmt/p5-NetAddr-IP \
p5-Net-IPTrie>=0.7:${PORTSDIR}/net/p5-Net-IPTrie \
p5-Net-Appliance-Session>=3.113.610:${PORTSDIR}/net/p5-Net-Appliance-Session \
p5-Net-DNS>=0:${PORTSDIR}/dns/p5-Net-DNS \
p5-Net-DNS-ZoneFile-Fast>=1.12:${PORTSDIR}/dns/p5-Net-DNS-ZoneFile-Fast \
p5-BIND-Config-Parser>=0:${PORTSDIR}/dns/p5-BIND-Config-Parser \
p5-Carp-Assert>=0:${PORTSDIR}/devel/p5-Carp-Assert \
p5-XML-Simple>=0:${PORTSDIR}/textproc/p5-XML-Simple \
p5-Socket6>=0:${PORTSDIR}/net/p5-Socket6 \
p5-GraphViz>=2.02:${PORTSDIR}/graphics/p5-GraphViz \
rrdtool:${PORTSDIR}/databases/rrdtool
NO_BUILD= yes
USE_PERL5= yes
USE_GMAKE= yes
USE_MYSQL= yes
SUB_FILES= pkg-message pkg-install
SUB_LIST= WWWDIR="${WWWDIR}" \
WWWOWN="${WWWOWN}" \
WWWGRP="${WWWGRP}" \
CHOWN="${CHOWN}" \
CHMOD="${CHMOD}"
PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
.include <bsd.port.pre.mk>
.if ${PERL_LEVEL} < 501000
RUN_DEPENDS+= p5-Digest-SHA>=5.47:${PORTSDIR}/security/p5-Digest-SHA
.endif
.if ${PERL_LEVEL} < 501000
BUILD_DEPENDS+= p5-Module-Build>=0:${PORTSDIR}/devel/p5-Module-Build
.endif
INSTALL_TARGET= install \
PREFIX=${WWWDIR} \
APACHEUSER=${WWWOWN} \
APACHEGROUP=${WWWGRP}
post-patch:
@${REINPLACE_CMD} "s#/usr/local/netdot#${WWWDIR}#g" ${WRKSRC}/netdot.cron ${WRKSRC}/Makefile ${WRKSRC}/import/import_ip_bulk.pl
@${REINPLACE_CMD} "s#%%LOCALPREFIX%%#${PREFIX}#g" ${WRKSRC}/etc/Default.conf
post-install:
.for f in export/bind export/dhcpd export/ethers export/rancid export/sysmon htdocs/img/graphs lib/Netdot/Manual tmp/sessions/locks htdocs/masondata/cache
@${TOUCH} ${WWWDIR}/${f}/.keep-me
.endfor
.for f in initdb updatedb defragdb
${INSTALL_SCRIPT} ${WRKSRC}/bin/${f} ${WWWDIR}/bin/${f}
.endfor
${INSTALL_DATA} ${WRKSRC}/netdot.cron ${WWWDIR}/etc/netdot.cron
${INSTALL_DATA} ${WRKSRC}/etc/default_data ${WWWDIR}/etc/default_data
@${CAT} ${PKGMESSAGE}
.include <bsd.port.post.mk>

2
net-mgmt/netdot/distinfo Normal file
View File

@ -0,0 +1,2 @@
SHA256 (netdot-0.9.10.tar.gz) = 582e7157f53ac38c91ae64b37f446236c4b1dd04099e81022e8f89ebf3007497
SIZE (netdot-0.9.10.tar.gz) = 13904105

View File

@ -0,0 +1,11 @@
--- etc/Default.conf.orig 2011-06-18 23:45:16.519629047 +0100
+++ etc/Default.conf 2011-06-19 00:34:52.153707362 +0100
@@ -84,7 +84,7 @@
# should contain the binaries themselves, e.g. if "which mysql" gives
# "/usr/local/mysql/bin/mysql", $DB_HOME should be "/usr/local/mysql"
-DB_HOME => '/usr',
+DB_HOME => '%%LOCALPREFIX%%',
# Set DB_DBA to the name of a DB user with permission to create new databases
# Set DB_DBA_PASSWORD to that user's password (if you don't, you'll be prompted

View File

@ -0,0 +1,12 @@
--- etc/Makefile.orig 2012-02-26 18:34:11.000000000 +0000
+++ etc/Makefile 2012-02-26 18:34:17.000000000 +0000
@@ -8,9 +8,3 @@
all:
$(substitute)
- if ! test -r $(PREFIX)/$(DIR)/Site.conf; then \
- $(SED) -r $(REPLACEMENT_EXPRESSIONS) Site.conf \
- > Site.conf.tmp;\
- install -m $(FMOD) Site.conf.tmp $(PREFIX)/$(DIR)/Site.conf;\
- rm -rf Site.conf.tmp;\
- fi;

View File

@ -0,0 +1,12 @@
--- etc/netdot_apache2_local.conf.orig 2011-06-18 23:08:29.960472329 +0100
+++ etc/netdot_apache2_local.conf 2011-06-18 23:08:56.032350612 +0100
@@ -22,7 +22,8 @@
# Uncomment this next line if you get errors from libapreq2
# about an 'undefined symbol'
-LoadModule apreq_module /usr/lib/apache2/modules/mod_apreq2.so
+LoadModule perl_module libexec/apache22/mod_perl.so
+LoadModule apreq_module libexec/apache22/mod_apreq2.so
<Perl>
use lib qw( <<Make:PREFIX>>/lib );

View File

@ -0,0 +1,30 @@
#!/bin/sh
#
# This script sets ownership for various files required by the netdot
# package.
#
WWWDIR=%%WWWDIR%%
WWWOWN=%%WWWOWN%%
WWWGRP=%%WWWGRP%%
CHOWN=%%CHOWN%%
CHMOD=%%CHMOD%%
case $2 in
POST-INSTALL)
for changedir in \
doc/manual htdocs/img/graphs htdocs/masondata \
htdocs/masondata/cache htdocs/masondata/obj \
tmp tmp/sessions tmp/sessions/locks \
export/bind export/cacti export/dhcpd \
export/docs export/ethers export/nagios \
export/rancid export/sysmon \
; do
${CHOWN} ${WWWOWN}:${WWWGRP} ${WWWDIR}/${changedir}
${CHMOD} 0755 ${WWWDIR}/${changedir}
done
# Restrict world read access to these dirs
${CHMOD} 0750 ${WWWDIR}/tmp
${CHMOD} 0750 ${WWWDIR}/htdocs/img/graphs
esac

View File

@ -0,0 +1,24 @@
###############################################################################
1. If you do not already have a Site.conf configuration file, you will need
to create one. Simply copy %%WWWDIR%%/etc/Default.conf
to Site.conf and edit to suit.
2. New installations will need to run the following commands:
cd %%WWWDIR%%/bin/
./initdb initdb
This command assumes that you have created a customised Site.conf
configuration file.
3. Please see %%WWWDIR%%/etc/netdot.cron
in the root directory of the installation package for suggestions on
what should be added to your server's crontab.
4. Suggested Apache configuration files are available here:
%%WWWDIR%%/etc/netdot_apache2_local.conf
%%WWWDIR%%/etc/netdot_apache2_ldap.conf
Note that any changes to Site.conf require an apache reload.
###############################################################################

21
net-mgmt/netdot/pkg-descr Normal file
View File

@ -0,0 +1,21 @@
Netdot is an open source tool designed to help network administrators
collect, organize and maintain network information.
Netdot features include:
- Device discovery and Layer 2 topology discovery / graphing.
- IPv4 and IPv6 address space management (also referred to as IPAM),
including hierarchical organization, address block visualization and
IP and MAC address location and tracking.
- Cable plant information including: sites, rooms, jacks, closets,
inter and intra-building fiber and copper wiring, circuits, etc.
- Contact information for related entities: departments, providers,
vendors, BGP peers, etc.
- Netdot can generate configuration files for various other tools,
including: Nagios, Sysmon, RANCID, Cacti, ISC BIND and ISC DHCPD.
WWW: http://netdot.uoregon.edu/

2194
net-mgmt/netdot/pkg-plist Normal file

File diff suppressed because it is too large Load Diff