[22624] trunk/dports/net/zabbix
source_changes at macosforge.org
source_changes at macosforge.org
Wed Mar 7 22:07:58 PST 2007
Revision: 22624
http://trac.macosforge.org/projects/macports/changeset/22624
Author: markd at macports.org
Date: 2007-03-07 22:07:58 -0800 (Wed, 07 Mar 2007)
Log Message:
-----------
Reverse a change from last week where the agent was split off into a separate port. I
think now there are disadvantages to this approach.
Modified Paths:
--------------
trunk/dports/net/zabbix/Portfile
trunk/dports/net/zabbix/files/patch-configure
Added Paths:
-----------
trunk/dports/net/zabbix/files/zabbix_agentd.init
Modified: trunk/dports/net/zabbix/Portfile
===================================================================
--- trunk/dports/net/zabbix/Portfile 2007-03-08 05:39:37 UTC (rev 22623)
+++ trunk/dports/net/zabbix/Portfile 2007-03-08 06:07:58 UTC (rev 22624)
@@ -9,20 +9,22 @@
platforms darwin
description An open source application and network monitor
+
long_description ${description}
homepage http://www.zabbix.com
master_sites sourceforge
checksums md5 baa6896c5f41ed286bca3c40e419e1cf
-default_variants +server
patchfiles patch-configure
+
depends_lib port:mysql5 \
port:fping
configure.pre_args --prefix=${prefix}
configure.args --enable-server \
+ --enable-agent \
--with-mysql=${prefix} \
--with-net-snmp \
--bindir=${prefix}/bin/zabbix \
@@ -33,18 +35,54 @@
--localstatedir=${prefix}/var/zabbix \
--mandir=${prefix}/man
+if { [variant_isset agent_only] } {
startupitem.create yes
+ startupitem.start "${prefix}/share/zabbix/zabbix_agentd.init start"
+ startupitem.stop "${prefix}/share/zabbix/zabbix_agentd.init stop"
+} else {
+ startupitem.create yes
startupitem.start "${prefix}/share/zabbix/zabbix_server.init start"
startupitem.stop "${prefix}/share/zabbix/zabbix_server.init stop"
+}
-variant server {
-# This variant doesn't do anything in this port. Its only purpose is to trigger the server
-# variant in the mysql5 port.
+variant agent_only {
+ depends_lib-delete port:mysql5 \
+ port:fping
+
+ configure.args-delete --enable-server \
+ --with-mysql=${prefix} \
+ --with-net-snmp
+
}
build {}
-post-patch {
+pre-fetch {
+if { [variant_isset agent_only] } {
+# If agent_only don'y display MySQL ui_msg
+} else {
+
+ ui_msg "\n
+
+ ************************************************
+ **** It is highly recommended you ****
+ **** pre-install MySQL with the +server ****
+ **** variant so MySQL will run at system ****
+ **** boot. So for new MySQL installs: ****
+
+ 1) Cancel this install now with Cntrl-C.
+ 2) Type \"port install mysql5 +server\"
+ 3) Re-install ZABBIX
+ ************************************************
+
+ \n"
+}
+}
+
+post-extract {
+ reinplace "s|PACKETSZ|NS_PACKETSZ|g" \
+ ${worksrcpath}/src/libs/zbxsysinfo/common/common.c
+
reinplace "s|#DBSocket=/tmp/mysql.sock|DBSocket=${prefix}/var/run/mysql5/mysqld.sock|g" \
${worksrcpath}/misc/conf/zabbix_server.conf
@@ -58,8 +96,33 @@
}
post-destroot {
-# Copy sample server .conf files
+
+if { [variant_isset agent_only] } {
+# Don't install MySQL data and frontend stuff for agent_only
+
+# Copy sample agent .conf files
xinstall -d -m 755 -d ${destroot}${prefix}/etc/zabbix
+ xinstall -m 755 ${worksrcpath}/misc/conf/zabbix_agent.conf \
+ ${destroot}${prefix}/etc/zabbix/zabbix_agent.conf.sample
+ xinstall -m 755 ${worksrcpath}/misc/conf/zabbix_agentd.conf \
+ ${destroot}${prefix}/etc/zabbix/zabbix_agentd.conf.sample
+
+
+# Copy a startup script for the agent
+ xinstall -d -m 755 -d ${destroot}${prefix}/share/zabbix
+ xinstall -m 755 ${portpath}/${filesdir}/zabbix_agentd.init \
+ ${destroot}${prefix}/share/zabbix
+ reinplace "s|__PREFIX__|${prefix}|g" \
+ ${destroot}${prefix}/share/zabbix/zabbix_agentd.init
+
+} else {
+
+# Copy sample server and agent .conf files
+ xinstall -d -m 755 -d ${destroot}${prefix}/etc/zabbix
+ xinstall -m 755 ${worksrcpath}/misc/conf/zabbix_agent.conf \
+ ${destroot}${prefix}/etc/zabbix/zabbix_agent.conf.sample
+ xinstall -m 755 ${worksrcpath}/misc/conf/zabbix_agentd.conf \
+ ${destroot}${prefix}/etc/zabbix/zabbix_agentd.conf.sample
xinstall -m 755 ${worksrcpath}/misc/conf/zabbix_server.conf \
${destroot}${prefix}/etc/zabbix/zabbix_server.conf.sample
@@ -110,13 +173,63 @@
reinplace "s|__PREFIX__|${prefix}|g" \
${destroot}${prefix}/share/zabbix/zabbix_server.init
+# Create a startup script for the agent
+ xinstall -m 755 ${portpath}/${filesdir}/zabbix_agentd.init \
+ ${destroot}${prefix}/share/zabbix
+ reinplace "s|__PREFIX__|${prefix}|g" \
+ ${destroot}${prefix}/share/zabbix/zabbix_agentd.init
+
# Set permissions for etc (protect passwords) and the frontend
system "chmod 660 ${destroot}${prefix}/etc/zabbix/*"
system "chown zabbix:zabbix ${destroot}${prefix}/etc/zabbix/*"
system "chown -R www:www ${destroot}${prefix}/share/zabbix/frontends/*"
+
+# End else clause - Done with server stuff
}
+# Copy Win32 agent for normal and agent_only installs
+ xinstall -d -m 755 -d ${destroot}${prefix}/share/zabbix/zabbix_agent_win32
+ xinstall -m 755 ${worksrcpath}/src/zabbix_agent_win32/Release/ZabbixW32.exe \
+ ${destroot}${prefix}/share/zabbix/zabbix_agent_win32
+ xinstall -m 755 ${worksrcpath}/src/zabbix_agent_win32/doc/ReadMe.txt \
+ ${destroot}${prefix}/share/zabbix/zabbix_agent_win32
+}
+
post-activate {
+
+if { [variant_isset agent_only] } {
+
+ui_msg "\n#### To complete the ZABBIX agent installation ####
+
+
+1) Edit the sample .conf file ${prefix}/etc/zabbix/zabbix_agentd.conf (rename & omit .sample)
+
+ Set the following variable to the ip address of your ZABBIX server to
+ allow it access to the agent.
+
+ Server=x.x.x.x
+
+
+2) Set zabbix_agentd to run at system boot, then start it
+
+ OS X 10.4 - Run launchctl so ZABBIX will start at system boot
+ sudo launchctl load -w /Library/LaunchDaemons/org.macports.zabbix.plist
+
+ OS X 10.3 and previous - A startup item was created in /Library/StartupItems
+ Add \"ZABBIX=-YES-\" to the /etc/hostconfig file to run ZABBIX at system boot
+
+ ${prefix}/share/zabbix/zabbix_agentd.init start (stop|status)
+
+
+3) A Win32 agent is in ${prefix}/share/zabbix/zabbix_agent_win32 for
+ installation on Windows NT 4.0, Windows 2000, and Windows XP. See
+ the ReadMe.txt for instructions.
+
+
+\n"
+
+} else {
+
ui_msg "\n#### To complete the ZABBIX installation ####
@@ -197,9 +310,17 @@
${prefix}/share/zabbix/zabbix_server.init start (stop|status)
-7) Login at http://localhost/zabbix with default user 'admin' with no password, then
+7) A Win32 agent is in ${prefix}/share/zabbix/zabbix_agent_win32 for
+ installation on Windows NT 4.0, Windows 2000, and Windows XP. See
+ the ReadMe.txt for instructions.
+
+
+8) Login at http://localhost/zabbix with default user 'admin' with no password, then
be sure to read the manual: http://www.zabbix.com/manual/v1.1/index.php
\n"
+# End else clause
+
}
+}
Modified: trunk/dports/net/zabbix/files/patch-configure
===================================================================
--- trunk/dports/net/zabbix/files/patch-configure 2007-03-08 05:39:37 UTC (rev 22623)
+++ trunk/dports/net/zabbix/files/patch-configure 2007-03-08 06:07:58 UTC (rev 22624)
@@ -1,16 +1,6 @@
---- configure 2007-02-26 20:29:48.000000000 -0800
-+++ configure.new 2007-02-26 20:33:14.000000000 -0800
-@@ -275,6 +275,9 @@
- # Factoring default headers for most tests.
- ac_includes_default="\
- #include <stdio.h>
-+#include <sys/socket.h>
-+#include <sys/param.h>
-+#include <netinet/in.h>
- #if HAVE_SYS_TYPES_H
- # include <sys/types.h>
- #endif
-@@ -6666,6 +6669,9 @@
+--- configure.org 2006-05-31 00:06:26.000000000 -0700
++++ configure 2006-06-01 18:08:54.000000000 -0700
+@@ -6664,6 +6664,9 @@
elif test -f $withval/include/mysql.h; then
MYSQL_INCDIR=$withval/include
MYSQL_LIBDIR=$withval/lib
Added: trunk/dports/net/zabbix/files/zabbix_agentd.init
===================================================================
--- trunk/dports/net/zabbix/files/zabbix_agentd.init (rev 0)
+++ trunk/dports/net/zabbix/files/zabbix_agentd.init 2007-03-08 06:07:58 UTC (rev 22624)
@@ -0,0 +1,26 @@
+#!/bin/sh
+
+case "$1" in
+ start)
+ echo -n "Starting zabbix_agentd "
+ sudo -u zabbix __PREFIX__/bin/zabbix/zabbix_agentd -c __PREFIX__/etc/zabbix/zabbix_agentd.conf
+ ;;
+
+ stop)
+ echo -n "Shutting down zabbix_agentd"
+ pid=`ps axc|awk "{if (\\$5==\"zabbix_agent\") print \\$1}"`
+ /bin/kill $pid
+ rm /var/tmp/zabbix_agentd.pid
+ ;;
+ restart)
+ $0 stop
+ $0 start
+ ;;
+ status)
+ /bin/ps -ax |/usr/bin/grep zabbix_agentd
+ ;;
+ *)
+ echo "Usage: $0 {start|stop|restart|status}"
+ exit 1
+esac
+
Property changes on: trunk/dports/net/zabbix/files/zabbix_agentd.init
___________________________________________________________________
Name: svn:eol-style
+ native
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macports-changes/attachments/20070307/77ff929b/attachment.html
More information about the macports-changes
mailing list