[ovirt-node/f18] * Thu Jul 25 2013 Mike Burns <mburns at redhat.com> 3.0.0-5.0 - rebase to 3.0.0 upstream
mburns72h
mburns72h at fedoraproject.org
Thu Jul 25 22:20:27 UTC 2013
commit a6df338e43d3b1a4ece12cb60e868c986766a429
Author: Mike Burns <mburns at redhat.com>
Date: Thu Jul 25 18:17:00 2013 -0400
* Thu Jul 25 2013 Mike Burns <mburns at redhat.com> 3.0.0-5.0
- rebase to 3.0.0 upstream
.gitignore | 11 +--
ovirt-node.spec | 306 +++++++++++++++++++++++++++++++++++++++++++++++++------
sources | 2 +-
3 files changed, 277 insertions(+), 42 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index f97acb3..a2b0063 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,10 +1 @@
-/ovirt-node-2.0.0.tar.gz
-/ovirt-node-2.0.1.tar.gz
-/ovirt-node-2.1.tar.gz
-/ovirt-node-2.2.0.tar.gz
-/ovirt-node-2.2.1.tar.gz
-/ovirt-node-2.2.3.tar.gz
-/ovirt-node-2.3.0.tar.gz
-/ovirt-node-2.5.1.tar.gz
-/ovirt-node-2.6.0.tar.gz
-/ovirt-node-2.6.1.tar.gz
+/ovirt-node*tar.gz
diff --git a/ovirt-node.spec b/ovirt-node.spec
index c0384c6..eb7ec14 100644
--- a/ovirt-node.spec
+++ b/ovirt-node.spec
@@ -3,17 +3,19 @@
%global mgmt_scripts_dir %{_sysconfdir}/node.d
%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
%define is_f16 %(test "0%{?fedora}" == "016" && echo 1 || echo 0)
+%define is_min_f19 %(test "0%{?fedora}" -ge "019" && echo 1 || echo 0)
%define is_fedora_systemd %(test 0%{?fedora} -ne 0 && test %{?fedora} -ge 16 && echo 1 || echo 0)
%define is_rhel_systemd %(test 0%{?rhel} -ne 0 && test %{?rhel} -ge 7 && echo 1 || echo 0)
%define is_centos_systemd %(test 0%{?centos} -ne 0 && test %{?centos} -ge 7 && echo 1 || echo 0)
%define is_systemd %( test %{is_rhel_systemd} -eq 1 || test %{is_centos_systemd} = 1 || test %{is_fedora_systemd} = 1 && echo 1 || echo 0)
%define dracutdir %(test -e /usr/share/dracut && echo "/usr/share/dracut/modules.d" || echo "/usr/lib/dracut/modules.d")
+%define is_el6 %(test 0%{?centos} -eq 06 || test 0%{?rhel} -eq 06 && echo 1 || echo 0)
Summary: The %{product_family} daemons/scripts
Name: ovirt-node
-Version: 2.6.1
-Release: 1%{?extra_release}%{?dist}
+Version: 3.0.0
+Release: 5.0%{?BUILD_NUMBER}%{?extra_release}%{?dist}
Source0: %{name}-%{version}.tar.gz
License: GPLv2+
Group: Applications/System
@@ -25,6 +27,7 @@ BuildRequires: automake autoconf
%if %{is_systemd}
BuildRequires: systemd-units
%endif
+BuildRequires: python-lockfile
Requires(post): /sbin/chkconfig
Requires(preun): /sbin/chkconfig
@@ -38,7 +41,7 @@ Requires: python-IPy
Requires: grub2
Requires: system-release
%endif
-Requires: libvirt >= 0.9.2
+Requires: libvirt >= 0.9.2, libvirt-python
Requires: augeas >= 0.3.5
Requires: udev >= 147-2.34
Requires: wget
@@ -56,19 +59,23 @@ Requires: newt-python
Requires: libuser-python >= 0.56.9
Requires: dbus-python
Requires: python-gudev
+Requires: python-urwid
+Requires: python-lockfile
Requires: PyPAM
Requires: ethtool
Requires: cracklib-python
Requires: dracut
Requires: /bin/hostname
+Requires: tuned
+%if %{is_min_f19}
+Requires: NetworkManager
+%endif
%if ! %{is_systemd}
Requires: grub
# for applying patches in %post
Requires(post): patch
%endif
-%if 0%{?rhel} && ! 0%{?centos}
Requires: system-release
-%endif
BuildArch: noarch
@@ -78,11 +85,16 @@ BuildArch: noarch
%description
Provides a series of daemons and support utilities for hypervisor distribution.
+
%package recipe
-Summary: Recipes for building and running %{product_family} image
+Summary: Recipes for building and running %{product_family} images
Group: Applications/System
Requires: pykickstart >= 1.54
+%if 0%{?centos}
+Requires: livecd-tools >= 13.4.4
+%else
Requires: livecd-tools >= 1:16.0
+%endif
Obsoletes: ovirt-node-tools <= 2.3.0-999
%define recipe_root %{_datadir}/ovirt-node-recipe
@@ -93,11 +105,17 @@ documentation for building and running an %{product_family} image.
This package is not to be installed on the %{product_family},
however on a development machine to help to build the image.
+
%package tools
-Summary: Recipes for building and running %{product_family} image
+Summary: Tools for working with plugins on %{product_family} images
Group: Applications/System
+%if 0%{?centos}
+Requires: livecd-tools >= 13.4.4
+%else
Requires: livecd-tools >= 1:16.0
+%endif
Requires: appliance-tools-minimizer
+Requires: libselinux-python
%define tools_root %{_datadir}/ovirt-node-tools
@@ -107,6 +125,32 @@ This package provides plugin tools for modifying and working with the
This package is not to be installed on the %{product_family},
however on a development machine to work with the image.
+%package plugin-puppet
+Summary: Puppet plugin for %{product_family} image
+Group: Applications/System
+Requires: puppet
+
+%description plugin-puppet
+This package provides a puppet plugin for use with %{product_family} image.
+
+%post plugin-puppet
+patch -d /usr/share/ruby/vendor_ruby/facter -p0 < \
+ %{app_root}/puppet-plugin/puppet-operatingsystem.rb.patch
+
+cd /etc/puppet
+patch -p0 << EOF
+--- puppet.conf 2013-03-21 14:55:43.969130799 -0700
++++ puppet.conf.new 2013-03-21 14:56:02.690178578 -0700
+@@ -1,4 +1,6 @@
+ [main]
++ server = ""
++ certname = ""
+ # The Puppet log directory.
+ # The default value is '$vardir/log'.
+ logdir = /var/log/puppet
+EOF
+
+
%package plugin-snmp
Summary: SNMP plugin for %{product_family} image
Group: Applications/System
@@ -119,7 +163,11 @@ Requires: perl-libs
This package provides an snmp plugin tools for use with%{product_family} image.
%post plugin-snmp
+%if %{is_systemd}
systemctl enable snmpd.service
+%else
+chkconfig snmpd on
+%endif
cat > /etc/snmp/snmpd.conf << \EOF_snmpd
master agentx
@@ -127,6 +175,7 @@ dontLogTCPWrappersConnects yes
rwuser root auth .1
EOF_snmpd
+
%package plugin-cim
Summary: CIM plugin for %{product_family} image
Group: Applications/System
@@ -141,16 +190,112 @@ groupadd cim
useradd -g cim -G sfcb -s /sbin/nologin cim
%if ! %{is_systemd}
/sbin/chkconfig --add ovirt-cim
+/sbin/chkconfig ovirt-cim on
%else
if [ $1 -eq 1 ] ; then
# Initial installation
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
+ /bin/systemctl enable ovirt-cim >/dev/null 2>&1 || :
fi
%endif
#CIM related changes
# set read-only
echo "readonly = true;" > /etc/libvirt-cim.conf
+#cleanup tmp directory from cim setup
+rm -rf /tmp/cim_schema*
+
+
+#
+# SELinux subpackage
+#
+%global selinux_variants targeted
+%global selinux_policyver %(%{__sed} -e 's,.*selinux-policy-\\([^/]*\\)/.*,\\1,' /usr/share/selinux/devel/policyhelp || echo 0.0.0)
+%global modulename ovirt
+
+%package selinux
+Summary: SELinux policy module supporting %{product_family}
+Group: System Environment/Base
+BuildRequires: policycoreutils, checkpolicy, selinux-policy-devel
+BuildRequires: /usr/share/selinux/devel/policyhelp, hardlink
+%if "%{selinux_policyver}" != ""
+Requires: selinux-policy >= %{selinux_policyver}
+%endif
+Requires: %{name} = %{version}-%{release}
+Requires: selinux-policy-base
+Requires(post): /usr/sbin/semodule, /sbin/restorecon
+Requires(postun): /usr/sbin/semodule, /sbin/restorecon
+
+%description selinux
+SELinux policy module supporting %{product_family}
+
+%post selinux
+for selinuxvariant in %{selinux_variants}
+do
+ /usr/sbin/semodule -s ${selinuxvariant} -i \
+ %{_datadir}/selinux/${selinuxvariant}/%{modulename}.pp &> /dev/null || :
+done
+# Is this to greedy?
+/sbin/restorecon -R / || :
+
+# set SELinux booleans
+# rhbz#502779 restrict certain memory protection operations
+# keep allow_execmem on for grub
+# rhbz#642209 allow virt images on NFS
+/usr/sbin/setsebool -P allow_execstack=0 \
+ virt_use_nfs=1 \
+ virt_use_sanlock=1 \
+ sanlock_use_nfs=1
+
+
+%postun selinux
+if [ $1 -eq 0 ] ; then
+ for selinuxvariant in %{selinux_variants}
+ do
+ /usr/sbin/semodule -s ${selinuxvariant} -r %{modulename} &> /dev/null || :
+ done
+ # Is this to greedy?
+ /sbin/restorecon -R / &> /dev/null || :
+fi
+
+# FIXME what about semanage?
+
+
+#
+# Igor service subpackage
+#
+%package plugin-igor-slave
+Summary: Igor slave plugin for %{product_family}
+Group: Applications/System
+
+%if %{is_systemd}
+BuildRequires: systemd-units
+Requires: systemd
+%else
+BuildRequires: initscripts
+Requires(post): chkconfig
+%endif
+
+# We need python-uinput for TUI tests
+Requires: python-uinput
+
+
+%description plugin-igor-slave
+This package provides an igor service for %{product_family}. This service
+is responsible for running testcase offered by an igor server.
+
+
+%post plugin-igor-slave
+%if %{is_systemd}
+if [ $1 -eq 1 ] ; then
+ # Initial installation
+ /bin/systemctl daemon-reload >/dev/null 2>&1 || :
+ /bin/systemctl enable ovirt-node-igor-slave.service >/dev/null 2>&1 || :
+fi
+%else
+/sbin/chkconfig --add ovirt-node-igor-slave >/dev/null 2>&1 || :
+%endif
+
%prep
%setup -q
@@ -163,10 +308,24 @@ aclocal && autoheader && automake --add-missing && autoconf
%configure --with-image-minimizer
make
+# Build SELinux policy module
+cd semodule
+for selinuxvariant in %{selinux_variants}
+do
+ %{__make} NAME=${selinuxvariant} \
+ -f %{?policy_devel_root}%{_datadir}/selinux/devel/Makefile
+ mv -v %{modulename}.pp %{modulename}.pp.${selinuxvariant}
+done
+cd -
+
%install
%{__rm} -rf %{buildroot}
make install DESTDIR=%{buildroot}
+%{__install} -d -m0755 %{buildroot}%{_libexecdir}/ovirt-node/hooks
+%{__install} -d -m0755 %{buildroot}%{_libexecdir}/ovirt-node/hooks/pre-upgrade
+%{__install} -d -m0755 %{buildroot}%{_libexecdir}/ovirt-node/hooks/post-upgrade
+%{__install} -d -m0755 %{buildroot}%{_libexecdir}/ovirt-node/hooks/rollback
%if %{is_f16}
# install libvirtd systemd service
@@ -188,13 +347,19 @@ make install DESTDIR=%{buildroot}
# specific version of python-augeas is not available in Fedora yet
%{__install} -p -m0644 scripts/augeas.py %{buildroot}%{python_sitelib}
-# Build and install the new TUI
-pushd .
-cd scripts/tui/
-make -f makefile.legacy install python=%{__python} prefix=%{_prefix} root=%{buildroot}
-# Remove some extra data
-rm -rf %{buildroot}/usr/extra
-popd .
+# Install SELinux policy module
+cd semodule
+%{__install} -d %{buildroot}%{_datadir}/selinux
+for selinuxvariant in %{selinux_variants}
+do
+ %{__install} -d %{buildroot}%{_datadir}/selinux/${selinuxvariant}
+ %{__install} -p -m 644 %{modulename}.pp.${selinuxvariant} \
+ %{buildroot}%{_datadir}/selinux/${selinuxvariant}/%{modulename}.pp
+done
+cd -
+
+/usr/sbin/hardlink -cv %{buildroot}%{_datadir}/selinux
+
%clean
%{__rm} -rf %{buildroot}
@@ -208,6 +373,7 @@ popd .
/sbin/chkconfig --add ovirt-firstboot
/sbin/chkconfig --add ovirt
/sbin/chkconfig --add ovirt-post
+/sbin/chkconfig --add ovirt-kdump
%else
if [ $1 -eq 1 ] ; then
# Initial installation
@@ -226,12 +392,19 @@ patch -d /usr/share/dracut/ -p0 < %{app_root}/dracut-3d88d27810acc7782618d67a03f
patch -d /usr/share/dracut/ -p0 < %{app_root}/dracut-93724aa28fc20c8b7f0167201d1759b7118ba890.patch
%endif
#use all hard-coded defaults for multipath
-# except for getuid_callout where we need replace-whitespace
+# except for getuid_callout where we need to replace-whitespace on EL6
+%if %{is_el6}
cat > /etc/multipath.conf << \EOF_multipath_conf
defaults {
getuid_callout "/lib/udev/scsi_id --replace-whitespace --whitelisted --device=/dev/%n"
}
EOF_multipath_conf
+%else
+cat > /etc/multipath.conf << \EOF_multipath_conf2
+#Use Defaults
+EOF_multipath_conf2
+%endif
+
#release info for dracut to pick it up into initramfs
# remove symlink to keep original redhat-release
rm -f /etc/system-release
@@ -266,6 +439,7 @@ if [ $1 -eq 0 ] ; then
fi
%endif
+
%preun plugin-cim
%if ! %{is_systemd}
if [ $1 = 0 ] ; then
@@ -280,6 +454,25 @@ if [ $1 -eq 0 ] ; then
fi
%endif
+
+%preun plugin-igor-slave
+%if ! %{is_systemd}
+if [ $1 = 0 ] ; then
+ /sbin/service ovirt-node-igor-slave stop >/dev/null 2>&1
+ /sbin/chkconfig --del ovirt-node-igor-slave
+fi
+%else
+if [ $1 -eq 0 ] ; then
+ # Package removal, not upgrade
+ /bin/systemctl --no-reload disable ovirt-node-igor-slave.service > /dev/null 2>&1 || :
+ /bin/systemctl stop ovirt-node-igor-slave.service > /dev/null
+fi
+%endif
+
+
+#
+# FILES
+#
%files recipe
%defattr(0644,root,root,0755)
%doc README COPYING
@@ -291,15 +484,32 @@ fi
%files tools
%{_sbindir}/edit-node
+%{_sbindir}/testable-node
%{_mandir}/man8/edit-node.8.gz
+%files plugin-puppet
+%{python_sitelib}/ovirt/node/setup/puppet/__init__.py*
+%{python_sitelib}/ovirt/node/setup/puppet/puppet_page.py*
+%{_localstatedir}/lib/puppet/facts/ovirt.rb
+%{_sysconfdir}/ovirt-plugins.d/puppet.minimize
+%{_sysconfdir}/ovirt-commandline.d/puppet-args
+%{app_root}/puppet-plugin/puppet-operatingsystem.rb.patch
+%{_sysconfdir}/ovirt-config-boot.d/puppet_autoinstall.py
+
%files plugin-snmp
%{python_sitelib}/ovirt_config_setup/snmp.py
+%{python_sitelib}/ovirt/node/setup/snmp/__init__.py
+%{python_sitelib}/ovirt/node/setup/snmp/snmp_model.py
+%{python_sitelib}/ovirt/node/setup/snmp/snmp_page.py
%{_sysconfdir}/ovirt-plugins.d/snmp.minimize
%{_sysconfdir}/ovirt-config-boot.d/snmp_autoinstall.py
+
%files plugin-cim
%{python_sitelib}/ovirt_config_setup/cim.py
+%{python_sitelib}/ovirt/node/setup/cim/__init__.py
+%{python_sitelib}/ovirt/node/setup/cim/cim_model.py
+%{python_sitelib}/ovirt/node/setup/cim/cim_page.py
%{_sysconfdir}/ovirt-plugins.d/cim.minimize
%if %{is_systemd}
%{_unitdir}/ovirt-cim.service
@@ -307,6 +517,22 @@ fi
%{_initrddir}/ovirt-cim
%endif
+
+%files plugin-igor-slave
+%{_libexecdir}/ovirt-node-igor-slave
+%if %{is_systemd}
+%{_unitdir}/ovirt-node-igor-slave.service
+%else
+%{_initrddir}/ovirt-node-igor-slave
+%endif
+
+
+%files selinux
+%defattr(-,root,root,0755)
+%doc semodule/*.fc semodule/*.te
+%{_datadir}/selinux/*/%{modulename}.pp
+
+
%files
%defattr(-,root,root)
%config(noreplace) %attr(0644,root,root) %{_sysconfdir}/default/ovirt
@@ -317,7 +543,7 @@ fi
%{mgmt_scripts_dir}
%{_sysconfdir}/ovirt-config-boot.d
%exclude %{_sysconfdir}/ovirt-config-boot.d/snmp_autoinstall.py*
-%config(noreplace) %{_sysconfdir}/sysconfig/node-config
+%exclude %{_sysconfdir}/ovirt-config-boot.d/puppet_autoinstall.py*
%if %{is_f16}
%{_unitdir}/libvirtd.service
@@ -325,9 +551,11 @@ fi
%if ! %{is_systemd}
%{_sysconfdir}/init/libvirtd.conf
%endif
-
+%{_sysconfdir}/ovirt-node/logging.conf
+%{_sysconfdir}/ovirt-node/logging.debug.conf
%{_sysconfdir}/sysconfig/modules/vlan.modules
%{_sysconfdir}/modprobe.d/ovirt-qla4xxx.conf
+%{_libexecdir}/ovirt-node/hooks
%doc COPYING
@@ -340,22 +568,23 @@ fi
%{app_root}/dracut-93724aa28fc20c8b7f0167201d1759b7118ba890.patch
%endif
-
%{dracutdir}/91ovirtnode/module-setup.sh
%{dracutdir}/91ovirtnode/ovirt-boot-functions
%{dracutdir}/91ovirtnode/ovirt-cleanup.sh
+%if 0%{?rhel}
+%{dracutdir}/91ovirtnode/check
+%{dracutdir}/91ovirtnode/install
+%endif
%{_sysconfdir}/dracut.conf.d/ovirt-dracut.conf
%{_libexecdir}/ovirt-auto-install
%{_libexecdir}/ovirt-config-password
%{_libexecdir}/ovirt-config-uninstall
%{_libexecdir}/ovirt-functions
-%{_libexecdir}/ovirt-rpmquery
-%{_libexecdir}/ovirt-config-installer
-%{_libexecdir}/ovirt-config-setup
%{_libexecdir}/ovirt-admin-shell
%{_libexecdir}/ovirt-init-functions.sh
%{_sbindir}/persist
%{_sbindir}/unpersist
+%{_sbindir}/ovirt-node-upgrade
%{python_sitelib}/ovirt_config_setup
%exclude %{python_sitelib}/ovirt_config_setup/cim.py*
%exclude %{python_sitelib}/ovirt_config_setup/snmp.py*
@@ -369,26 +598,41 @@ fi
%{_unitdir}/ovirt-firstboot.service
%{_unitdir}/ovirt-post.service
%{_unitdir}/ovirt-early.service
+%{_unitdir}/ovirt-kdump.service
%else
%{_initrddir}/ovirt-awake
%{_initrddir}/ovirt-early
%{_initrddir}/ovirt-firstboot
%{_initrddir}/ovirt
%{_initrddir}/ovirt-post
+%{_initrddir}/ovirt-kdump
%endif
# Files related to the new TUI
-%{python_sitelib}/ovirt_node_molch*.egg-info
-%{python_sitelib}/ovirt/__init__.*
-%{python_sitelib}/ovirt/node/*
-%{_bindir}/ovirt-config-setup
+%{python_sitelib}/ovirt/__init__.py*
+%{python_sitelib}/ovirt/node/*.py*
+%{python_sitelib}/ovirt/node/ui/*.py*
+%{python_sitelib}/ovirt/node/utils/*.py*
+%{python_sitelib}/ovirt/node/tools/*.py*
+%{python_sitelib}/ovirt/node/config/*.py*
+%{python_sitelib}/ovirt/node/setup/*.py*
+%{python_sitelib}/ovirt/node/setup/core/*.py*
+%{python_sitelib}/ovirt/node/installer/*.py*
+%{python_sitelib}/ovirt/node/installer/core/*.py*
+%exclude %{python_sitelib}/ovirt/node/setup/snmp/*.py*
+%exclude %{python_sitelib}/ovirt/node/setup/cim/*.py*
+%{_bindir}/ovirt-node-setup
+%{_bindir}/ovirt-node-installer
%{_bindir}/ovirt-node-doc
+
%changelog
-* Tue Feb 28 2013 Fabian Deutsch <fabiand at fedoraproject.org> - 2.6.1-1
+* Thu Jul 25 2013 Mike Burns <mburns at redhat.com> 3.0.0-5.0
+- rebase to 3.0.0 upstream
+
+* Thu Feb 28 2013 Fabian Deutsch <fabiand at fedoraproject.org> - 2.6.1-1
- Update to upstream 2.6.1 release
- Drop anyterm, krb5-workstation dependencies
--
* Tue Feb 12 2013 Mike Burns <mburns at redhat.com> 2.6.0-1
- Update to upstream 2.6.0 release
@@ -399,7 +643,7 @@ fi
* Fri Jul 20 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 2.3.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
-* Sat Mar 26 2012 Mike Burns <mburns at redhat.com> 2.3.0-1
+* Mon Mar 26 2012 Mike Burns <mburns at redhat.com> 2.3.0-1
- Rebase to ovirt-node 2.3.0 upstream
* Wed Feb 22 2012 Mike Burns <mburns at redhat.com> 2.2.3-2
@@ -449,7 +693,7 @@ fi
- new installation and configuration text UI for standalone mode
- drop gptsync, make it noarch
-* Tue Apr 04 2010 Darryl L. Pierce <dpierce at redhat.com> - 1.9.2-1
+* Tue May 04 2010 Darryl L. Pierce <dpierce at redhat.com> - 1.9.2-1
- Updated autoconf environment.
- Allow persistence of empty configuration files.
@@ -469,13 +713,13 @@ fi
- Fixes to the persist and unpersist commands to handle already persisted files and directories.
- Duplicate NTP/DNS entries are rejected during network setup.
-* Wed Feb 12 2010 David Huff <dhuff at redhat.com> - 1.9.0
+* Wed Feb 10 2010 David Huff <dhuff at redhat.com> - 1.9.0
- New build
* Wed Oct 07 2009 David Huff <dhuff at redhat.com> - 1.0.3-4
- Added ovirt-node-tools subpackage
-* Thu Jun 23 2009 David Huff <dhuff at redhat.com> - 1.0.3
+* Tue Jun 23 2009 David Huff <dhuff at redhat.com> - 1.0.3
- Clean up spec for inclusion in Fedora
- Removed subpackages, stateful, stateless, logos, and selinux
diff --git a/sources b/sources
index 78ea7a7..cbe8d8a 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-13f5aa394d70bae69a655539f6dc7359 ovirt-node-2.6.1.tar.gz
+64339535aff87df0980589867a5b1814 ovirt-node-3.0.0.tar.gz
More information about the scm-commits
mailing list