Update to version 3.5.5

- Update to version 3.5.5
- Resolves: rhbz#2167463
- Take into account the sector size of crypt devices
- Resolves: rhbz#2170318
- Add stratisd-tools package with stratis-dumpmetadata program
- Resolves: rhbz#2173726
- Support key description key in kernel keyring
- Resolves: rhbz#2038492

Signed-off-by: Bryan Gurney <bgurney@redhat.com>
This commit is contained in:
Bryan Gurney 2023-04-25 10:39:48 -04:00
parent a6812ba919
commit 3b2eb18155
5 changed files with 89 additions and 31 deletions

3
.gitignore vendored
View File

@ -46,3 +46,6 @@
/stratisd-3.4.4.tar.gz
/stratisd-3.4.4-vendor.tar.gz
/stratisd-3.4.4.crate
/stratisd-3.5.5.tar.gz
/stratisd-3.5.5-vendor.tar.gz
/stratisd-3.5.5.crate

View File

@ -2,8 +2,6 @@
inspections:
# none of our compiled code has an ABI
abidiff: off
# at present the wrong debuginfo files are being used to run this check
annocheck: off
# the project does not use .desktop files
desktop: off
# the project uses no Java
@ -13,3 +11,20 @@ rpmdeps:
# ignore auto dependencies like: (crate(bindgen/default) >= 0.59.0 with crate(bindgen/default) < 0.60.0~)'
ignore:
requires: ^\(crate\(.*\)$
debuginfo:
# rpminspect error: "Contains .symtab"
# ignoring because this appears to be a bug in rpmbuild or further down the toolchain
# https://bugzilla.redhat.com/show_bug.cgi?id=2166149
ignore:
- /usr/lib/udev/stratis*
annocheck:
# annocheck error:
# Hardened: <path>: FAIL: stack-prot test because stack protection
# deliberately disabled (function: call_fini)
# Seems to be a consequence of including glibc-static when fully static
# compilation occurs.
ignore:
- /usr/lib/udev/stratis*

View File

@ -1,3 +1,3 @@
SHA512 (stratisd-3.4.4.tar.gz) = c4b64fae61e5abc5798031b8b4b7fb8c04490bcab18324f1a66bd88ef271d9f5961ccd098487feab2b1e1d4a8eb37e7bc382507c076bc012372828807ef39634
SHA512 (stratisd-3.4.4-vendor.tar.gz) = 8ae53b5c3583d16067c64b9c3ce7cae04c6e1d8650684bc562677f1e7f8e4a3baee50d42fce62d2a8a00a3776f3d4fe84441221de68fdd0bff784d5488244ee1
SHA512 (stratisd-3.4.4.crate) = b2b6daefc897509011d44a74d79d0416aabc86de7a286882f8382a69def8212a7b69667f00181b22174c75c772690092d98db9803b4031986cb5e59274b48bae
SHA512 (stratisd-3.5.5.tar.gz) = 9ed5381b5301c1b2795ab55d76914af5befd7795911851acf1fc97a67b414d241d50acb0e00119944274f4ca1a8fff79b1797ddc3b35ea678b6fa181fd6ce48e
SHA512 (stratisd-3.5.5-vendor.tar.gz) = b79f706cb638f10381b68963a34cce005f299186edf372d08c7044c21a7e1b0da95cb8fcaf34cf802ed0dc54b7e71d0f4310bc43ce1fb0e43fc3c306fb59d931
SHA512 (stratisd-3.5.5.crate) = c003c7fd35a93c0aa57e064b03cc59ac668c575b748cb8b7a8ef0139e6f0b9f6ada544aead0240481c0c9a8b6ba2f259c8851d03e4c9498de22f05633ea3dfca

View File

@ -4,20 +4,11 @@
%global dracutdir %(pkg-config --variable=dracutdir dracut)
Name: stratisd
Version: 3.4.4
Version: 3.5.5
Release: 1%{?dist}
Summary: Daemon that manages block devices to create filesystems
# ASL 2.0
# ASL 2.0 or Boost
# ASL 2.0 or MIT
# BSD
# ISC
# MIT
# MIT or ASL 2.0
# MPLv2.0
# Unlicense or MIT
License: MPLv2.0
License: MPL-2.0
URL: https://github.com/stratis-storage/stratisd
Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz
Source1: %{url}/releases/download/v%{version}/%{name}-%{version}-vendor.tar.gz
@ -25,11 +16,11 @@ Source2: %{crates_source}
ExclusiveArch: %{rust_arches}
%if 0%{?rhel} && !0%{?eln}
%if 0%{?rhel}
ExcludeArch: i686
%endif
%if 0%{?rhel} && !0%{?eln}
%if 0%{?rhel}
BuildRequires: rust-toolset
%else
BuildRequires: rust-packaging
@ -40,6 +31,8 @@ BuildRequires: dbus-devel
BuildRequires: libblkid-devel
BuildRequires: cryptsetup-devel
BuildRequires: clang
BuildRequires: glibc-static
BuildRequires: device-mapper-devel
BuildRequires: %{_bindir}/a2x
# Required to calculate install directories
@ -53,6 +46,10 @@ Requires: dbus-libs
Requires: cryptsetup-libs
Requires: libblkid
# stratisd does not require clevis; it can be used in restricted environments
# where clevis is not available.
# If using encryption via clevis, stratisd requires the instance of clevis
# that it uses to have been built in an environment with cryptsetup >= 2.6.0.
Recommends: clevis-luks >= 18
%description
@ -62,49 +59,73 @@ Recommends: clevis-luks >= 18
Summary: Dracut modules for use with stratisd
ExclusiveArch: %{rust_arches}
%if 0%{?rhel}
ExcludeArch: i686
%endif
Requires: stratisd
Requires: dracut >= 051
Requires: plymouth
%description dracut
%{summary}.
This package contains dracut modules to be used with stratisd
to enable using Stratis filesystems as the root filesystem for
a Linux install.
%package tools
Summary: Tools that support Stratis operation
ExclusiveArch: %{rust_arches}
%if 0%{?rhel}
ExcludeArch: i686
%endif
Requires: stratisd
%description tools
%{summary}.
%prep
%setup -q
tar --strip-components=1 --extract --verbose --file %{SOURCE2}
# Patches must be applied after the upstream package is extracted.
%if 0%{?rhel} && !0%{?eln}
%if 0%{?rhel}
# Source1 is vendored dependencies
%cargo_prep -V 1
%else
%cargo_prep
%generate_buildrequires
%cargo_generate_buildrequires -f dbus_enabled,min,systemd_compat
%cargo_generate_buildrequires -f engine,dbus_enabled,min,systemd_compat,extras,udev_scripts
%endif
%build
%if 0%{?rhel} && !0%{?eln}
%{cargo_build} --bin=stratisd
%{cargo_build} --bin=stratis-min --bin=stratisd-min --bin=stratis-utils --no-default-features --features min,systemd_compat
%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_license_summary -f engine,dbus_enabled,min,systemd_compat,extras,udev_scripts
%{cargo_license -f engine,dbus_enabled,min,systemd_compat,extras,udev_scripts} > LICENSE.dependencies
%{__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 min,systemd_compat
%{__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
%make_install DRACUTDIR=%{dracutdir} PROFILEDIR=release
%if %{with check}
%check
%if 0%{?rhel} && !0%{?eln}
%cargo_test --no-run
%else
# Compile stratisd tests only where package does not use vendoring.
# This is a temporary step, to address the problem of loopdev crate
# 0.4.0 failing to build properly in some situations due to a failure of
# bindgen 0.59.0.
# See https://github.com/stratis-storage/project/issues/607
%if !0%{?rhel}
%cargo_test -- --no-run
%endif
%endif
@ -120,6 +141,10 @@ a2x -f manpage docs/stratisd.txt
%files
%license LICENSE
%if 0%{?rhel}
%else
%license LICENSE.dependencies
%endif
%doc README.md
%{_libexecdir}/stratisd
%dir %{_datadir}/dbus-1
@ -149,7 +174,22 @@ a2x -f manpage docs/stratisd.txt
%{_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
* Tue May 16 2023 Bryan Gurney <bgurney@redhat.com> - 3.5.5-1
- Update to version 3.5.5
- Resolves: rhbz#2167463
- Take into account the sector size of crypt devices
- Resolves: rhbz#2170318
- Add stratisd-tools package with stratis-dumpmetadata program
- Resolves: rhbz#2173726
- Support key description key in kernel keyring
- Resolves: rhbz#2038492
* Tue Jan 03 2023 Bryan Gurney <bgurney@redhat.com> - 3.4.4-1
- Use devicemapper-rs version 0.32.3
- Resolves: rhbz#2155689

View File

@ -15,4 +15,4 @@
repositories:
- repo: "https://github.com/stratis-storage/testing.git"
dest: "testing"
version: "v3.4.0"
version: "v3.5.2"