Blob Blame History Raw
%define _initddir       %{_sysconfdir}/init.d
%define _vzdir          %{_sharedstatedir}/vz
%define _lockdir        %{_vzdir}/lock
%define _dumpdir        %{_vzdir}/dump
%define _privdir        %{_vzdir}/private
%define _rootdir        %{_vzdir}/root
%define _templatedir    %{_vzdir}/template
%define _cachedir       %{_templatedir}/cache
%define _vzctlvardir    %{_sharedstatedir}/vzctl
%define _veipdir        %{_vzctlvardir}/veip
%define _vepiddir       %{_vzctlvardir}/vepid
%define _pkglibdir      %{_libexecdir}/vzctl
%define _scriptdir      %{_pkglibdir}/scripts
%define _configdir      %{_sysconfdir}/vz
%define _vpsconfdir     %{_sysconfdir}/sysconfig/vz-scripts
%define _netdir         %{_sysconfdir}/sysconfig/network-scripts
%define _logrdir        %{_sysconfdir}/logrotate.d
%define _distconfdir    %{_configdir}/dists
%define _namesdir       %{_configdir}/names
%define _distscriptdir  %{_distconfdir}/scripts
%define _udevrulesdir   %{_sysconfdir}/udev/rules.d
%define _bashcdir       %{_sysconfdir}/bash_completion.d

Summary: OpenVZ containers control utility
Name: vzctl
Version: 4.8
%define rel 1
Release: %{rel}%{?dist}.4
License: GPLv2+
Group: System Environment/Kernel
Source: http://download.openvz.org/utils/%{name}/%{version}/src/%{name}-%{version}.tar.bz2
Patch0: 0001-Set-default-values-of-LOCAL_-ID-to-zero-until-userns.patch
URL: http://openvz.org/

# OpenVZ can run on its own kernel, and if that it is the case, some more
# utilities are needed. They call the core package, that we are installing here,
# "vzctl-core". So we are following their name convention
%package core
Summary: OpenVZ containers control utility core
Group: System Environment/Kernel
Requires: fileutils
Requires: tar
%ifarch x86_64
Requires: crtools
%endif
# these reqs are for vz helper scripts
Requires: gawk
Requires: sed
Requires: grep
# requires for bash_completion and vztmpl-dl
Requires: wget
Requires: bridge-utils
Requires: gnupg

BuildRequires: libcgroup-devel >= 0.38

%description core
OpenVZ containers control utility core package


%description
This utility allows system administrators to control OpenVZ containers:
i.e. create, start, shutdown, set various options and limits etc.

%prep
%setup -q
%patch0 -p1

%build
CFLAGS="%{optflags}" %configure \
	vzdir=%{_vzdir} \
	--enable-bashcomp \
	--enable-logrotate \
	--without-ploop \
	--disable-static
make %{?_smp_mflags}

%install
make DESTDIR=%{buildroot} vpsconfdir=%{_vpsconfdir} \
	install install-redhat-from-spec
ln -s ../sysconfig/vz-scripts %{buildroot}%{_configdir}/conf
ln -s ../vz/vz.conf %{buildroot}%{_sysconfdir}/sysconfig/vz

rm -f %{buildroot}%{_libdir}/libvzctl.la
rm -f %{buildroot}%{_libdir}/libvzctl.so
rm -f %{buildroot}%{_libdir}/libvzchown.la
rm -f %{buildroot}%{_libdir}/libvzchown.so.*
# Those are binaries that either are not ported to vzctl with Upstream Linux,
# or are not applicable to that case. "make install" will copy them over, so we
# just ignore them.
rm -f %{buildroot}%{_sbindir}/vzsplit
rm -f %{buildroot}%{_sbindir}/vzlist
rm -f %{buildroot}%{_sbindir}/vzmemcheck
rm -f %{buildroot}%{_sbindir}/vzcpucheck
rm -f %{buildroot}%{_sbindir}/vznetcfg
rm -f %{buildroot}%{_sbindir}/vznetaddbr
rm -f %{buildroot}%{_sbindir}/vzcalc
rm -f %{buildroot}%{_sbindir}/vzcptcheck
rm -f %{buildroot}%{_sbindir}/vzpid
rm -f %{buildroot}%{_sbindir}/vzcfgvalidate
rm -f %{buildroot}%{_sbindir}/vzifup-post
rm -f %{buildroot}%{_sbindir}/vzeventd
rm -f %{buildroot}%{_sbindir}/vzmigrate
rm -f %{buildroot}%{_sbindir}/vzubc
rm -f %{buildroot}%{_sbindir}/vzoversell
rm -f %{buildroot}%{_sbindir}/vzfsync
rm -f %{buildroot}%{_sbindir}/vznnc

rm -f %{buildroot}%{_netdir}/ifup-venet
rm -f %{buildroot}%{_netdir}/ifdown-venet
rm -f %{buildroot}%{_netdir}/ifcfg-venet0

rm -f %{buildroot}%{_initddir}/vz
rm -f %{buildroot}%{_initddir}/vzeventd

rm -f %{buildroot}%{_udevrulesdir}/*

rm -f %{buildroot}%{_scriptdir}/vzevent-reboot
rm -f %{buildroot}%{_scriptdir}/vzevent-stop
rm -f %{buildroot}%{_scriptdir}/initd-functions

rm -f %{buildroot}%{_mandir}/man8/vzeventd.8
rm -f %{buildroot}%{_mandir}/man8/vzubc.8
rm -f %{buildroot}%{_mandir}/man8/vzcalc.8
rm -f %{buildroot}%{_mandir}/man8/vzcptcheck.8
rm -f %{buildroot}%{_mandir}/man8/vzcfgvalidate.8
rm -f %{buildroot}%{_mandir}/man8/vzcpucheck.8
rm -f %{buildroot}%{_mandir}/man8/vzifup-post.8
rm -f %{buildroot}%{_mandir}/man8/vzlist.8
rm -f %{buildroot}%{_mandir}/man8/vzmemcheck.8
rm -f %{buildroot}%{_mandir}/man8/vzmigrate.8
rm -f %{buildroot}%{_mandir}/man8/vzpid.8
rm -f %{buildroot}%{_mandir}/man8/vzsplit.8
rm -f %{buildroot}%{_mandir}/man8/vzfsync.8
rm -f %{buildroot}%{_mandir}/man8/vznnc.8

%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

%files core
%doc COPYING
%dir %{_scriptdir}
%dir %{_pkglibdir}
%dir %{_lockdir}
%dir %{_dumpdir}
%dir %attr(700,root,root) %{_privdir}
%dir %attr(700,root,root) %{_rootdir}
%dir %{_templatedir}
%dir %{_cachedir}
%dir %{_vzctlvardir}
%dir %{_veipdir}
%dir %{_vepiddir}
%dir %{_configdir}
%dir %{_namesdir}
%dir %{_vpsconfdir}
%dir %{_distconfdir}
%dir %{_distscriptdir}
%dir %{_vzdir}

%{_bashcdir}/*

%{_libdir}/libvzctl-*.so
%{_libdir}/libvzchown*.so
%{_sbindir}/vzctl
%{_sbindir}/vztmpl-dl
%{_sbindir}/arpsend
%{_sbindir}/ndsend

%{_distscriptdir}/*.sh
%{_distscriptdir}/functions

%{_mandir}/man8/vzctl.8.*
%{_mandir}/man8/vztmpl-dl.8.*
%{_mandir}/man8/arpsend.8.*
%{_mandir}/man8/ndsend.8.*
%{_mandir}/man5/ctid.conf.5.*
%{_mandir}/man5/vz.conf.5.*

%{_scriptdir}/vps-functions
%{_scriptdir}/vps-net_add
%{_scriptdir}/vps-net_del
%{_scriptdir}/vps-netns_dev_add
%{_scriptdir}/vps-netns_dev_del
%{_scriptdir}/vps-create
%{_scriptdir}/vz-postinstall
%{_scriptdir}/vps-pci
%{_scriptdir}/vps-cpt
%{_scriptdir}/vps-rst
%{_scriptdir}/vps-rst-env

%{_configdir}/conf
%config %{_sysconfdir}/sysconfig/vz
%config(noreplace) %{_configdir}/vz.conf
%config(noreplace) %{_configdir}/osrelease.conf
%config(noreplace) %{_configdir}/download.conf
%config(noreplace) %{_configdir}/oom-groups.conf
%config(noreplace) %{_distconfdir}/*.conf
%config(noreplace) %{_vpsconfdir}/0.conf
%config(noreplace) %{_logrdir}/vzctl
%config %{_distconfdir}/default
%config %{_distconfdir}/distribution.conf-template
%config %{_vpsconfdir}/ve-basic.conf-sample
%config %{_vpsconfdir}/ve-light.conf-sample
%config %{_vpsconfdir}/ve-vswap-256m.conf-sample
%config %{_vpsconfdir}/ve-vswap-512m.conf-sample
%config %{_vpsconfdir}/ve-vswap-1024m.conf-sample
%config %{_vpsconfdir}/ve-vswap-1g.conf-sample
%config %{_vpsconfdir}/ve-vswap-2g.conf-sample
%config %{_vpsconfdir}/ve-vswap-4g.conf-sample

%changelog
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.8-1.4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild

* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 4.8-1.3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.8-1.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild

* Wed Oct 8 2014 Andrew Vagin <avagin@openvz.org> - 4.8-1
- Update to 4.8 ( changelog: http://openvz.org/Download/vzctl/4.8/changes )

* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.7.2-2.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild

* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.7.2-1.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild

* Tue May 13 2014 Andrew Vagin <avagin@openvz.org> - 4.7.2-1
- Update to 4.7.2 ( changelog: http://openvz.org/Download/vzctl/4.7.2/changes )

* Thu Nov 28 2013 Andrew Vagin <avagin@openvz.org> - 4.6.1-1
- Update to 4.6.1 ( changelog: http://openvz.org/Download/vzctl/4.6.1/changes )

* Thu Nov 7 2013 Andrew Vagin <avagin@openvz.org> - 4.6-1
- Update to 4.6 ( changelog: http://openvz.org/Download/vzctl/4.6/changes )

* Tue Sep 10 2013 Andrew Vagin <avagin@openvz.org> - 4.5.1-1
- Update to 4.5.1 ( changelog: http://openvz.org/Download/vzctl/4.5/changes )

* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.4-2.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild

* Tue Jul 23 2013 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 4.4-2
- crtools requirements only for x86_64 arch (wiki page with known issues updated)

* Fri Jul 19 2013 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 4.4-1
- Update to 4.4 ( changelog: http://openvz.org/Download/vzctl/4.4/changes )
- fix spec: macros instead of bash variables
- fix spec: add crtools as requirements
- fix spec: drop bash from requirements (rpm automatically picks up /bin/sh)
- fix spec: other fixes

* Fri Jun 7 2013 Andrey Vagin <avagin@gmail.com> - 4.3.1-3
- Fix compilation on architectures without support for VZ (rhbz 971821)

* Thu Jun 6 2013 Andrey Vagin <avagin@gmail.com> - 4.3.1-2
- Include missing dependency for gnugpg.

* Tue Jun 4 2013 Andrew Vagin <avagin@openvz.org> - 4.3.1-1
- Updated to upstream version 4.3.1

* Wed Apr 24 2013 Glauber Costa <glommer@gmail.com> - 4.1.1-4
- Include missing dependency for bridge-utils.
- Fix problems with user and pid namespaces.

* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.1.1-3.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild

* Tue Dec 11 2012 Glauber Costa <glommer@gmail.com> - 4.1.1-3
- Build on all architectures, fixes #878416. OpenVZ 4.1.1 handles
  that, so we don't need to carry a patch.

* Thu Nov 15 2012 Glauber Costa <glommer@gmail.com> - 4.1-2
- Corrected license: GPLv2 -> GPLv2+, which is what the sources actually claim
- Fixed ownership problems with directories _vzdir/template/ and /var/lib/vzctl/

* Fri Nov 2 2012 Glauber Costa <glommer@gmail.com> - 4.1-1
- Updated to vzctl 4.1
- Changed hardcoded /vz path to /var/lib/vz

* Wed Oct 17 2012 Glauber Costa <glommer@gmail.com> - 4.0-2
- removed unnecessary _attr entries from _files
- removed _exclude entries from _files, moved it to install
- removed BUILD_ROOT cleaning in _install
- removed libxml2 dependency

* Mon Oct 15 2012 Glauber Costa <glommer@gmail.com> - 4.0-1
- Packaged for Fedora, trying to reuse as much information as possible from
  upstream package.