Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 3 Apr 2023 13:28:02 GMT
From:      Baptiste Daroussin <bapt@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: 8ab3666e9a90 - main - net-mgmt/fence-agents: new port
Message-ID:  <202304031328.333DS2Ht035222@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by bapt:

URL: https://cgit.FreeBSD.org/ports/commit/?id=8ab3666e9a903031a556ecaa3f2514169143d94d

commit 8ab3666e9a903031a556ecaa3f2514169143d94d
Author:     Florian Millet <florian.millet@ovhcloud.com>
AuthorDate: 2023-04-03 13:20:11 +0000
Commit:     Baptiste Daroussin <bapt@FreeBSD.org>
CommitDate: 2023-04-03 13:24:36 +0000

    net-mgmt/fence-agents: new port
    
    Fence agents were developed as device "drivers" which are able to prevent
    computers from destroying data on shared storage.
    Their aim is to isolate a corrupted computer, using one of three methods:
    
    - Power - A computer that is switched off cannot corrupt data, but it is
      important to not do a "soft-reboot" as we won't know if this is possible.
      This also works for virtual machines when the fence device is a hypervisor.
    - Network - Switches can prevent routing to a given computer, so even if a
      computer is powered on it won't be able to harm the data.
    - Configuration - Fibre-channel switches or SCSI devices allow us to limit who
      can write to managed disks.
    
    This is used by the Pacemaker cluster resource management.
    
    Note:
    A lot of these agents have Linuxism and have to be adapted, they will be
    patched later to work out of the box on FreeBSD.
    
    PR:             270623
    Sponsored by:   OVHcloud
---
 net-mgmt/Makefile               |   1 +
 net-mgmt/fence-agents/Makefile  |  35 ++++++++
 net-mgmt/fence-agents/distinfo  |   3 +
 net-mgmt/fence-agents/pkg-descr |  13 +++
 net-mgmt/fence-agents/pkg-plist | 184 ++++++++++++++++++++++++++++++++++++++++
 5 files changed, 236 insertions(+)

diff --git a/net-mgmt/Makefile b/net-mgmt/Makefile
index 81ec96d74b72..bd967e4f9e97 100644
--- a/net-mgmt/Makefile
+++ b/net-mgmt/Makefile
@@ -70,6 +70,7 @@
     SUBDIR += ettercap
     SUBDIR += fastnetmon
     SUBDIR += fetchconfig
+    SUBDIR += fence-agents
     SUBDIR += flow-tools
     SUBDIR += flowd
     SUBDIR += flowviewer
diff --git a/net-mgmt/fence-agents/Makefile b/net-mgmt/fence-agents/Makefile
new file mode 100644
index 000000000000..88fddeaf69a4
--- /dev/null
+++ b/net-mgmt/fence-agents/Makefile
@@ -0,0 +1,35 @@
+PORTNAME=	fence-agents
+PORTVERSION=	4.12.1
+DISTVERSIONPREFIX=v
+CATEGORIES=	net-mgmt
+
+MAINTAINER=	bapt@FreeBSD.org
+COMMENT=	OCF Compliant Fence Agents
+WWW=		https://github.com/ClusterLabs/fence-agents
+
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}pexpect>0:misc/py-pexpect@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pycurl>0:ftp/py-pycurl@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests@${PY_FLAVOR}
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}pexpect>0:misc/py-pexpect@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pycurl>0:ftp/py-pycurl@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests@${PY_FLAVOR}
+
+USES=		autoreconf gmake libtool pkgconfig python
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	ClusterLabs
+
+GNU_CONFIGURE=	yes
+CONFLICTS=	heartbeat
+
+OPTIONS_DEFINE=	DOCS MANPAGES
+OPTIONS_DEFAULT=MANPAGES
+OPTIONS_SUB=	yes
+
+MANPAGES_BUILD_DEPENDS=	docbook-xsl>0:textproc/docbook-xsl \
+			xsltproc:textproc/libxslt
+
+post-patch:
+	echo "echo -n ${PORTVERSION}" > ${WRKSRC}/make/git-version-gen
+
+.include <bsd.port.mk>
diff --git a/net-mgmt/fence-agents/distinfo b/net-mgmt/fence-agents/distinfo
new file mode 100644
index 000000000000..e7b0766ade82
--- /dev/null
+++ b/net-mgmt/fence-agents/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1678367001
+SHA256 (ClusterLabs-fence-agents-v4.12.1_GH0.tar.gz) = a30349759931bc19eed100225615215b9c26e005cefa394993b5cbee13b72145
+SIZE (ClusterLabs-fence-agents-v4.12.1_GH0.tar.gz) = 475073
diff --git a/net-mgmt/fence-agents/pkg-descr b/net-mgmt/fence-agents/pkg-descr
new file mode 100644
index 000000000000..33aef6812d82
--- /dev/null
+++ b/net-mgmt/fence-agents/pkg-descr
@@ -0,0 +1,13 @@
+Fence agents were developed as device "drivers" which are able to prevent
+computers from destroying data on shared storage.
+Their aim is to isolate a corrupted computer, using one of three methods:
+
+- Power - A computer that is switched off cannot corrupt data, but it is
+  important to not do a "soft-reboot" as we won't know if this is possible.
+  This also works for virtual machines when the fence device is a hypervisor.
+- Network - Switches can prevent routing to a given computer, so even if a
+  computer is powered on it won't be able to harm the data.
+- Configuration - Fibre-channel switches or SCSI devices allow us to limit who
+  can write to managed disks.
+
+This is used by the Pacemaker cluster resource management.
diff --git a/net-mgmt/fence-agents/pkg-plist b/net-mgmt/fence-agents/pkg-plist
new file mode 100644
index 000000000000..ba789371d6a9
--- /dev/null
+++ b/net-mgmt/fence-agents/pkg-plist
@@ -0,0 +1,184 @@
+%%MANPAGES%%man/man8/fence_ack_manual.8.gz
+%%MANPAGES%%man/man8/fence_aliyun.8.gz
+%%MANPAGES%%man/man8/fence_alom.8.gz
+%%MANPAGES%%man/man8/fence_amt.8.gz
+%%MANPAGES%%man/man8/fence_apc.8.gz
+%%MANPAGES%%man/man8/fence_apc_snmp.8.gz
+%%MANPAGES%%man/man8/fence_aws.8.gz
+%%MANPAGES%%man/man8/fence_azure_arm.8.gz
+%%MANPAGES%%man/man8/fence_bladecenter.8.gz
+%%MANPAGES%%man/man8/fence_brocade.8.gz
+%%MANPAGES%%man/man8/fence_cdu.8.gz
+%%MANPAGES%%man/man8/fence_cisco_mds.8.gz
+%%MANPAGES%%man/man8/fence_cisco_ucs.8.gz
+%%MANPAGES%%man/man8/fence_compute.8.gz
+%%MANPAGES%%man/man8/fence_crosslink.8.gz
+%%MANPAGES%%man/man8/fence_cyberpower_ssh.8.gz
+%%MANPAGES%%man/man8/fence_docker.8.gz
+%%MANPAGES%%man/man8/fence_drac.8.gz
+%%MANPAGES%%man/man8/fence_drac5.8.gz
+%%MANPAGES%%man/man8/fence_dummy.8.gz
+%%MANPAGES%%man/man8/fence_eaton_snmp.8.gz
+%%MANPAGES%%man/man8/fence_ecloud.8.gz
+%%MANPAGES%%man/man8/fence_emerson.8.gz
+%%MANPAGES%%man/man8/fence_eps.8.gz
+%%MANPAGES%%man/man8/fence_evacuate.8.gz
+%%MANPAGES%%man/man8/fence_gce.8.gz
+%%MANPAGES%%man/man8/fence_hds_cb.8.gz
+%%MANPAGES%%man/man8/fence_heuristics_ping.8.gz
+%%MANPAGES%%man/man8/fence_hpblade.8.gz
+%%MANPAGES%%man/man8/fence_ibm_powervs.8.gz
+%%MANPAGES%%man/man8/fence_ibm_vpc.8.gz
+%%MANPAGES%%man/man8/fence_ibmblade.8.gz
+%%MANPAGES%%man/man8/fence_ibmz.8.gz
+%%MANPAGES%%man/man8/fence_idrac.8.gz
+%%MANPAGES%%man/man8/fence_ifmib.8.gz
+%%MANPAGES%%man/man8/fence_ilo.8.gz
+%%MANPAGES%%man/man8/fence_ilo2.8.gz
+%%MANPAGES%%man/man8/fence_ilo3.8.gz
+%%MANPAGES%%man/man8/fence_ilo3_ssh.8.gz
+%%MANPAGES%%man/man8/fence_ilo4.8.gz
+%%MANPAGES%%man/man8/fence_ilo4_ssh.8.gz
+%%MANPAGES%%man/man8/fence_ilo5.8.gz
+%%MANPAGES%%man/man8/fence_ilo5_ssh.8.gz
+%%MANPAGES%%man/man8/fence_ilo_moonshot.8.gz
+%%MANPAGES%%man/man8/fence_ilo_mp.8.gz
+%%MANPAGES%%man/man8/fence_ilo_ssh.8.gz
+%%MANPAGES%%man/man8/fence_imm.8.gz
+%%MANPAGES%%man/man8/fence_intelmodular.8.gz
+%%MANPAGES%%man/man8/fence_ipdu.8.gz
+%%MANPAGES%%man/man8/fence_ipmilan.8.gz
+%%MANPAGES%%man/man8/fence_ipmilanplus.8.gz
+%%MANPAGES%%man/man8/fence_ironic.8.gz
+%%MANPAGES%%man/man8/fence_kubevirt.8.gz
+%%MANPAGES%%man/man8/fence_ldom.8.gz
+%%MANPAGES%%man/man8/fence_lindypdu.8.gz
+%%MANPAGES%%man/man8/fence_lpar.8.gz
+%%MANPAGES%%man/man8/fence_mpath.8.gz
+%%MANPAGES%%man/man8/fence_netio.8.gz
+%%MANPAGES%%man/man8/fence_openstack.8.gz
+%%MANPAGES%%man/man8/fence_powerman.8.gz
+%%MANPAGES%%man/man8/fence_pve.8.gz
+%%MANPAGES%%man/man8/fence_raritan.8.gz
+%%MANPAGES%%man/man8/fence_raritan_px3.8.gz
+%%MANPAGES%%man/man8/fence_rcd_serial.8.gz
+%%MANPAGES%%man/man8/fence_redfish.8.gz
+%%MANPAGES%%man/man8/fence_rhevm.8.gz
+%%MANPAGES%%man/man8/fence_rsa.8.gz
+%%MANPAGES%%man/man8/fence_rsb.8.gz
+%%MANPAGES%%man/man8/fence_sanbox2.8.gz
+%%MANPAGES%%man/man8/fence_sbd.8.gz
+%%MANPAGES%%man/man8/fence_scsi.8.gz
+%%MANPAGES%%man/man8/fence_skalar.8.gz
+%%MANPAGES%%man/man8/fence_tripplite_snmp.8.gz
+%%MANPAGES%%man/man8/fence_vbox.8.gz
+%%MANPAGES%%man/man8/fence_virsh.8.gz
+%%MANPAGES%%man/man8/fence_vmware.8.gz
+%%MANPAGES%%man/man8/fence_vmware_rest.8.gz
+%%MANPAGES%%man/man8/fence_vmware_vcloud.8.gz
+%%MANPAGES%%man/man8/fence_wti.8.gz
+%%MANPAGES%%man/man8/fence_xenapi.8.gz
+%%MANPAGES%%man/man8/fence_zvmip.8.gz
+sbin/fence_ack_manual
+sbin/fence_aliyun
+sbin/fence_alom
+sbin/fence_amt
+sbin/fence_apc
+sbin/fence_apc_snmp
+sbin/fence_aws
+sbin/fence_azure_arm
+sbin/fence_bladecenter
+sbin/fence_brocade
+sbin/fence_cdu
+sbin/fence_cisco_mds
+sbin/fence_cisco_ucs
+sbin/fence_compute
+sbin/fence_crosslink
+sbin/fence_cyberpower_ssh
+sbin/fence_docker
+sbin/fence_drac
+sbin/fence_drac5
+sbin/fence_dummy
+sbin/fence_eaton_snmp
+sbin/fence_ecloud
+sbin/fence_emerson
+sbin/fence_eps
+sbin/fence_evacuate
+sbin/fence_gce
+sbin/fence_hds_cb
+sbin/fence_heuristics_ping
+sbin/fence_hpblade
+sbin/fence_ibm_powervs
+sbin/fence_ibm_vpc
+sbin/fence_ibmblade
+sbin/fence_ibmz
+sbin/fence_idrac
+sbin/fence_ifmib
+sbin/fence_ilo
+sbin/fence_ilo2
+sbin/fence_ilo3
+sbin/fence_ilo3_ssh
+sbin/fence_ilo4
+sbin/fence_ilo4_ssh
+sbin/fence_ilo5
+sbin/fence_ilo5_ssh
+sbin/fence_ilo_moonshot
+sbin/fence_ilo_mp
+sbin/fence_ilo_ssh
+sbin/fence_imm
+sbin/fence_intelmodular
+sbin/fence_ipdu
+sbin/fence_ipmilan
+sbin/fence_ipmilanplus
+sbin/fence_ironic
+sbin/fence_kubevirt
+sbin/fence_ldom
+sbin/fence_lindypdu
+sbin/fence_lpar
+sbin/fence_mpath
+sbin/fence_netio
+sbin/fence_openstack
+sbin/fence_powerman
+sbin/fence_pve
+sbin/fence_raritan
+sbin/fence_raritan_px3
+sbin/fence_rcd_serial
+sbin/fence_redfish
+sbin/fence_rhevm
+sbin/fence_rsa
+sbin/fence_rsb
+sbin/fence_sanbox2
+sbin/fence_sbd
+sbin/fence_scsi
+sbin/fence_skalar
+sbin/fence_tripplite_snmp
+sbin/fence_vbox
+sbin/fence_virsh
+sbin/fence_vmware
+sbin/fence_vmware_rest
+sbin/fence_vmware_vcloud
+sbin/fence_wti
+sbin/fence_xenapi
+sbin/fence_zvmip
+share/cluster/fence_mpath_check
+share/cluster/fence_mpath_check_hardreboot
+share/cluster/fence_scsi_check
+share/cluster/fence_scsi_check_hardreboot
+share/cluster/relaxng/fence.rng.head
+share/cluster/relaxng/fence.rng.tail
+share/cluster/relaxng/fence2man.xsl
+share/cluster/relaxng/fence2rng.xsl
+share/cluster/relaxng/fence2wiki.xsl
+share/cluster/relaxng/metadata.rng
+%%PORTDOCS%%%%DOCSDIR%%/COPYING.applications
+%%PORTDOCS%%%%DOCSDIR%%/COPYING.libraries
+%%PORTDOCS%%%%DOCSDIR%%/COPYRIGHT
+%%PORTDOCS%%%%DOCSDIR%%/README.licence
+share/fence/XenAPI.py
+share/fence/azure_fence.py
+share/fence/fencing.py
+share/fence/fencing_snmp.py
+share/pkgconfig/fence-agents.pc
+@dir /var/log/cluster
+@dir /var/run/cluster
+@dir /var/run/fence-agents



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202304031328.333DS2Ht035222>