diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 8219ac9..0000000 --- a/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/vdsm-*.tar.gz diff --git a/dead.package b/dead.package new file mode 100644 index 0000000..9273e84 --- /dev/null +++ b/dead.package @@ -0,0 +1 @@ +vdsm fails to build from source: https://bugzilla.redhat.com/show_bug.cgi?id=1676186 diff --git a/sources b/sources deleted file mode 100644 index 5f2be82..0000000 --- a/sources +++ /dev/null @@ -1 +0,0 @@ -53bf8a8e728a82a0553fc6533bd18ed4 vdsm-4.17.9.tar.gz diff --git a/vdsm.spec b/vdsm.spec deleted file mode 100644 index 5edd0bd..0000000 --- a/vdsm.spec +++ /dev/null @@ -1,1373 +0,0 @@ -# Required users and groups -%global vdsm_user vdsm -%global vdsm_group kvm -%global qemu_user qemu -%global qemu_group qemu -%global snlk_group sanlock -%global snlk_user sanlock -%global cdrom_group cdrom - -# Glusterfs package version -%global gluster_version 3.7.1 - -# koji build - overridable using rpmbuild --define "fedora_koji_build 1" -%{!?fedora_koji_build: %global fedora_koji_build 0} - -# RHEV build - overridable using rpmbuild --define "rhev_build 1" -%{!?rhev_build: %global rhev_build 0} - -%if 0%{fedora_koji_build} -%global with_hooks 1 -%endif - -# Default to skipping autoreconf. Distros can change just this one line -# (or provide a command-line override) if they backport any patches that -# touch configure.ac or Makefile.am. -%{!?enable_autotools:%global enable_autotools 0} - -# Skips check since rhel default repos lack pep8 and pyflakes -%if ! 0%{?rhel} -%{!?with_check:%global with_check 1} -%else -%{!?with_check:%global with_check 0} -%endif - -# Required paths -%if 0%{?fedora} -%global _polkitdir %{_datadir}/polkit-1/rules.d -%else -%global _polkitdir %{_localstatedir}/lib/polkit-1/localauthority/10-vendor.d -%endif - -# Gluster should not be shipped with RHEV -%if ! 0%{?rhev_build} -%global with_gluster 1 -%endif - -%if ! 0%{?rhel} || ! 0%{fedora_koji_build} -%global with_vhostmd 1 -%endif - -%global _udevrulesdir /usr/lib/udev/rules.d/ -%global _udevexecdir /usr/lib/udev/ - -Name: vdsm -Version: 4.17.9 -Release: 18.git1379158%{?dist}%{?extra_release} -Summary: Virtual Desktop Server Manager -BuildArch: noarch - -Group: Applications/System -License: GPLv2+ -Url: http://www.ovirt.org/wiki/Vdsm -Source0: %{name}-%{version}.tar.gz -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) - - -BuildRequires: cyrus-sasl-lib -BuildRequires: gcc -BuildRequires: python -BuildRequires: python-devel -BuildRequires: python-netaddr -BuildRequires: python-nose -BuildRequires: python-six -BuildRequires: rpm-build - -# BuildRequires needed by the tests during the build -BuildRequires: dosfstools -BuildRequires: genisoimage -BuildRequires: libnl3 -BuildRequires: libselinux-python -BuildRequires: libvirt-python -BuildRequires: m2crypto -BuildRequires: mom >= 0.4.5 -BuildRequires: openssl -BuildRequires: policycoreutils-python -BuildRequires: psmisc -BuildRequires: python-cpopen >= 1.3 -BuildRequires: python-inotify -BuildRequires: python-ioprocess >= 0.14 -BuildRequires: python-pthreading -BuildRequires: qemu-img -BuildRequires: rpm-python -BuildRequires: python-blivet - -# Autotools BuildRequires -%if 0%{?enable_autotools} -BuildRequires: autoconf -BuildRequires: automake -BuildRequires: gettext-devel -BuildRequires: libtool -%endif - -%if 0%{?with_check} -BuildRequires: pyflakes -BuildRequires: python-pep8 -%endif - -BuildRequires: systemd-units - -Requires: ethtool -Requires: which -Requires: sudo >= 1.7.3 -Requires: logrotate -Requires: xz -Requires: ntp -Requires: iproute >= 3.10.0 -Requires: python-netaddr -Requires: python-inotify -Requires: python-argparse -Requires: python-cpopen >= 1.3 -Requires: python-ioprocess >= 0.14 -Requires: python-pthreading >= 0.1.3-3 -Requires: python-six -Requires: python-requests -Requires: %{name}-infra = %{version}-%{release} -Requires: rpm-python -Requires: nfs-utils -Requires: m2crypto -Requires: libnl3 -Requires: curl -Requires: %{name}-xmlrpc = %{version}-%{release} -Requires: %{name}-jsonrpc = %{version}-%{release} -Requires: safelease >= 1.0-5 -Requires: mom >= 0.4.5 -Requires: ovirt-vmconsole >= 1.0.0-0 - -%if 0%{?rhel} -Requires: libguestfs-tools-c >= 1:1.20.11-10 -%else # fedora -Requires: libguestfs-tools-c >= 1:1.26.7-2 -%endif - -Requires: libvirt-daemon-config-nwfilter -Requires: libvirt-daemon-driver-network -Requires: libvirt-daemon-driver-nwfilter -Requires: libvirt-daemon-driver-qemu - -%if 0%{?rhel} -Requires: libvirt-daemon >= 1.2.8-16.el7_1.4 -Requires: libvirt-python >= 1.2.8-7.el7_1.1 -%endif # rhel - -%if 0%{?fedora} >= 22 -Requires: libvirt-daemon >= 1.2.13 -Requires: libvirt-python >= 1.2.9-2 -%endif - -%if 0%{?fedora} -Requires: libvirt-daemon >= 1.2.9.3-1 -Requires: libvirt-python >= 1.2.9-2 -%endif - -Requires: libvirt-lock-sanlock, libvirt-client - -# iscsi-intiator versions -%if 0%{?rhel} -Requires: iscsi-initiator-utils -%else # fedora -Requires: iscsi-initiator-utils >= 6.2.0.873-21 -%endif - -Requires: sanlock >= 2.8, sanlock-python - -%if 0%{?rhel} -Requires: device-mapper-multipath >= 0.4.9-68 -Requires: e2fsprogs -Requires: fence-agents-all -%if 0%{?centos} -Requires: kernel >= 3.10.0-132.el7 -%else -Requires: kernel >= 3.10.0-229.17.1.el7 -%endif -Requires: lvm2 >= 2.02.107 -Requires: python >= 2.7.5-18.el7_1.1 -Requires: policycoreutils-python -Requires: selinux-policy-targeted >= 3.13.1-16.el7 -%else -Requires: fence-agents-all -Requires: kernel >= 4.1.6 -# Subprocess and thread bug was found on python 2.7.2 -Requires: python >= 2.7.3 -Requires: initscripts >= 9.42.2-1 -Requires: device-mapper-multipath >= 0.4.9-56 -Requires: e2fsprogs >= 1.41.14 -Requires: policycoreutils-python -Requires: sed >= 4.2.1-10 -Requires: ed -Requires: lvm2 >= 2.02.107 -Requires: selinux-policy-targeted >= 3.12.1-177 -# In order to avoid a policycoreutils bug (rhbz 889698) when selinux is -# disabled we now require the version 2.1.13-55 (or newer) of Fedora. -Requires: policycoreutils >= 2.1.13-55 -Requires: systemd >= 197-1.fc18.2 -%endif - -%if 0%{?rhel} -Requires: qemu-kvm-rhev >= 10:2.1.2-23.el7_1.2 -Requires: qemu-img-rhev >= 10:2.1.2-23.el7_1.2 -%else -Requires: qemu-kvm >= 2:2.1.3-11 -Requires: qemu-img >= 2:2.1.3-11 -%endif # rhel - -# GlusterFS client-side RPMs needed for Gluster SD -%if 0%{?with_gluster} -Requires: glusterfs-cli >= %{gluster_version} -Requires: glusterfs-fuse >= %{gluster_version} -%endif - -Requires: psmisc >= 22.6-15 -Requires: bridge-utils -Requires: sos -Requires: tree -Requires: dosfstools -Requires: genisoimage -Requires: libselinux-python -Requires: %{name}-python = %{version}-%{release} -Requires: pyparted - -Requires(post): /usr/sbin/saslpasswd2 - -%if 0%{?fedora} -Requires(post): hostname -%else -Requires(post): /bin/hostname -%endif - -Conflicts: vdsm-hook-sriov - -%description -The VDSM service is required by a Virtualization Manager to manage the -Linux hosts. VDSM manages and monitors the host's storage, memory and -networks as well as virtual machine creation, other host administration -tasks, statistics gathering, and log collection. - -%package cli -Summary: VDSM command line interface -Requires: %{name}-python = %{version}-%{release} -Requires: %{name}-xmlrpc = %{version}-%{release} - -%description cli -Call VDSM commands from the command line. Used for testing and debugging. - -%package xmlrpc -Summary: VDSM xmlrpc API -Requires: %{name}-python = %{version}-%{release} - - -%description xmlrpc -An XMLRPC interface for interacting with vdsmd. Primary control interface for -ovirt-engine and vdsClient. - -%package jsonrpc -Summary: VDSM API Server -Requires: %{name}-python = %{version}-%{release} -Requires: %{name}-yajsonrpc = %{version}-%{release} -Obsoletes: vdsm-api < 4.16 - -%description jsonrpc -A Json-based RPC interface that serves as the protocol for libvdsm. - -%package yajsonrpc -Summary: JSON RPC server and client implementation -Requires: python >= 2.6 - -%description yajsonrpc -A JSON RPC server and client implementation. - -%package infra -Summary: Utilities and libraries for vdsm -Requires: python >= 2.6 -Obsoletes: python-zombiereaper - -%description infra -Utilities and libraries for vdsm. - -%package reg -Summary: VDSM registration package -Requires: %{name} = %{version}-%{release} -Requires: m2crypto -Requires: openssl -Conflicts: ovirt-node < 3.0.4 - -%description reg -VDSM registration package. Used to register a Linux host to a Virtualization -Manager. - -%package python -Summary: VDSM python libraries -Requires: %{name}-infra = %{version}-%{release} -Requires: python-cpopen >= 1.2.3-5 -Requires: m2crypto -Requires: python-ioprocess >= 0.14 - -%description python -Shared libraries between the various VDSM packages. - -%package debug-plugin -Summary: VDSM Debug Plugin -Requires: %{name} = %{version}-%{release} -Requires: %{name}-xmlrpc = %{version}-%{release} - -%description debug-plugin -Used by the trained monkeys at Red Hat to insert chaos and mayhem in to VDSM. - -%package tests -Summary: VDSM Test Suite -Requires: %{name} = %{version}-%{release} -Requires: dracut -Requires: python-nose - -%description tests -A test suite for verifying the functionality of a running vdsm instance - -%package hook-allocate_net -Summary: random_network allocation hook for VDSM -Requires: %{name} = %{version}-%{release} - -%description hook-allocate_net -VDSM hook used to allocate networks for vms in a random fashion - -%package hook-checkimages -Summary: Qcow2 disk image format check hook for VDSM -Requires: %{name} = %{version}-%{release} - -%description hook-checkimages -VDSM hook used to perform consistency check on a qcow2 format disk image -using the QEMU disk image utility. - -%package hook-diskunmap -Summary: Activate UNMAP for disk/lun devices -Requires: %{name} = %{version}-%{release} -Requires: qemu-kvm >= 1.5 - -%description hook-diskunmap -VDSM hooks which allow to activate disk UNMAP. - -%package hook-ethtool-options -Summary: Allow setting custom ethtool options for vdsm controlled nics -Requires: %{name} = %{version}-%{release} - -%description hook-ethtool-options -VDSM hook used for applying custom network properties that define ethtool -options for vdsm network nics - -%if 0%{?with_vhostmd} -%package hook-vhostmd -Summary: VDSM hook set for interaction with vhostmd -Requires: vhostmd - -%description hook-vhostmd -VDSM hook to use vhostmd per VM according to Virtualization Manager requests. -%endif - -%package hook-faqemu -Summary: Fake qemu process for VDSM quality assurance -Requires: %{name} = %{version}-%{release} - -%description hook-faqemu -VDSM hook used for testing VDSM with multiple fake virtual machines without -running real guests. -To enable this hook on your host, set vars.fake_kvm_support=True in your -/etc/vdsm/vdsm.conf before adding the host to ovirt-Engine. - -%package hook-directlun -Summary: Direct LUN support for VDSM - -%description hook-directlun -VDSM hook enable user to add storage LUN for VDSM -without the sharing and storage handling of VDSM. - -%package hook-macbind -Summary: Bind a vNIC to a Bridge -Requires: %{name} >= 4.14 - -%description hook-macbind -VDSM hooks which allow to bind a vNIC to a Bridge, managed or not by engine. - -%package hook-macspoof -Summary: Disables MAC spoofing filtering - -%description hook-macspoof -VDSM hooks which allow to disable mac spoof filtering -either on all the of the VM's interfaces or on -specific vnics. - -%package hook-noipspoof -Summary: Enables strict anti-spoofing filtering - -%description hook-noipspoof -VDSM hook which allows to enable strict anti-spoofing filtering -on all of the the VM's interfaces. - -%package hook-extnet -Summary: Force a vNIC to connect to a specific libvirt network -Requires: %{name} = %{version}-%{release} - -%description hook-extnet -VDSM hook which allows to connect a vNIC to a libvirt network that is managed -outside of oVirt, such as an openvswitch network. - -%package hook-fakevmstats -Summary: Generate random VM statistics -Requires: %{name} = %{version}-%{release} - -%description hook-fakevmstats -Hook intercepts VM's stats and randomizes various fields. -To enable this hook on your host, set vars.fake_vmstats_enable=true in your -/etc/vdsm/vdsm.conf. - -%package hook-fileinject -Summary: Allow uploading file to VMs disk -Requires: python-libguestfs - -%description hook-fileinject -Hook is getting target file name and its content and -create that file in target machine. - -%package hook-floppy -Summary: Allow adding floppy to VM - -%description hook-floppy -Allow adding floppy to VM - -%package hook-hostusb -Summary: Allow attaching USB device from host -Requires: usbutils - -%description hook-hostusb -Hook is getting vendor and product id of USB device -disconnect it from host and attach it to VM - -%package hook-httpsisoboot -Summary: Allow directly booting from an https available ISO -%if 0%{?rhel} -Requires: qemu-kvm-rhev >= 10:2.1.2-3 -%endif - -%description hook-httpsisoboot -Let the VM boot from an ISO image made available via an https URL without -the need to import the ISO into an ISO storage domain. -It doesn't support plain http. - -%package hook-hugepages -Summary: Huge pages enable user to handle VM with 2048KB page files. - -%description hook-hugepages -Hook is getting number of huge pages reserve them for the VM, -and enable user to handle VM with 2048KB page files. - -%package hook-isolatedprivatevlan -Summary: Isolated network environment for VMs - -%description hook-isolatedprivatevlan -limit VM traffic to a specific gateway by its mac address, -hook prevent VM from spoofing its mac or ip address -by using libvirt filter -and by adding custom filter: isolatedprivatevlan-vdsm.xml - -%package hook-nestedvt -Summary: Nested Virtualization support for VDSM - -%description hook-nestedvt -If the nested virtualization is enabled in your kvm module -this hook will expose it to the guests. - -%package hook-numa -Summary: NUMA support for VDSM - -%description hook-numa -Hooks is getting number/rage of NUMA nodes and NUMA mode, -and update the VM xml. - -%package hook-openstacknet -Summary: OpenStack Network vNICs support for VDSM - -%description hook-openstacknet -Hook for OpenStack Network vNICs. - -%package hook-pincpu -Summary: Hook pin VM so specific CPUs - -%description hook-pincpu -pincpu is hook for VDSM. -pincpu enable to pin virtual machine to a specific CPUs. - -%package hook-promisc -Summary: Network interface promiscuous mode support for VDSM - -%description hook-promisc -VDSM promiscuous mode let user define a VM interface that will capture -all network traffic. - -%package hook-qemucmdline -Summary: QEMU cmdline hook for VDSM -Requires: %{name} = %{version}-%{release} - -%description hook-qemucmdline -Provides support for injecting QEMU cmdline via VDSM hook. -It exploits libvirt's qemu:commandline facility available in the -qemu xml namespace. - -%package hook-qos -Summary: QoS network in/out traffic support for VDSM -Requires: %{name} = %{version}-%{release} - -%description hook-qos -Hook adds QoS in/out traffic to VMs interfaces - -%package hook-scratchpad -Summary: One time disk creation for VDSM -Requires: %{name} = %{version}-%{release} - -%description hook-scratchpad -scratchpad hook for VDSM -Hook creates a disk for a VM onetime usage, -the disk will be erased when the VM destroyed. -VM cannot be migrated when using scratchpad hook - -%package hook-smbios -Summary: Adding custom smbios entries to libvirt domain via VDSM -Requires: %{name} = %{version}-%{release} - -%description hook-smbios -Adding custom smbios entries to libvirt domain via VDSM -such as: vendor, version, date and release - -%package hook-spiceoptions -Summary: To configure spice options for vm -Requires: %{name} = %{version}-%{release} - -%description hook-spiceoptions -This vdsm hook can be used to configure some of -the spice optimization attributes and values.. - -%package hook-vmfex -Summary: vmfex support for VDSM -Requires: %{name} = %{version}-%{release} -Conflicts: hook-vmfex-dev - -%description hook-vmfex -Hook for vmfex. - -%package hook-vmfex-dev -Summary: VM-FEX vNIC support for VDSM -Requires: %{name} = %{version}-%{release} -Conflicts: hook-vmfex - -%description hook-vmfex-dev -Allows to use custom device properties to connect a guest vNIC to a host -VM-FEX Virtual Function (SR-IOV with macvtap mode). - -%package hook-vmdisk -Summary: External disk support for VDSM -Requires: %{name} = %{version}-%{release} - -%description hook-vmdisk -Hook adds additional disk image for a VM (raw or qcow2) - -%package hook-ipv6 -Summary: Set IPv6 configuration through custom network properties -Requires: %{name} = %{version}-%{release} - -%description hook-ipv6 -VDSM hook used for applying IPv6 configuration through custom network -properties - -%if 0%{?with_gluster} -%package gluster -Summary: Gluster Plugin for VDSM -Requires: %{name} = %{version}-%{release} -Requires: glusterfs-server >= %{gluster_version} -Requires: glusterfs-api >= %{gluster_version} -Requires: glusterfs-geo-replication >= %{gluster_version} -Requires: python-magic -Requires: python-blivet -Requires: xfsprogs - -%description gluster -Gluster plugin enables VDSM to serve Gluster functionalities. -%endif - -%prep -%setup -q - -%build -%if 0%{?enable_autotools} -autoreconf -if -%endif -%configure %{?with_hooks:--enable-hooks} \ -%if 0%{?rhev_build} - --enable-rhev \ - --with-smbios-manufacturer='Red Hat' \ - --with-smbios-osname='RHEV Hypervisor' \ - --with-qemu-kvm='qemu-kvm-rhev' \ - --with-qemu-img='qemu-img-rhev' \ -%endif - -make %{_smp_mflags} -# Setting software_version and software_revision in dsaversion.py -baserelease=`echo "%{release}" | sed 's/\([0-9]\+\(\.[0-9]\+\)\?\).*/\1/'` -baseversion=`echo "%{version}" | sed 's/\([0-9]\+\(\.[0-9]\+\)\?\).*/\1/'` -rawversion=%{version}-%{release} -sed -i -e 's/^software_version =.*/software_version = "'"${baseversion}"'"/' \ - -e 's/^raw_version_revision =.*/raw_version_revision = "'"${rawversion}"'"/' \ - -e 's/^software_revision =.*/software_revision = "'"${baserelease}"'"/' vdsm/dsaversion.py - -%install -make DESTDIR=%{buildroot} install - -# Creating VDSM logs in this session to avoid rpmbuild -# complain during the build -install -dDm 0755 %{buildroot}/usr/local/var/log/vdsm -touch %{buildroot}/usr/local/var/log/vdsm/{connectivity.log,mom.log,supervdsm.log,vdsm.log} - -# Install the lvm rules -install -Dm 0644 vdsm/storage/vdsm-lvm.rules \ - %{buildroot}%{_udevrulesdir}/12-vdsm-lvm.rules - -install -Dm 0644 vdsm/limits.conf \ - %{buildroot}/etc/security/limits.d/99-vdsm.conf - -install -Dm 0755 init/systemd/systemd-vdsmd %{buildroot}/usr/lib/systemd/systemd-vdsmd -install -Dm 0644 init/systemd/85-vdsmd.preset %{buildroot}/usr/lib/systemd/system-preset/85-vdsmd.preset -install -Dm 0644 init/systemd/vdsmd.service %{buildroot}%{_unitdir}/vdsmd.service -install -Dm 0644 init/systemd/vdsm-network.service %{buildroot}%{_unitdir}/vdsm-network.service -install -Dm 0644 init/systemd/supervdsmd.service %{buildroot}%{_unitdir}/supervdsmd.service - -install -Dm 0644 init/systemd/mom-vdsm.service %{buildroot}%{_unitdir}/mom-vdsm.service - -install -Dm 0644 vdsm/vdsm-modules-load.d.conf \ - %{buildroot}%{_sysconfdir}/modules-load.d/vdsm.conf -install -Dm 0644 init/systemd/vdsm-tmpfiles.d.conf \ - %{buildroot}%{_tmpfilesdir}/%{name}.conf -install -Dm 0644 init/systemd/unlimited-core.conf \ - %{buildroot}%{_sysconfdir}/systemd/system/libvirtd.service.d/unlimited-core.conf - -%if 0%{?rhel} -# This is not commonplace, but we want /var/log/core to be a world-writable -# dropbox for core dumps -install -dDm 1777 %{buildroot}%{_localstatedir}/log/core -%endif - -# Install the polkit for libvirt -install -Dm 0644 vdsm/vdsm-libvirt-access.rules \ - %{buildroot}%{_polkitdir}/10-vdsm-libvirt-access.rules - -# Install the libvirt hook for cleaning up the XML -install -Dm 0755 vdsm/virt/libvirt-hook.sh \ - %{buildroot}%{_sysconfdir}/libvirt/hooks/qemu - -%check -%if 0%{?with_check} -#make check -%endif - -%clean -rm -rf %{buildroot} - -%pre -# Force standard locale behavior (English) -export LC_ALL=C - -/usr/bin/getent passwd %{vdsm_user} >/dev/null || \ - /usr/sbin/useradd -r -u 36 -g %{vdsm_group} -d /var/lib/vdsm \ - -s /sbin/nologin -c "Node Virtualization Manager" %{vdsm_user} -/usr/sbin/usermod -a -G %{qemu_group},%{snlk_group} %{vdsm_user} -/usr/sbin/usermod -a -G %{cdrom_group} %{qemu_user} - -# We keep the previous rpm version number in a file for managing upgrade flow -# in vdsmd_init_script upgraded_version_check task -if [ "$1" -gt 1 ]; then - rpm -q %{name} > "%{_localstatedir}/lib/%{name}/upgraded_version" -fi - -%post -# After vdsm install we should create the logs files. -# In the install session we create it but since we use -# the ghost macro (in files session) the files are not included -touch /usr/local/var/log/vdsm/{connectivity.log,mom.log,supervdsm.log,vdsm.log} -chmod 0644 /usr/local/var/log/vdsm/{connectivity.log,mom.log,supervdsm.log,vdsm.log} -chown vdsm:kvm /usr/local/var/log/vdsm/{connectivity.log,mom.log,vdsm.log} -chown root:root /usr/local/var/log/vdsm/supervdsm.log - -# Have moved vdsm section in /etc/sysctl.conf to /etc/sysctl.d/vdsm.conf. -# So Remove them if it is played with /etc/sysctl.conf. -if grep -q "# VDSM section begin" /etc/sysctl.conf; then - /bin/sed -i '/# VDSM section begin/,/# VDSM section end/d' \ - /etc/sysctl.conf -fi - -# hack until we replace core dump with abrt -if /usr/sbin/selinuxenabled; then - /usr/sbin/semanage fcontext -a -t virt_cache_t '/var/log/core(/.*)?' -fi -/sbin/restorecon -R /var/log/core >/dev/null 2>&1 -# hack until we replace core dump with abrt - -# VDSM installs vdsm-modules-load.d.conf file - the following command will -# refresh vdsm kernel modules requirements to start on boot -/bin/systemctl restart systemd-modules-load.service >/dev/null 2>&1 || : - -# The following triggers vdsmd.preset file and enables vdsm required services -%systemd_post vdsmd.service - -# VDSM installs unit files - daemon-reload will refresh systemd -/bin/systemctl daemon-reload >/dev/null 2>&1 || : -exit 0 - -%preun -if [ "$1" -eq 0 ]; then - %{_bindir}/vdsm-tool remove-config -fi -%systemd_preun vdsmd.service -%systemd_preun vdsm-network.service -%systemd_preun supervdsmd.service -%systemd_preun mom-vdsm.service -exit 0 - -%postun -if [ "$1" -ge 1 ]; then - supervdsmd_start_required='no' - vdsmd_start_required='no' - - # Both vdsm and supervdsm should be managed here and must be restarted if - # ran before (code might changed) - if %{_bindir}/vdsm-tool service-status vdsmd >/dev/null 2>&1; then - %{_bindir}/vdsm-tool service-stop vdsmd >/dev/null 2>&1 || : - vdsmd_start_required='yes' - fi - if %{_bindir}/vdsm-tool service-status supervdsmd >/dev/null 2>&1; then - %{_bindir}/vdsm-tool service-stop supervdsmd >/dev/null 2>&1 || : - supervdsmd_start_required='yes' - fi - - if ! %{_bindir}/vdsm-tool is-configured >/dev/null 2>&1; then - %{_bindir}/vdsm-tool configure --force >/dev/null 2>&1 - fi - - if [ "${supervdsmd_start_required}" = 'yes' ]; then - %{_bindir}/vdsm-tool service-start supervdsmd >/dev/null 2>&1 || : - fi - if [ "${vdsmd_start_required}" = 'yes' ]; then - %{_bindir}/vdsm-tool service-start vdsmd >/dev/null 2>&1 || : - fi -fi -exit 0 - -%files -%{!?_licensedir:%global license %%doc} -%doc README lib/vdsm/vdsm.conf.sample -%license COPYING -/usr/lib/systemd/systemd-vdsmd -/usr/lib/systemd/system-preset/85-vdsmd.preset -%{_unitdir}/vdsmd.service -%{_unitdir}/vdsm-network.service -%{_unitdir}/supervdsmd.service -%{_unitdir}/mom-vdsm.service -%{_sysconfdir}/systemd/system/libvirtd.service.d/unlimited-core.conf - -%dir %attr(-, %{vdsm_user}, %{vdsm_group}) /rhev/data-center -%ghost %config %attr(0644, %{vdsm_user}, %{vdsm_group}) /usr/local/var/log/vdsm/connectivity.log -%ghost %config %attr(0644, %{vdsm_user}, %{vdsm_group}) /usr/local/var/log/vdsm/mom.log -%ghost %config %attr(0644, root, root) /usr/local/var/log/vdsm/supervdsm.log -%ghost %config %attr(0644, %{vdsm_user}, %{vdsm_group}) /usr/local/var/log/vdsm/vdsm.log -%ghost %dir %attr(-, %{vdsm_user}, %{vdsm_group}) /rhev/data-center/hsm-tasks -%ghost %dir %attr(-, %{vdsm_user}, %{vdsm_group}) /rhev/data-center/mnt -%dir %{_libexecdir}/%{name} -%dir %{_sysconfdir}/%{name} -%dir %{_sysconfdir}/%{name}/mom.d -%dir %{_datadir}/%{name} -%dir %{_datadir}/%{name}/network -%dir %{_datadir}/%{name}/network/configurators -%dir %{_datadir}/%{name}/network/tc -%dir %{_datadir}/%{name}/storage -%dir %{_datadir}/%{name}/storage/imageRepository -%dir %{_datadir}/%{name}/virt -%{_datadir}/%{name}/alignmentScan.py* -%{_datadir}/%{name}/blkid.py* -%{_datadir}/%{name}/caps.py* -%{_datadir}/%{name}/clientIF.py* -%{_datadir}/%{name}/daemonAdapter -%{_datadir}/%{name}/dmidecodeUtil.py* -%{_datadir}/%{name}/API.py* -%{_datadir}/%{name}/hooking.py* -%{_datadir}/%{name}/hooks.py* -%{_datadir}/%{name}/hostdev.py* -%{_datadir}/%{name}/mk_sysprep_floppy -%{_datadir}/%{name}/parted_utils.py* -%{_datadir}/%{name}/mkimage.py* -%{_datadir}/%{name}/numaUtils.py* -%{_datadir}/%{name}/ppc64HardwareInfo.py* -%{_datadir}/%{name}/protocoldetector.py* -%{_datadir}/%{name}/supervdsm.py* -%{_datadir}/%{name}/supervdsmServer -%{_datadir}/%{name}/v2v.py* -%{_datadir}/%{name}/vdsm -%{_datadir}/%{name}/vdsm-restore-net-config -%{_datadir}/%{name}/vdsm-store-net-config -%{_datadir}/%{name}/virt/__init__.py* -%{_datadir}/%{name}/virt/domain_descriptor.py* -%{_datadir}/%{name}/virt/guestagent.py* -%{_datadir}/%{name}/virt/migration.py* -%{_datadir}/%{name}/virt/periodic.py* -%{_datadir}/%{name}/virt/sampling.py* -%{_datadir}/%{name}/virt/secret.py* -%{_datadir}/%{name}/virt/virdomain.py* -%{_datadir}/%{name}/virt/vmchannels.py* -%{_datadir}/%{name}/virt/vmstats.py* -%{_datadir}/%{name}/virt/vmstatus.py* -%{_datadir}/%{name}/virt/vmtune.py* -%{_datadir}/%{name}/virt/vm.py* -%{_datadir}/%{name}/virt/vmexitreason.py* -%{_datadir}/%{name}/virt/vmpowerdown.py* -%{_datadir}/%{name}/virt/vmxml.py* -%{_datadir}/%{name}/virt/utils.py* -%{_datadir}/%{name}/virt/vmdevices/__init__.py* -%{_datadir}/%{name}/virt/vmdevices/core.py* -%{_datadir}/%{name}/virt/vmdevices/graphics.py* -%{_datadir}/%{name}/virt/vmdevices/hostdevice.py* -%{_datadir}/%{name}/virt/vmdevices/hwclass.py* -%{_datadir}/%{name}/virt/vmdevices/network.py* -%{_datadir}/%{name}/virt/vmdevices/storage.py* - -%config(noreplace) %{_sysconfdir}/%{name}/vdsm.conf -%config(noreplace) %{_sysconfdir}/%{name}/logger.conf -%config(noreplace) %{_sysconfdir}/%{name}/svdsm.logger.conf -%config(noreplace) %{_sysconfdir}/%{name}/mom.conf -%config(noreplace) %{_sysconfdir}/%{name}/mom.d/*.policy -%config(noreplace) %{_sysconfdir}/%{name}/logrotate/vdsm -%config(noreplace) %{_sysconfdir}/rwtab.d/vdsm -%config(noreplace) %{_sysconfdir}/sysctl.d/vdsm.conf -%config(noreplace) %{_sysconfdir}/modules-load.d/vdsm.conf -%config(noreplace) %{_tmpfilesdir}/%{name}.conf -%{_sysconfdir}/dhcp/dhclient.d/sourceRoute.sh -%{_sysconfdir}/sudoers.d/50_vdsm -%{_sysconfdir}/cron.hourly/vdsm-logrotate -%{_sysconfdir}/libvirt/hooks/qemu -%{_datadir}/%{name}/logUtils.py* -%{_datadir}/%{name}/dsaversion.py* -%{_libexecdir}/%{name}/curl-img-wrap -%{_libexecdir}/%{name}/fc-scan -%{_libexecdir}/%{name}/persist-vdsm-hooks -%{_libexecdir}/%{name}/unpersist-vdsm-hook -%{_libexecdir}/%{name}/ovirt_functions.sh -%{_libexecdir}/%{name}/vdsm-gencerts.sh -%{_libexecdir}/%{name}/vdsmd_init_common.sh -%{_datadir}/%{name}/network/__init__.py* -%{_datadir}/%{name}/network/api.py* -%{_datadir}/%{name}/network/configurators/__init__.py* -%{_datadir}/%{name}/network/configurators/dhclient.py* -%{_datadir}/%{name}/network/configurators/ifcfg.py* -%{_datadir}/%{name}/network/configurators/iproute2.py* -%{_datadir}/%{name}/network/configurators/libvirt.py* -%{_datadir}/%{name}/network/configurators/pyroute_two.py* -%{_datadir}/%{name}/network/configurators/qos.py* -%{_datadir}/%{name}/network/errors.py* -%{_datadir}/%{name}/network/models.py* -%{_datadir}/%{name}/network/sourceroute.py* -%{_datadir}/%{name}/network/sourceroutethread.py* -%{_datadir}/%{name}/network/tc/__init__.py* -%{_datadir}/%{name}/network/tc/_parser.py* -%{_datadir}/%{name}/network/tc/_wrapper.py* -%{_datadir}/%{name}/network/tc/cls.py* -%{_datadir}/%{name}/network/tc/filter.py* -%{_datadir}/%{name}/network/tc/qdisc.py* -%{_datadir}/%{name}/network/utils.py* -%{_datadir}/%{name}/storage/__init__.py* -%{_datadir}/%{name}/storage/blockSD.py* -%{_datadir}/%{name}/storage/blockVolume.py* -%{_datadir}/%{name}/storage/curlImgWrap.py* -%{_datadir}/%{name}/storage/devicemapper.py* -%{_datadir}/%{name}/storage/dispatcher.py* -%{_datadir}/%{name}/storage/monitor.py* -%{_datadir}/%{name}/storage/fileSD.py* -%{_datadir}/%{name}/storage/fileUtils.py* -%{_datadir}/%{name}/storage/fileVolume.py* -%{_datadir}/%{name}/storage/fuser.py* -%{_datadir}/%{name}/storage/glusterSD.py* -%{_datadir}/%{name}/storage/glusterVolume.py* -%{_datadir}/%{name}/storage/hba.py* -%{_datadir}/%{name}/storage/hsm.py* -%{_datadir}/%{name}/storage/image.py* -%{_datadir}/%{name}/storage/imageSharing.py* -%{_datadir}/%{name}/storage/iscsiadm.py* -%{_datadir}/%{name}/storage/iscsi.py* -%{_datadir}/%{name}/storage/localFsSD.py* -%{_datadir}/%{name}/storage/lvm.env -%{_datadir}/%{name}/storage/lvm.py* -%{_datadir}/%{name}/storage/misc.py* -%{_datadir}/%{name}/storage/mount.py* -%{_datadir}/%{name}/storage/multipath.py* -%{_datadir}/%{name}/storage/nfsSD.py* -%{_datadir}/%{name}/storage/outOfProcess.py* -%{_datadir}/%{name}/storage/persistentDict.py* -%{_datadir}/%{name}/storage/resourceFactories.py* -%{_datadir}/%{name}/storage/remoteFileHandler.py* -%{_datadir}/%{name}/storage/resourceManager.py* -%{_datadir}/%{name}/storage/clusterlock.py* -%{_datadir}/%{name}/storage/sdc.py* -%{_datadir}/%{name}/storage/sd.py* -%{_datadir}/%{name}/storage/securable.py* -%{_datadir}/%{name}/storage/sp.py* -%{_datadir}/%{name}/storage/spbackends.py* -%{_datadir}/%{name}/storage/storageConstants.py* -%{_datadir}/%{name}/storage/storage_exception.py* -%{_datadir}/%{name}/storage/storage_mailbox.py* -%{_datadir}/%{name}/storage/storageServer.py* -%{_datadir}/%{name}/storage/sync.py* -%{_datadir}/%{name}/storage/taskManager.py* -%{_datadir}/%{name}/storage/task.py* -%{_datadir}/%{name}/storage/threadLocal.py* -%{_datadir}/%{name}/storage/threadPool.py* -%{_datadir}/%{name}/storage/volume.py* -%{_datadir}/%{name}/storage/imageRepository/__init__.py* -%{_datadir}/%{name}/storage/imageRepository/formatConverter.py* -%{_libexecdir}/%{name}/spmprotect.sh -%{_libexecdir}/%{name}/spmstop.sh -%dir %{_libexecdir}/%{name}/hooks -%dir %{_libexecdir}/%{name}/hooks/before_device_create -%dir %{_libexecdir}/%{name}/hooks/after_device_create -%dir %{_libexecdir}/%{name}/hooks/before_device_destroy -%dir %{_libexecdir}/%{name}/hooks/after_device_destroy -%dir %{_libexecdir}/%{name}/hooks/before_vm_start -%dir %{_libexecdir}/%{name}/hooks/after_vm_start -%dir %{_libexecdir}/%{name}/hooks/before_vm_cont -%dir %{_libexecdir}/%{name}/hooks/after_vm_cont -%dir %{_libexecdir}/%{name}/hooks/before_vm_pause -%dir %{_libexecdir}/%{name}/hooks/after_vm_pause -%dir %{_libexecdir}/%{name}/hooks/before_vm_hibernate -%dir %{_libexecdir}/%{name}/hooks/after_vm_hibernate -%dir %{_libexecdir}/%{name}/hooks/before_vm_dehibernate -%dir %{_libexecdir}/%{name}/hooks/after_vm_dehibernate -%dir %{_libexecdir}/%{name}/hooks/before_device_migrate_source -%dir %{_libexecdir}/%{name}/hooks/after_device_migrate_source -%dir %{_libexecdir}/%{name}/hooks/before_device_migrate_destination -%dir %{_libexecdir}/%{name}/hooks/after_device_migrate_destination -%dir %{_libexecdir}/%{name}/hooks/before_vm_migrate_source -%dir %{_libexecdir}/%{name}/hooks/after_vm_migrate_source -%dir %{_libexecdir}/%{name}/hooks/before_vm_migrate_destination -%dir %{_libexecdir}/%{name}/hooks/after_vm_migrate_destination -%dir %{_libexecdir}/%{name}/hooks/before_vm_destroy -%dir %{_libexecdir}/%{name}/hooks/after_vm_destroy -%dir %{_libexecdir}/%{name}/hooks/before_vm_set_ticket -%dir %{_libexecdir}/%{name}/hooks/after_vm_set_ticket -%dir %{_libexecdir}/%{name}/hooks/before_update_device -%dir %{_libexecdir}/%{name}/hooks/after_update_device -%dir %{_libexecdir}/%{name}/hooks/after_update_device_fail -%dir %{_libexecdir}/%{name}/hooks/before_nic_hotplug -%dir %{_libexecdir}/%{name}/hooks/after_nic_hotplug -%dir %{_libexecdir}/%{name}/hooks/before_nic_hotunplug -%dir %{_libexecdir}/%{name}/hooks/after_nic_hotunplug -%dir %{_libexecdir}/%{name}/hooks/after_nic_hotplug_fail -%dir %{_libexecdir}/%{name}/hooks/after_nic_hotunplug_fail -%dir %{_libexecdir}/%{name}/hooks/before_disk_hotplug -%dir %{_libexecdir}/%{name}/hooks/after_disk_hotplug -%dir %{_libexecdir}/%{name}/hooks/before_disk_hotunplug -%dir %{_libexecdir}/%{name}/hooks/after_disk_hotunplug -%dir %{_libexecdir}/%{name}/hooks/before_vdsm_start -%dir %{_libexecdir}/%{name}/hooks/after_vdsm_stop -%dir %{_libexecdir}/%{name}/hooks/before_network_setup -%dir %{_libexecdir}/%{name}/hooks/after_network_setup -%dir %{_libexecdir}/%{name}/hooks/before_set_num_of_cpus -%dir %{_libexecdir}/%{name}/hooks/after_set_num_of_cpus -%dir %{_libexecdir}/%{name}/hooks/before_memory_hotplug -%dir %{_libexecdir}/%{name}/hooks/after_memory_hotplug -%dir %{_libexecdir}/%{name}/hooks/before_get_vm_stats -%dir %{_libexecdir}/%{name}/hooks/after_get_vm_stats -%dir %{_libexecdir}/%{name}/hooks/before_get_all_vm_stats -%dir %{_libexecdir}/%{name}/hooks/after_get_all_vm_stats -%dir %{_libexecdir}/%{name}/hooks/before_get_caps -%dir %{_libexecdir}/%{name}/hooks/after_get_caps -%dir %{_libexecdir}/%{name}/hooks/before_get_stats -%dir %{_libexecdir}/%{name}/hooks/after_get_stats -%dir %{_libexecdir}/%{name}/hooks/after_hostdev_list_by_caps -%dir %{_libexecdir}/%{name}/hooks/before_ifcfg_write -%dir %{_libexecdir}/%{name}/hooks/after_ifcfg_write - -%{_datadir}/%{name}/dumpStorageTable.py* -%{_datadir}/%{name}/get-conf-item -%{_datadir}/%{name}/kaxmlrpclib.py* -%{_datadir}/%{name}/momIF.py* -%{_datadir}/%{name}/set-conf-item -%dir %{_datadir}/%{name}/gluster -%{_datadir}/%{name}/gluster/__init__.py* -%{_datadir}/%{name}/gluster/cli.py* -%{_datadir}/%{name}/gluster/exception.py* -%{python_sitelib}/sos/plugins/vdsm.py* -%{_udevrulesdir}/12-vdsm-lvm.rules -/etc/security/limits.d/99-vdsm.conf -%{_mandir}/man8/vdsmd.8* -%if 0%{?rhel} -%dir %{_localstatedir}/log/core -%endif -%{_polkitdir}/10-vdsm-libvirt-access.rules - -%defattr(-, %{vdsm_user}, %{qemu_group}, -) -%dir %{_localstatedir}/lib/libvirt/qemu/channels - -%defattr(-, %{vdsm_user}, %{vdsm_group}, -) -%dir %{_sysconfdir}/pki/%{name} -%dir %{_sysconfdir}/pki/%{name}/keys -%dir %{_sysconfdir}/pki/%{name}/certs -%dir %{_sysconfdir}/pki/%{name}/libvirt-spice -%config(noreplace) %{_sysconfdir}/pki/%{name}/keys/libvirt_password -%{_localstatedir}/lib/%{name}/bonding-defaults.json -%dir %{_localstatedir}/lib/%{name} -%dir %{_localstatedir}/lib/%{name}/netconfback -%dir %{_localstatedir}/lib/%{name}/persistence -%dir %{_localstatedir}/lib/%{name}/upgrade -%dir %{_localstatedir}/run/%{name} -%dir %{_localstatedir}/run/%{name}/sourceRoutes -%dir %{_localstatedir}/run/%{name}/trackedInterfaces -%ghost %dir %{_localstatedir}/run/%{name}/payload -%dir %{_localstatedir}/run/%{name}/v2v -%dir %{_localstatedir}/log/%{name} -%dir %{_localstatedir}/log/%{name}/backup - -%files python -%{_mandir}/man1/vdsm-tool.1* -%{_bindir}/vdsm-tool -%dir %{python_sitelib}/%{name} -%dir %{python_sitelib}/%{name}/netlink -%dir %{python_sitelib}/%{name}/tool -%{python_sitelib}/%{name}/__init__.py* -%{python_sitelib}/%{name}/cmdutils.py* -%{python_sitelib}/%{name}/compat.py* -%{python_sitelib}/%{name}/concurrent.py* -%{python_sitelib}/%{name}/config.py* -%{python_sitelib}/%{name}/constants.py* -%{python_sitelib}/%{name}/define.py* -%{python_sitelib}/%{name}/exception.py* -%{python_sitelib}/%{name}/executor.py* -%{python_sitelib}/%{name}/ipwrapper.py* -%{python_sitelib}/%{name}/jsonrpcvdscli.py* -%{python_sitelib}/%{name}/libvirtconnection.py* -%{python_sitelib}/%{name}/netinfo.py* -%{python_sitelib}/%{name}/netlink/__init__.py* -%{python_sitelib}/%{name}/netlink/addr.py* -%{python_sitelib}/%{name}/netlink/link.py* -%{python_sitelib}/%{name}/netlink/monitor.py* -%{python_sitelib}/%{name}/netlink/route.py* -%{python_sitelib}/%{name}/password.py* -%{python_sitelib}/%{name}/profiling/__init__.py* -%{python_sitelib}/%{name}/profiling/cpu.py* -%{python_sitelib}/%{name}/profiling/errors.py* -%{python_sitelib}/%{name}/profiling/memory.py* -%{python_sitelib}/%{name}/profiling/profile.py* -%{python_sitelib}/%{name}/pthread.py* -%{python_sitelib}/%{name}/qemuimg.py* -%{python_sitelib}/%{name}/response.py* -%{python_sitelib}/%{name}/netconfpersistence.py* -%{python_sitelib}/%{name}/schedule.py* -%{python_sitelib}/%{name}/sslutils.py* -%{python_sitelib}/%{name}/sysctl.py* -%{python_sitelib}/%{name}/taskset.py* -%{python_sitelib}/%{name}/udevadm.py* -%{python_sitelib}/%{name}/utils.py* -%{python_sitelib}/%{name}/vdscli.py* -%{python_sitelib}/%{name}/virtsparsify.py* -%{python_sitelib}/%{name}/xmlrpc.py* -%{python_sitelib}/%{name}/tool/__init__.py* -%{python_sitelib}/%{name}/tool/configfile.py* -%{python_sitelib}/%{name}/tool/dummybr.py* -%{python_sitelib}/%{name}/tool/dump_bonding_defaults.py* -%{python_sitelib}/%{name}/tool/nwfilter.py* -%{python_sitelib}/%{name}/tool/configurator.py* -%{python_sitelib}/%{name}/tool/configurators/__init__* -%{python_sitelib}/%{name}/tool/configurators/certificates.py* -%{python_sitelib}/%{name}/tool/configurators/libvirt.py* -%{python_sitelib}/%{name}/tool/configurators/passwd.py* -%{python_sitelib}/%{name}/tool/configurators/sanlock.py* -%{python_sitelib}/%{name}/tool/configurators/sebool.py* -%{python_sitelib}/%{name}/tool/configurators/multipath.py* -%{python_sitelib}/%{name}/tool/dump_volume_chains.py* -%{python_sitelib}/%{name}/tool/register.py* -%{python_sitelib}/%{name}/tool/restore_nets.py* -%{python_sitelib}/%{name}/tool/service.py* -%{python_sitelib}/%{name}/tool/transient.py* -%{python_sitelib}/%{name}/tool/unified_persistence.py* -%{python_sitelib}/%{name}/tool/upgrade.py* -%{python_sitelib}/%{name}/tool/validate_ovirt_certs.py* -%{python_sitelib}/%{name}/tool/vdsm-id.py* - -%files tests -%doc %{_datadir}/%{name}/tests/README -%dir %{_datadir}/%{name}/tests -%dir %{_datadir}/%{name}/tests/functional -%dir %{_datadir}/%{name}/tests/devices -%dir %{_datadir}/%{name}/tests/integration -%{_datadir}/%{name}/tests/*.py* -%{_datadir}/%{name}/tests/cpu_info.out -%{_datadir}/%{name}/tests/caps_libvirt_intel_E5649.out -%{_datadir}/%{name}/tests/caps_libvirt_amd_6274.out -%{_datadir}/%{name}/tests/caps_libvirt_ibm_S822L.out -%{_datadir}/%{name}/tests/caps_libvirt_intel_E31220.out -%{_datadir}/%{name}/tests/caps_libvirt_intel_E5606.out -%{_datadir}/%{name}/tests/caps_libvirt_intel_i73770.out -%{_datadir}/%{name}/tests/caps_libvirt_intel_i73770_nosnap.out -%{_datadir}/%{name}/tests/caps_libvirt_multiqemu.out -%{_datadir}/%{name}/tests/caps_numactl_4_nodes.out -%{_datadir}/%{name}/tests/cpu_map.xml -%{_datadir}/%{name}/tests/devices/*.py* -%{_datadir}/%{name}/tests/devices/parsing/*.py* -%{_datadir}/%{name}/tests/devices/data/*.xml -%{_datadir}/%{name}/tests/ip_route_show_table_all.out -%{_datadir}/%{name}/tests/iscsiadm_-m_iface.out -%{_datadir}/%{name}/tests/lvs_3386c6f2-926f-42c4-839c-38287fac8998.out -%{_datadir}/%{name}/tests/mem_info.out -%{_datadir}/%{name}/tests/netmaskconversions -%{_datadir}/%{name}/tests/run_tests.sh -%{_datadir}/%{name}/tests/tc_filter_show.out -%{_datadir}/%{name}/tests/toolTests_empty.conf -%{_datadir}/%{name}/tests/toolTests_lconf_ssl.conf -%{_datadir}/%{name}/tests/toolTests_libvirtd.conf -%{_datadir}/%{name}/tests/toolTests_qemu_sanlock.conf -%{_datadir}/%{name}/tests/toolTests_qemu_ssl.conf -%{_datadir}/%{name}/tests/toolTests_vdsm_no_ssl.conf -%{_datadir}/%{name}/tests/toolTests_vdsm_ssl.conf -%{_datadir}/%{name}/tests/glusterGeoRepStatus.xml -%{_datadir}/%{name}/tests/glusterVolumeGeoRepConfigList.xml -%{_datadir}/%{name}/tests/glusterSnapshotList.xml -%{_datadir}/%{name}/tests/glusterSnapshotListEmpty.xml -%{_datadir}/%{name}/tests/glusterVolumeProfileInfo.xml -%{_datadir}/%{name}/tests/glusterSnapshotConfig.xml -%{_datadir}/%{name}/tests/glusterVolumeProfileInfoNfs.xml -%{_datadir}/%{name}/tests/glusterVolumeRebalanceStatus.xml -%{_datadir}/%{name}/tests/glusterVolumeRemoveBricksStatus.xml -%{_datadir}/%{name}/tests/glusterSnapshotRestore.xml -%{_datadir}/%{name}/tests/glusterVolumeSnapshotList.xml -%{_datadir}/%{name}/tests/glusterVolumeSnapshotListEmpty.xml -%{_datadir}/%{name}/tests/glusterVolumeTasks.xml -%{_datadir}/%{name}/tests/functional/*.py* -%{_datadir}/%{name}/tests/functional/*.policy -%{_datadir}/%{name}/tests/integration/*.py* - -%files hook-openstacknet -%{_sysconfdir}/sudoers.d/50_vdsm_hook_openstacknet -%{_libexecdir}/%{name}/hooks/after_device_create/50_openstacknet -%{_libexecdir}/%{name}/hooks/after_device_create/openstacknet_utils.py* -%{_libexecdir}/%{name}/hooks/after_device_destroy/50_openstacknet -%{_libexecdir}/%{name}/hooks/after_device_destroy/openstacknet_utils.py* -%{_libexecdir}/%{name}/hooks/after_device_migrate_destination/50_openstacknet -%{_libexecdir}/%{name}/hooks/after_device_migrate_destination/openstacknet_utils.py* -%{_libexecdir}/%{name}/hooks/after_nic_hotplug/50_openstacknet -%{_libexecdir}/%{name}/hooks/after_nic_hotplug/openstacknet_utils.py* -%{_libexecdir}/%{name}/hooks/after_nic_hotunplug/50_openstacknet -%{_libexecdir}/%{name}/hooks/after_nic_hotunplug/openstacknet_utils.py* -%{_libexecdir}/%{name}/hooks/before_device_create/50_openstacknet -%{_libexecdir}/%{name}/hooks/before_device_create/openstacknet_utils.py* -%{_libexecdir}/%{name}/hooks/before_device_migrate_destination/50_openstacknet -%{_libexecdir}/%{name}/hooks/before_device_migrate_destination/openstacknet_utils.py* -%{_libexecdir}/%{name}/hooks/before_nic_hotplug/50_openstacknet -%{_libexecdir}/%{name}/hooks/before_nic_hotplug/openstacknet_utils.py* - -%files hook-macspoof -%{_libexecdir}/%{name}/hooks/before_vm_start/50_macspoof -%{_libexecdir}/%{name}/hooks/before_device_create/50_macspoof -%{_libexecdir}/%{name}/hooks/before_nic_hotplug/50_macspoof - -%if 0%{?with_vhostmd} -%files hook-vhostmd -%license COPYING -%{_sysconfdir}/sudoers.d/50_vdsm_hook_vhostmd -%{_libexecdir}/%{name}/hooks/before_vm_start/50_vhostmd -%{_libexecdir}/%{name}/hooks/before_vm_migrate_destination/50_vhostmd -%{_libexecdir}/%{name}/hooks/before_vm_dehibernate/50_vhostmd -%{_libexecdir}/%{name}/hooks/after_vm_destroy/50_vhostmd -%else -%exclude %{_sysconfdir}/sudoers.d/50_vdsm_hook_vhostmd -%exclude %{_libexecdir}/%{name}/hooks/before_vm_start/50_vhostmd -%exclude %{_libexecdir}/%{name}/hooks/before_vm_migrate_destination/50_vhostmd -%exclude %{_libexecdir}/%{name}/hooks/before_vm_dehibernate/50_vhostmd -%exclude %{_libexecdir}/%{name}/hooks/after_vm_destroy/50_vhostmd -%endif - -%files hook-qemucmdline -%license COPYING -%{_libexecdir}/%{name}/hooks/before_vm_start/50_qemucmdline - -%files hook-ethtool-options -%{_libexecdir}/%{name}/hooks/after_network_setup/30_ethtool_options - -%files hook-ipv6 -%{_libexecdir}/%{name}/hooks/before_network_setup/50_ipv6 - -%files hook-vmfex-dev -%{_libexecdir}/%{name}/hooks/before_device_create/50_vmfex -%{_libexecdir}/%{name}/hooks/before_device_migrate_destination/50_vmfex -%{_libexecdir}/%{name}/hooks/before_nic_hotplug/50_vmfex - -%if 0%{?with_hooks} -%files hook-allocate_net -%{_libexecdir}/%{name}/hooks/before_device_create/10_allocate_net - -%files hook-checkimages -%{_libexecdir}/%{name}/hooks/before_vm_start/60_checkimages - -%files hook-directlun -%{_sysconfdir}/sudoers.d/50_vdsm_hook_directlun -%{_libexecdir}/%{name}/hooks/before_vm_start/50_directlun -%{_libexecdir}/%{name}/hooks/after_vm_destroy/50_directlun -%{_libexecdir}/%{name}/hooks/before_vm_migrate_destination/50_directlun - -%files hook-diskunmap -%{_libexecdir}/%{name}/hooks/before_vm_start/50_diskunmap - -%files hook-fakevmstats -%{_libexecdir}/%{name}/hooks/after_get_all_vm_stats/10_fakevmstats - -%files hook-fileinject -%{_libexecdir}/%{name}/hooks/before_vm_start/50_fileinject - -%files hook-floppy -%{_libexecdir}/%{name}/hooks/before_vm_start/50_floppy -%{_libexecdir}/%{name}/hooks/before_vm_migrate_source/50_floppy - -%files hook-hostusb -%{_sysconfdir}/sudoers.d/50_vdsm_hook_hostusb -%{_libexecdir}/%{name}/hooks/before_vm_start/50_hostusb -%{_libexecdir}/%{name}/hooks/before_vm_migrate_source/50_hostusb -%{_libexecdir}/%{name}/hooks/after_vm_destroy/50_hostusb - -%files hook-httpsisoboot -%{_libexecdir}/%{name}/hooks/before_vm_start/50_httpsisoboot - -%files hook-hugepages -%{_sysconfdir}/sudoers.d/50_vdsm_hook_hugepages -%{_libexecdir}/%{name}/hooks/before_vm_start/50_hugepages -%{_libexecdir}/%{name}/hooks/before_vm_migrate_destination/50_hugepages -%{_libexecdir}/%{name}/hooks/after_vm_destroy/50_hugepages - -%files hook-isolatedprivatevlan -%{_libexecdir}/%{name}/hooks/before_vm_start/50_isolatedprivatevlan -%config(noreplace) %{_sysconfdir}/libvirt/nwfilter/isolatedprivatevlan-vdsm.xml - -%files hook-macbind -%{_libexecdir}/%{name}/hooks/before_vm_start/50_macbind - -%files hook-noipspoof -%{_libexecdir}/%{name}/hooks/before_device_create/50_noipspoof -%{_libexecdir}/%{name}/hooks/before_nic_hotplug/50_noipspoof - -%files hook-extnet -%{_libexecdir}/%{name}/hooks/before_device_create/50_extnet -%{_libexecdir}/%{name}/hooks/before_nic_hotplug/50_extnet - -%files hook-nestedvt -%{_sysconfdir}/modprobe.d/vdsm-nestedvt.conf -%{_libexecdir}/%{name}/hooks/before_vm_start/50_nestedvt - -%files hook-numa -%{_libexecdir}/%{name}/hooks/before_vm_start/50_numa - -%files hook-pincpu -%{_libexecdir}/%{name}/hooks/before_vm_start/50_pincpu - -%files hook-promisc -%{_sysconfdir}/sudoers.d/50_vdsm_hook_promisc -%{_libexecdir}/%{name}/hooks/after_vm_start/50_promisc -%{_libexecdir}/%{name}/hooks/before_vm_destroy/50_promisc - -%files hook-qos -%{_libexecdir}/%{name}/hooks/before_vm_start/50_qos - -%files hook-scratchpad -%{_libexecdir}/%{name}/hooks/before_vm_start/50_scratchpad -%{_libexecdir}/%{name}/hooks/before_vm_migrate_source/50_scratchpad -%{_libexecdir}/%{name}/hooks/after_vm_destroy/50_scratchpad - -%files hook-smbios -%{_libexecdir}/%{name}/hooks/before_vm_start/50_smbios - -%files hook-spiceoptions -%{_libexecdir}/%{name}/hooks/before_vm_start/50_spiceoptions - -%files hook-vmdisk -%{_libexecdir}/%{name}/hooks/before_vm_start/50_vmdisk - -%files hook-vmfex -%{_libexecdir}/%{name}/hooks/before_vm_migrate_destination/50_vmfex -%{_libexecdir}/%{name}/hooks/before_vm_start/50_vmfex -%endif - -%files debug-plugin -%{_datadir}/%{name}/vdsmDebugPlugin.py* -%{_datadir}/%{name}/debugPluginClient.py* - -%files cli -%license COPYING -%{_bindir}/vdsClient -%{_datadir}/%{name}/vdsClient.py* -%{_datadir}/%{name}/vdsClientGluster.py* -%{_sysconfdir}/bash_completion.d/vdsClient -%{_mandir}/man1/vdsClient.1* - -%files xmlrpc -%dir %{_datadir}/%{name} -%{_datadir}/%{name}/rpc/bindingxmlrpc.py* - -%files jsonrpc -%doc %{name}/rpc/vdsm-api.html -%{_datadir}/%{name}/rpc/__init__.py* -%{_datadir}/%{name}/rpc/bindingjsonrpc.py* -%{_datadir}/%{name}/rpc/Bridge.py* -%{_datadir}/%{name}/rpc/vdsmapi-schema.json -%{python_sitelib}/vdsmapi.py* -%{python_sitelib}/yajsonrpc/__init__.py* -%if ! 0%{?with_gluster} -%exclude %{_datadir}/%{name}/rpc/vdsmapi-gluster-schema.json -%endif - -%files yajsonrpc -%dir %{python_sitelib}/yajsonrpc -%{python_sitelib}/yajsonrpc/betterAsyncore.py* -%{python_sitelib}/yajsonrpc/stomp.py* -%{python_sitelib}/yajsonrpc/stompreactor.py* - -%files infra -%{python_sitelib}/%{name}/infra/eventfd/__init__.py* -%{python_sitelib}/%{name}/infra/filecontrol/__init__.py* -%{python_sitelib}/%{name}/infra/sigutils/__init__.py* -%{python_sitelib}/%{name}/infra/zombiereaper/__init__.py* -%{python_sitelib}/%{name}/infra/__init__.py* - -%files hook-faqemu -%license COPYING -%{_libexecdir}/%{name}/hooks/before_vm_start/10_faqemu - -%if 0%{?with_gluster} -%files gluster -%dir %{_datadir}/%{name}/gluster -%license COPYING -%{_datadir}/%{name}/gluster/api.py* -%{_datadir}/%{name}/gluster/apiwrapper.py* -%{_datadir}/%{name}/gluster/fstab.py* -%{_datadir}/%{name}/rpc/vdsmapi-gluster-schema.json -%{_datadir}/%{name}/gluster/gfapi.py* -%{_datadir}/%{name}/gluster/hooks.py* -%{_datadir}/%{name}/gluster/services.py* -%{_datadir}/%{name}/gluster/storagedev.py* -%{_datadir}/%{name}/gluster/tasks.py* -%endif - -%changelog -* Fri Mar 11 2016 Dennis Gilmore 4.17.9-18.git1379158 -- spec cleanups - -* Fri Feb 05 2016 Fedora Release Engineering - 4.17.9-17.git1379158 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Sun Oct 13 2013 Yaniv Bronhaim - 4.13.0 -- Removing vdsm-python-cpopen from the spec -- Adding dependency on formal cpopen package - -* Sun Apr 07 2013 Yaniv Bronhaim - 4.9.0-1 -- Adding cpopen package - -* Wed Oct 12 2011 Federico Simoncelli - 4.9.0-0 -- Initial upstream release - -* Thu Nov 02 2006 Simon Grinberg - 0.0-1 -- Initial build