Rename -validate-nonlinux to -redistributable; add static Linux binaries

Don't Provide the old package name, since no one should be installing it.
This commit is contained in:
Benjamin Gilbert 2022-01-28 04:52:28 -05:00
parent 7332568141
commit de340079e8

View File

@ -19,7 +19,7 @@ Version: 2.13.0
%global dracutlibdir %{_prefix}/lib/dracut %global dracutlibdir %{_prefix}/lib/dracut
Name: ignition Name: ignition
Release: 3%{?dist} Release: 4%{?dist}
Summary: First boot installer and configuration tool Summary: First boot installer and configuration tool
# Upstream license specification: Apache-2.0 # Upstream license specification: Apache-2.0
@ -217,22 +217,26 @@ the configuration.
This package contains a tool for validating Ignition configurations. This package contains a tool for validating Ignition configurations.
############## validate-nonlinux subpackage ############## ############## validate-redistributable subpackage ##############
%if 0%{?fedora} %if 0%{?fedora}
%package validate-nonlinux %package validate-redistributable
Summary: Validation tool for Ignition configs for macOS and Windows Summary: Statically linked validation tool for Ignition configs
License: ASL 2.0 License: ASL 2.0
BuildArch: noarch BuildArch: noarch
Conflicts: ignition < 0.31.0-3 Conflicts: ignition < 0.31.0-3
%description validate-nonlinux # In case someone has this subpackage installed, obsolete the old name
This package contains macOS and Windows ignition-validate binaries built # Drop in Fedora 38
through cross-compilation. Do not install it. It is only used for Obsoletes: ignition-validate-nonlinux < 2.13.0-4
building binaries to sign by Fedora release engineering and include on the
Ignition project's Github releases page. %description validate-redistributable
This package contains statically linked Linux, macOS, and Windows
ignition-validate binaries built through cross-compilation. Do not install it.
It is only used for building release binaries to be signed by Fedora release
engineering and uploaded to the Ignition GitHub releases page.
%endif %endif
%prep %prep
@ -260,6 +264,12 @@ echo "Building ignition-validate..."
%global gocrossbuild go build -ldflags "${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n')" -a -v -x %global gocrossbuild go build -ldflags "${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n')" -a -v -x
%if 0%{?fedora} %if 0%{?fedora}
echo "Building statically-linked Linux ignition-validate..."
CGO_ENABLED=0 GOARCH=arm64 GOOS=linux %gocrossbuild -o ./ignition-validate-aarch64-unknown-linux-gnu-static validate/main.go
CGO_ENABLED=0 GOARCH=ppc64le GOOS=linux %gocrossbuild -o ./ignition-validate-ppc64le-unknown-linux-gnu-static validate/main.go
CGO_ENABLED=0 GOARCH=s390x GOOS=linux %gocrossbuild -o ./ignition-validate-s390x-unknown-linux-gnu-static validate/main.go
CGO_ENABLED=0 GOARCH=amd64 GOOS=linux %gocrossbuild -o ./ignition-validate-x86_64-unknown-linux-gnu-static validate/main.go
echo "Building macOS ignition-validate..." echo "Building macOS ignition-validate..."
GOARCH=amd64 GOOS=darwin %gocrossbuild -o ./ignition-validate-x86_64-apple-darwin validate/main.go GOARCH=amd64 GOOS=darwin %gocrossbuild -o ./ignition-validate-x86_64-apple-darwin validate/main.go
@ -278,8 +288,12 @@ install -p -m 0755 ./ignition-validate %{buildroot}%{_bindir}
%if 0%{?fedora} %if 0%{?fedora}
install -d -p %{buildroot}%{_datadir}/ignition install -d -p %{buildroot}%{_datadir}/ignition
install -p -m 0644 ./ignition-validate-aarch64-unknown-linux-gnu-static %{buildroot}%{_datadir}/ignition
install -p -m 0644 ./ignition-validate-ppc64le-unknown-linux-gnu-static %{buildroot}%{_datadir}/ignition
install -p -m 0644 ./ignition-validate-s390x-unknown-linux-gnu-static %{buildroot}%{_datadir}/ignition
install -p -m 0644 ./ignition-validate-x86_64-apple-darwin %{buildroot}%{_datadir}/ignition install -p -m 0644 ./ignition-validate-x86_64-apple-darwin %{buildroot}%{_datadir}/ignition
install -p -m 0644 ./ignition-validate-x86_64-pc-windows-gnu.exe %{buildroot}%{_datadir}/ignition install -p -m 0644 ./ignition-validate-x86_64-pc-windows-gnu.exe %{buildroot}%{_datadir}/ignition
install -p -m 0644 ./ignition-validate-x86_64-unknown-linux-gnu-static %{buildroot}%{_datadir}/ignition
%endif %endif
# The ignition binary is only for dracut, and is dangerous to run from # The ignition binary is only for dracut, and is dangerous to run from
@ -303,14 +317,22 @@ install -p -m 0755 ./ignition %{buildroot}/%{dracutlibdir}/modules.d/30ignition
%{_bindir}/ignition-validate %{_bindir}/ignition-validate
%if 0%{?fedora} %if 0%{?fedora}
%files validate-nonlinux %files validate-redistributable
%license %{golicenses} %license %{golicenses}
%dir %{_datadir}/ignition %dir %{_datadir}/ignition
%{_datadir}/ignition/ignition-validate-aarch64-unknown-linux-gnu-static
%{_datadir}/ignition/ignition-validate-ppc64le-unknown-linux-gnu-static
%{_datadir}/ignition/ignition-validate-s390x-unknown-linux-gnu-static
%{_datadir}/ignition/ignition-validate-x86_64-apple-darwin %{_datadir}/ignition/ignition-validate-x86_64-apple-darwin
%{_datadir}/ignition/ignition-validate-x86_64-pc-windows-gnu.exe %{_datadir}/ignition/ignition-validate-x86_64-pc-windows-gnu.exe
%{_datadir}/ignition/ignition-validate-x86_64-unknown-linux-gnu-static
%endif %endif
%changelog %changelog
* Fri Jan 28 2022 Benjamin Gilbert <bgilbert@redhat.com> - 2.13.0-4
- Rename -validate-nonlinux subpackage to -validate-redistributable
- Add static Linux binaries to -redistributable
* Thu Jan 20 2022 Benjamin Gilbert <bgilbert@redhat.com> - 2.13.0-3 * Thu Jan 20 2022 Benjamin Gilbert <bgilbert@redhat.com> - 2.13.0-3
- Fix LUKS volume reuse - Fix LUKS volume reuse
- Avoid double patch application on non-Fedora - Avoid double patch application on non-Fedora