Vendor gdisk until we are ready to move to sfdisk
gdisk is being removed in CentOS Stream 10. In order to not have to maintain gdisk only for Ignition in CentOS Stream 10, we are migrating ignition from gdisk to sfdisk. This is migration is not ready yet but we want to remove gdisk from CentOS Stream 10 as soon as possible thus we are removing the dependency here and vendoring gdisk in this package instead. Install sgdisk to /usr/libexec/ignition-sgdisk. We will include a dracut module that will install in the PATH only in the initramfs. Bump gdisk to 1.0.10 to fix build failures, matching what is currently in Fedora 40. Resolves: RHEL-56080
This commit is contained in:
parent
98036e4780
commit
6e48bd528c
1
.gitignore
vendored
1
.gitignore
vendored
@ -63,3 +63,4 @@
|
|||||||
/ignition-2.16.1.tar.gz
|
/ignition-2.16.1.tar.gz
|
||||||
/ignition-2.16.2.tar.gz
|
/ignition-2.16.2.tar.gz
|
||||||
/ignition-2.17.0.tar.gz
|
/ignition-2.17.0.tar.gz
|
||||||
|
/gptfdisk-*.tar.gz
|
||||||
|
@ -10,6 +10,11 @@
|
|||||||
%global ignedgecommit a3a8f0abb2a1c7fc1c9e5d0e7a3e8830b2e2d766
|
%global ignedgecommit a3a8f0abb2a1c7fc1c9e5d0e7a3e8830b2e2d766
|
||||||
%global ignedgeshortcommit %(c=%{ignedgecommit}; echo ${c:0:7})
|
%global ignedgeshortcommit %(c=%{ignedgecommit}; echo ${c:0:7})
|
||||||
|
|
||||||
|
%if 0%{?rhel} && 0%{?rhel} == 10
|
||||||
|
# For vendored gdisk
|
||||||
|
%global gdiskversion 1.0.10
|
||||||
|
%endif
|
||||||
|
|
||||||
# https://github.com/coreos/ignition
|
# https://github.com/coreos/ignition
|
||||||
%global goipath github.com/coreos/ignition
|
%global goipath github.com/coreos/ignition
|
||||||
%global gomodulesmode GO111MODULE=on
|
%global gomodulesmode GO111MODULE=on
|
||||||
@ -22,14 +27,17 @@ Version: 2.17.0
|
|||||||
%global dracutlibdir %{_prefix}/lib/dracut
|
%global dracutlibdir %{_prefix}/lib/dracut
|
||||||
|
|
||||||
Name: ignition
|
Name: ignition
|
||||||
Release: 6%{?dist}
|
Release: 7%{?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
|
||||||
License: Apache-2.0
|
# gdisk: GPLv2
|
||||||
|
License: Apache-2.0 AND GPLv2
|
||||||
URL: %{gourl}
|
URL: %{gourl}
|
||||||
Source0: %{gosource}
|
Source0: %{gosource}
|
||||||
Source1: https://github.com/fedora-iot/ignition-edge/archive/%{ignedgecommit}/ignition-edge-%{ignedgeshortcommit}.tar.gz
|
Source1: https://github.com/fedora-iot/ignition-edge/archive/%{ignedgecommit}/ignition-edge-%{ignedgeshortcommit}.tar.gz
|
||||||
|
# For vendored gdisk
|
||||||
|
Source2: http://downloads.sourceforge.net/gptfdisk/gptfdisk-%{gdiskversion}.tar.gz
|
||||||
|
|
||||||
BuildRequires: libblkid-devel
|
BuildRequires: libblkid-devel
|
||||||
BuildRequires: systemd-rpm-macros
|
BuildRequires: systemd-rpm-macros
|
||||||
@ -42,6 +50,15 @@ Requires: dosfstools
|
|||||||
Requires: dracut
|
Requires: dracut
|
||||||
Requires: dracut-network
|
Requires: dracut-network
|
||||||
|
|
||||||
|
%if 0%{?rhel} && 0%{?rhel} == 10
|
||||||
|
# For vendored gdisk
|
||||||
|
BuildRequires: gcc-c++
|
||||||
|
BuildRequires: libuuid-devel
|
||||||
|
BuildRequires: make
|
||||||
|
BuildRequires: ncurses-devel
|
||||||
|
BuildRequires: popt-devel
|
||||||
|
%endif
|
||||||
|
|
||||||
# Generated by `go-mods-to-bundled-provides.py | sort`
|
# Generated by `go-mods-to-bundled-provides.py | sort`
|
||||||
Provides: bundled(golang(cloud.google.com/go/compute/metadata)) = 0.2.3
|
Provides: bundled(golang(cloud.google.com/go/compute/metadata)) = 0.2.3
|
||||||
Provides: bundled(golang(cloud.google.com/go/storage)) = 1.35.1
|
Provides: bundled(golang(cloud.google.com/go/storage)) = 1.35.1
|
||||||
@ -240,6 +257,11 @@ This package contains the grub2 config which is compatable with bootupd.
|
|||||||
|
|
||||||
tar xvf %{SOURCE1}
|
tar xvf %{SOURCE1}
|
||||||
|
|
||||||
|
%if 0%{?rhel} && 0%{?rhel} == 10
|
||||||
|
# Prep vendored gdisk
|
||||||
|
tar xvf %{SOURCE2}
|
||||||
|
%endif
|
||||||
|
|
||||||
%build
|
%build
|
||||||
export LDFLAGS="-X github.com/coreos/ignition/v2/internal/version.Raw=%{version} -X github.com/coreos/ignition/v2/internal/distro.selinuxRelabel=true "
|
export LDFLAGS="-X github.com/coreos/ignition/v2/internal/version.Raw=%{version} -X github.com/coreos/ignition/v2/internal/distro.selinuxRelabel=true "
|
||||||
%if 0%{?rhel} && 0%{?rhel} <= 8
|
%if 0%{?rhel} && 0%{?rhel} <= 8
|
||||||
@ -275,6 +297,12 @@ echo "Building Windows ignition-validate..."
|
|||||||
GOARCH=amd64 GOOS=windows %gocrossbuild -o ./ignition-validate-x86_64-pc-windows-gnu.exe validate/main.go
|
GOARCH=amd64 GOOS=windows %gocrossbuild -o ./ignition-validate-x86_64-pc-windows-gnu.exe validate/main.go
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
%if 0%{?rhel} && 0%{?rhel} == 10
|
||||||
|
# Build vendored gdisk
|
||||||
|
cd gptfdisk-%{gdiskversion}
|
||||||
|
make CXXFLAGS="%{optflags} -D_FILE_OFFSET_BITS=64" LDFLAGS="%{build_ldflags}"
|
||||||
|
%endif
|
||||||
|
|
||||||
%install
|
%install
|
||||||
# dracut modules
|
# dracut modules
|
||||||
install -d -p %{buildroot}/%{dracutlibdir}/modules.d
|
install -d -p %{buildroot}/%{dracutlibdir}/modules.d
|
||||||
@ -309,6 +337,13 @@ install -p -m 0755 ./ignition %{buildroot}/%{dracutlibdir}/modules.d/30ignition
|
|||||||
|
|
||||||
%make_install -C ignition-edge-%{ignedgecommit}
|
%make_install -C ignition-edge-%{ignedgecommit}
|
||||||
|
|
||||||
|
%if 0%{?rhel} && 0%{?rhel} == 10
|
||||||
|
# Install vendored gdisk
|
||||||
|
cd gptfdisk-%{gdiskversion}
|
||||||
|
install -D -p -m 0755 sgdisk %{buildroot}%{_libexecdir}/ignition-sgdisk
|
||||||
|
install -D -p -m 644 COPYING %{buildroot}%{_datadir}/licenses/gdisk/COPYING
|
||||||
|
%endif
|
||||||
|
|
||||||
%if %{with check}
|
%if %{with check}
|
||||||
%check
|
%check
|
||||||
# Exclude the blackbox tests
|
# Exclude the blackbox tests
|
||||||
@ -322,6 +357,9 @@ install -p -m 0755 ./ignition %{buildroot}/%{dracutlibdir}/modules.d/30ignition
|
|||||||
%{_unitdir}/ignition-delete-config.service
|
%{_unitdir}/ignition-delete-config.service
|
||||||
%{_libexecdir}/ignition-apply
|
%{_libexecdir}/ignition-apply
|
||||||
%{_libexecdir}/ignition-rmcfg
|
%{_libexecdir}/ignition-rmcfg
|
||||||
|
# Vendored gdisk
|
||||||
|
%{_libexecdir}/ignition-sgdisk
|
||||||
|
%{_datadir}/licenses/gdisk/COPYING
|
||||||
|
|
||||||
%files validate
|
%files validate
|
||||||
%doc README.md
|
%doc README.md
|
||||||
@ -360,6 +398,9 @@ install -p -m 0755 ./ignition %{buildroot}/%{dracutlibdir}/modules.d/30ignition
|
|||||||
%{_libdir}/bootupd/grub2-static/configs.d/ignition.cfg
|
%{_libdir}/bootupd/grub2-static/configs.d/ignition.cfg
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Aug 22 2024 Timothée Ravier <tim@siosm.fr> - 2.17.0-7
|
||||||
|
- Vendor gdisk
|
||||||
|
|
||||||
* Thu Aug 22 2024 Timothée Ravier <tim@siosm.fr> - 2.17.0-6
|
* Thu Aug 22 2024 Timothée Ravier <tim@siosm.fr> - 2.17.0-6
|
||||||
- Remove gdisk require to prepare for the sfdisk migration
|
- Remove gdisk require to prepare for the sfdisk migration
|
||||||
|
|
||||||
|
1
sources
1
sources
@ -1,2 +1,3 @@
|
|||||||
|
SHA512 (gptfdisk-1.0.10.tar.gz) = 76764e176cd92470648a1d7a8d2570ebc41005204e73b0f2dd5a7aff2fc1981d3bec61a3bd68b855cc3474bcb7cf49c1cb2ea25843d4e7945bef7648d548383d
|
||||||
SHA512 (ignition-2.17.0.tar.gz) = cfbe1ec0fbeee66e568b2943a6893d11f3965867f85dc4005b3dc10299f314bf7e64141c68867a8422dfd911534011a714631c78921abebbaaa0d9705cb5a336
|
SHA512 (ignition-2.17.0.tar.gz) = cfbe1ec0fbeee66e568b2943a6893d11f3965867f85dc4005b3dc10299f314bf7e64141c68867a8422dfd911534011a714631c78921abebbaaa0d9705cb5a336
|
||||||
SHA512 (ignition-edge-a3a8f0a.tar.gz) = ef04cd411752f1b48fdb64ae8e45a2234b635a19ead82483cb33e246697e6ae639f6036030e7647913f5f589532f3d015bcc81848db50ebe8800242f6f23230a
|
SHA512 (ignition-edge-a3a8f0a.tar.gz) = ef04cd411752f1b48fdb64ae8e45a2234b635a19ead82483cb33e246697e6ae639f6036030e7647913f5f589532f3d015bcc81848db50ebe8800242f6f23230a
|
||||||
|
Loading…
Reference in New Issue
Block a user