stratisd/stratisd.spec

487 lines
15 KiB
RPMSpec
Raw Normal View History

%bcond_without check
%global udevdir %(pkg-config --variable=udevdir udev)
2021-04-28 01:09:27 +00:00
%global dracutdir %(pkg-config --variable=dracutdir dracut)
Name: stratisd
Version: 3.5.2
Release: 1%{?dist}
2021-01-14 15:18:30 +00:00
Summary: Daemon that manages block devices to create filesystems
# ASL 2.0
# ASL 2.0 or Boost
2022-05-25 18:57:36 +00:00
# ASL 2.0 or MIT
# BSD
2022-05-25 18:57:36 +00:00
# ISC
# MIT
# MIT or ASL 2.0
# MPLv2.0
# Unlicense or MIT
License: MPLv2.0 and ASL 2.0 and BSD and MIT
URL: https://github.com/stratis-storage/stratisd
Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz
2021-03-17 14:18:23 +00:00
Source1: %{url}/releases/download/v%{version}/%{name}-%{version}-vendor.tar.gz
Source2: %{crates_source}
%if 0%{?rhel}
ExclusiveArch: %{rust_arches}
ExcludeArch: i686
%endif
%if 0%{?rhel}
BuildRequires: rust-toolset
%else
BuildRequires: rust-packaging
%endif
2022-05-25 18:57:36 +00:00
BuildRequires: rust-srpm-macros
BuildRequires: systemd-devel
BuildRequires: dbus-devel
2022-03-25 02:29:05 +00:00
BuildRequires: libblkid-devel
BuildRequires: cryptsetup-devel
BuildRequires: clang
BuildRequires: glibc-static
2022-03-25 02:29:05 +00:00
BuildRequires: %{_bindir}/a2x
# Required to calculate install directories
BuildRequires: systemd
2021-05-12 15:37:35 +00:00
BuildRequires: dracut
Requires: xfsprogs
Requires: device-mapper-persistent-data
Requires: systemd-libs
Requires: dbus-libs
Requires: cryptsetup-libs
Requires: libblkid
2021-04-28 01:09:27 +00:00
2022-07-30 01:32:22 +00:00
# stratisd does not require clevis; it can be used in restricted environments
# where clevis is not available.
2021-04-28 01:09:27 +00:00
Recommends: clevis-luks >= 18
%description
%{summary}.
%package dracut
Summary: Dracut modules for use with stratisd
%if 0%{?rhel}
ExclusiveArch: %{rust_arches}
%endif
Requires: stratisd
Requires: dracut >= 051
Requires: plymouth
%description dracut
%{summary}.
%package tools
Summary: Tools that support Stratis operation
ExclusiveArch: %{rust_arches}
Requires: stratisd
%description tools
%{summary}.
%prep
2022-03-14 16:50:29 +00:00
%setup -q
tar --strip-components=1 --extract --verbose --file %{SOURCE2}
2022-03-14 16:50:29 +00:00
# Patches must be applied after the upstream package is extracted.
%if 0%{?rhel}
# Source1 is vendored dependencies
%cargo_prep -V 1
%else
%cargo_prep
%generate_buildrequires
%cargo_generate_buildrequires -f engine,dbus_enabled,min,systemd_compat,extras
%endif
%build
%if 0%{?rhel}
%{__cargo} build %{?_smp_mflags} --release --bin=stratisd
%{__cargo} build %{?_smp_mflags} --release --bin=stratis-min --bin=stratisd-min --bin=stratis-utils --no-default-features --features engine,min,systemd_compat
%{__cargo} rustc %{?_smp_mflags} --release --bin=stratis-str-cmp --no-default-features --features udev_scripts -- -Ctarget-feature=+crt-static
%{__cargo} rustc %{?_smp_mflags} --release --bin=stratis-base32-decode --no-default-features --features udev_scripts -- -Ctarget-feature=+crt-static
%{__cargo} build %{?_smp_mflags} --release --bin=stratis-dumpmetadata --no-default-features --features engine,extras,min
%else
%{__cargo} build %{?__cargo_common_opts} --release --bin=stratisd
%{__cargo} build %{?__cargo_common_opts} --release --bin=stratis-min --bin=stratisd-min --bin=stratis-utils --no-default-features --features engine,min,systemd_compat
%{__cargo} rustc %{?__cargo_common_opts} --release --bin=stratis-str-cmp --no-default-features --features udev_scripts -- -Ctarget-feature=+crt-static
%{__cargo} rustc %{?__cargo_common_opts} --release --bin=stratis-base32-decode --no-default-features --features udev_scripts -- -Ctarget-feature=+crt-static
%{__cargo} build %{?__cargo_common_opts} --release --bin=stratis-dumpmetadata --no-default-features --features engine,extras,min
%endif
a2x -f manpage docs/stratisd.txt
a2x -f manpage docs/stratis-dumpmetadata.txt
%install
2022-05-25 18:57:36 +00:00
%make_install DRACUTDIR=%{dracutdir} PROFILEDIR=release
%if %{with check}
%check
%if 0%{?rhel}
%cargo_test --no-run
%else
%cargo_test -- --no-run
%endif
%endif
%post
%systemd_post stratisd.service
%preun
%systemd_preun stratisd.service
%postun
%systemd_postun_with_restart stratisd.service
%files
%license LICENSE
%doc README.md
%{_libexecdir}/stratisd
%dir %{_datadir}/dbus-1
%dir %{_datadir}/dbus-1/system.d
%{_datadir}/dbus-1/system.d/stratisd.conf
%{_mandir}/man8/stratisd.8*
%{_unitdir}/stratisd.service
2021-04-28 23:53:45 +00:00
%{_udevrulesdir}/61-stratisd.rules
2021-04-28 01:09:27 +00:00
%{udevdir}/stratis-str-cmp
%{udevdir}/stratis-base32-decode
%{_bindir}/stratis-predict-usage
%{_unitdir}/stratisd-min-postinitrd.service
%{_unitdir}/stratis-fstab-setup@.service
%{_bindir}/stratis-min
%{_libexecdir}/stratisd-min
%{_systemd_util_dir}/stratis-fstab-setup
%files dracut
%license LICENSE
2021-04-28 01:09:27 +00:00
%{dracutdir}/modules.d/90stratis-clevis/module-setup.sh
%{dracutdir}/modules.d/90stratis-clevis/stratis-clevis-rootfs-setup
%{dracutdir}/modules.d/90stratis/61-stratisd.rules
%{dracutdir}/modules.d/90stratis/module-setup.sh
%{dracutdir}/modules.d/90stratis/stratis-rootfs-setup
%{dracutdir}/modules.d/90stratis/stratisd-min.service
%{_systemd_util_dir}/system-generators/stratis-clevis-setup-generator
%{_systemd_util_dir}/system-generators/stratis-setup-generator
%files tools
%license LICENSE
%{_bindir}/stratis-dumpmetadata
%{_mandir}/man8/stratis-dumpmetadata.8*
%changelog
* Fri Mar 17 2023 Bryan Gurney <bgurney@redhat.com> - 3.5.2-1
- Update to 3.5.2
* Tue Feb 28 2023 Bryan Gurney <bgurney@redhat.com> - 3.5.1-3
- Allow annocheck on rpminspect.yaml for non-static binaries
* Mon Feb 20 2023 Bryan Gurney <bgurney@redhat.com> - 3.5.1-2
- Add debuginfo ignore to rpminspect.yaml
* Tue Feb 07 2023 Bryan Gurney <bgurney@redhat.com> - 3.5.1-1
- Update to 3.5.1
* Fri Feb 03 2023 Bryan Gurney <bgurney@redhat.com> - 3.5.0-4
- Remove debuginfo ignore from rpminspect.yaml
* Thu Feb 02 2023 Bryan Gurney <bgurney@redhat.com> - 3.5.0-3
- Remove elf ignore from rpminspect.yaml
* Wed Feb 01 2023 Bryan Gurney <bgurney@redhat.com> - 3.5.0-2
- Update rpminspect.yaml
* Tue Jan 24 2023 Bryan Gurney <bgurney@redhat.com> - 3.5.0-1
- Update to 3.5.0
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.4.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Mon Jan 16 2023 Bryan Gurney <bgurney@redhat.com> - 3.4.4-2
- Remove Fedora ELN conditionals from spec file
- Use ExclusiveArch only if RHEL
* Tue Jan 03 2023 Bryan Gurney <bgurney@redhat.com> - 3.4.4-1
- Update to 3.4.4
* Thu Dec 15 2022 Bryan Gurney <bgurney@redhat.com> - 3.4.3-1
- Update to 3.4.3
* Tue Dec 06 2022 Bryan Gurney <bgurney@redhat.com> - 3.4.2-1
- Update to 3.4.2
* Tue Nov 29 2022 Bryan Gurney <bgurney@redhat.com> - 3.4.1-1
- Update to 3.4.1
* Tue Oct 18 2022 Bryan Gurney <bgurney@redhat.com> - 3.3.0-1
- Update to 3.3.0
2022-08-28 20:30:11 +00:00
* Sun Aug 28 2022 mulhern <amulhern@redhat.com> - 3.2.3-1
- Update to 3.2.3
* Wed Aug 24 2022 Bryan Gurney <bgurney@redhat.com> - 3.2.2-1
- Update to 3.2.2
2022-07-30 01:32:22 +00:00
* Fri Jul 29 2022 mulhern <amulhern@redhat.com> - 3.2.1-1
- Update to 3.2.1
* Wed Jul 27 2022 mulhern <amulhern@redhat.com> - 3.1.2-2
- Run all gating tests that require no devices
2022-07-28 01:15:14 +00:00
* Wed Jul 27 2022 mulhern <amulhern@redhat.com> - 3.1.2-1
- Update to 3.1.2
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.1.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Tue Jul 12 2022 Bryan Gurney <bgurney@redhat.com> - 3.1.1-1
- Update to 3.1.1
* Fri Jul 01 2022 Bryan Gurney <bgurney@redhat.com> - 3.1.0-5
- Refine gating tests to minimal set
* Wed Jun 22 2022 Bryan Gurney <bgurney@redhat.com> - 3.1.0-4
- Add gating test
* Mon Jun 06 2022 Bryan Gurney <bgurney@redhat.com> - 3.1.0-3
- Remove buildhost_subdomain section from rpminspect.yaml
* Fri Jun 03 2022 Bryan Gurney <bgurney@redhat.com> - 3.1.0-2
- Synchronize spec with upstream unified spec file
- Remove .rust2rpm.conf file
2022-05-25 18:57:36 +00:00
* Wed May 25 2022 mulhern <amulhern@redhat.com> - 3.1.0-1
- Update to 3.1.0
* Mon Mar 28 2022 mulhern <amulhern@redhat.com> - 3.0.4-11
- Fix ${rust_arches}; use long form tar options
* Sat Mar 26 2022 mulhern <amulhern@redhat.com> - 3.0.4-10
- Fix cryptsetup-Requires; add blkid-Requires
* Fri Mar 25 2022 mulhern <amulhern@redhat.com> - 3.0.4-9
- Make specfile fully and minimally unified
2022-03-25 02:29:05 +00:00
* Thu Mar 24 2022 mulhern <amulhern@redhat.com> - 3.0.4-8
- Tidy up BuildRequires
2022-03-24 19:11:59 +00:00
* Thu Mar 24 2022 mulhern <amulhern@redhat.com> - 3.0.4-7
- Remove __cargo_skip_build
* Thu Mar 24 2022 mulhern <amulhern@redhat.com> - 3.0.4-6
- Only build the tests, do not try to run them
2022-03-24 01:49:12 +00:00
* Thu Mar 24 2022 mulhern <amulhern@redhat.com> - 3.0.4-5
- Do not set unused global
2022-03-15 23:40:39 +00:00
* Tue Mar 15 2022 mulhern <amulhern@redhat.com> - 3.0.4-4
- Install two scripts
2022-03-14 16:50:29 +00:00
* Mon Mar 14 2022 mulhern <amulhern@redhat.com> - 3.0.4-3
- Fix the previous revision
2022-03-14 16:15:32 +00:00
* Mon Mar 14 2022 mulhern <amulhern@redhat.com> - 3.0.4-2
- Use upstream crate for Rust source
2022-02-12 23:47:59 +00:00
* Sat Feb 12 2022 mulhern <amulhern@redhat.com> - 3.0.4-1
- Update to 3.0.4
2022-02-07 19:51:06 +00:00
* Mon Feb 7 2022 mulhern <amulhern@redhat.com> - 3.0.3-1
- Update to 3.0.3
* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
2021-12-21 15:08:26 +00:00
* Tue Dec 21 2021 mulhern <amulhern@redhat.com> - 3.0.2-1
- Update to 3.0.2
2021-11-28 22:51:29 +00:00
* Sun Nov 28 2021 mulhern <amulhern@redhat.com> - 2.4.4-1
- Update to 2.4.4
2021-10-19 19:44:19 +00:00
* Tue Oct 19 2021 mulhern <amulhern@redhat.com> - 2.4.2-3
- Rebuilt to include dbus-tree 0.9.2
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
2021-06-02 02:43:29 +00:00
* Tue Jun 1 2021 mulhern <amulhern@redhat.com> - 2.4.2-1
- Update to 2.4.2
* Tue May 18 2021 John Baublitz <jbaublitz@redhat.com> - 2.4.1-1
- Update to new release and split dracut modules out into subpackage
* Thu May 13 2021 John Baublitz <jbaublitz@redhat.com> - 2.4.0-4
- Ensure that binaries are installed with proper features enabled
2021-05-12 15:37:35 +00:00
* Wed May 12 2021 John Baublitz <jbaublitz@redhat.com> - 2.4.0-3
- Fix installed file paths
2021-04-28 23:53:45 +00:00
* Tue Apr 27 2021 mulhern <amulhern@redhat.com> - 2.4.0-2
- Fixes to previous release
2021-04-28 01:09:27 +00:00
* Tue Apr 27 2021 mulhern <amulhern@redhat.com> - 2.4.0-1
- Update to 2.4.0
2021-03-17 14:18:23 +00:00
* Wed Mar 17 2021 mulhern <amulhern@redhat.com> - 2.3.0-10
- Use external URL for vendored sources
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2.3.0-9
- Rebuilt for updated systemd-rpm-macros
See https://pagure.io/fesco/issue/2583.
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.0-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Fri Jan 15 2021 Igor Raits <ignatenkobrain@fedoraproject.org> - 2.3.0-7
- Fix build on ELN
* Fri Jan 15 2021 Igor Raits <ignatenkobrain@fedoraproject.org> - 2.3.0-6
- Make package compatible without violating guidelines
2021-01-15 18:14:17 +00:00
* Fri Jan 15 2021 mulhern <amulhern@redhat.com> - 2.3.0-5
- Add both sources at the same time
* Fri Jan 15 2021 mulhern <amulhern@redhat.com> - 2.3.0-4
- Restore RHEL/Fedora compatible spec file, adding some additional changes
* Fri Jan 15 2021 Igor Raits <ignatenkobrain@fedoraproject.org> - 2.3.0-3
- Partially revert previous commit
2021-01-14 15:18:30 +00:00
* Thu Jan 14 2021 mulhern <amulhern@redhat.com> - 2.3.0-2
- Make RHEL/Fedora compatible spec file
2021-01-12 22:09:10 +00:00
* Tue Jan 12 2021 mulhern <amulhern@redhat.com> - 2.3.0-1
- Update to 2.3.0
* Mon Dec 28 13:34:26 CET 2020 Igor Raits <ignatenkobrain@fedoraproject.org> - 2.2.1-3
- Rebuild
* Sun Dec 27 2020 Igor Raits <ignatenkobrain@fedoraproject.org> - 2.2.1-2
- Rebuild
2020-11-10 04:13:50 +00:00
* Mon Nov 9 2020 mulhern <amulhern@redhat.com> - 2.2.1-1
- Update to 2.2.1
2020-10-19 23:14:56 +00:00
* Mon Oct 19 2020 mulhern <amulhern@redhat.com> - 2.2.0-1
- Update to 2.2.0
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.0-3
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
2020-07-07 19:58:27 +00:00
* Tue Jul 07 2020 John Baublitz <jbaublitz@redhat.com> - 2.1.0-1
- Update to 2.1.0
* Wed Feb 19 2020 Igor Raits <ignatenkobrain@fedoraproject.org> - 2.0.1-2
- Fixup license
* Wed Feb 19 2020 Igor Raits <ignatenkobrain@fedoraproject.org> - 2.0.1-1
- Update to 2.0.1
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Thu Nov 07 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 2.0.0-1
- Update to 2.0.0
* Fri Sep 06 20:52:06 CEST 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.0.5-1
- Update to 1.0.5
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
2019-06-04 23:48:51 +00:00
* Tue Jun 04 2019 Josh Stone <jistone@redhat.com> - 1.0.4-2
- Bump nix to 0.14
* Tue May 07 08:16:24 CEST 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.0.4-1
- Update to 1.0.4
* Wed Mar 06 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.0.3-1
- Update to 1.0.3
* Wed Dec 12 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.0.2-1
- Update to 1.0.2
* Fri Nov 02 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.0.1-1
- Update to 1.0.1
* Thu Sep 27 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.0.0-1
- Update to 1.0.0
* Wed Sep 19 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.9.0-4
- Add missing systemd scriptlets
* Wed Sep 19 2018 Tony Asleson <tasleson@redhat.com> - 0.9.0-3
- Add systemd unit file
- Remove systemd activation file
* Tue Sep 18 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.9.0-2
- Rebuild to workaround pungi bug
* Sat Sep 01 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.9.0-1
- Update to 0.9.0
* Fri Aug 3 2018 Andy Grover <agrover@redhat.com> - 0.5.5-2
- Disable a failing but noncritical test
* Fri Aug 03 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.5.5-1
- Update to 0.5.5
* 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