From nobody Mon Apr 3 13:28:02 2023 X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PqsCR1ntzz44CZW; Mon, 3 Apr 2023 13:28:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PqsCR19wDz40w8; Mon, 3 Apr 2023 13:28:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680528483; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vkAD6lKE23pb7TYZkOTwhmiB4j996CV+c2mcS5CBvQw=; b=hjB1QP6sDWlYYh8rJZ9Az9rZCR3NasTcyer2/BrksIsq6iRKhpcuH10kXuSx/F0+KXfzv3 pdaNqfAkGJRIIihjk1eqJUMNzhUcOgFIyNPTgjDGcJdTSFavOmsH/seQpkBVySiBUrET9M vHDU2J2/iRMGZVaxf93MShjI6ktldYzNOB4tPstho17uANIr65YFqvFYFPIUhIjUdVcCTW /A5KRfz8942W3YBNb5cziZh93RvLePjVbCQaJMeEDp1gXdWGAOj7PMvuQ84RjFnmJFEJ9g D+HVAbqXx42wLCN0mtuiiWVAn28Q+RbDJMjQIDeKc7gTO7gCJJ4cI8M1z/u/ow== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680528483; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vkAD6lKE23pb7TYZkOTwhmiB4j996CV+c2mcS5CBvQw=; b=MDESoqEKHcd2ceu+QAJbjI6CUqzJBTz77XIkl/X/iPty625QuakDMiBzwc7lWk+Gm3+q2P tp3XaYyKVzCtq8o5BW9T5dXzBoWqMRzbYLHBKAboyb0zNYGoWmNafRPsQcT7SZjgVEeWN7 8XuhmCRDXMBqiFuyiXzCwda2OAQ6vI2QbRtlpAyxruXEX+q4GFc9GPJ+l+//yDtOpPfefA 2KlEePTyDJZihmALhiEyywwnpijx6Sm6atRJMMxcUIfxuvXAkoMsIrTqnrGkidyIb7igf1 4fFzmcsXUyaNXzk9+qu4CBQLlQn6yfNutjl8sqgSqRctyXWCFrsYvLdJaPIp2Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680528483; a=rsa-sha256; cv=none; b=FYUP8J2UguidK9EOaSwfMLHiikFo52bGCoKel2tgvMsT7iPgkH2TwZncMRXIgieufbgmAN hsccTA1gF7GuPIB4iSQZ2s72kJ9heUVnOoWrggD0Cy4Scmm44hw+gHUdPvlGLOs+WAvIOR 4lYJclc+Q6bBHc7HqfS7Cc3qikla3Sgag3GMjub+LJA9Fm4hymQ9Xtlhy0kw1ouRfrr/6/ gILSJ9nSaH0GctPUp4sJgcnLNXSHdIgM4aNJSBAN1+8M59+TNp/yZEtwdHzi5TQUPteXr3 ZeODlI3A05np2B8cts3G1T8wlXnTMeiuvIYm9A+4Wc0UJJ0SZUR8krP2OhZ+Lw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PqsCR0CzVz10xc; Mon, 3 Apr 2023 13:28:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 333DS2cB035223; Mon, 3 Apr 2023 13:28:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 333DS2Ht035222; Mon, 3 Apr 2023 13:28:02 GMT (envelope-from git) Date: Mon, 3 Apr 2023 13:28:02 GMT Message-Id: <202304031328.333DS2Ht035222@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Baptiste Daroussin Subject: git: 8ab3666e9a90 - main - net-mgmt/fence-agents: new port List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-all@freebsd.org X-BeenThere: dev-commits-ports-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bapt X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8ab3666e9a903031a556ecaa3f2514169143d94d Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by bapt: URL: https://cgit.FreeBSD.org/ports/commit/?id=8ab3666e9a903031a556ecaa3f2514169143d94d commit 8ab3666e9a903031a556ecaa3f2514169143d94d Author: Florian Millet AuthorDate: 2023-04-03 13:20:11 +0000 Commit: Baptiste Daroussin 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 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