Blame SPECS/vdo.spec

e5c9eb
%define spec_release 16
e5c9eb
#
e5c9eb
#
e5c9eb
#
e5c9eb
Summary: Management tools for Virtual Data Optimizer
e5c9eb
Name: vdo
e5c9eb
Version: 6.1.0.149
e5c9eb
Release: %{spec_release}
e5c9eb
License: GPLv2
e5c9eb
Source: %{name}-%{version}.tgz
e5c9eb
URL: http://github.com/dm-vdo/vdo
e5c9eb
Distribution: RHEL 7.3
e5c9eb
Requires: PyYAML >= 3.10
e5c9eb
Requires: kmod-kvdo >= 6.1
e5c9eb
Requires: lvm2 >= 2.02.171
e5c9eb
Provides: kvdo-kmod-common = %{version}
e5c9eb
ExclusiveArch: x86_64
e5c9eb
ExcludeArch: s390
e5c9eb
ExcludeArch: s390x
e5c9eb
ExcludeArch: ppc
e5c9eb
ExcludeArch: ppc64
e5c9eb
ExcludeArch: ppc64le
e5c9eb
ExcludeArch: aarch64
e5c9eb
ExcludeArch: i686
e5c9eb
BuildRequires: gcc
e5c9eb
BuildRequires: libuuid-devel
e5c9eb
BuildRequires: python
e5c9eb
BuildRequires: python-devel
e5c9eb
BuildRequires: systemd
e5c9eb
BuildRequires: valgrind-devel
e5c9eb
BuildRequires: zlib-devel
e5c9eb
e5c9eb
# Disable an automatic dependency due to a file in examples/nagios.
e5c9eb
%define __requires_exclude perl
e5c9eb
e5c9eb
%description
e5c9eb
Virtual Data Optimizer (VDO) is a device mapper target that delivers
e5c9eb
block-level deduplication, compression, and thin provisioning.
e5c9eb
e5c9eb
This package provides the user-space management tools for VDO.
e5c9eb
e5c9eb
%prep
e5c9eb
%setup -q
e5c9eb
e5c9eb
%build
e5c9eb
make
e5c9eb
e5c9eb
%install
e5c9eb
make install DESTDIR=$RPM_BUILD_ROOT INSTALLOWNER= bindir=%{_bindir} \
e5c9eb
  defaultdocdir=%{_defaultdocdir} name=%{name} \
e5c9eb
  python_sitelib=%{python_sitelib} mandir=%{_mandir} \
e5c9eb
  unitdir=%{_unitdir}
e5c9eb
e5c9eb
%post
e5c9eb
systemctl enable vdo.service || :
e5c9eb
e5c9eb
%preun
e5c9eb
systemctl disable vdo.service || :
e5c9eb
e5c9eb
%files
e5c9eb
#defattr(-,root,root)
e5c9eb
%{_bindir}/vdo
e5c9eb
%{_bindir}/vdostats
e5c9eb
%{_bindir}/vdodumpconfig
e5c9eb
%{_bindir}/vdoforcerebuild
e5c9eb
%{_bindir}/vdoformat
e5c9eb
%{_bindir}/vdoprepareupgrade
e5c9eb
%{_bindir}/vdoreadonly
e5c9eb
%dir %{python_sitelib}/%{name}
e5c9eb
%dir %{python_sitelib}/%{name}/vdomgmnt/
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/CommandLock.py
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/CommandLock.pyc
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/CommandLock.pyo
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/Configuration.py
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/Configuration.pyc
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/Configuration.pyo
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/Constants.py
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/Constants.pyc
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/Constants.pyo
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/Defaults.py
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/Defaults.pyc
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/Defaults.pyo
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/KernelModuleService.py
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/KernelModuleService.pyc
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/KernelModuleService.pyo
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/MgmntLogger.py
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/MgmntLogger.pyc
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/MgmntLogger.pyo
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/MgmntUtils.py
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/MgmntUtils.pyc
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/MgmntUtils.pyo
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/Service.py
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/Service.pyc
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/Service.pyo
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/SizeString.py
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/SizeString.pyc
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/SizeString.pyo
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/Utils.py
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/Utils.pyc
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/Utils.pyo
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/VDOService.py
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/VDOService.pyc
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/VDOService.pyo
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/VDOKernelModuleService.py
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/VDOKernelModuleService.pyc
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/VDOKernelModuleService.pyo
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/VDOOperation.py
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/VDOOperation.pyc
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/VDOOperation.pyo
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/__init__.py
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/__init__.pyc
e5c9eb
%{python_sitelib}/%{name}/vdomgmnt/__init__.pyo
e5c9eb
%dir %{python_sitelib}/%{name}/statistics/
e5c9eb
%{python_sitelib}/%{name}/statistics/Command.py
e5c9eb
%{python_sitelib}/%{name}/statistics/Command.pyc
e5c9eb
%{python_sitelib}/%{name}/statistics/Command.pyo
e5c9eb
%{python_sitelib}/%{name}/statistics/Field.py
e5c9eb
%{python_sitelib}/%{name}/statistics/Field.pyc
e5c9eb
%{python_sitelib}/%{name}/statistics/Field.pyo
e5c9eb
%{python_sitelib}/%{name}/statistics/KernelStatistics.py
e5c9eb
%{python_sitelib}/%{name}/statistics/KernelStatistics.pyc
e5c9eb
%{python_sitelib}/%{name}/statistics/KernelStatistics.pyo
e5c9eb
%{python_sitelib}/%{name}/statistics/LabeledValue.py
e5c9eb
%{python_sitelib}/%{name}/statistics/LabeledValue.pyc
e5c9eb
%{python_sitelib}/%{name}/statistics/LabeledValue.pyo
e5c9eb
%{python_sitelib}/%{name}/statistics/StatFormatter.py
e5c9eb
%{python_sitelib}/%{name}/statistics/StatFormatter.pyc
e5c9eb
%{python_sitelib}/%{name}/statistics/StatFormatter.pyo
e5c9eb
%{python_sitelib}/%{name}/statistics/StatStruct.py
e5c9eb
%{python_sitelib}/%{name}/statistics/StatStruct.pyc
e5c9eb
%{python_sitelib}/%{name}/statistics/StatStruct.pyo
e5c9eb
%{python_sitelib}/%{name}/statistics/VDOReleaseVersions.py
e5c9eb
%{python_sitelib}/%{name}/statistics/VDOReleaseVersions.pyc
e5c9eb
%{python_sitelib}/%{name}/statistics/VDOReleaseVersions.pyo
e5c9eb
%{python_sitelib}/%{name}/statistics/VDOStatistics.py
e5c9eb
%{python_sitelib}/%{name}/statistics/VDOStatistics.pyc
e5c9eb
%{python_sitelib}/%{name}/statistics/VDOStatistics.pyo
e5c9eb
%{python_sitelib}/%{name}/statistics/__init__.py
e5c9eb
%{python_sitelib}/%{name}/statistics/__init__.pyc
e5c9eb
%{python_sitelib}/%{name}/statistics/__init__.pyo
e5c9eb
%dir %{python_sitelib}/%{name}/utils/
e5c9eb
%{python_sitelib}/%{name}/utils/Command.py
e5c9eb
%{python_sitelib}/%{name}/utils/Command.pyc
e5c9eb
%{python_sitelib}/%{name}/utils/Command.pyo
e5c9eb
%{python_sitelib}/%{name}/utils/FileUtils.py
e5c9eb
%{python_sitelib}/%{name}/utils/FileUtils.pyc
e5c9eb
%{python_sitelib}/%{name}/utils/FileUtils.pyo
e5c9eb
%{python_sitelib}/%{name}/utils/Logger.py
e5c9eb
%{python_sitelib}/%{name}/utils/Logger.pyc
e5c9eb
%{python_sitelib}/%{name}/utils/Logger.pyo
e5c9eb
%{python_sitelib}/%{name}/utils/Timeout.py
e5c9eb
%{python_sitelib}/%{name}/utils/Timeout.pyc
e5c9eb
%{python_sitelib}/%{name}/utils/Timeout.pyo
e5c9eb
%{python_sitelib}/%{name}/utils/Transaction.py
e5c9eb
%{python_sitelib}/%{name}/utils/Transaction.pyc
e5c9eb
%{python_sitelib}/%{name}/utils/Transaction.pyo
e5c9eb
%{python_sitelib}/%{name}/utils/YAMLObject.py
e5c9eb
%{python_sitelib}/%{name}/utils/YAMLObject.pyc
e5c9eb
%{python_sitelib}/%{name}/utils/YAMLObject.pyo
e5c9eb
%{python_sitelib}/%{name}/utils/__init__.py
e5c9eb
%{python_sitelib}/%{name}/utils/__init__.pyc
e5c9eb
%{python_sitelib}/%{name}/utils/__init__.pyo
e5c9eb
%{_unitdir}/vdo.service
e5c9eb
%dir %{_defaultdocdir}/%{name}
e5c9eb
%license %{_defaultdocdir}/%{name}/COPYING
e5c9eb
%dir %{_defaultdocdir}/%{name}/examples
e5c9eb
%dir %{_defaultdocdir}/%{name}/examples/ansible
e5c9eb
%doc %{_defaultdocdir}/%{name}/examples/ansible/README.txt
e5c9eb
%doc %{_defaultdocdir}/%{name}/examples/ansible/test_vdocreate.yml
e5c9eb
%doc %{_defaultdocdir}/%{name}/examples/ansible/test_vdocreate_alloptions.yml
e5c9eb
%doc %{_defaultdocdir}/%{name}/examples/ansible/test_vdoremove.yml
e5c9eb
%doc %{_defaultdocdir}/%{name}/examples/ansible/vdo.py
e5c9eb
%doc %{_defaultdocdir}/%{name}/examples/ansible/vdo.pyc
e5c9eb
%doc %{_defaultdocdir}/%{name}/examples/ansible/vdo.pyo
e5c9eb
%dir %{_defaultdocdir}/%{name}/examples/nagios
e5c9eb
%doc %{_defaultdocdir}/%{name}/examples/nagios/nagios_check_vdostats_logicalSpace.pl
e5c9eb
%doc %{_defaultdocdir}/%{name}/examples/nagios/nagios_check_vdostats_physicalSpace.pl
e5c9eb
%doc %{_defaultdocdir}/%{name}/examples/nagios/nagios_check_vdostats_savingPercent.pl
e5c9eb
%dir %{_defaultdocdir}/%{name}/examples/systemd
e5c9eb
%doc %{_defaultdocdir}/%{name}/examples/systemd/VDO.mount.example
e5c9eb
%{_mandir}/man8/vdo.8.gz
e5c9eb
%{_mandir}/man8/vdostats.8.gz
e5c9eb
%{_mandir}/man8/vdodumpconfig.8.gz
e5c9eb
%{_mandir}/man8/vdodumpmetadata.8.gz
e5c9eb
%{_mandir}/man8/vdoforcerebuild.8.gz
e5c9eb
%{_mandir}/man8/vdoformat.8.gz
e5c9eb
e5c9eb
e5c9eb
%changelog
e5c9eb
* Fri Feb 16 2018 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.149-16
e5c9eb
- Sync mode is safe if underlying storage changes to requiring flushes
e5c9eb
- Resolves: rhbz#1540777
e5c9eb
e5c9eb
* Wed Feb 07 2018 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.146-16
e5c9eb
- VDO start command now does index memory checking
e5c9eb
- Module target is now "vdo" instead of "dedupe"
e5c9eb
- VDO remove with no device no longer puts a spurious file in /dev
e5c9eb
- ANsible module no longer fails on modification operations
e5c9eb
- Resolves: rhbz#1510567
e5c9eb
- Resolves: rhbz#1530358
e5c9eb
- Resolves: rhbz#1535597
e5c9eb
- Resolves: rhbz#1536214
e5c9eb
e5c9eb
* Tue Feb 06 2018 - Andy Walsh <awalsh@redhat.com> - 6.1.0.144-16
e5c9eb
- Updated summary and description
e5c9eb
- Resolves: rhbz#1541409
e5c9eb
e5c9eb
* Thu Feb 01 2018 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.130-15
e5c9eb
- vdo growLogical by less than 4K gives correct error
e5c9eb
- Fix URL to point to GitHub tree
e5c9eb
- Resolves: rhbz#1532653
e5c9eb
- Resolves: rhbz#1539059
e5c9eb
e5c9eb
* Fri Jan 19 2018 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.124-14
e5c9eb
- Added a specific error for less than 1 block growLogical.
e5c9eb
- Resolves: rhbz#1532653
e5c9eb
e5c9eb
* Wed Jan 10 2018 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.114-14
e5c9eb
- VDO automatically chooses the proper write policy by default
e5c9eb
- Package uninstall removes vdo.service symlinks
e5c9eb
- Resolves: rhbz#1525305
e5c9eb
- Resolves: rhbz#1531047
e5c9eb
e5c9eb
* Thu Dec 21 2017 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.106-13
e5c9eb
- Handle bogus --confFile and --logfile arguments
e5c9eb
- Produce more informative vdo manager high-level help
e5c9eb
- Generate command-specific unrecognized argument messages
e5c9eb
- Resolves: rhbz#1520927
e5c9eb
- Resolves: rhbz#1522750
e5c9eb
- Resolves: rhbz#1525560
e5c9eb
e5c9eb
* Tue Dec 12 2017 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.97-13
e5c9eb
- Remove vdo --noRun option
e5c9eb
- Clean up vdo error handling
e5c9eb
- Prevent python stack traces on vdo errors
e5c9eb
- Add more bounds checking to indexMem
e5c9eb
- Resolves: rhbz#1508544
e5c9eb
- Resolves: rhbz#1508918
e5c9eb
- Resolves: rhbz#1520991
e5c9eb
- Resolves: rhbz#1522754
e5c9eb
e5c9eb
* Fri Dec 08 2017 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.89-13
e5c9eb
- Build changes for UUID
e5c9eb
- Limit VDO physical size
e5c9eb
- Limit command options to those applicable to the subcommand
e5c9eb
- Fix vdo --modifyBlockMapPeriod
e5c9eb
- Report missing command option appropriately for all subcommands
e5c9eb
- Fix behavior of --indexMem when there's not enough memory
e5c9eb
- Remove obsolete nagios plugin from examples
e5c9eb
- Better error behavior for failing vdo status commands
e5c9eb
- Fix boundary check error for vdoLogicalSize
e5c9eb
- Resolves: rhbz#1507927
e5c9eb
- Resolves: rhbz#1508452
e5c9eb
- Resolves: rhbz#1508544
e5c9eb
- Resolves: rhbz#1508918
e5c9eb
- Resolves: rhbz#1509002
e5c9eb
- Resolves: rhbz#1510567
e5c9eb
- Resolves: rhbz#1512631
e5c9eb
- Resolves: rhbz#1522943
e5c9eb
e5c9eb
* Fri Dec 01 2017 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.72-12
e5c9eb
- Don't corrupt an existing filesystem with "vdo create" without "--force"
e5c9eb
- Resolves: rhbz#1510581
e5c9eb
e5c9eb
* Mon Nov 27 2017 - Ken Raeburn <raeburn@redhat.com> - 6.1.0.55-11
e5c9eb
- Don't corrupt an existing filesystem with "vdo create" without "--force"
e5c9eb
- Resolves: rhbz#1510581
e5c9eb
e5c9eb
* Fri Nov 17 2017 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.55-10
e5c9eb
- manual pages: note logical size limit of 4P
e5c9eb
- manual pages: make cache size/thread count link clearer
e5c9eb
- Resolves: rhbz#1508452
e5c9eb
- Resolves: rhbz#1511042
e5c9eb
e5c9eb
* Fri Nov 03 2017 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.46-9
e5c9eb
- update manpage to not allow 0 as an option
e5c9eb
- enforce maximum vdoPhysicalThreads
e5c9eb
- update manpage to describe maximum vdoPhysicalThreads
e5c9eb
- Resolves: rhbz#1510405
e5c9eb
- Resolves: rhbz#1511075
e5c9eb
- Resolves: rhbz#1511085
e5c9eb
- Resolves: rhbz#1511091
e5c9eb
e5c9eb
* Fri Nov 03 2017 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.34-8
e5c9eb
- Bugfixes
e5c9eb
- Resolves: rhbz#1480047
e5c9eb
e5c9eb
* Mon Oct 30 2017 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.0-7
e5c9eb
- Don't let make install try to set file ownerships itself
e5c9eb
- Resolves: rhbz#1480047
e5c9eb
e5c9eb
* Thu Oct 12 2017 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.0-6
e5c9eb
- Added new man pages
e5c9eb
- Resolves: rhbz#1480047
e5c9eb
e5c9eb
* Fri Oct  6 2017 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.0-5
e5c9eb
- Fixed a typo in the package description
e5c9eb
- Fixed man page paths
e5c9eb
- Resolves: rhbz#1480047
e5c9eb
e5c9eb
* Thu Oct  5 2017 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.0-4
e5c9eb
- Fix vdostats name in nagios examples
e5c9eb
- Build only on the x86_64 architecture
e5c9eb
- Add systemd files
e5c9eb
- Resolves: rhbz#1480047
e5c9eb
e5c9eb
* Thu Oct  5 2017 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.0-3
e5c9eb
- Added missing Build-Requires and incorporated naming changes
e5c9eb
- Resolves: rhbz#1480047
e5c9eb
e5c9eb
* Wed Oct  4 2017 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.0-2
e5c9eb
- Fixed requirements and tags in %files section
e5c9eb
- Resolves: rhbz#1480047
e5c9eb
e5c9eb
* Tue Oct  3 2017 - Joseph Chapman <jochapma@redhat.com> - 6.1.0.0-1
e5c9eb
- Initial implementation
e5c9eb
- Resolves: rhbz#1480047