[vdsm] Initial import (#745510)

Federico Simoncelli fsimonce at fedoraproject.org
Fri Dec 2 13:43:49 UTC 2011


commit 04c065737441678e197c539606d4e2e6c688d815
Author: Federico Simoncelli <fsimonce at redhat.com>
Date:   Fri Dec 2 08:43:16 2011 -0500

    Initial import (#745510)

 .gitignore |    1 +
 sources    |    1 +
 vdsm.spec  |  724 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 726 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..80cde78 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/vdsm-4.9.1-931a43e.tar.gz
diff --git a/sources b/sources
index e69de29..524d095 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+4ca6f706b3e9bd8d15cc4769748e64a2  vdsm-4.9.1-931a43e.tar.gz
diff --git a/vdsm.spec b/vdsm.spec
new file mode 100644
index 0000000..90e27ff
--- /dev/null
+++ b/vdsm.spec
@@ -0,0 +1,724 @@
+# Packages names
+%global vdsm_name vdsm
+%global vdsm_bootstrap vdsm-bootstrap
+%global vdsm_reg vdsm-reg
+
+# Upstream release
+%global vdsm_release 931a43e
+
+# Required users and groups
+%global vdsm_user vdsm
+%global vdsm_group kvm
+%global qemu_group qemu
+
+# Required paths
+%global _polkitdir %{_localstatedir}/lib/polkit-1/localauthority/10-vendor.d
+
+Name:           %{vdsm_name}
+Version:        4.9.1
+Release:        2.git%{vdsm_release}%{?dist}%{?extra_release}
+Summary:        Virtual Desktop Server Manager
+
+Group:          Applications/System
+License:        GPLv2+
+Url:            http://www.ovirt.org/project/subprojects
+# The source for this package was pulled from upstream's vcs.
+# Use the following commands to generate the tarball:
+#  git clone http://gerrit.ovirt.org/p/vdsm
+#  cd vdsm
+#  git reset --hard {vdsm_release}
+#  ./autogen.sh --system
+#  make VERSION=4.9.1-{vdsm_release} dist
+Source0:        %{vdsm_name}-%{version}-%{vdsm_release}.tar.gz
+BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+
+BuildRequires: python
+BuildRequires: redhat-rpm-config
+BuildRequires: pyflakes
+
+%if !0%{?rhel}
+BuildRequires: systemd-units
+%endif
+
+Requires: python which
+Requires: sudo >= 1.7.3
+Requires: logrotate
+Requires: xz
+Requires: python-ethtool
+Requires: nfs-utils dmidecode
+Requires: lvm2 >= 2.02.72-8
+
+%if 0%{?rhel}
+Requires: qemu-kvm >= 2:0.12.1.2-2.189
+Requires: qemu-img >= 2:0.12.1.2-2.189
+Requires: libvirt >= 0.9.4-13
+Requires: libvirt-python >= 0.9.4-13
+Requires: iscsi-initiator-utils >= 6.2.0.872-15
+Requires: device-mapper-multipath >= 0.4.9-31
+Requires: e2fsprogs >= 1.41.12-11
+%else
+Requires: qemu-kvm >= 2:0.15.0-4
+Requires: qemu-img >= 2:0.15.0-4
+Requires: libvirt >= 0.9.6-2
+Requires: libvirt-python >= 0.9.6-2
+Requires: iscsi-initiator-utils >= 6.2.0.872-14
+Requires: device-mapper-multipath >= 0.4.9-18
+Requires: e2fsprogs >= 1.41.14
+%endif
+
+Requires: psmisc >= 22.6-15
+Requires: fence-agents
+Requires: bridge-utils
+Requires: sos
+Requires: dosfstools
+Requires: policycoreutils-python
+Requires: libselinux-python
+Requires: kernel >= 2.6.32-198
+Requires: selinux-policy-targeted >= 3.7.19-80.el6
+Requires(post): /usr/sbin/saslpasswd2
+
+%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 hook-vhostmd
+Summary:        VDSM hook set for interaction with vhostmd
+Requires:       vhostmd
+BuildArch:      noarch
+
+%description hook-vhostmd
+VDSM hook to use vhostmd per VM according to Virtualization Manager requests.
+
+%package hook-faqemu
+Summary:        Fake qemu process for VDSM quality assurance
+BuildArch:      noarch
+
+%description hook-faqemu
+VDSM hook used for testing VDSM with multiple fake virtual machines without
+running real guests.
+
+%package hook-directlun
+Summary:        Direct LUN support for VDSM
+BuildArch:      noarch
+
+%description hook-directlun
+VDSM hook enable user to add storage LUN for VDSM
+without the sharing and storage handling of VDSM.
+
+%package hook-fileinject
+Summary:        Allow uploading file to VMs disk
+BuildArch:      noarch
+
+%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
+BuildArch:      noarch
+
+%description hook-floppy
+Allow adding floppy to VM
+
+%package hook-hostusb
+Summary:        Allow attaching USB device from host
+BuildArch:      noarch
+
+%description hook-hostusb
+Hook is getting vendor and product id of USB device
+disconnect it from host and attach it to VM
+
+%package hook-hugepages
+Summary:        Huge pages enable user to handle VM with 2048KB page files.
+BuildArch:      noarch
+
+%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
+BuildArch:      noarch
+
+%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 <filterref filter='clean-traffic'/> libvirt filter
+and by adding custom filter: isolatedprivatevlan-vdsm.xml
+
+%package hook-numa
+Summary:        numa sopport for VDSM
+BuildArch:      noarch
+
+%description hook-numa
+Hooks is getting number/rage of numa nodes and numa mode,
+and update the VM xml.
+
+%package hook-pincpu
+Summary:        Hook pin VM so specific CPUs
+BuildArch:      noarch
+
+%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
+BuildArch:      noarch
+
+%description hook-promisc
+VDSM promiscuous mode let user define a VM interface that will capture
+all network traffic.
+
+%package hook-qos
+Summary:        QoS network in/out traffic support for VDSM
+BuildArch:      noarch
+
+%description hook-qos
+Hook adds QoS in/out traffic to VMs interfaces
+
+%package hook-scratchpad
+Summary:        One time disk creation for VDSM
+BuildArch:      noarch
+
+%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-smartcard
+Summary:        Smartcard support for Spice protocol in VDSM
+BuildArch:      noarch
+
+%description hook-smartcard
+Smartcard hook add support for spice in VDSM.
+Smartcard hook enable user to use its smartcard inside virtual machines.
+
+%package hook-smbios
+Summary:        Adding custom smbios entries to libvirt domain via VDSM
+BuildArch:      noarch
+
+%description hook-smbios
+Adding custom smbios entries to libvirt domain via VDSM
+such as: vendor, version, date and release
+
+%package hook-sriov
+Summary:        sr-iov support for VDSM
+BuildArch:      noarch
+
+%description hook-sriov
+sr-iov hook enable to add virtual functions exposed by the device
+directly to a virtual machine.
+
+%package hook-vmdisk
+Summary:        External disk support for VDSM
+BuildArch:      noarch
+
+%description hook-vmdisk
+Hook adds additional disk image for a VM (raw or qcow2)
+
+%package debug-plugin
+Summary:        VDSM Debug Plugin
+Requires:       vdsm
+BuildArch:      noarch
+
+%description debug-plugin
+Used by the trained monkeys at Red Hat to insert chaos and mayhem in to VDSM.
+
+%package cli
+Summary:        VDSM command line interface
+BuildArch:      noarch
+
+%description cli
+Call VDSM commands from the command line. Used for testing and debugging.
+
+%package bootstrap
+Summary:        VDSM bootstrapping package
+BuildArch:      noarch
+
+%description bootstrap
+VDSM bootstrapping package. Used for delivering the bootstrap code onto the
+Virtualization Manager.
+
+%package reg
+Summary:        VDSM registration package
+BuildArch:      noarch
+
+Requires: %{name} = %{version}-%{release}
+Requires: traceroute
+
+%description reg
+VDSM registration package. Used to register a Linux host to a Virtualization
+Manager.
+
+%prep
+%setup -q -n %{vdsm_name}-%{version}-%{vdsm_release}
+
+%build
+%configure %{?with_hooks:--enable-hooks}
+make
+
+%install
+rm -rf %{buildroot}
+make DESTDIR=%{buildroot} install
+
+# Install the respawn utility
+install -Dm 0755 vdsm/respawn \
+                 %{buildroot}%{_datadir}/%{vdsm_name}/respawn
+
+# Install the lvm rules
+install -Dm 0644 vdsm/storage/12-vdsm-lvm.rules \
+                 %{buildroot}/lib/udev/rules.d/12-vdsm-lvm.rules
+
+%if 0%{?rhel}
+# Install the SysV init scripts
+install -Dm 0755 vdsm/vdsmd.init %{buildroot}%{_initrddir}/vdsmd
+install -Dm 0755 vdsm_reg/vdsm-reg.init %{buildroot}%{_initrddir}/vdsm-reg
+
+# 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
+%else
+# Install the configuration sample
+install -Dm 0644 vdsm/vdsm.conf.sample \
+                 %{buildroot}%{_sysconfdir}/vdsm/vdsm.conf
+
+# Install the systemd scripts
+install -Dm 0755 vdsm/vdsmd.init %{buildroot}/lib/systemd/systemd-vdsmd
+install -Dm 0644 vdsm/vdsmd.service %{buildroot}%{_unitdir}/vdsmd.service
+install -Dm 0755 vdsm_reg/vdsm-reg.init \
+                 %{buildroot}/lib/systemd/systemd-vdsm-reg
+install -Dm 0644 vdsm_reg/vdsm-reg.service \
+                 %{buildroot}%{_unitdir}/vdsm-reg.service
+# Install the polkit for libvirt
+install -Dm 0644 vdsm/vdsm-libvirt-access.pkla \
+                 %{buildroot}%{_polkitdir}/10-vdsm-libvirt-access.pkla
+%endif
+
+%check
+make check
+
+%clean
+rm -rf %{buildroot}
+
+%pre
+/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} %{vdsm_user}
+
+%post
+# update the vdsm "secret" password for libvirt
+/usr/sbin/saslpasswd2 -p -a libvirt vdsm at rhevh < \
+    /etc/pki/vdsm/keys/libvirt_password
+%if 0%{?rhel}
+if [ "$1" -eq 1 ] ; then
+    /sbin/chkconfig --add vdsmd
+fi
+%else
+if [ "$1" -eq 1 ] ; then
+    /bin/systemctl enable vdsmd.service >/dev/null 2>&1 || :
+    /bin/systemctl daemon-reload >/dev/null 2>&1 || :
+fi
+exit 0
+%endif
+
+%preun
+%if 0%{?rhel}
+if [ "$1" -eq 0 ]
+then
+    /sbin/service vdsmd stop > /dev/null 2>&1 || :
+    /sbin/chkconfig --del vdsmd
+
+    /bin/sed -i '/# by vdsm$/d' \
+        /etc/libvirt/libvirtd.conf \
+        /etc/libvirt/qemu.conf \
+        /etc/sysconfig/libvirtd \
+        /etc/sysctl.conf
+
+    /bin/sed -i '/# VDSM section begin/,/# VDSM section end/d' \
+        /etc/sysctl.conf
+
+    /usr/sbin/semanage boolean -m -S targeted -F /dev/stdin  << _EOF
+virt_use_nfs=0
+_EOF
+
+    if selinuxenabled; then
+        /usr/sbin/setsebool virt_use_nfs off
+    fi
+
+    /usr/sbin/saslpasswd2 -p -a libvirt -d vdsm at rhevh
+
+    if /sbin/initctl status libvirtd >/dev/null 2>/dev/null ; then
+        /sbin/initctl stop libvirtd  >/dev/null 2>/dev/null
+        rm -f /etc/init/libvirtd.conf
+
+        /sbin/chkconfig libvirtd on
+        /sbin/service libvirtd start >/dev/null
+    fi
+fi
+%else
+if [ "$1" -eq 0 ]; then
+    /bin/systemctl --no-reload disable vdsmd.service > /dev/null 2>&1 || :
+    /bin/systemctl stop vdsmd.service > /dev/null 2>&1 || :
+fi
+exit 0
+%endif
+
+%postun
+%if 0%{?rhel}
+if [ "$1" -ge 1 ]; then
+    /sbin/service vdsmd condrestart > /dev/null 2>&1
+fi
+exit 0
+%else
+if [ "$1" -ge 1 ] ; then
+    /bin/systemctl try-restart vdsmd.service >/dev/null 2>&1 || :
+fi
+exit 0
+%endif
+
+%if 0%{?rhel}
+%triggerun -- libvirt
+if [ "$2" -eq "0" ]; then
+    /sbin/initctl stop libvirtd > /dev/null 2>&1 || :
+fi
+
+%triggerpostun -- libvirt
+if [ "$2" -ge "1" ]; then
+    /sbin/initctl restart libvirtd > /dev/null 2>&1 || :
+fi
+%endif
+
+%post reg
+%if 0%{?rhel}
+if [ "$1" -eq 1 ] ; then
+    /sbin/chkconfig --add vdsm-reg
+fi
+%else
+if [ "$1" -eq 1 ] ; then
+    /bin/systemctl enable vdsmd-reg.service >/dev/null 2>&1 || :
+    /bin/systemctl daemon-reload >/dev/null 2>&1 || :
+fi
+exit 0
+%endif
+
+%preun reg
+%if 0%{?rhel}
+if [ "$1" -eq 0 ]
+then
+    /sbin/service vdsm-reg stop > /dev/null 2>&1 || :
+    /sbin/chkconfig --del vdsm-reg
+fi
+%else
+if [ "$1" -eq 0 ]; then
+    /bin/systemctl --no-reload disable vdsmd-reg.service > /dev/null 2>&1 || :
+    /bin/systemctl stop vdsmd-reg.service > /dev/null 2>&1 || :
+fi
+exit 0
+%endif
+
+%files
+%defattr(-, root, root, -)
+%doc COPYING README vdsm/vdsm.conf.sample
+%if 0%{?rhel}
+%{_initrddir}/vdsmd
+%else
+/lib/systemd/systemd-vdsmd
+%{_unitdir}/vdsmd.service
+%config(noreplace) %{_sysconfdir}/%{vdsm_name}/vdsm.conf
+%endif
+%dir %{_libexecdir}/%{vdsm_name}
+%dir %{_datadir}/%{vdsm_name}
+%dir %{_datadir}/%{vdsm_name}/storage
+%{_datadir}/%{vdsm_name}/define.py*
+%{_datadir}/%{vdsm_name}/clientIF.py*
+%{_datadir}/%{vdsm_name}/caps.py*
+%{_datadir}/%{vdsm_name}/utils.py*
+%{_datadir}/%{vdsm_name}/constants.py*
+%{_datadir}/%{vdsm_name}/vm.py*
+%{_datadir}/%{vdsm_name}/vdscli.py*
+%{_datadir}/%{vdsm_name}/supervdsm.py*
+%{_datadir}/%{vdsm_name}/supervdsmServer.py*
+%{_datadir}/%{vdsm_name}/libvirtvm.py*
+%{_datadir}/%{vdsm_name}/libvirtconnection.py*
+%{_datadir}/%{vdsm_name}/hooks.py*
+%{_datadir}/%{vdsm_name}/hooking.py*
+%{_datadir}/%{vdsm_name}/libvirtev.py*
+%{_datadir}/%{vdsm_name}/vdsm
+%{_datadir}/%{vdsm_name}/vdsm-restore-net-config
+%{_datadir}/%{vdsm_name}/vdsm-store-net-config
+%{_datadir}/%{vdsm_name}/write-net-config
+%{_datadir}/%{vdsm_name}/mk_sysprep_floppy
+%{_datadir}/%{vdsm_name}/get-vm-pid
+%{_datadir}/%{vdsm_name}/prepare-vmchannel
+%config(noreplace) %{_sysconfdir}/%{vdsm_name}/logger.conf
+%config(noreplace) %{_sysconfdir}/logrotate.d/vdsm
+%config(noreplace) %{_sysconfdir}/rwtab.d/vdsm
+%{_sysconfdir}/sudoers.d/50_vdsm
+%{_sysconfdir}/cron.hourly/vdsm-logrotate
+%{_sysconfdir}/cron.d/vdsm-libvirt-logrotate
+%{_datadir}/%{vdsm_name}/guestIF.py*
+%{_datadir}/%{vdsm_name}/logUtils.py*
+%{_datadir}/%{vdsm_name}/dsaversion.py*
+%{_datadir}/%{vdsm_name}/pthread.py*
+%{_datadir}/%{vdsm_name}/betterThreading.py*
+%{_libexecdir}/%{vdsm_name}/persist-vdsm-hooks
+%{_libexecdir}/%{vdsm_name}/unpersist-vdsm-hook
+%{_datadir}/%{vdsm_name}/storage/__init__.py*
+%{_datadir}/%{vdsm_name}/storage/dispatcher.py*
+%{_datadir}/%{vdsm_name}/storage/storage_exception.py*
+%{_datadir}/%{vdsm_name}/storage/sp.py*
+%{_datadir}/%{vdsm_name}/storage/sd.py*
+%{_datadir}/%{vdsm_name}/storage/hsm.py*
+%{_datadir}/%{vdsm_name}/storage/hba.py*
+%{_datadir}/%{vdsm_name}/storage/safelease.py*
+%{_datadir}/%{vdsm_name}/storage/image.py*
+%{_datadir}/%{vdsm_name}/storage/fileSD.py*
+%{_datadir}/%{vdsm_name}/storage/nfsSD.py*
+%{_datadir}/%{vdsm_name}/storage/localFsSD.py*
+%{_datadir}/%{vdsm_name}/storage/blockSD.py*
+%{_datadir}/%{vdsm_name}/storage/volume.py*
+%{_datadir}/%{vdsm_name}/storage/fileVolume.py*
+%{_datadir}/%{vdsm_name}/storage/blockVolume.py*
+%{_datadir}/%{vdsm_name}/storage/taskManager.py*
+%{_datadir}/%{vdsm_name}/storage/threadPool.py*
+%{_datadir}/%{vdsm_name}/storage/task.py*
+%{_datadir}/%{vdsm_name}/storage/threadLocal.py*
+%{_datadir}/%{vdsm_name}/storage/resourceManager.py*
+%{_datadir}/%{vdsm_name}/storage/storage_connection.py*
+%{_datadir}/%{vdsm_name}/storage/storage_mailbox.py*
+%{_datadir}/%{vdsm_name}/storage/storageConstants.py*
+%{_datadir}/%{vdsm_name}/storage/fileUtils.py*
+%{_datadir}/%{vdsm_name}/storage/misc.py*
+%{_datadir}/%{vdsm_name}/storage/lvm.py*
+%{_datadir}/%{vdsm_name}/storage/resourceFactories.py*
+%{_datadir}/%{vdsm_name}/storage/outOfProcess.py*
+%{_datadir}/%{vdsm_name}/storage/processPool.py*
+%{_datadir}/%{vdsm_name}/storage/iscsi.py*
+%{_datadir}/%{vdsm_name}/storage/devicemapper.py*
+%{_datadir}/%{vdsm_name}/storage/securable.py*
+%{_datadir}/%{vdsm_name}/storage/multipath.py*
+%{_datadir}/%{vdsm_name}/storage/sdc.py*
+%{_datadir}/%{vdsm_name}/storage/persistentDict.py*
+%{_libexecdir}/%{vdsm_name}/safelease
+%{_libexecdir}/%{vdsm_name}/spmprotect.sh
+%{_libexecdir}/%{vdsm_name}/spmstop.sh
+%dir %{_libexecdir}/%{vdsm_name}/hooks/before_vm_start
+%dir %{_libexecdir}/%{vdsm_name}/hooks/after_vm_start
+%dir %{_libexecdir}/%{vdsm_name}/hooks/before_vm_cont
+%dir %{_libexecdir}/%{vdsm_name}/hooks/after_vm_cont
+%dir %{_libexecdir}/%{vdsm_name}/hooks/before_vm_pause
+%dir %{_libexecdir}/%{vdsm_name}/hooks/after_vm_pause
+%dir %{_libexecdir}/%{vdsm_name}/hooks/before_vm_hibernate
+%dir %{_libexecdir}/%{vdsm_name}/hooks/after_vm_hibernate
+%dir %{_libexecdir}/%{vdsm_name}/hooks/before_vm_dehibernate
+%dir %{_libexecdir}/%{vdsm_name}/hooks/after_vm_dehibernate
+%dir %{_libexecdir}/%{vdsm_name}/hooks/before_vm_migrate_source
+%dir %{_libexecdir}/%{vdsm_name}/hooks/after_vm_migrate_source
+%dir %{_libexecdir}/%{vdsm_name}/hooks/before_vm_migrate_destination
+%dir %{_libexecdir}/%{vdsm_name}/hooks/after_vm_migrate_destination
+%dir %{_libexecdir}/%{vdsm_name}/hooks/after_vm_destroy
+%dir %{_libexecdir}/%{vdsm_name}/hooks/before_vdsm_start
+%dir %{_libexecdir}/%{vdsm_name}/hooks/after_vdsm_stop
+%{_datadir}/%{vdsm_name}/configNetwork.py*
+%{_datadir}/%{vdsm_name}/addNetwork
+%{_datadir}/%{vdsm_name}/delNetwork
+%{_datadir}/%{vdsm_name}/respawn
+%{_datadir}/%{vdsm_name}/SecureXMLRPCServer.py*
+%{_datadir}/%{vdsm_name}/get-conf-item
+%{_datadir}/%{vdsm_name}/set-conf-item
+%{_datadir}/%{vdsm_name}/kaxmlrpclib.py*
+%{_datadir}/%{vdsm_name}/config.py*
+%{_datadir}/%{vdsm_name}/ksm.py*
+%{_datadir}/%{vdsm_name}/netinfo.py*
+%{_datadir}/%{vdsm_name}/neterrors.py*
+/lib/udev/rules.d/12-vdsm-lvm.rules
+%{python_sitelib}/sos/plugins/vdsm.py*
+%{_mandir}/man8/vdsmd.8*
+%if 0%{?rhel}
+%dir %{_localstatedir}/log/core
+%else
+%{_polkitdir}/10-vdsm-libvirt-access.pkla
+%endif
+
+%defattr(-, %{vdsm_user}, %{qemu_group}, -)
+%dir %{_localstatedir}/lib/libvirt/qemu/channels
+
+%defattr(-, %{vdsm_user}, %{vdsm_group}, -)
+%dir %{_sysconfdir}/pki/%{vdsm_name}
+%dir %{_sysconfdir}/pki/%{vdsm_name}/keys
+%dir %{_sysconfdir}/pki/%{vdsm_name}/certs
+%config(noreplace) %{_sysconfdir}/pki/%{vdsm_name}/keys/libvirt_password
+%dir %{_localstatedir}/lib/%{vdsm_name}
+%dir %{_localstatedir}/lib/%{vdsm_name}/netconfback
+%ghost %dir %{_localstatedir}/run/%{vdsm_name}
+%ghost %dir %{_localstatedir}/run/%{vdsm_name}/pools
+%dir %{_localstatedir}/log/%{vdsm_name}
+%dir %{_localstatedir}/log/%{vdsm_name}/backup
+
+%files hook-vhostmd
+%defattr(-, root, root, -)
+%doc COPYING
+%{_sysconfdir}/sudoers.d/50_vdsm_hook_vhostmd
+%{_libexecdir}/%{vdsm_name}/hooks/before_vm_start/50_vhostmd
+%{_libexecdir}/%{vdsm_name}/hooks/before_vm_migrate_destination/50_vhostmd
+%{_libexecdir}/%{vdsm_name}/hooks/before_vm_dehibernate/50_vhostmd
+%{_libexecdir}/%{vdsm_name}/hooks/after_vm_destroy/50_vhostmd
+
+%if 0%{?with_hooks}
+%files hook-directlun
+%defattr(-, vdsm, kvm, -)
+%attr (440,root,root) %{_sysconfdir}/sudoers.d/50_vdsm_hook_directlun
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_start/50_directlun
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/after_vm_destroy/50_directlun
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_migrate_destination/50_directlun
+
+%files hook-fileinject
+%defattr(-, vdsm, kvm, -)
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_start/50_fileinject
+
+%files hook-floppy
+%defattr(-, vdsm, kvm, -)
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_start/50_floppy
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_migrate_source/50_floppy
+
+%files hook-hostusb
+%defattr(-, vdsm, kvm, -)
+%attr (440,root,root) %{_sysconfdir}/sudoers.d/50_vdsm_hook_hostusb
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_start/50_hostusb
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_migrate_source/50_hostusb
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/after_vm_destroy/50_hostusb
+
+%files hook-hugepages
+%defattr(-, vdsm, kvm, -)
+%attr (440,root,root) %{_sysconfdir}/sudoers.d/50_vdsm_hook_hugepages
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_start/50_hugepages
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_migrate_destination/50_hugepages
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/after_vm_destroy/50_hugepages
+
+%files hook-isolatedprivatevlan
+%defattr(-, vdsm, kvm, -)
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_start/50_isolatedprivatevlan
+%config(noreplace) %{_sysconfdir}/libvirt/nwfilter/isolatedprivatevlan-vdsm.xml
+
+%files hook-numa
+%defattr(-, vdsm, kvm, -)
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_start/50_numa
+
+%files hook-pincpu
+%defattr(-, vdsm, kvm, -)
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_start/50_pincpu
+
+%files hook-promisc
+%defattr(-, vdsm, kvm, -)
+%attr (440,root,root) %{_sysconfdir}/sudoers.d/50_vdsm_hook_promisc
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/after_vm_start/50_promisc
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/after_vm_destroy/50_promisc
+
+%files hook-qos
+%defattr(-, vdsm, kvm, -)
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_start/50_qos
+
+%files hook-scratchpad
+%defattr(-, vdsm, kvm, -)
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_start/50_scratchpad
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_migrate_source/50_scratchpad
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/after_vm_destroy/50_scratchpad
+
+%files hook-smartcard
+%defattr(-, vdsm, kvm, -)
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_start/50_smartcard
+
+%files hook-smbios
+%defattr(-, vdsm, kvm, -)
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_start/50_smbios
+
+%files hook-sriov
+%defattr(-, vdsm, kvm, -)
+%attr (440,root,root) %{_sysconfdir}/sudoers.d/50_vdsm_hook_sriov
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_start/50_sriov
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/after_vm_destroy/50_sriov
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_migrate_source/50_sriov
+
+%files hook-vmdisk
+%defattr(-, vdsm, kvm, -)
+%attr (755,vdsm,kvm) %{_libexecdir}/%{vdsm_name}/hooks/before_vm_start/50_vmdisk
+%endif
+
+%files debug-plugin
+%defattr(-, root, root, -)
+%{_datadir}/%{vdsm_name}/vdsmDebugPlugin.py*
+
+%files cli
+%defattr(-, root, root, -)
+%doc COPYING
+%{_bindir}/vdsClient
+%{_datadir}/%{vdsm_name}/vdsClient.py*
+%{_sysconfdir}/bash_completion.d/vdsClient
+%{_datadir}/%{vdsm_name}/vdscli.py*
+%{_datadir}/%{vdsm_name}/dumpStorageTable.py*
+%{_datadir}/%{vdsm_name}/SecureXMLRPCServer.py*
+%{_mandir}/man1/vdsClient.1*
+
+%files bootstrap
+%defattr(-, root, root, -)
+%doc COPYING
+%{_datadir}/%{vdsm_bootstrap}/vds_bootstrap.py*
+%{_datadir}/%{vdsm_bootstrap}/deployUtil.py*
+%{_datadir}/%{vdsm_bootstrap}/vds_bootstrap_complete.py*
+
+%files reg
+%defattr(-, root, root, -)
+%doc COPYING
+%dir %{_sysconfdir}/%{vdsm_reg}
+%dir %{_datadir}/%{vdsm_reg}
+%config(noreplace) %{_sysconfdir}/logrotate.d/vdsm-reg
+%config(noreplace) %{_sysconfdir}/%{vdsm_reg}/vdsm-reg.conf
+%config(noreplace) %{_sysconfdir}/%{vdsm_reg}/logger.conf
+%if 0%{?rhel}
+%{_initrddir}/vdsm-reg
+%else
+/lib/systemd/systemd-vdsm-reg
+%{_unitdir}/vdsm-reg.service
+%endif
+%{_datadir}/%{vdsm_reg}/vdsm-reg-setup
+%{_datadir}/%{vdsm_reg}/define.py*
+%{_datadir}/%{vdsm_reg}/vdsm-complete
+%{_datadir}/%{vdsm_reg}/vdsm-gen-cert
+%{_datadir}/%{vdsm_reg}/vdsm-upgrade
+%{_datadir}/%{vdsm_reg}/config.py*
+%{_datadir}/%{vdsm_reg}/deployUtil.py*
+%{_datadir}/%{vdsm_reg}/createDaemon.py*
+%{python_sitelib}/ovirt_config_setup/rhevm.py*
+%{_datadir}/%{vdsm_reg}/save-config
+%{_sysconfdir}/ovirt-config-boot.d/vdsm-config
+%{_sysconfdir}/ovirt-commandline.d/vdsm-reg
+%{_sysconfdir}/cron.hourly/vdsm-reg-logrotate
+%{_mandir}/man8/vdsm-reg.8*
+
+%defattr(-, %{vdsm_user}, %{vdsm_group},-)
+%dir %{_var}/log/%{vdsm_reg}
+
+%files hook-faqemu
+%defattr(-, root, root, -)
+%doc COPYING
+%{_libexecdir}/%{vdsm_name}/vdsm-faqemu
+%{_libexecdir}/%{vdsm_name}/hooks/before_vm_start/10_faqemu
+
+%changelog
+* Fri Dec 02 2011 Federico Simoncelli <fsimonce at redhat.com> - 4.9.1-2.git931a43e.fc16
+- add the revision control comments to the specfile
+
+* Wed Nov 30 2011 Federico Simoncelli <fsimonce at redhat.com> - 4.9.1-1.git6ee166c.fc16
+- require iscsi-initiator-utils >= 6.2.0.872-14 bz442980
+- fix the rpmlint errors
+
+* Wed Oct 12 2011 Federico Simoncelli <fsimonce at redhat.com> - 4.9.0-0
+- Initial upstream release
+
+* Thu Nov 02 2006 Simon Grinberg <simong at qumranet.com> -  0.0-1
+- Initial build


More information about the scm-commits mailing list