%{!?python_sitelib: %define python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} %define _libdir /usr/lib Summary: Cluster-based virtualization management software Name: ganeti Version: 2.0.4 Release: 2%{?dist} License: GPLv2 Group: System Environment/Daemons URL: http://code.google.com/p/ganeti/ Source0: http://ganeti.googlecode.com/files/ganeti-%{version}.tar.gz Source1: ganeti.init Source2: ganeti.sysconfig Patch1: ganeti-2.0.4-bootloader.patch BuildArchitectures: noarch BuildRequires: python BuildRequires: pyOpenSSL BuildRequires: pyparsing BuildRequires: python-simplejson BuildRoot: %{_tmppath}/%{name}-root # for ganeti-2.1.x # BuildRequires: pyinotify Requires: python Requires: pyOpenSSL Requires: pyparsing Requires: python-simplejson # for ganeti-2.1.x # Requires: pyinotify %description Ganeti is a virtual server cluster management software tool built on top of the Xen virtual machine monitor and other Open Source software. After setting it up it will provide you with an automated environment to manage highly available virtual machine instances. It has been designed to facilitate cluster management of virtual servers and to provide fast and simple recovery after physical failures using commodity hardware. It will take care of operations such as redundant disk creation and management, operating system installation (in cooperation with OS-specific install scripts), startup, shutdown, failover of instances between physical systems. %prep %setup -q %patch1 -p1 %build %configure \ --prefix=%{_prefix} \ --sysconfdir=%{_sysconfdir} \ --libdir=%{_libdir} \ --with-ssh-initscript=%{_initrddir}/sshd \ --with-export-dir=%{_localstatedir}/lib/%{name}/export \ --with-os-search-path=/usr/share/%{name}/os,%{_libdir}/%{name}/os,/usr/local/lib/%{name}/os,/srv/%{name}/os \ --with-iallocator-search-path=%{_libdir}/%{name}/iallocators,/usr/local/lib/%{name}/iallocators \ --with-file-storage-dir=%{_localstatedir}/lib/%{name}/file-storage make echo "XEN_BOOTLOADER = ''" >> lib/_autoconf.py %install rm -rf ${RPM_BUILD_ROOT} make DESTDIR=${RPM_BUILD_ROOT} install mkdir -p $RPM_BUILD_ROOT/%{_initrddir} mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig install -m 755 -d ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name} install -m 755 %{SOURCE1} $RPM_BUILD_ROOT/%{_initrddir}/%{name} install -m 644 %{SOURCE2} $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/%{name} %clean rm -rf ${RPM_BUILD_ROOT} %post /sbin/chkconfig --add ganeti %preun if [ $1 = 0 ] ; then /sbin/chkconfig --del ganeti /sbin/service ganeti stop >/dev/null 2>&1 fi exit 0 %files %defattr(-,root,root) %attr(755,root,root) %config %{_initrddir}/%{name} %config(noreplace) %{_sysconfdir}/sysconfig/%{name} %{_docdir}/%{name} %{_sbindir}/* %{_libdir}/%{name} %{python_sitelib}/%{name} %{_mandir}/man*/* %dir /var/lib/%{name} %dir /var/log/%{name} %changelog * Tue Nov 5 2009 Jun Futagawa - change export-dir to /var/lib/ganeti/export - change file-storage-dir to /var/lib/ganeti/file-storage * Sat Oct 24 2009 Jun Futagawa - update to 2.0.4 * Tue Sep 29 2009 Jun Futagawa - first build