aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTijl Coosemans <tijl@FreeBSD.org>2016-03-24 16:15:23 +0000
committerTijl Coosemans <tijl@FreeBSD.org>2016-03-24 16:15:23 +0000
commit253c2aa1df0c2fbec12f35dc548df1b36583aca5 (patch)
tree17b94d124eaa513059859dcaec9a5d735048eebb
parent92271c7c50ba3211499f06f2dc297cc34fa81cba (diff)
Notes
-rw-r--r--sysutils/Makefile1
-rw-r--r--sysutils/cluster-glue/Makefile74
-rw-r--r--sysutils/cluster-glue/distinfo2
-rw-r--r--sysutils/cluster-glue/files/ha_logd.in25
-rw-r--r--sysutils/cluster-glue/files/patch-configure.ac53
-rw-r--r--sysutils/cluster-glue/files/patch-logd-ha_logd.c13
-rw-r--r--sysutils/cluster-glue/pkg-descr4
-rw-r--r--sysutils/cluster-glue/pkg-plist220
8 files changed, 392 insertions, 0 deletions
diff --git a/sysutils/Makefile b/sysutils/Makefile
index 65278cadf10b..e0de8573c1d0 100644
--- a/sysutils/Makefile
+++ b/sysutils/Makefile
@@ -150,6 +150,7 @@
SUBDIR += cloop-utils
SUBDIR += cloudabi-utils
SUBDIR += clsync
+ SUBDIR += cluster-glue
SUBDIR += cmdwatch
SUBDIR += cmockery2
SUBDIR += cmogstored
diff --git a/sysutils/cluster-glue/Makefile b/sysutils/cluster-glue/Makefile
new file mode 100644
index 000000000000..29192974e504
--- /dev/null
+++ b/sysutils/cluster-glue/Makefile
@@ -0,0 +1,74 @@
+# $FreeBSD$
+
+PORTNAME= cluster-glue
+PORTVERSION= 1.0.12
+CATEGORIES= sysutils
+MASTER_SITES= http://hg.linux-ha.org/glue/archive/
+DISTNAME= 0a7add1d9996
+DIST_SUBDIR= linux-ha
+
+MAINTAINER= ports@FreeBSD.org
+COMMENT= High availability cluster libraries and utilities
+
+LICENSE= GPLv2+ LGPL21+
+LICENSE_COMB= multi
+LICENSE_FILE_GPLv2+ = ${WRKSRC}/COPYING
+LICENSE_FILE_LGPL21+ = ${WRKSRC}/COPYING.LIB
+
+LIB_DEPENDS= libltdl.so:${PORTSDIR}/devel/libltdl \
+ libuuid.so:${PORTSDIR}/misc/e2fsprogs-libuuid
+
+GNU_CONFIGURE= yes
+CONFIGURE_ARGS= --disable-fatal-warnings \
+ --with-initdir=${PREFIX}/etc/rc.d \
+ --with-ocf-root=${PREFIX}/etc/ocf
+CPPFLAGS+= -I${LOCALBASE}/include
+LIBS+= -L${LOCALBASE}/lib
+INSTALL_TARGET= install-strip
+USES= autoreconf gettext gmake libtool perl5 pkgconfig python tar:bz2
+USE_GNOME= glib20 libxml2
+USE_LDCONFIG= yes
+USE_OPENSSL= yes
+USE_RC_SUBR= ha_logd
+WRKSRC= ${WRKDIR}/Reusable-Cluster-Components-glue--${DISTNAME}
+
+USERS= hacluster
+GROUPS= haclient
+
+OPTIONS_DEFINE= DOCS DRAC3 HPI IPMI MANPAGES SNMP
+OPTIONS_DEFAULT= DRAC3 HPI IPMI MANPAGES SNMP
+OPTIONS_SUB= yes
+
+DRAC3_CONFIGURE_OFF= ac_cv_header_curl_curl_h=no
+DRAC3_DESC= Dell DRAC III support
+DRAC3_LIB_DEPENDS= libcurl.so:${PORTSDIR}/ftp/curl
+
+HPI_CONFIGURE_OFF= ac_cv_header_openhpi_SaHpi_h=no
+HPI_DESC= SAF Hardware Platform Interface support
+HPI_LIB_DEPENDS= libopenhpi.so:${PORTSDIR}/sysutils/openhpi
+
+IPMI_CONFIGURE_ENABLE= ipmilan
+IPMI_DESC= Intelligent Platform Management Interface support
+IPMI_LIB_DEPENDS= libOpenIPMI.so:${PORTSDIR}/sysutils/openipmi
+
+MANPAGES_BUILD_DEPENDS= asciidoc:${PORTSDIR}/textproc/asciidoc \
+ docbook-xsl>0:${PORTSDIR}/textproc/docbook-xsl \
+ xsltproc:${PORTSDIR}/textproc/libxslt
+MANPAGES_CONFIGURE_ENABLE=doc
+
+SNMP_CONFIGURE_ENABLE= snmp
+SNMP_LIB_DEPENDS= libnetsnmp.so:${PORTSDIR}/net-mgmt/net-snmp
+
+.include <bsd.port.options.mk>
+
+.if exists(${LOCALBASE}/include/vacmclient_api.h)
+PLIST_SUB+= VACM=""
+.else
+PLIST_SUB+= VACM="@comment "
+.endif
+
+post-install:
+ ${INSTALL_DATA} ${WRKSRC}/logd/logd.cf \
+ ${STAGEDIR}${PREFIX}/etc/ha_logd.cf.sample
+
+.include <bsd.port.mk>
diff --git a/sysutils/cluster-glue/distinfo b/sysutils/cluster-glue/distinfo
new file mode 100644
index 000000000000..afc42e50ddd4
--- /dev/null
+++ b/sysutils/cluster-glue/distinfo
@@ -0,0 +1,2 @@
+SHA256 (linux-ha/0a7add1d9996.tar.bz2) = c47bfffbfe11401379d5248fc7518a3de9532c02090d614f314037fc3a7c4ceb
+SIZE (linux-ha/0a7add1d9996.tar.bz2) = 451432
diff --git a/sysutils/cluster-glue/files/ha_logd.in b/sysutils/cluster-glue/files/ha_logd.in
new file mode 100644
index 000000000000..72e97e595e4b
--- /dev/null
+++ b/sysutils/cluster-glue/files/ha_logd.in
@@ -0,0 +1,25 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+# PROVIDE: ha_logd
+# REQUIRE: DAEMON
+# KEYWORD: shutdown
+#
+# Add the following to /etc/rc.conf[.local] to enable this service
+#
+# ha_logd_enable="YES"
+#
+
+. /etc/rc.subr
+
+: ${ha_logd_enable:=NO}
+
+name=ha_logd
+rcvar=ha_logd_enable
+command="%%PREFIX%%/lib/heartbeat/ha_logd"
+command_args="-d"
+pidfile="/var/run/ha_logd.pid"
+
+load_rc_config ${name}
+run_rc_command "$1"
diff --git a/sysutils/cluster-glue/files/patch-configure.ac b/sysutils/cluster-glue/files/patch-configure.ac
new file mode 100644
index 000000000000..72c459ea2595
--- /dev/null
+++ b/sysutils/cluster-glue/files/patch-configure.ac
@@ -0,0 +1,53 @@
+--- configure.ac.orig 2014-10-16 17:24:17 UTC
++++ configure.ac
+@@ -320,6 +320,12 @@ REBOOT_OPTIONS="-f"
+ POWEROFF_OPTIONS="-f"
+
+ case "$host_os" in
++*freebsd*|*dragonfly*)
++ POWEROFF_CMD=/sbin/shutdown
++ POWEROFF_OPTIONS="-p now"
++ REBOOT=/sbin/shutdown
++ REBOOT_OPTIONS="-r now"
++ ;;
+ *bsd*) LIBS="-L/usr/local/lib"
+ CPPFLAGS="$CPPFLAGS -I/usr/local/include"
+ INIT_EXT=".sh"
+@@ -497,7 +503,7 @@ export PATH
+
+ dnl Replacing AC_PROG_LIBTOOL with AC_CHECK_PROG because LIBTOOL
+ dnl was NOT being expanded all the time thus causing things to fail.
+-AC_CHECK_PROGS(LIBTOOL, glibtool libtool libtool15 libtool13)
++dnl AC_CHECK_PROGS(LIBTOOL, glibtool libtool libtool15 libtool13)
+
+ AM_PATH_PYTHON
+ AC_CHECK_PROGS(MAKE, gmake make)
+@@ -1230,7 +1236,6 @@ else
+
+ # We had to eliminate -Wnested-externs because of libtool changes
+ EXTRA_FLAGS="-fgnu89-inline
+- -fstack-protector-all
+ -Wall
+ -Waggregate-return
+ -Wbad-function-cast
+@@ -1267,11 +1272,6 @@ else
+ fi
+ done
+
+-dnl In lib/ais/Makefile.am there's a gcc option available as of v4.x
+-
+- GCC_MAJOR=`gcc -v 2>&1 | awk 'END{print $3}' | sed 's/[.].*//'`
+- AM_CONDITIONAL(GCC_4, test "${GCC_MAJOR}" = 4)
+-
+ dnl System specific options
+
+ case "$host_os" in
+@@ -1345,8 +1345,6 @@ AC_MSG_RESULT(Supress make details: ${en
+ AC_MSG_RESULT(Pretty print compiler output: ${enable_pretty})
+
+ dnl Put the above variables to use
+-LIBTOOL="${LIBTOOL} --tag=CC \$(QUIET_LIBTOOL_OPTS)"
+-MAKE="${MAKE} \$(QUIET_MAKE_OPTS)"
+
+ AC_SUBST(CC)
+ AC_SUBST(MAKE)
diff --git a/sysutils/cluster-glue/files/patch-logd-ha_logd.c b/sysutils/cluster-glue/files/patch-logd-ha_logd.c
new file mode 100644
index 000000000000..da3716c2fab5
--- /dev/null
+++ b/sysutils/cluster-glue/files/patch-logd-ha_logd.c
@@ -0,0 +1,13 @@
+--- logd/ha_logd.c.orig 2014-10-16 17:24:17 UTC
++++ logd/ha_logd.c
+@@ -59,8 +59,8 @@
+
+
+
+-#define DEFAULT_CFG_FILE HA_SYSCONFDIR "/logd.cf"
+-#define LOGD_PIDFILE HA_VARRUNDIR "/logd.pid"
++#define DEFAULT_CFG_FILE HA_SYSCONFDIR "/ha_logd.cf"
++#define LOGD_PIDFILE HA_VARRUNDIR "/ha_logd.pid"
+
+ #define FD_STDIN 0
+ #define FD_STDOUT 1
diff --git a/sysutils/cluster-glue/pkg-descr b/sysutils/cluster-glue/pkg-descr
new file mode 100644
index 000000000000..21cba1aab027
--- /dev/null
+++ b/sysutils/cluster-glue/pkg-descr
@@ -0,0 +1,4 @@
+Cluster Glue is a set of libraries, tools and utilities suitable for the
+Heartbeat/Pacemaker cluster stack.
+
+WWW: http://linux-ha.org/wiki/Cluster_Glue
diff --git a/sysutils/cluster-glue/pkg-plist b/sysutils/cluster-glue/pkg-plist
new file mode 100644
index 000000000000..2f67488d2ffb
--- /dev/null
+++ b/sysutils/cluster-glue/pkg-plist
@@ -0,0 +1,220 @@
+@sample etc/ha_logd.cf.sample
+@comment etc/rc.d/logd
+include/clplumbing/GSource.h
+include/clplumbing/GSource_internal.h
+include/clplumbing/Gmain_timeout.h
+include/clplumbing/apphb_cs.h
+include/clplumbing/base64.h
+include/clplumbing/cl_log.h
+include/clplumbing/cl_misc.h
+include/clplumbing/cl_pidfile.h
+include/clplumbing/cl_plugin.h
+include/clplumbing/cl_poll.h
+include/clplumbing/cl_quorum.h
+include/clplumbing/cl_quorumd.h
+include/clplumbing/cl_random.h
+include/clplumbing/cl_reboot.h
+include/clplumbing/cl_signal.h
+include/clplumbing/cl_syslog.h
+include/clplumbing/cl_tiebreaker.h
+include/clplumbing/cl_uuid.h
+include/clplumbing/coredumps.h
+include/clplumbing/cpulimits.h
+include/clplumbing/ipc.h
+include/clplumbing/loggingdaemon.h
+include/clplumbing/longclock.h
+include/clplumbing/lsb_exitcodes.h
+include/clplumbing/md5.h
+include/clplumbing/mkstemp_mode.h
+include/clplumbing/netstring.h
+include/clplumbing/proctrack.h
+include/clplumbing/realtime.h
+include/clplumbing/replytrack.h
+include/clplumbing/setproctitle.h
+include/clplumbing/timers.h
+include/clplumbing/uids.h
+include/heartbeat/compress.h
+include/heartbeat/glue_config.h
+include/heartbeat/ha_msg.h
+include/heartbeat/lrm/lrm_api.h
+include/heartbeat/lrm/lrm_msg.h
+include/heartbeat/lrm/racommon.h
+include/heartbeat/lrm/raexec.h
+include/pils/generic.h
+include/pils/interface.h
+include/pils/plugin.h
+include/stonith/expect.h
+include/stonith/st_ttylock.h
+include/stonith/stonith.h
+include/stonith/stonith_config_xml.h
+include/stonith/stonith_expect_helpers.h
+include/stonith/stonith_plugin.h
+include/stonith/stonith_plugin_common.h
+include/stonith/stonith_signal.h
+lib/heartbeat/base64_md5_test
+lib/heartbeat/ha_logd
+lib/heartbeat/ipctest
+lib/heartbeat/ipctransientclient
+lib/heartbeat/ipctransientserver
+lib/heartbeat/logtest
+lib/heartbeat/lrmd
+lib/heartbeat/plugins/InterfaceMgr/generic.a
+lib/heartbeat/plugins/InterfaceMgr/generic.so
+lib/heartbeat/plugins/RAExec/heartbeat.a
+lib/heartbeat/plugins/RAExec/heartbeat.so
+lib/heartbeat/plugins/RAExec/lsb.a
+lib/heartbeat/plugins/RAExec/lsb.so
+lib/heartbeat/plugins/RAExec/ocf.a
+lib/heartbeat/plugins/RAExec/ocf.so
+lib/heartbeat/plugins/compress/bz2.a
+lib/heartbeat/plugins/compress/bz2.so
+lib/heartbeat/plugins/compress/zlib.a
+lib/heartbeat/plugins/compress/zlib.so
+lib/heartbeat/plugins/test/test.a
+lib/heartbeat/plugins/test/test.so
+lib/heartbeat/transient-test.sh
+lib/liblrm.a
+lib/liblrm.so
+lib/liblrm.so.2
+lib/liblrm.so.2.0.0
+lib/libpils.a
+lib/libpils.so
+lib/libpils.so.2
+lib/libpils.so.2.0.0
+lib/libplumb.a
+lib/libplumb.so
+lib/libplumb.so.2
+lib/libplumb.so.2.1.0
+lib/libplumbgpl.a
+lib/libplumbgpl.so
+lib/libplumbgpl.so.2
+lib/libplumbgpl.so.2.0.0
+lib/libstonith.a
+lib/libstonith.so
+lib/libstonith.so.1
+lib/libstonith.so.1.0.0
+lib/stonith/plugins/external/drac5
+lib/stonith/plugins/external/dracmc-telnet
+lib/stonith/plugins/external/hetzner
+lib/stonith/plugins/external/hmchttp
+lib/stonith/plugins/external/ibmrsa
+lib/stonith/plugins/external/ibmrsa-telnet
+lib/stonith/plugins/external/ipmi
+lib/stonith/plugins/external/ippower9258
+lib/stonith/plugins/external/kdumpcheck
+lib/stonith/plugins/external/libvirt
+lib/stonith/plugins/external/nut
+lib/stonith/plugins/external/rackpdu
+lib/stonith/plugins/external/riloe
+lib/stonith/plugins/external/ssh
+lib/stonith/plugins/external/vcenter
+lib/stonith/plugins/external/vmware
+lib/stonith/plugins/external/xen0
+lib/stonith/plugins/external/xen0-ha
+lib/stonith/plugins/stonith2/apcmaster.a
+lib/stonith/plugins/stonith2/apcmaster.so
+%%SNMP%%lib/stonith/plugins/stonith2/apcmastersnmp.a
+%%SNMP%%lib/stonith/plugins/stonith2/apcmastersnmp.so
+lib/stonith/plugins/stonith2/apcsmart.a
+lib/stonith/plugins/stonith2/apcsmart.so
+lib/stonith/plugins/stonith2/baytech.a
+lib/stonith/plugins/stonith2/baytech.so
+%%HPI%%lib/stonith/plugins/stonith2/bladehpi.a
+%%HPI%%lib/stonith/plugins/stonith2/bladehpi.so
+lib/stonith/plugins/stonith2/cyclades.a
+lib/stonith/plugins/stonith2/cyclades.so
+%%DRAC3%%lib/stonith/plugins/stonith2/drac3.a
+%%DRAC3%%lib/stonith/plugins/stonith2/drac3.so
+lib/stonith/plugins/stonith2/external.a
+lib/stonith/plugins/stonith2/external.so
+lib/stonith/plugins/stonith2/ibmhmc.a
+lib/stonith/plugins/stonith2/ibmhmc.so
+%%IPMI%%lib/stonith/plugins/stonith2/ipmilan.a
+%%IPMI%%lib/stonith/plugins/stonith2/ipmilan.so
+lib/stonith/plugins/stonith2/meatware.a
+lib/stonith/plugins/stonith2/meatware.so
+lib/stonith/plugins/stonith2/null.a
+lib/stonith/plugins/stonith2/null.so
+lib/stonith/plugins/stonith2/nw_rpc100s.a
+lib/stonith/plugins/stonith2/nw_rpc100s.so
+lib/stonith/plugins/stonith2/rcd_serial.a
+lib/stonith/plugins/stonith2/rcd_serial.so
+lib/stonith/plugins/stonith2/rhcs.a
+lib/stonith/plugins/stonith2/rhcs.so
+lib/stonith/plugins/stonith2/ribcl.py
+lib/stonith/plugins/stonith2/rps10.a
+lib/stonith/plugins/stonith2/rps10.so
+lib/stonith/plugins/stonith2/ssh.a
+lib/stonith/plugins/stonith2/ssh.so
+lib/stonith/plugins/stonith2/suicide.a
+lib/stonith/plugins/stonith2/suicide.so
+%%VACM%%lib/stonith/plugins/stonith2/vacm.a
+%%VACM%%lib/stonith/plugins/stonith2/vacm.so
+%%SNMP%%lib/stonith/plugins/stonith2/wti_mpc.a
+%%SNMP%%lib/stonith/plugins/stonith2/wti_mpc.so
+lib/stonith/plugins/stonith2/wti_nps.a
+lib/stonith/plugins/stonith2/wti_nps.so
+lib/stonith/plugins/xen0-ha-dom0-stonith-helper
+%%MANPAGES%%man/man1/ha_logger.1.gz
+%%MANPAGES%%man/man8/ha_logd.8.gz
+%%MANPAGES%%man/man8/hb_report.8.gz
+%%MANPAGES%%man/man8/lrmadmin.8.gz
+%%MANPAGES%%man/man8/meatclient.8.gz
+%%MANPAGES%%man/man8/stonith.8.gz
+sbin/cibsecret
+sbin/ha_logger
+sbin/hb_report
+sbin/lrmadmin
+sbin/meatclient
+sbin/stonith
+%%DATADIR%%/ha_cf_support.sh
+%%DATADIR%%/ha_log.sh
+%%DATADIR%%/lrmtest/LRMBasicSanityCheck
+%%DATADIR%%/lrmtest/README.regression
+%%DATADIR%%/lrmtest/defaults
+%%DATADIR%%/lrmtest/descriptions
+%%DATADIR%%/lrmtest/evaltest.sh
+%%DATADIR%%/lrmtest/language
+%%DATADIR%%/lrmtest/lrmadmin-interface
+%%DATADIR%%/lrmtest/lrmregtest
+%%DATADIR%%/lrmtest/lrmregtest-lsb
+%%DATADIR%%/lrmtest/regression.sh
+%%DATADIR%%/lrmtest/testcases/BSC
+%%DATADIR%%/lrmtest/testcases/basicset
+%%DATADIR%%/lrmtest/testcases/common.filter
+%%DATADIR%%/lrmtest/testcases/metadata
+%%DATADIR%%/lrmtest/testcases/metadata.exp
+%%DATADIR%%/lrmtest/testcases/ra-list.sh
+%%DATADIR%%/lrmtest/testcases/rscexec
+%%DATADIR%%/lrmtest/testcases/rscexec.exp
+%%DATADIR%%/lrmtest/testcases/rscmgmt
+%%DATADIR%%/lrmtest/testcases/rscmgmt.exp
+%%DATADIR%%/lrmtest/testcases/rscmgmt.log_filter
+%%DATADIR%%/lrmtest/testcases/stonith
+%%DATADIR%%/lrmtest/testcases/stonith.exp
+%%DATADIR%%/lrmtest/testcases/xmllint.sh
+%%DATADIR%%/openais_conf_support.sh
+%%DATADIR%%/utillib.sh
+%%PORTDOCS%%%%DOCSDIR%%/stonith/README.bladehpi
+%%PORTDOCS%%%%DOCSDIR%%/stonith/README.cyclades
+%%PORTDOCS%%%%DOCSDIR%%/stonith/README.drac3
+%%PORTDOCS%%%%DOCSDIR%%/stonith/README.dracmc
+%%PORTDOCS%%%%DOCSDIR%%/stonith/README.external
+%%PORTDOCS%%%%DOCSDIR%%/stonith/README.ibmrsa
+%%PORTDOCS%%%%DOCSDIR%%/stonith/README.ibmrsa-telnet
+%%IPMI%%%%PORTDOCS%%%%DOCSDIR%%/stonith/README.ipmilan
+%%PORTDOCS%%%%DOCSDIR%%/stonith/README.meatware
+%%PORTDOCS%%%%DOCSDIR%%/stonith/README.rackpdu
+%%PORTDOCS%%%%DOCSDIR%%/stonith/README.rcd_serial
+%%PORTDOCS%%%%DOCSDIR%%/stonith/README.riloe
+%%PORTDOCS%%%%DOCSDIR%%/stonith/README.vacm
+%%PORTDOCS%%%%DOCSDIR%%/stonith/README.vcenter
+%%PORTDOCS%%%%DOCSDIR%%/stonith/README.wti_mpc
+%%PORTDOCS%%%%DOCSDIR%%/stonith/README_kdumpcheck.txt
+@dir(hacluster,,700) /var/lib/heartbeat/cores/hacluster
+@dir(nobody,,700) /var/lib/heartbeat/cores/nobody
+@dir(root,,700) /var/lib/heartbeat/cores/root
+@dir /var/lib/heartbeat/cores
+@dir /var/lib/heartbeat/lrm
+@dir /var/lib/heartbeat
+@dir /var/lib