Merged update from upstream sources

This is an automated DistroBaker update from upstream sources.
If you do not know what this is about or would like to opt out,
contact the OSCI team.

Source: https://src.fedoraproject.org/rpms/fence-agents.git#5080433ba9bd0d56e94a26de43d8410b9c97ad55
This commit is contained in:
DistroBaker 2021-02-11 17:01:39 +00:00
parent 56589cbb21
commit 9d98832086
9 changed files with 375 additions and 294 deletions

6
.gitignore vendored
View File

@ -1,6 +1,4 @@
/*.gz
/*.rpm
/fence-agents-*.tar.?z
/fence-agents-*.src.rpm
/.build-*.log
/*.whl
/*.txt
/*/

View File

@ -13,103 +13,38 @@ Release: 3%{?alphatag:.%{alphatag}}%{?dist}
License: GPLv2+ and LGPLv2+
URL: https://github.com/ClusterLabs/fence-agents
Source0: https://fedorahosted.org/releases/f/e/fence-agents/%{name}-%{version}.tar.gz
### HA cloud requirements-*.txt ###
Source100: requirements-aliyun.txt
Source101: requirements-aws.txt
Source102: requirements-azure.txt
Source103: requirements-google.txt
### HA cloud support libs/utils ###
# update with ./update-ha-cloud.sh and replace lines below with output
### BEGIN ###
# aliyun
Source1000: aliyun-python-sdk-core-2.13.30.tar.gz
Source1001: aliyun_python_sdk_ecs-4.23.9-py2.py3-none-any.whl
Source1002: cffi-1.14.4-cp39-cp39-manylinux1_x86_64.whl
Source1003: cryptography-3.2.1-cp35-abi3-manylinux2010_x86_64.whl
Source1004: jmespath-0.10.0-py2.py3-none-any.whl
Source1005: pycparser-2.20-py2.py3-none-any.whl
Source1006: six-1.15.0-py2.py3-none-any.whl
# aws
Source1007: boto3-1.17.5-py2.py3-none-any.whl
Source1008: botocore-1.20.5-py2.py3-none-any.whl
Source1009: python_dateutil-2.8.1-py2.py3-none-any.whl
Source1010: s3transfer-0.3.4-py2.py3-none-any.whl
Source1011: urllib3-1.26.3-py2.py3-none-any.whl
# azure
Source1012: adal-1.2.6-py2.py3-none-any.whl
Source1013: azure_common-1.1.26-py2.py3-none-any.whl
Source1014: azure_core-1.11.0-py2.py3-none-any.whl
Source1015: azure_mgmt_compute-18.2.0-py2.py3-none-any.whl
Source1016: azure_mgmt_core-1.2.2-py2.py3-none-any.whl
Source1017: azure_mgmt_network-17.1.0-py2.py3-none-any.whl
Source1018: certifi-2020.12.5-py2.py3-none-any.whl
Source1019: chardet-4.0.0-py2.py3-none-any.whl
Source1020: cryptography-3.4.4-cp36-abi3-manylinux2014_x86_64.whl
Source1021: idna-2.10-py2.py3-none-any.whl
Source1022: isodate-0.6.0-py2.py3-none-any.whl
Source1023: msrest-0.6.21-py2.py3-none-any.whl
Source1024: msrestazure-0.6.4-py2.py3-none-any.whl
Source1025: oauthlib-3.1.0-py2.py3-none-any.whl
Source1026: PyJWT-2.0.1-py3-none-any.whl
Source1027: requests-2.25.1-py2.py3-none-any.whl
Source1028: requests_oauthlib-1.3.0-py2.py3-none-any.whl
# google
Source1029: cachetools-4.2.1-py3-none-any.whl
Source1030: chardet-3.0.4-py2.py3-none-any.whl
Source1031: google_api_core-1.26.0-py2.py3-none-any.whl
Source1032: google_api_python_client-1.12.8-py2.py3-none-any.whl
Source1033: googleapis_common_protos-1.52.0-py2.py3-none-any.whl
Source1034: google_auth-1.26.0-py2.py3-none-any.whl
Source1035: google_auth_httplib2-0.0.4-py2.py3-none-any.whl
Source1036: httplib2-0.19.0-py3-none-any.whl
Source1037: packaging-20.9-py2.py3-none-any.whl
Source1038: protobuf-3.14.0-py2.py3-none-any.whl
Source1039: pyasn1-0.4.8-py2.py3-none-any.whl
Source1040: pyasn1_modules-0.2.8-py2.py3-none-any.whl
Source1041: pyparsing-2.4.7-py2.py3-none-any.whl
Source1042: pyroute2-0.5.14.tar.gz
Source1043: pytz-2021.1-py2.py3-none-any.whl
Source1044: rsa-4.7-py3-none-any.whl
Source1045: setuptools-53.0.0-py3-none-any.whl
Source1046: uritemplate-3.0.1-py2.py3-none-any.whl
### END ###
Patch0: fence_gce-google-auth-oauthlib-support.patch
Patch1: ha-cloud-support-aliyun.patch
Patch2: ha-cloud-support-aws.patch
Patch3: ha-cloud-support-azure.patch
Patch4: ha-cloud-support-google.patch
%global supportedagents amt_ws apc apc_snmp bladecenter brocade cisco_mds cisco_ucs compute drac5 eaton_snmp emerson eps evacuate hpblade ibmblade ifmib ilo ilo_moonshot ilo_mp ilo_ssh intelmodular ipdu ipmilan kdump lpar mpath redfish rhevm rsa rsb sbd scsi vmware_rest vmware_soap wti
%ifarch x86_64
%global testagents virsh heuristics_ping aliyun aws azure_arm gce
%endif
%ifarch ppc64le
%global testagents virsh heuristics_ping
%endif
%if 0%{?rhel} == 7
%ifarch s390x
%global testagents virsh zvm heuristics_ping
%define rhel7_s390x 1
%endif
%ifnarch x86_64 ppc64le s390x
%global testagents virsh heuristics_ping
%endif
# skipped: pve, raritan, rcd-serial, virsh
%global allfenceagents %(cat <<EOF
fence-agents-alom \\
fence-agents-amt \\
fence-agents-amt-ws \\
fence-agents-apc \\
fence-agents-apc-snmp \\
fence-agents-aws \\
fence-agents-azure-arm \\
fence-agents-bladecenter \\
fence-agents-brocade \\
fence-agents-cisco-mds \\
fence-agents-cisco-ucs \\
fence-agents-docker \\
fence-agents-drac \\
fence-agents-drac5 \\
fence-agents-eaton-snmp \\
fence-agents-emerson \\
fence-agents-eps \\
fence-agents-gce \\
fence-agents-hds-cb \\
fence-agents-heuristics-ping \\
fence-agents-hpblade \\
fence-agents-ibmblade \\
fence-agents-ibmz \\
fence-agents-ifmib \\
fence-agents-ilo-moonshot \\
fence-agents-ilo-mp \\
@ -119,19 +54,48 @@ fence-agents-intelmodular \\
fence-agents-ipdu \\
fence-agents-ipmilan \\
fence-agents-kdump \\
fence-agents-ldom \\
fence-agents-lpar \\
fence-agents-mpath \\
fence-agents-netio \\
fence-agents-ovh \\
fence-agents-redfish \\
fence-agents-rhevm \\
fence-agents-rsa \\
fence-agents-rsb \\
fence-agents-sanbox2 \\
fence-agents-sbd \\
fence-agents-scsi \\
fence-agents-vbox \\
fence-agents-vmware \\
fence-agents-vmware-rest \\
fence-agents-vmware-soap \\
fence-agents-vmware-vcloud \\
fence-agents-wti \\
fence-agents-xenapi \\
fence-agents-zvm \\
EOF)
%ifarch x86_64 ppc64le
%global allfenceagents %(cat <<EOF
%{allfenceagents} \\
fence-agents-compute \\
fence-agents-ironic \\
fence-agents-openstack
EOF)
%endif
%if ! %{defined rhel7_s390x}
%global allfenceagents %(cat <<EOF
%{allfenceagents} \\
fence-agents-aws \\
fence-agents-gce
EOF)
%endif
# Build dependencies
## general
BuildRequires: autoconf automake libtool
@ -142,21 +106,30 @@ BuildRequires: gcc
BuildRequires: libxslt
## Python dependencies
%if 0%{?fedora} || 0%{?centos} > 7 || 0%{?rhel} > 7 || 0%{?suse_version}
BuildRequires: python3-devel python3-pip
# wheel for HA cloud support
BuildRequires: python3-wheel
BuildRequires: python3-devel
BuildRequires: python3-pexpect python3-pycurl python3-requests
BuildRequires: python3-suds
%if 0%{?fedora} || 0%{?centos} > 7 || 0%{?rhel} > 7
BuildRequires: openwsman-python3
BuildRequires: python3-google-api-client python3-boto3 openwsman-python3
%endif
# (-openstack)
%ifarch x86_64 ppc64le
BuildRequires: python3-novaclient python3-keystoneclient
%endif
%if 0%{?suse_version}
BuildRequires: python3-openwsman
BuildRequires: python3-google-api-python-client python3-openwsman python3-boto3
%endif
%else
BuildRequires: python-devel
BuildRequires: pexpect python-pycurl python-requests
BuildRequires: python-suds openwsman-python
%if ! %{defined rhel7_s390x}
BuildRequires: python-google-api-client python-boto3
%endif
# (-openstack)
%ifarch x86_64 ppc64le
BuildRequires: python-novaclient python-keystoneclient
%endif
%endif
# turn off the brp-python-bytecompile script
@ -165,34 +138,20 @@ BuildRequires: python-suds openwsman-python
#undefine __brp_python_bytecompile
%prep
%autosetup -b0 -p1
%autosetup -p1
# prevent compilation of something that won't get used anyway
sed -i.orig 's|FENCE_ZVM=1|FENCE_ZVM=0|' configure.ac
%build
%ifarch x86_64
# support libs
for x in aliyun azure aws google; do
%{__python3} -m pip install --target support/$x --no-index --find-links %{_sourcedir} -r %{_sourcedir}/requirements-$x.txt
done
%endif
if [ -z "$PYTHON " ]; then
PYTHON="%{__python3}"
fi
./autogen.sh
%{configure} PYTHONPATH="support/aliyun:support/aws:support/azure:support/google" --with-agents='%{supportedagents} %{testagents}'
%{configure}
CFLAGS="$(echo '%{optflags}')" make %{_smp_mflags}
%install
%ifarch x86_64
# support libs
mkdir -p %{buildroot}%{_usr}/lib/%{name}
mv support %{buildroot}%{_usr}/lib/%{name}
%endif
export PYTHONPATH=%{buildroot}%{_usr}/lib/%{name}/support
make install DESTDIR=%{buildroot}
# bytecompile Python source code in a non-standard location
%if 0%{?fedora} || 0%{?centos} > 7 || 0%{?rhel} > 7
@ -243,32 +202,11 @@ This package contains support files including the Python fencing library.
%{_datadir}/pkgconfig/%{name}.pc
%exclude %{_sbindir}/*
%exclude %{_mandir}/man8/*
%exclude /usr/lib/%{name}/support
%ifarch x86_64
%package -n ha-cloud-support
License: GPLv2+ and LGPLv2+
Summary: Support libraries for HA Cloud agents
%description -n ha-cloud-support
Support libraries for Fence Agents.
%files -n ha-cloud-support
%dir %{_usr}/lib/%{name}
%{_usr}/lib/%{name}/support
%endif
%package all
License: GPLv2+, LGPLv2+ and ASL 2.0
Summary: Set of unified programs capable of host isolation ("fencing")
Requires: %{allfenceagents}
%ifarch i686 x86_64
Requires: fence-virt
%endif
%ifarch ppc64le
Requires: fence-agents-lpar >= %{version}-%{release}
%endif
%ifarch s390x
Requires: fence-agents-zvm >= %{version}-%{release}
%endif
Provides: fence-agents = %{version}-%{release}
Obsoletes: fence-agents < 3.1.13
%description all
@ -281,11 +219,10 @@ This package serves as a catch-all for all supported fence agents.
%ifarch x86_64
%package aliyun
License: GPLv2+ and LGPLv2+
License: GPLv2+ and LGPLv2+ and ASL 2.0 and BSD and MIT
Group: System Environment/Base
Summary: Fence agent for Alibaba Cloud (Aliyun)
Requires: fence-agents-common >= %{version}-%{release}
Requires: ha-cloud-support = %{version}-%{release}
Requires: python3-jmespath >= 0.9.0
Obsoletes: %{name} < %{version}-%{release}
%description aliyun
@ -296,6 +233,38 @@ The fence-agents-aliyun package contains a fence agent for Alibaba Cloud (Aliyun
%{_mandir}/man8/fence_aliyun.8*
%endif
%package alom
License: GPLv2+ and LGPLv2+
Summary: Fence agent for SUN ALOM
Requires: openssh-clients
%if 0%{?fedora} < 33 || (0%{?rhel} && 0%{?rhel} < 9) || (0%{?centos} && 0%{?centos} < 9) || 0%{?suse_version}
%if (0%{?rhel} && 0%{?rhel} < 8) || (0%{?centos} && 0%{?centos} < 8)
Requires: telnet
%else
Recommends: telnet
%endif
%endif
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
%description alom
Fence agent for SUN ALOM.
%files alom
%{_sbindir}/fence_alom
%{_mandir}/man8/fence_alom.8*
%package amt
License: GPLv2+ and LGPLv2+
Summary: Fence agent for Intel AMT devices
Requires: amtterm
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
%description amt
Fence agent for AMT compatibile devices that are accessed via
3rd party software.
%files amt
%{_sbindir}/fence_amt
%{_mandir}/man8/fence_amt.8*
%package amt-ws
License: ASL 2.0
Summary: Fence agent for Intel AMT (WS-Man) devices
@ -350,12 +319,16 @@ Fence agents for APC devices that are accessed via the SNMP protocol.
%{_sbindir}/fence_tripplite_snmp
%{_mandir}/man8/fence_tripplite_snmp.8*
%ifarch x86_64
%if ! %{defined rhel7_s390x}
%package aws
License: GPLv2+ and LGPLv2+
Summary: Fence agent for Amazon AWS
Requires: fence-agents-common = %{version}-%{release}
Requires: ha-cloud-support = %{version}-%{release}
%if 0%{?fedora} || 0%{?centos} > 7 || 0%{?rhel} > 7 || 0%{?suse_version}
Requires: python3-boto3
%else
Requires: python-boto3
%endif
BuildArch: noarch
Obsoletes: fence-agents < 3.1.13
%description aws
@ -365,12 +338,15 @@ Fence agent for Amazon AWS instances.
%{_mandir}/man8/fence_aws.8*
%endif
%ifarch x86_64
%package azure-arm
License: GPLv2+ and LGPLv2+
Summary: Fence agent for Azure Resource Manager
Requires: fence-agents-common = %{version}-%{release}
Requires: ha-cloud-support = %{version}-%{release}
%if 0%{?fedora} || 0%{?centos} > 7 || 0%{?rhel} > 7 || 0%{?suse_version}
Requires: python3-azure-sdk
%else
Requires: python-azure-sdk
%endif
BuildArch: noarch
Obsoletes: fence-agents < 3.1.13
%description azure-arm
@ -382,7 +358,6 @@ Fence agent for Azure Resource Manager instances.
%{_datadir}/fence/__pycache__/azure_fence.*
%endif
%{_mandir}/man8/fence_azure_arm.8*
%endif
%package bladecenter
License: GPLv2+ and LGPLv2+
@ -475,6 +450,35 @@ Fence agent for Nova compute nodes.
%{_mandir}/man8/fence_evacuate.8*
%endif
%package docker
License: GPLv2+ and LGPLv2+
Summary: Fence agent for Docker
%if 0%{?fedora} || 0%{?centos} > 7 || 0%{?rhel} > 7 || 0%{?suse_version}
Requires: python3-pycurl
%else
Requires: python-pycurl
%endif
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
%description docker
Fence agent for Docker images that are accessed over HTTP.
%files docker
%{_sbindir}/fence_docker
%{_mandir}/man8/fence_docker.8*
%package drac
License: GPLv2+ and LGPLv2+
Summary: Fence agent for Dell DRAC
Requires: telnet
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
%description drac
Fence agent for Dell DRAC IV series devices that are accessed
via telnet.
%files drac
%{_sbindir}/fence_drac
%{_mandir}/man8/fence_drac.8*
%package drac5
License: GPLv2+ and LGPLv2+
Summary: Fence agent for Dell DRAC 5
@ -532,12 +536,21 @@ via the HTTP(s) protocol.
%{_sbindir}/fence_eps
%{_mandir}/man8/fence_eps.8*
%ifarch x86_64
%if ! %{defined rhel7_s390x}
%package gce
License: GPLv2+ and LGPLv2+
Summary: Fence agent for GCE (Google Cloud Engine)
Requires: fence-agents-common = %{version}-%{release}
Requires: ha-cloud-support = %{version}-%{release}
%if 0%{?fedora} || 0%{?centos} > 7 || 0%{?rhel} > 7 || 0%{?suse_version}
%if 0%{?fedora} || 0%{?centos} > 7 || 0%{?rhel} > 7
Requires: python3-google-api-client
%endif
%if 0%{?suse_version}
Requires: python3-google-api-python-client
%endif
%else
Requires: python-google-api-client
%endif
BuildArch: noarch
Obsoletes: fence-agents < 3.1.13
%description gce
@ -547,6 +560,18 @@ Fence agent for GCE (Google Cloud Engine) instances.
%{_mandir}/man8/fence_gce.8*
%endif
%package hds-cb
License: GPLv2+ and LGPLv2+
Summary: Fence agent for Hitachi Compute Blade systems
Requires: telnet
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
%description hds-cb
Fence agent for Hitachi Compute Blades that are accessed via telnet.
%files hds-cb
%{_sbindir}/fence_hds_cb
%{_mandir}/man8/fence_hds_cb.8*
%package heuristics-ping
License: GPLv2+ and LGPLv2+
Summary: Pseudo fence agent to affect other agents based on ping-heuristics
@ -593,6 +618,23 @@ via the SNMP protocol.
%{_sbindir}/fence_ibmblade
%{_mandir}/man8/fence_ibmblade.8*
%package ibmz
License: GPLv2+ and LGPLv2+
Summary: Fence agent for IBM z LPARs
%if 0%{?fedora} || 0%{?centos} > 7 || 0%{?rhel} > 7 || 0%{?suse_version}
Requires: python3-requests
%else
Requires: python-requests
%endif
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
%description ibmz
Fence agent for IBM z LPARs that are accessed via the HMC
Web Services REST API.
%files ibmz
%{_sbindir}/fence_ibmz
%{_mandir}/man8/fence_ibmz.8*
%package ifmib
License: GPLv2+ and LGPLv2+
Summary: Fence agent for devices with IF-MIB interfaces
@ -728,6 +770,19 @@ Fence agents for devices with IPMI interface.
%{_sbindir}/fence_imm
%{_mandir}/man8/fence_imm.8*
%ifarch x86_64 ppc64le
%package ironic
License: GPLv2+ and LGPLv2+
Summary: Fence agent for OpenStack's Ironic (Bare Metal as a service)
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
%description ironic
Fence agent for OpenStack's Ironic (Bare Metal as a service) service.
%files ironic
%{_sbindir}/fence_ironic
%{_mandir}/man8/fence_ironic.8*
%endif
%package kdump
License: GPLv2+ and LGPLv2+
Summary: Fence agent for use with kdump crash recovery service
@ -741,6 +796,25 @@ Fence agent for use with kdump crash recovery service.
%{_mandir}/man8/fence_kdump.8*
%{_mandir}/man8/fence_kdump_send.8*
%package ldom
License: GPLv2+ and LGPLv2+
Summary: Fence agent for Sun LDom virtual machines
Requires: openssh-clients
%if 0%{?fedora} < 33 || (0%{?rhel} && 0%{?rhel} < 9) || (0%{?centos} && 0%{?centos} < 9) || 0%{?suse_version}
%if (0%{?rhel} && 0%{?rhel} < 8) || (0%{?centos} && 0%{?centos} < 8)
Requires: telnet
%else
Recommends: telnet
%endif
%endif
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
%description ldom
Fence agent for APC devices that are accessed via telnet or SSH.
%files ldom
%{_sbindir}/fence_ldom
%{_mandir}/man8/fence_ldom.8*
%package lpar
License: GPLv2+ and LGPLv2+
Summary: Fence agent for IBM LPAR
@ -774,6 +848,101 @@ Device Mapper Multipath.
%{_datadir}/cluster/fence_mpath_check*
%{_mandir}/man8/fence_mpath.8*
%package netio
License: GPLv2+ and LGPLv2+
Summary: Fence agent for Koukaam NETIO devices
Requires: openssh-clients
%if 0%{?fedora} < 33 || (0%{?rhel} && 0%{?rhel} < 9) || (0%{?centos} && 0%{?centos} < 9) || 0%{?suse_version}
%if (0%{?rhel} && 0%{?rhel} < 8) || (0%{?centos} && 0%{?centos} < 8)
Requires: telnet
%else
Recommends: telnet
%endif
%endif
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
%description netio
Fence agent for Koukaam NETIO devices that are accessed
via telnet or SSH.
%files netio
%{_sbindir}/fence_netio
%{_mandir}/man8/fence_netio.8*
%ifarch x86_64 ppc64le
%package openstack
License: GPLv2+ and LGPLv2+
Summary: Fence agent for OpenStack's Nova service
%if 0%{?fedora} || 0%{?centos} > 7 || 0%{?rhel} > 7 || 0%{?suse_version}
Requires: python3-requests
%else
Requires: python-requests
%endif
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
%description openstack
Fence agent for OpenStack's Nova service.
%files openstack
%{_sbindir}/fence_openstack
%{_mandir}/man8/fence_openstack.8*
%endif
%package ovh
License: GPLv2+ and LGPLv2+
Summary: Fence agent for OVH provider
%if 0%{?fedora} || 0%{?centos} > 7 || 0%{?rhel} > 7 || 0%{?suse_version}
Requires: python3-suds
%else
Requires: python-suds
%endif
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
%description ovh
Fence agent for OVH hosting provider.
%files ovh
%{_sbindir}/fence_ovh
%{_mandir}/man8/fence_ovh.8*
# skipped from allfenceagents
%package pve
License: GPLv2+ and LGPLv2+
Summary: Fence agent for PVE
%if 0%{?fedora} || 0%{?centos} > 7 || 0%{?rhel} > 7 || 0%{?suse_version}
Requires: python3-pycurl
%else
Requires: python-pycurl
%endif
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
%description pve
Fence agent for PVE.
%files pve
%{_sbindir}/fence_pve
%{_mandir}/man8/fence_pve.8*
# skipped from allfenceagents
%package raritan
License: GPLv2+ and LGPLv2+
Summary: Fence agent for Raritan Dominion PX
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
%description raritan
Fence agent for Raritan Dominion PX.
%files raritan
%{_sbindir}/fence_raritan
%{_mandir}/man8/fence_raritan.8*
# skipped from allfenceagents
%package rcd-serial
License: GPLv2+ and LGPLv2+
Summary: Fence agent for RCD serial
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
%description rcd-serial
Fence agent for RCD serial.
%files rcd-serial
%{_sbindir}/fence_rcd_serial
%{_mandir}/man8/fence_rcd_serial.8*
%package redfish
License: GPLv2+ and LGPLv2+
Group: System Environment/Base
@ -843,6 +1012,18 @@ via telnet or SSH.
%{_sbindir}/fence_rsb
%{_mandir}/man8/fence_rsb.8*
%package sanbox2
License: GPLv2+ and LGPLv2+
Summary: Fence agent for QLogic SANBox2 FC switches
Requires: telnet
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
%description sanbox2
Fence agent for QLogic SANBox2 switches that are accessed via telnet.
%files sanbox2
%{_sbindir}/fence_sanbox2
%{_mandir}/man8/fence_sanbox2.8*
%package sbd
License: GPLv2+ and LGPLv2+
Summary: Fence agent for SBD (storage-based death)
@ -869,6 +1050,18 @@ Fence agent for SCSI persistent reservations.
%{_datadir}/cluster/fence_scsi_check_hardreboot
%{_mandir}/man8/fence_scsi.8*
%package vbox
License: GPLv2+ and LGPLv2+
Summary: Fence agent for VirtualBox
Requires: openssh-clients
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
%description vbox
Fence agent for VirtualBox dom0 accessed via SSH.
%files vbox
%{_sbindir}/fence_vbox
%{_mandir}/man8/fence_vbox.8*
# skipped from allfenceagents
%package virsh
License: GPLv2+ and LGPLv2+
@ -882,6 +1075,22 @@ Fence agent for virtual machines that are accessed via SSH.
%{_sbindir}/fence_virsh
%{_mandir}/man8/fence_virsh.8*
%package vmware
License: GPLv2+ and LGPLv2+
Summary: Fence agent for VMWare with VI Perl Toolkit or vmrun
%if 0%{?fedora} || 0%{?centos} > 7 || 0%{?rhel} > 7 || 0%{?suse_version}
Requires: python3-pexpect
%else
Requires: pexpect
%endif
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
%description vmware
Fence agent for VMWare accessed with VI Perl Toolkit or vmrun.
%files vmware
%{_sbindir}/fence_vmware
%{_mandir}/man8/fence_vmware.8*
%package vmware-rest
License: GPLv2+ and LGPLv2+
Summary: Fence agent for VMWare with REST API
@ -910,6 +1119,18 @@ Fence agent for VMWare with SOAP API v4.1+.
%{_sbindir}/fence_vmware_soap
%{_mandir}/man8/fence_vmware_soap.8*
%package vmware-vcloud
License: GPLv2+ and LGPLv2+
Summary: Fence agent for VMWare vCloud Director
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
Obsoletes: fence-agents < 3.1.13
%description vmware-vcloud
Fence agent for VMWare vCloud Director.
%files vmware-vcloud
%{_sbindir}/fence_vmware_vcloud
%{_mandir}/man8/fence_vmware_vcloud.8*
%package wti
License: GPLv2+ and LGPLv2+
Summary: Fence agent for WTI Network power switches
@ -930,7 +1151,26 @@ via telnet or SSH.
%{_sbindir}/fence_wti
%{_mandir}/man8/fence_wti.8*
%ifarch s390x
%package xenapi
License: GPLv2+ and LGPLv2+
Summary: Fence agent for Citrix XenServer over XenAPI
%if 0%{?fedora} || 0%{?centos} > 7 || 0%{?rhel} > 7 || 0%{?suse_version}
Requires: python3-pexpect
%else
Requires: pexpect
%endif
Requires: fence-agents-common = %{version}-%{release}
BuildArch: noarch
%description xenapi
Fence agent for Citrix XenServer accessed over XenAPI.
%files xenapi
%{_sbindir}/fence_xenapi
%{_datadir}/fence/XenAPI.py*
%if 0%{?fedora} || 0%{?centos} > 7 || 0%{?rhel} > 7
%{_datadir}/fence/__pycache__/XenAPI.*
%endif
%{_mandir}/man8/fence_xenapi.8*
%package zvm
License: GPLv2+ and LGPLv2+
Summary: Fence agent for IBM z/VM over IP
@ -941,15 +1181,18 @@ Fence agent for IBM z/VM over IP.
%files zvm
%{_sbindir}/fence_zvmip
%{_mandir}/man8/fence_zvmip.8*
%endif
%changelog
* Thu Feb 11 2021 Oyvind Albrigtsen <oalbrigt@redhat.com> - 4.7.1-3
- create HA cloud support package
- add aliyun subpackage
- fence-agents-mpath: add missing fence_mpath_check*
* Mon Feb 8 2021 Oyvind Albrigtsen <oalbrigt@redhat.com> - 4.7.1-1
- new upstream release
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Wed Dec 9 2020 Oyvind Albrigtsen <oalbrigt@redhat.com> - 4.7.0-1
- new upstream release

View File

@ -1,43 +0,0 @@
From a06a83566e11b0bdf197b16beb022b4cece11d5f Mon Sep 17 00:00:00 2001
From: Oyvind Albrigtsen <oalbrigt@redhat.com>
Date: Wed, 10 Feb 2021 15:37:27 +0100
Subject: [PATCH] fence_gce: support google-auth and oauthlib and fallback to
deprecated libs when not available
oauth2client deprecated info: https://pypi.org/project/oauth2client/
---
agents/gce/fence_gce.py | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/agents/gce/fence_gce.py b/agents/gce/fence_gce.py
index d69acf4e..04318744 100644
--- a/agents/gce/fence_gce.py
+++ b/agents/gce/fence_gce.py
@@ -29,8 +29,12 @@
from fencing import fail_usage, run_delay, all_opt, atexit_handler, check_input, process_input, show_docs, fence_action
try:
import googleapiclient.discovery
- from oauth2client.client import GoogleCredentials
- from oauth2client.service_account import ServiceAccountCredentials
+ try:
+ from google.oauth2.credentials import Credentials as GoogleCredentials
+ from google.oauth2.service_account import Credentials as ServiceAccountCredentials
+ except:
+ from oauth2client.client import GoogleCredentials
+ from oauth2client.service_account import ServiceAccountCredentials
except:
pass
@@ -380,7 +384,11 @@ def main():
credentials = ServiceAccountCredentials.from_json_keyfile_name(options.get("--serviceaccount"))
logging.debug("using credentials from service account")
else:
- credentials = GoogleCredentials.get_application_default()
+ try:
+ from googleapiclient import _auth
+ credentials = _auth.default_credentials();
+ except:
+ credentials = GoogleCredentials.get_application_default()
logging.debug("using application default credentials")
conn = googleapiclient.discovery.build(
'compute', 'v1', credentials=credentials, cache_discovery=False)

View File

@ -1,10 +0,0 @@
--- a/agents/aliyun/fence_aliyun.py 2021-02-08 16:27:46.587068911 +0100
+++ b/agents/aliyun/fence_aliyun.py 2021-02-08 16:27:41.368054268 +0100
@@ -9,6 +9,7 @@
from fencing import fail, fail_usage, EC_TIMED_OUT, run_delay
try:
+ sys.path.insert(0, '/usr/lib/fence-agents/support/aliyun')
from aliyunsdkcore import client
from aliyunsdkcore.auth.credentials import EcsRamRoleCredential
from aliyunsdkecs.request.v20140526.DescribeInstancesRequest import DescribeInstancesRequest

View File

@ -1,10 +0,0 @@
--- a/agents/aws/fence_aws.py 2021-02-08 13:31:49.748362643 +0100
+++ b/agents/aws/fence_aws.py 2021-02-08 13:31:46.836356513 +0100
@@ -11,6 +11,7 @@
from requests import HTTPError
try:
+ sys.path.insert(0, '/usr/lib/fence-agents/support/aws')
import boto3
from botocore.exceptions import ConnectionError, ClientError, EndpointConnectionError, NoRegionError
except ImportError:

View File

@ -1,12 +0,0 @@
--- fence-agents-4.7.1/lib/azure_fence.py.py 2021-02-08 16:52:32.955244393 +0100
+++ fence-agents-4.7.1/lib/azure_fence.py.py.modif 2021-02-08 16:52:28.150234151 +0100
@@ -1,6 +1,9 @@
import logging, re, time
from fencing import fail_usage
+import sys
+sys.path.insert(0, '/usr/lib/fence-agents/support/azure')
+
FENCE_SUBNET_NAME = "fence-subnet"
FENCE_INBOUND_RULE_NAME = "FENCE_DENY_ALL_INBOUND"
FENCE_INBOUND_RULE_DIRECTION = "Inbound"

View File

@ -1,10 +0,0 @@
--- a/agents/gce/fence_gce.py 2021-02-10 16:13:16.156356744 +0100
+++ b/agents/gce/fence_gce.py 2021-02-10 16:13:29.346383884 +0100
@@ -28,6 +28,7 @@
from fencing import fail_usage, run_delay, all_opt, atexit_handler, check_input, process_input, show_docs, fence_action
try:
+ sys.path.insert(0, '/usr/lib/fence-agents/support/google')
import googleapiclient.discovery
try:
from google.oauth2.credentials import Credentials as GoogleCredentials

51
sources
View File

@ -1,52 +1 @@
SHA512 (fence-agents-4.7.1.tar.gz) = 9973d80fa9545f44d0202e6841eeadaf9facdaca2a4a67827369b5fe63a58bc830a5fb91dc94c5a90dc1f8cf4a07198fd52eb46f3974b4730f69013154493527
SHA512 (requirements-aliyun.txt) = 0c4f89de63246c406535ee73310232f3986b37dedbeed52f25000386d73af6735e1bf8e7ecaa97419df98f55058d76e4ff289d856b815afaaaf69744c5924f7e
SHA512 (requirements-aws.txt) = ca39604d09f4b05589ddaa437be13b7f5d1868218745df107564d73a6c32efb7e4761436197a69653edc47a78f40dd7d5f0894935ec21b8f23b7c7bc71dfd0d1
SHA512 (requirements-azure.txt) = a176aeaba7f13ca126bc6b41de1237148480787e4fe56cd9969b843d7102b24cbef2c9f9bd5e4460c603da96ba588639a77dfb376f9ab4ff6f7c2a29013edc31
SHA512 (requirements-google.txt) = d916eb72588e55f5243b9e5391ab07d65eaafe583e073ef79d0e865f4c5e911d7b10310f7ccb98b5fdc1383c2214cc0cc082fa3c5fac6aa3d1931e4779149241
SHA512 (aliyun-python-sdk-core-2.13.30.tar.gz) = fd099305bca978b683f3fcd020da2ae424e0f834dd734e6e27e6ce03f245bdfbb9ecfe9b6631b80c85fea9f74fa71efa86bf39bac2aed9031eb10e7d013b42ce
SHA512 (aliyun_python_sdk_ecs-4.23.9-py2.py3-none-any.whl) = 79469c4b4ce33964da5748d80fa2e218a13e44c05615ab966333d1f54954fd2e7f0bf64bb0ee3b9e2a4dc86bde6011f533de61da2cee64f7e8119c1a9a982c05
SHA512 (cffi-1.14.4-cp39-cp39-manylinux1_x86_64.whl) = 5b38d1d9b5c0500f63bc8b1648c4e7901f4b14218d9a5c7faef8ca833b640084afacb665504c2bfbf9e15645685bfa2f469aab88539ef032354c31f747563694
SHA512 (cryptography-3.2.1-cp35-abi3-manylinux2010_x86_64.whl) = e7cff2e9e0183163ffefeafe108ad2dea4f308e691c9b38a09a3b2ade99a2f64de5c9203f77eb528bc8336777ac282548b866396f330280f0633db59f8db87ae
SHA512 (jmespath-0.10.0-py2.py3-none-any.whl) = c4ef69cbdac0e6ff8fe1b4a604ebd7abd16e6021cea4b8b6c69917433939a60632462cecf6164a00fd585cb2ca4ddbfb3f871286ab48dd4aa37a11d002612b65
SHA512 (pycparser-2.20-py2.py3-none-any.whl) = 06dc9cefdcde6b97c96d0452a77db42a629c48ee545edd7ab241763e50e3b3c56d21f9fcce4e206817aa1a597763d948a10ccc73572490d739c89eea7fede0a1
SHA512 (six-1.15.0-py2.py3-none-any.whl) = 0416d59434623604de755601c919722c2b800042612a2a7b221ecd3ccf556aca3a78f0f926fd640032a3d74d153457628a89c25065dfcdbb96892d5bf7279904
SHA512 (boto3-1.17.5-py2.py3-none-any.whl) = cfdf92ded65bb98bdd06544374c8e0bedd6df3d9a28e6ea43e0ec119f6f132b8baa808e705434df06befb51ec1078f1db5026fa821fa7cb3216bec7bc7ba32aa
SHA512 (botocore-1.20.5-py2.py3-none-any.whl) = 3bb65305435be9d5b4c69927e7ad17b577b1a04d483f5cb4b9f7b888109681887c1313261157a5feb615d84e0bbd8af0aeffb2878c34363ab4a5bf42479e18ef
SHA512 (python_dateutil-2.8.1-py2.py3-none-any.whl) = ff083825ef3c8a3c6887ceae79a4249b938f529b72d0b931b1e30c81856ec7c8ee0adf0e29e2a41d3c76ab4e1faabc1c4161fe977d14589d346a658e343aa122
SHA512 (s3transfer-0.3.4-py2.py3-none-any.whl) = a6040e816789e9c57683cd4870c0c7942b036abb9565dd9140456a57818170f066fbb5f642a9a03828776e02de722aa7a891e9f1c502df482fcba9377b2c8cd0
SHA512 (urllib3-1.26.3-py2.py3-none-any.whl) = f099de13c42d19acf014ba6ba4bf099b8b3e66d5ce523d7516740093ebb69ff93f78aead1ee99310dab23747fee1fd9306c634af3f52bf64c0f830dd51b2d9e6
SHA512 (adal-1.2.6-py2.py3-none-any.whl) = f0559a475f854f04712cace23a168d43ec1baf0167a0c021160044d08d7d808c3455e68fbfd37ea7f04428d3b9c60a9e3e88da2ceedda09e533821f9a0c3a6e0
SHA512 (azure_common-1.1.26-py2.py3-none-any.whl) = 9e61a6db9d4e62c373345d17613d288bdfcbaacb65322b677a729cc2f7bd86b60b03d2733e2604b7ad1c989395c24e33f05ba16db9815781666f285ed32e9942
SHA512 (azure_core-1.11.0-py2.py3-none-any.whl) = 7f33124e0fddb0039e169a0617e6b55956c2f40febf7acc331d7625772d4651f69b16654f6239d598c4c46f7c05bdd88b31dff8a91b8bf471bfcb54128b82696
SHA512 (azure_mgmt_compute-18.2.0-py2.py3-none-any.whl) = bb0ae742d888c80210b33a8dd8a79792aa71c293d2debc4f013322a19d23d07e6a32e4c48e58718cb5eda329c7fbecf3548331491cbf588f327269f2024248f1
SHA512 (azure_mgmt_core-1.2.2-py2.py3-none-any.whl) = ea0b4062314de37d048cf6d9e40757372e050291a8861719dda2f1446c2e9a932050d0c0f732a8afb182993b7f700b5d6053217801199a4257b6269f5c7e47e5
SHA512 (azure_mgmt_network-17.1.0-py2.py3-none-any.whl) = c7764faebe1bed870deb7ac13f0fd1d800d3037099561cfdb4a024843f5a2047a68ffab176fde52fbd4d003aa86a197b356afc7a2049d8d2c8e7911a1f524212
SHA512 (certifi-2020.12.5-py2.py3-none-any.whl) = a0f753977d0e9e6c7eb4670eefafaffbbf2f44f22799eaffb45ffa458003b8d27b400254935a778e1daff769009f41b8686658e876b142376db54a0a14b59010
SHA512 (chardet-4.0.0-py2.py3-none-any.whl) = cc8cdd5e73b4eace0131bbeaf6099e322ba5c2f827f26ad3316c674c60529d77f39f68d9fb83199ab78d16902021ab1ae58d74ab62d770cf95ceb804b9242e90
SHA512 (cryptography-3.4.4-cp36-abi3-manylinux2014_x86_64.whl) = 52023cfb884c1cace8eb1b20f94567a08d069e3ed8e436a55729df767df14796f38c99a793d49bb94fcc6ce6d289acc7f8265ba2a84fff2f9880c5c5d459cf3a
SHA512 (idna-2.10-py2.py3-none-any.whl) = 7b7be129e1a99288aa74a15971377cb17bee1618843c03c8f782e287d0f3ecf3b8f26e3ea736444eb358f1d6079131a7eb291446f3279874eb8e00b624d9471c
SHA512 (isodate-0.6.0-py2.py3-none-any.whl) = 6d39a350ff4af87c74ae3226e6627f9c254205bfd2a761a5bf956883667bbe6d4678e1830b629c899a6f0fe67a9603cb4890c5a1fa6c8d245fe4fdbddddde870
SHA512 (msrest-0.6.21-py2.py3-none-any.whl) = 331070553409fb006726d90667822951188712a2671fd00b5304e12341db0a5c529660b630b5ad2584214ee48ae32a0a2ffbfe43ede3d0639ee176bac0f4c15b
SHA512 (msrestazure-0.6.4-py2.py3-none-any.whl) = aa4329e3a6ba639d0061c1eb0712b9d474d49ca9d7c8d41f02e44089c9efa3bf37075d52942841c3431b3afead51b9bc73193b087f4fd6672131d8e3b6c9cb86
SHA512 (oauthlib-3.1.0-py2.py3-none-any.whl) = 6506ce8024c6c7c3f009378f994c1946d937e4f3d3d3b3480207782a04326f7d19d25e3174c030fe1c36fff3c6a61d86eceafbf86d262dc2374cf89181c01ca9
SHA512 (PyJWT-2.0.1-py3-none-any.whl) = 76b1766ea31768168deb95fab93c7adf086f8df6265ada4ca548bacad6ef10dfb4ca34e21573f181f2d356965b9813756acfd6439eec57313b89250eaa26225d
SHA512 (requests-2.25.1-py2.py3-none-any.whl) = cc0afada76d46295c685ac060d15a1ccb9af671522cb7b4fa0ad11988853715d1b7c31d42fa1e72a576cbd775db174da5bc03ab25c1e31c234c37740a63a6bcf
SHA512 (requests_oauthlib-1.3.0-py2.py3-none-any.whl) = 17d5e66d174e57ef1dae451a20bce215a3cc3d7ab1a5b922d4a66cb49b497c9a0799bd90b5a378648335daee7cf80f843f065d90410bfa791f989f76300a02d7
SHA512 (cachetools-4.2.1-py3-none-any.whl) = d86a81a934e01a3b490c8fd5d5c7330dfc5857a26fd3d6743213128d9df8c20ab82c22a171bd7527c0e552d3dbd09c4f33b98eb8c718a2f705b18182476aa4ec
SHA512 (chardet-3.0.4-py2.py3-none-any.whl) = bfae58c8ea19c87cc9c9bf3d0b6146bfdb3630346bd954fe8e9f7da1f09da1fc0d6943ff04802798a665ea3b610ee2d65658ce84fe5a89f9e93625ea396a17f4
SHA512 (google_api_core-1.26.0-py2.py3-none-any.whl) = ee6cb98695ccac771f1aff7035a34d206b8f62d3322aa465ebf1b494466a661ce6fd42b74ec1501675c7e2ed18c0c76647e8637e198c98324aaccf078031a253
SHA512 (google_api_python_client-1.12.8-py2.py3-none-any.whl) = 59bb36abda556192f972943eb8a620779fb4315ff61b0492a6e8808b29cc433726a2550b20364cc560507061fde2971a2174dc1d3fe41f1b2d117a9f020e2ae8
SHA512 (googleapis_common_protos-1.52.0-py2.py3-none-any.whl) = e304c46c7bc2279fc7499a1e591c79a3085f53cf20210e6b0f82e387cf0c25e461ccc86148a1c48325ebea49ea10889dff28f3f6100a55f2ef96273085cad2a7
SHA512 (google_auth-1.26.0-py2.py3-none-any.whl) = 99b3ff59c0fa4affbba798f3129bf3b3aa3f83aece53a8ee753bcf8e882d03fbeb2ff219a948bd168622dbff55978938657e872be6d4930b944910e9bea1e1d8
SHA512 (google_auth_httplib2-0.0.4-py2.py3-none-any.whl) = b63090447df1f6f90abe28e1d14ea7cf6e0904121951203f7736f7506cd7373fc858df2ab20a995d19b5fb07253311c5097fc0a1f36d9129020722226303714f
SHA512 (httplib2-0.19.0-py3-none-any.whl) = 82286fdc91e7be835ef7fcbd2cf9a6a891248e97327e295692555e4a0b82b7c4c0b795e9c78021a9f0957c387746efe71f8ca5e9ae455c379ea224284d5347db
SHA512 (packaging-20.9-py2.py3-none-any.whl) = 6a4f69737814acbf43a3d0644d8dbbe4446075c7dfd1ec4d36ad73af9d5f2a4a5bd5a8d8f19e31d4ef63a1617dd3e0554812803bdcaf81888925267a16969b0b
SHA512 (protobuf-3.14.0-py2.py3-none-any.whl) = 0f0e3818ca8dcd390ee9605dfa0ab91876184411c8d120fa799c38b4cf1a7ce453864c5571a23d6004142a56ed17d03776891582aa316c4417051ed91b0a0ceb
SHA512 (pyasn1-0.4.8-py2.py3-none-any.whl) = ab0ccbe261323925ca46a4f4e0e674f730f8b93f6db87b6bf94e26f2e190c3e9afd2ea6ede0d99b100eda282e54c03d87c3357bf3bdfa399469d56a92e2aabbb
SHA512 (pyasn1_modules-0.2.8-py2.py3-none-any.whl) = 8248686f74d000f29c9a5a2dfd14883d44a276286caf7c34c100ea9660e5f644765452fb62c88c534093ea330d5e3d9389fa6398477231e2d1b6331b98861a62
SHA512 (pyparsing-2.4.7-py2.py3-none-any.whl) = acb6b4ff90254d73804621d302926deb69bc99ffde16d7aa16cba7d0af7a53c25b7197d422309d9e82a766704fd7ea4c8b078a48d2e7d8658a8b237266fe24f5
SHA512 (pyroute2-0.5.14.tar.gz) = 081152662fa12398876e0b4a886cc7f79a9e664c8c4c256b6079251c046808c538c0e0b7c1717e04067c8827be0705ade1c2320fb51434d5d50df21f579f3186
SHA512 (pytz-2021.1-py2.py3-none-any.whl) = 7ef08f53204664d6426bcb77e6f74bad8263d0f96128254aa41a752eaa9a0d1c9dac64134f5fd40c36a7385cfb453ec95ae7f714ba88993de000c34c32835619
SHA512 (rsa-4.7-py3-none-any.whl) = ad0734a3ae9cc1527a5fca5aa6ee7964539a36aaf1509bc768508d7ee27c256bff235210b93c27c8037abf21605ebd1caa6ae660c97a889149fa3da409a68fd4
SHA512 (setuptools-53.0.0-py3-none-any.whl) = 11ae9c0afbaa5224e9ad2b6a342948a9f306df8d52f277e6e7d6557e6af774604bd37340bf1316356db729724d04667569b54748ff1091da3cb3ac9ea49739d6
SHA512 (uritemplate-3.0.1-py2.py3-none-any.whl) = 0d4cfc2eb14b73f17ef9d82a08d9bc7fbc8a1efd1e51693e20c51c01812e7597ebe964904f79fd86e21d06bd690abfdf9bd2824e8f957dd8a9486e3b860d58d0

View File

@ -1,24 +0,0 @@
#!/bin/sh
export PYTHON_KEYRING_BACKEND="keyring.backends.null.Keyring"
rm -f *.whl aliyun*.tar.gz boto3-*.tar.gz gcloud-*.tar.gz pycrypto-*.tar.gz pyroute2-*.tar.gz
sed -i -n -E '/\(fence-agents-/p' sources
sha512sum --tag requirements-*.txt >> sources
for x in aliyun aws azure google; do
echo "# $x" >> sources
pip download -r requirements-$x.txt | awk '/Saved/{gsub("./", "", $2); print $2}' | sort | xargs sha512sum --tag >> sources
done
awk 'NR<6{next} /^# /{print}; /^[^#]/{gsub("[()]", "", $2); printf "Source%d: %s\n", 1000+c++, $2}' sources
sed -i '/^#/d' sources
if ! git diff --quiet sources; then
cat << EOF
Upload new sources by running:
awk '/^[^#]/{gsub("[()]", "", \$2); printf "%s ", \$2}' sources | xargs rhpkg new-sources
EOF
fi