a9946a32f1
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
151 lines
5.3 KiB
RPMSpec
151 lines
5.3 KiB
RPMSpec
%bcond_without check
|
|
|
|
# Not interested in packaging lib
|
|
# stratisd is supposed to be daemon used through dbus
|
|
%global __cargo_is_lib() false
|
|
|
|
Name: stratisd
|
|
Version: 0.5.4
|
|
Release: 3%{?dist}
|
|
Summary: Daemon that manages block devices to create filesystems
|
|
|
|
License: MPLv2.0
|
|
URL: https://github.com/stratis-storage/stratisd
|
|
Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz
|
|
|
|
ExclusiveArch: %{rust_arches}
|
|
|
|
BuildRequires: rust-packaging
|
|
# [dependencies]
|
|
BuildRequires: (crate(byteorder) >= 1.0.0 with crate(byteorder) < 2.0.0)
|
|
BuildRequires: (crate(chrono) >= 0.4.0 with crate(chrono) < 0.5.0)
|
|
BuildRequires: (crate(clap) >= 2.0.0 with crate(clap) < 3.0.0)
|
|
BuildRequires: (crate(crc) >= 1.0.0 with crate(crc) < 2.0.0)
|
|
BuildRequires: (crate(dbus) >= 0.6.1 with crate(dbus) < 0.7.0)
|
|
BuildRequires: (crate(devicemapper) >= 0.22.0 with crate(devicemapper) < 0.23.0)
|
|
BuildRequires: (crate(env_logger) >= 0.5.0 with crate(env_logger) < 0.6.0)
|
|
BuildRequires: (crate(error-chain) >= 0.12.0 with crate(error-chain) < 0.13.0)
|
|
BuildRequires: (crate(lazy_static) >= 1.0.0 with crate(lazy_static) < 2.0.0)
|
|
BuildRequires: (crate(libc) >= 0.2.36 with crate(libc) < 0.3.0)
|
|
BuildRequires: (crate(libmount) >= 0.1.10 with crate(libmount) < 0.2.0)
|
|
BuildRequires: (crate(libudev) >= 0.2.0 with crate(libudev) < 0.3.0)
|
|
BuildRequires: (crate(log) >= 0.4.0 with crate(log) < 0.5.0)
|
|
BuildRequires: (crate(macro-attr) >= 0.2.0 with crate(macro-attr) < 0.3.0)
|
|
BuildRequires: (crate(nix) >= 0.11.0 with crate(nix) < 0.12.0)
|
|
BuildRequires: (crate(rand) >= 0.4.0 with crate(rand) < 0.5.0)
|
|
BuildRequires: (crate(serde) >= 1.0.0 with crate(serde) < 2.0.0)
|
|
BuildRequires: (crate(serde_derive) >= 1.0.0 with crate(serde_derive) < 2.0.0)
|
|
BuildRequires: (crate(serde_json) >= 1.0.0 with crate(serde_json) < 2.0.0)
|
|
BuildRequires: (crate(tempfile) >= 3.0.1 with crate(tempfile) < 4.0.0)
|
|
BuildRequires: ((crate(uuid) >= 0.6.0 with crate(uuid) < 0.7.0) with crate(uuid/serde) with crate(uuid/v4))
|
|
%if %{with check}
|
|
# [dev-dependencies]
|
|
BuildRequires: (crate(either) >= 1.1.0 with crate(either) < 2.0.0)
|
|
BuildRequires: (crate(loopdev) >= 0.2.0 with crate(loopdev) < 0.3.0)
|
|
BuildRequires: (crate(quickcheck) >= 0.6.0 with crate(quickcheck) < 0.7.0)
|
|
%endif
|
|
BuildRequires: %{_bindir}/a2x
|
|
|
|
Requires: xfsprogs
|
|
Requires: device-mapper-persistent-data
|
|
|
|
%description
|
|
%{summary}.
|
|
|
|
%prep
|
|
%autosetup -p1
|
|
%cargo_prep
|
|
# Upgrade dependencies, https://github.com/stratis-storage/stratisd/pull/1062
|
|
sed -i \
|
|
-e '/^nix = /s/".\+"/"0.11"/' \
|
|
-e '/^error-chain = /s/".\+"/"0.12"/' \
|
|
Cargo.toml
|
|
|
|
%build
|
|
%cargo_build
|
|
%cargo_build -n
|
|
a2x -f manpage docs/stratisd.txt
|
|
|
|
%install
|
|
%cargo_install
|
|
# Daemon should be really private
|
|
mkdir -p %{buildroot}%{_libexecdir}
|
|
mv %{buildroot}%{_bindir}/stratisd %{buildroot}%{_libexecdir}/stratisd
|
|
|
|
%cargo_install -n
|
|
# Init version should be in sbin
|
|
mkdir -p %{buildroot}%{_sbindir}
|
|
mv %{buildroot}%{_bindir}/stratisd %{buildroot}%{_sbindir}/stratisd-init
|
|
|
|
%{__install} -Dpm0644 -t %{buildroot}%{_datadir}/dbus-1/system.d stratisd.conf
|
|
%{__install} -Dpm0644 -t %{buildroot}%{_datadir}/dbus-1/system-services org.storage.stratis1.service
|
|
%{__install} -Dpm0644 -t %{buildroot}%{_mandir}/man8 docs/stratisd.8
|
|
|
|
%if %{with check}
|
|
%check
|
|
%cargo_test -- -- --skip real_ --skip loop_ --skip travis_
|
|
%endif
|
|
|
|
%files
|
|
%license LICENSE
|
|
%doc README.md
|
|
%{_libexecdir}/stratisd
|
|
%{_sbindir}/stratisd-init
|
|
%dir %{_datadir}/dbus-1
|
|
%{_datadir}/dbus-1/system.d/stratisd.conf
|
|
%{_datadir}/dbus-1/system-services/org.storage.stratis1.service
|
|
%{_mandir}/man8/stratisd.8*
|
|
|
|
%changelog
|
|
* Thu Jul 19 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.5.4-3
|
|
- Upgrade dependencies
|
|
|
|
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.4-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
|
|
|
* Wed Jul 11 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.5.4-1
|
|
- Update to 0.5.4
|
|
|
|
* Fri Jun 22 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.5.3-2
|
|
- Add -init version of daemon
|
|
- Own dbus-1 directory
|
|
|
|
* Mon Jun 4 2018 Andy Grover <agrover@redhat.com> - 0.5.3-1
|
|
- Update to 0.5.3
|
|
|
|
* Fri May 4 2018 Andy Grover <agrover@redhat.com> - 0.5.2-2
|
|
- Add 0002-Prefix-commands-with-entire-path.patch
|
|
|
|
* Tue May 1 2018 Andy Grover <agrover@redhat.com> - 0.5.2-1
|
|
- Update to 0.5.2
|
|
|
|
* Tue Apr 03 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.5.1-1
|
|
- Update to 0.5.1
|
|
|
|
* Tue Mar 13 2018 Andy Grover <agrover@redhat.com> - 0.5.0-2
|
|
- Add stratisd manpage
|
|
|
|
* Thu Mar 08 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.5.0-1
|
|
- Update to 0.5.0
|
|
|
|
* Thu Feb 15 2018 Andy Grover <agrover@redhat.com> - 0.1.5-2
|
|
- Require packages that contain binaries that we exec: xfsprogs and
|
|
device-mapper-persistent-data
|
|
|
|
* Sun Feb 11 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.1.5-1
|
|
- Update to 0.1.5
|
|
|
|
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.4-4
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
|
|
|
* Mon Jan 08 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.1.4-3
|
|
- Rebuild for rust-packaging v5
|
|
|
|
* Mon Jan 08 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.1.4-2
|
|
- Move binary under %%{_libexecdir}
|
|
- Add dbus service (so it is activatable)
|
|
- Fix rand's version bump
|
|
|
|
* Sun Jan 07 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.1.4-1
|
|
- Initial package
|