import CS bootc-1.1.6-2.el10
This commit is contained in:
parent
ebd1fb97fe
commit
29a3de152c
@ -1,2 +0,0 @@
|
|||||||
f845ad2a14b147102fd407cff8c75f46f18485e6 SOURCES/bootc-1.1.5-vendor.tar.zstd
|
|
||||||
77fd4b2f65b52577b0f8a3c6679b04ce5eff47ac SOURCES/bootc-1.1.5.tar.zstd
|
|
4
.gitignore
vendored
4
.gitignore
vendored
@ -1,2 +1,2 @@
|
|||||||
SOURCES/bootc-1.1.5-vendor.tar.zstd
|
bootc-1.1.6-vendor.tar.zstd
|
||||||
SOURCES/bootc-1.1.5.tar.zstd
|
bootc-1.1.6.tar.zstd
|
||||||
|
127
0001-store-Really-remove-empty-etc-resolv.conf-and-etc-ho.patch
Normal file
127
0001-store-Really-remove-empty-etc-resolv.conf-and-etc-ho.patch
Normal file
@ -0,0 +1,127 @@
|
|||||||
|
From 7473ffd0bd0e30aecfd1af67f3ef7a69af4a4645 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Colin Walters <walters@verbum.org>
|
||||||
|
Date: Wed, 5 Mar 2025 12:58:07 -0500
|
||||||
|
Subject: [PATCH] store: Really remove empty /etc/resolv.conf and /etc/hostname
|
||||||
|
|
||||||
|
The previous change here was a no-op for two reasons:
|
||||||
|
|
||||||
|
- It's actually usr/etc at this point
|
||||||
|
- We were operating on the wrong rootfs
|
||||||
|
|
||||||
|
Fixes: https://github.com/containers/bootc/pull/1096/commits/57bd0dc9835669274696998386a547afb6709ff5
|
||||||
|
Signed-off-by: Colin Walters <walters@verbum.org>
|
||||||
|
---
|
||||||
|
ostree-ext/src/container/store.rs | 32 +++++++++++---------
|
||||||
|
tests/booted/readonly/011-test-resolvconf.nu | 23 ++++++++++++++
|
||||||
|
2 files changed, 40 insertions(+), 15 deletions(-)
|
||||||
|
create mode 100644 tests/booted/readonly/011-test-resolvconf.nu
|
||||||
|
|
||||||
|
diff --git a/ostree-ext/src/container/store.rs b/ostree-ext/src/container/store.rs
|
||||||
|
index 71a9824..2b3f5df 100644
|
||||||
|
--- a/ostree-ext/src/container/store.rs
|
||||||
|
+++ b/ostree-ext/src/container/store.rs
|
||||||
|
@@ -466,7 +466,7 @@ fn timestamp_of_manifest_or_config(
|
||||||
|
/// Automatically clean up files that may have been injected by container
|
||||||
|
/// builds. xref https://github.com/containers/buildah/issues/4242
|
||||||
|
fn cleanup_root(root: &Dir) -> Result<()> {
|
||||||
|
- const RUNTIME_INJECTED: &[&str] = &["etc/hostname", "etc/resolv.conf"];
|
||||||
|
+ const RUNTIME_INJECTED: &[&str] = &["usr/etc/hostname", "usr/etc/resolv.conf"];
|
||||||
|
for ent in RUNTIME_INJECTED {
|
||||||
|
if let Some(meta) = root.symlink_metadata_optional(ent)? {
|
||||||
|
if meta.is_file() && meta.size() == 0 {
|
||||||
|
@@ -1055,6 +1055,8 @@ impl ImageImporter {
|
||||||
|
.with_context(|| format!("Checking out layer {commit}"))?;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ let root_dir = td.open_dir(rootpath)?;
|
||||||
|
+
|
||||||
|
let modifier =
|
||||||
|
ostree::RepoCommitModifier::new(ostree::RepoCommitModifierFlags::CONSUME, None);
|
||||||
|
modifier.set_devino_cache(&devino);
|
||||||
|
@@ -1062,8 +1064,7 @@ impl ImageImporter {
|
||||||
|
// the derived layers include custom policy. Just relabel everything
|
||||||
|
// in this case.
|
||||||
|
if have_derived_layers {
|
||||||
|
- let rootpath = td.open_dir(rootpath)?;
|
||||||
|
- let sepolicy = ostree::SePolicy::new_at(rootpath.as_raw_fd(), cancellable)?;
|
||||||
|
+ let sepolicy = ostree::SePolicy::new_at(root_dir.as_raw_fd(), cancellable)?;
|
||||||
|
tracing::debug!("labeling from merged tree");
|
||||||
|
modifier.set_sepolicy(Some(&sepolicy));
|
||||||
|
} else if let Some(base) = base_commit.as_ref() {
|
||||||
|
@@ -1074,7 +1075,7 @@ impl ImageImporter {
|
||||||
|
unreachable!()
|
||||||
|
}
|
||||||
|
|
||||||
|
- cleanup_root(&td)?;
|
||||||
|
+ cleanup_root(&root_dir)?;
|
||||||
|
|
||||||
|
let mt = ostree::MutableTree::new();
|
||||||
|
repo.write_dfd_to_mtree(
|
||||||
|
@@ -1965,23 +1966,24 @@ mod tests {
|
||||||
|
#[test]
|
||||||
|
fn test_cleanup_root() -> Result<()> {
|
||||||
|
let td = cap_tempfile::TempDir::new(cap_std::ambient_authority())?;
|
||||||
|
-
|
||||||
|
+ let usretc = "usr/etc";
|
||||||
|
cleanup_root(&td).unwrap();
|
||||||
|
- td.create_dir("etc")?;
|
||||||
|
- td.write("etc/hostname", b"hostname")?;
|
||||||
|
+ td.create_dir_all(usretc)?;
|
||||||
|
+ let usretc = &td.open_dir(usretc)?;
|
||||||
|
+ usretc.write("hostname", b"hostname")?;
|
||||||
|
cleanup_root(&td).unwrap();
|
||||||
|
- assert!(td.try_exists("etc/hostname")?);
|
||||||
|
- td.write("etc/hostname", b"")?;
|
||||||
|
+ assert!(usretc.try_exists("hostname")?);
|
||||||
|
+ usretc.write("hostname", b"")?;
|
||||||
|
cleanup_root(&td).unwrap();
|
||||||
|
- assert!(!td.try_exists("etc/hostname")?);
|
||||||
|
+ assert!(!td.try_exists("hostname")?);
|
||||||
|
|
||||||
|
- td.symlink_contents("../run/systemd/stub-resolv.conf", "etc/resolv.conf")?;
|
||||||
|
+ usretc.symlink_contents("../run/systemd/stub-resolv.conf", "resolv.conf")?;
|
||||||
|
cleanup_root(&td).unwrap();
|
||||||
|
- assert!(td.symlink_metadata("etc/resolv.conf")?.is_symlink());
|
||||||
|
- td.remove_file("etc/resolv.conf")?;
|
||||||
|
- td.write("etc/resolv.conf", b"")?;
|
||||||
|
+ assert!(usretc.symlink_metadata("resolv.conf")?.is_symlink());
|
||||||
|
+ usretc.remove_file("resolv.conf")?;
|
||||||
|
+ usretc.write("resolv.conf", b"")?;
|
||||||
|
cleanup_root(&td).unwrap();
|
||||||
|
- assert!(!td.try_exists("etc/resolv.conf")?);
|
||||||
|
+ assert!(!usretc.try_exists("resolv.conf")?);
|
||||||
|
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
|
diff --git a/tests/booted/readonly/011-test-resolvconf.nu b/tests/booted/readonly/011-test-resolvconf.nu
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..a5f8fe9
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tests/booted/readonly/011-test-resolvconf.nu
|
||||||
|
@@ -0,0 +1,23 @@
|
||||||
|
+use std assert
|
||||||
|
+use tap.nu
|
||||||
|
+
|
||||||
|
+tap begin "verify there's not an empty /etc/resolv.conf in the image"
|
||||||
|
+
|
||||||
|
+let st = bootc status --json | from json
|
||||||
|
+
|
||||||
|
+let booted_ostree = $st.status.booted.ostree.checksum;
|
||||||
|
+
|
||||||
|
+# ostree ls should probably have --json and a clean way to not error on ENOENT
|
||||||
|
+let resolvconf = ostree ls $booted_ostree /usr/etc | split row (char newline) | find resolv.conf
|
||||||
|
+if ($resolvconf | length) > 0 {
|
||||||
|
+ let parts = $resolvconf | first | split row -r '\s+'
|
||||||
|
+ let ty = $parts | first | split chars | first
|
||||||
|
+ # If resolv.conf exists in the image, currently require it in our
|
||||||
|
+ # test suite to be a symlink (which is hopefully to the systemd/stub-resolv.conf)
|
||||||
|
+ assert equal $ty 'l'
|
||||||
|
+ print "resolv.conf is a symlink"
|
||||||
|
+} else {
|
||||||
|
+ print "No resolv.conf found in commit"
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+tap ok
|
||||||
|
--
|
||||||
|
2.48.1
|
||||||
|
|
200
SPECS/bootc.spec
200
SPECS/bootc.spec
@ -1,200 +0,0 @@
|
|||||||
%bcond_without check
|
|
||||||
%if 0%{?rhel} >= 10 || 0%{?fedora} > 41
|
|
||||||
%bcond_without ostree_ext
|
|
||||||
%else
|
|
||||||
%bcond_with ostree_ext
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if 0%{?rhel}
|
|
||||||
%bcond_without rhsm
|
|
||||||
%else
|
|
||||||
%bcond_with rhsm
|
|
||||||
%endif
|
|
||||||
|
|
||||||
Name: bootc
|
|
||||||
Version: 1.1.5
|
|
||||||
Release: 1%{?dist}
|
|
||||||
Summary: Bootable container system
|
|
||||||
|
|
||||||
# Apache-2.0
|
|
||||||
# Apache-2.0 OR BSL-1.0
|
|
||||||
# Apache-2.0 OR MIT
|
|
||||||
# Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT
|
|
||||||
# BSD-3-Clause
|
|
||||||
# MIT
|
|
||||||
# MIT OR Apache-2.0
|
|
||||||
# Unlicense OR MIT
|
|
||||||
License: Apache-2.0 AND BSD-3-Clause AND MIT AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (Unlicense OR MIT)
|
|
||||||
URL: https://github.com/containers/bootc
|
|
||||||
Source0: %{url}/releases/download/v%{version}/bootc-%{version}.tar.zstd
|
|
||||||
Source1: %{url}/releases/download/v%{version}/bootc-%{version}-vendor.tar.zstd
|
|
||||||
|
|
||||||
# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval
|
|
||||||
ExcludeArch: %{ix86}
|
|
||||||
|
|
||||||
BuildRequires: libzstd-devel
|
|
||||||
BuildRequires: make
|
|
||||||
BuildRequires: ostree-devel
|
|
||||||
BuildRequires: openssl-devel
|
|
||||||
%if 0%{?rhel}
|
|
||||||
BuildRequires: rust-toolset
|
|
||||||
%else
|
|
||||||
BuildRequires: cargo-rpm-macros >= 25
|
|
||||||
%endif
|
|
||||||
BuildRequires: systemd
|
|
||||||
# For tests
|
|
||||||
BuildRequires: skopeo ostree
|
|
||||||
|
|
||||||
# Backing storage tooling https://github.com/containers/composefs/issues/125
|
|
||||||
Requires: composefs
|
|
||||||
# For OS updates
|
|
||||||
Requires: ostree
|
|
||||||
Requires: skopeo
|
|
||||||
Requires: podman
|
|
||||||
# For bootloader updates
|
|
||||||
Recommends: bootupd
|
|
||||||
|
|
||||||
# A made up provides so that rpm-ostree can depend on it
|
|
||||||
%if %{with ostree_ext}
|
|
||||||
Provides: ostree-cli(ostree-container)
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%description
|
|
||||||
%{summary}
|
|
||||||
|
|
||||||
# (-n because we don't want the subpackage name to start with bootc-)
|
|
||||||
%package -n system-reinstall-bootc
|
|
||||||
Summary: Utility to reinstall the current system using bootc
|
|
||||||
Requires: podman
|
|
||||||
# The reinstall subpackage intentionally does not require bootc, as it pulls in many unnecessary dependencies
|
|
||||||
|
|
||||||
%description -n system-reinstall-bootc
|
|
||||||
This package provides a utility to simplify reinstalling the current system to a given bootc image.
|
|
||||||
|
|
||||||
%prep
|
|
||||||
%autosetup -p1 -a1
|
|
||||||
# Default -v vendor config doesn't support non-crates.io deps (i.e. git)
|
|
||||||
cp .cargo/vendor-config.toml .
|
|
||||||
%cargo_prep -N
|
|
||||||
cat vendor-config.toml >> .cargo/config.toml
|
|
||||||
rm vendor-config.toml
|
|
||||||
|
|
||||||
%build
|
|
||||||
# Build the main bootc binary
|
|
||||||
%if 0%{?fedora} || 0%{?rhel} >= 10
|
|
||||||
%cargo_build %{?with_rhsm:-f rhsm}
|
|
||||||
%else
|
|
||||||
%cargo_build %{?with_rhsm:--features rhsm}
|
|
||||||
%endif
|
|
||||||
|
|
||||||
# Build the system reinstallation CLI binary
|
|
||||||
%global cargo_args -p system-reinstall-bootc
|
|
||||||
%cargo_build
|
|
||||||
|
|
||||||
%cargo_vendor_manifest
|
|
||||||
# https://pagure.io/fedora-rust/rust-packaging/issue/33
|
|
||||||
sed -i -e '/https:\/\//d' cargo-vendor.txt
|
|
||||||
%cargo_license_summary
|
|
||||||
%{cargo_license} > LICENSE.dependencies
|
|
||||||
|
|
||||||
%install
|
|
||||||
%make_install INSTALL="install -p -c"
|
|
||||||
%if %{with ostree_ext}
|
|
||||||
make install-ostree-hooks DESTDIR=%{?buildroot}
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if %{with check}
|
|
||||||
%check
|
|
||||||
%cargo_test
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%files
|
|
||||||
%license LICENSE-MIT
|
|
||||||
%license LICENSE-APACHE
|
|
||||||
%license LICENSE.dependencies
|
|
||||||
%license cargo-vendor.txt
|
|
||||||
%doc README.md
|
|
||||||
%{_bindir}/bootc
|
|
||||||
%{_prefix}/lib/bootc/
|
|
||||||
%{_prefix}/lib/systemd/system-generators/*
|
|
||||||
%if %{with ostree_ext}
|
|
||||||
%{_prefix}/libexec/libostree/ext/*
|
|
||||||
%endif
|
|
||||||
%{_unitdir}/*
|
|
||||||
%{_docdir}/bootc/*
|
|
||||||
%{_mandir}/man*/bootc*
|
|
||||||
|
|
||||||
%files -n system-reinstall-bootc
|
|
||||||
%{_bindir}/system-reinstall-bootc
|
|
||||||
|
|
||||||
%changelog
|
|
||||||
* Mon Feb 10 2025 Joseph Marrero <jmarrero@fedoraproject.org> - 1.1.5-1
|
|
||||||
- Update to 1.1.5
|
|
||||||
- Resolves: #RHEL-77733
|
|
||||||
|
|
||||||
* Thu Jan 23 2025 John Eckersberg <jeckersb@redhat.com> - 1.1.4-2
|
|
||||||
- Cherry pick patches for bootc-status-updated
|
|
||||||
- Resolves: #RHEL-72862
|
|
||||||
|
|
||||||
* Tue Jan 14 2025 Joseph Marrero <jmarrero@fedoraproject.org> - 1.1.4-1
|
|
||||||
- Update to 1.1.4
|
|
||||||
Resolves: #RHEL-72862
|
|
||||||
|
|
||||||
* Thu Nov 07 2024 Joseph Marrero <jmarrero@fedoraproject.org> - 1.1.2-1
|
|
||||||
- Update to 1.1.2
|
|
||||||
Resolves: #RHEL-66258
|
|
||||||
|
|
||||||
* Thu Oct 17 2024 Joseph Marrero <jmarrero@fedoraproject.org> - 1.1.0-1
|
|
||||||
- Update to 1.1.0
|
|
||||||
Resolves: #RHEL-63018
|
|
||||||
|
|
||||||
* Fri Aug 16 2024 Colin Walters <walters@verbum.org> - 0.1.15-1
|
|
||||||
- Update to 0.1.15
|
|
||||||
Resolves: #RHEL-50625
|
|
||||||
|
|
||||||
* Thu Jul 25 2024 Joseph Marrero <jmarrero@fedoraproject.org> - 0.1.14-1
|
|
||||||
- Update to 0.1.14
|
|
||||||
Resolves: #RHEL-50625, #RHEL-45325, #RHEL-36003
|
|
||||||
|
|
||||||
* Fri Jun 28 2024 Colin Walters <walters@verbum.org> - 0.1.13-2
|
|
||||||
- Update to 0.1.13
|
|
||||||
|
|
||||||
* Tue Jun 25 2024 Colin Walters <walters@verbum.org> - 0.1.12-3
|
|
||||||
- Update to 0.1.12
|
|
||||||
|
|
||||||
* Wed May 15 2024 Colin Walters <walters@verbum.org> - 0.1.11-2
|
|
||||||
- Update to 0.1.11
|
|
||||||
|
|
||||||
* Fri Apr 26 2024 Colin Walters <walters@verbum.org> - 0.1.10-2
|
|
||||||
- Release 0.1.10
|
|
||||||
|
|
||||||
* Mon Apr 08 2024 Colin Walters <walters@verbum.org> - 0.1.9-4
|
|
||||||
- Correct JIRA link
|
|
||||||
Resolves: #RHEL-30878
|
|
||||||
|
|
||||||
* Thu Mar 28 2024 Colin Walters <walters@verbum.org> - 0.1.9-3
|
|
||||||
- Backport rollback
|
|
||||||
Related: #RHEL-30466
|
|
||||||
|
|
||||||
* Wed Mar 27 2024 Colin Walters <walters@verbum.org> - 0.1.9-2
|
|
||||||
- https://github.com/containers/bootc/releases/tag/v0.1.9
|
|
||||||
Resolves: #RHEL-30466
|
|
||||||
|
|
||||||
* Tue Mar 19 2024 Colin Walters <walters@verbum.org> - 0.1.8-2
|
|
||||||
- https://github.com/containers/bootc/releases/tag/v0.1.8
|
|
||||||
|
|
||||||
* Wed Feb 14 2024 Colin Walters <walters@verbum.org> - 0.1.7-4
|
|
||||||
- https://github.com/containers/bootc/releases/tag/v0.1.7
|
|
||||||
|
|
||||||
* Tue Jan 23 2024 Colin Walters <walters@verbum.org> - 0.1.6-2
|
|
||||||
- https://github.com/containers/bootc/releases/tag/v0.1.6
|
|
||||||
|
|
||||||
* Fri Jan 12 2024 Joseph Marrero <jmarrero@redhat.com> - 0.1.5-1
|
|
||||||
- Update to https://github.com/containers/bootc/releases/tag/v0.1.5
|
|
||||||
|
|
||||||
* Thu Jan 11 2024 Colin Walters <walters@verbum.org> - 0.1.4-3
|
|
||||||
- Loosen composefs requirement until it makes it into c9s
|
|
||||||
|
|
||||||
* Mon Dec 11 2023 Colin Walters <walters@verbum.org> - 0.1.4-2
|
|
||||||
- Initial import from fedora
|
|
||||||
|
|
277
bootc.spec
Normal file
277
bootc.spec
Normal file
@ -0,0 +1,277 @@
|
|||||||
|
## START: Set by rpmautospec
|
||||||
|
## (rpmautospec version 0.6.5)
|
||||||
|
## RPMAUTOSPEC: autorelease, autochangelog
|
||||||
|
%define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
|
||||||
|
release_number = 2;
|
||||||
|
base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
|
||||||
|
print(release_number + base_release_number - 1);
|
||||||
|
}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}}
|
||||||
|
## END: Set by rpmautospec
|
||||||
|
|
||||||
|
%bcond_without check
|
||||||
|
%if 0%{?rhel} >= 10 || 0%{?fedora} > 41
|
||||||
|
%bcond_without ostree_ext
|
||||||
|
%else
|
||||||
|
%bcond_with ostree_ext
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%if 0%{?rhel}
|
||||||
|
%bcond_without rhsm
|
||||||
|
%else
|
||||||
|
%bcond_with rhsm
|
||||||
|
%endif
|
||||||
|
|
||||||
|
Name: bootc
|
||||||
|
Version: 1.1.6
|
||||||
|
Release: %{autorelease}
|
||||||
|
Summary: Bootable container system
|
||||||
|
|
||||||
|
# Apache-2.0
|
||||||
|
# Apache-2.0 OR BSL-1.0
|
||||||
|
# Apache-2.0 OR MIT
|
||||||
|
# Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT
|
||||||
|
# BSD-3-Clause
|
||||||
|
# MIT
|
||||||
|
# MIT OR Apache-2.0
|
||||||
|
# Unlicense OR MIT
|
||||||
|
License: Apache-2.0 AND BSD-3-Clause AND MIT AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (Unlicense OR MIT)
|
||||||
|
URL: https://github.com/containers/bootc
|
||||||
|
Source0: %{url}/releases/download/v%{version}/bootc-%{version}.tar.zstd
|
||||||
|
Source1: %{url}/releases/download/v%{version}/bootc-%{version}-vendor.tar.zstd
|
||||||
|
|
||||||
|
Patch0: 0001-store-Really-remove-empty-etc-resolv.conf-and-etc-ho.patch
|
||||||
|
|
||||||
|
# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval
|
||||||
|
ExcludeArch: %{ix86}
|
||||||
|
|
||||||
|
BuildRequires: libzstd-devel
|
||||||
|
BuildRequires: make
|
||||||
|
BuildRequires: ostree-devel
|
||||||
|
BuildRequires: openssl-devel
|
||||||
|
%if 0%{?rhel}
|
||||||
|
BuildRequires: rust-toolset
|
||||||
|
%else
|
||||||
|
BuildRequires: cargo-rpm-macros >= 25
|
||||||
|
%endif
|
||||||
|
BuildRequires: systemd
|
||||||
|
# For tests
|
||||||
|
BuildRequires: skopeo ostree
|
||||||
|
|
||||||
|
# Backing storage tooling https://github.com/containers/composefs/issues/125
|
||||||
|
Requires: composefs
|
||||||
|
# For OS updates
|
||||||
|
Requires: ostree
|
||||||
|
Requires: skopeo
|
||||||
|
Requires: podman
|
||||||
|
# For bootloader updates
|
||||||
|
Recommends: bootupd
|
||||||
|
|
||||||
|
# A made up provides so that rpm-ostree can depend on it
|
||||||
|
%if %{with ostree_ext}
|
||||||
|
Provides: ostree-cli(ostree-container)
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%description
|
||||||
|
%{summary}
|
||||||
|
|
||||||
|
# (-n because we don't want the subpackage name to start with bootc-)
|
||||||
|
%package -n system-reinstall-bootc
|
||||||
|
Summary: Utility to reinstall the current system using bootc
|
||||||
|
Recommends: podman
|
||||||
|
# The reinstall subpackage intentionally does not require bootc, as it pulls in many unnecessary dependencies
|
||||||
|
|
||||||
|
%description -n system-reinstall-bootc
|
||||||
|
This package provides a utility to simplify reinstalling the current system to a given bootc image.
|
||||||
|
|
||||||
|
%global system_reinstall_bootc_install_podman_path %{_prefix}/lib/system-reinstall-bootc/install-podman
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -p1 -a1
|
||||||
|
# Default -v vendor config doesn't support non-crates.io deps (i.e. git)
|
||||||
|
cp .cargo/vendor-config.toml .
|
||||||
|
%cargo_prep -N
|
||||||
|
cat vendor-config.toml >> .cargo/config.toml
|
||||||
|
rm vendor-config.toml
|
||||||
|
|
||||||
|
%build
|
||||||
|
# Build the main bootc binary
|
||||||
|
%if 0%{?fedora} || 0%{?rhel} >= 10
|
||||||
|
%cargo_build %{?with_rhsm:-f rhsm}
|
||||||
|
%else
|
||||||
|
%cargo_build %{?with_rhsm:--features rhsm}
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# Build the system reinstallation CLI binary
|
||||||
|
%global cargo_args -p system-reinstall-bootc
|
||||||
|
export SYSTEM_REINSTALL_BOOTC_INSTALL_PODMAN_PATH=%{system_reinstall_bootc_install_podman_path}
|
||||||
|
%if 0%{?fedora} || 0%{?rhel} >= 10
|
||||||
|
# In cargo-rpm-macros, the cargo_build macro does flag processing,
|
||||||
|
# so we need to pass '--' to signify that cargo_args is not part
|
||||||
|
# of the macro args
|
||||||
|
%cargo_build -- %cargo_args
|
||||||
|
%else
|
||||||
|
# Older macros from rust-toolset do *not* do flag processing, so
|
||||||
|
# '--' would be passed through to cargo directly, which is not
|
||||||
|
# what we want.
|
||||||
|
%cargo_build %cargo_args
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%cargo_vendor_manifest
|
||||||
|
# https://pagure.io/fedora-rust/rust-packaging/issue/33
|
||||||
|
sed -i -e '/https:\/\//d' cargo-vendor.txt
|
||||||
|
%cargo_license_summary
|
||||||
|
%{cargo_license} > LICENSE.dependencies
|
||||||
|
|
||||||
|
%install
|
||||||
|
%make_install INSTALL="install -p -c"
|
||||||
|
%if %{with ostree_ext}
|
||||||
|
make install-ostree-hooks DESTDIR=%{?buildroot}
|
||||||
|
%endif
|
||||||
|
mkdir -p %{buildroot}/%{dirname:%{system_reinstall_bootc_install_podman_path}}
|
||||||
|
cat >%{?buildroot}/%{system_reinstall_bootc_install_podman_path} <<EOF
|
||||||
|
#!/bin/bash
|
||||||
|
exec dnf -y install podman
|
||||||
|
EOF
|
||||||
|
chmod +x %{?buildroot}/%{system_reinstall_bootc_install_podman_path}
|
||||||
|
|
||||||
|
%if %{with check}
|
||||||
|
%check
|
||||||
|
%cargo_test
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%files
|
||||||
|
%license LICENSE-MIT
|
||||||
|
%license LICENSE-APACHE
|
||||||
|
%license LICENSE.dependencies
|
||||||
|
%license cargo-vendor.txt
|
||||||
|
%doc README.md
|
||||||
|
%{_bindir}/bootc
|
||||||
|
%{_prefix}/lib/bootc/
|
||||||
|
%{_prefix}/lib/systemd/system-generators/*
|
||||||
|
%if %{with ostree_ext}
|
||||||
|
%{_prefix}/libexec/libostree/ext/*
|
||||||
|
%endif
|
||||||
|
%{_unitdir}/*
|
||||||
|
%{_docdir}/bootc/*
|
||||||
|
%{_mandir}/man*/bootc*
|
||||||
|
|
||||||
|
%files -n system-reinstall-bootc
|
||||||
|
%{_bindir}/system-reinstall-bootc
|
||||||
|
%{system_reinstall_bootc_install_podman_path}
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
## START: Generated by rpmautospec
|
||||||
|
* Thu Mar 06 2025 Joseph Marrero Corchado <jmarrero@redhat.com> - 1.1.6-2
|
||||||
|
- Backport https://github.com/containers/bootc/pull/1167
|
||||||
|
|
||||||
|
* Mon Mar 03 2025 Colin Walters <walters@verbum.org> - 1.1.6-1
|
||||||
|
- Update to 1.1.6
|
||||||
|
|
||||||
|
* Wed Feb 19 2025 John Eckersberg <jeckersb@redhat.com> - 1.1.5-2
|
||||||
|
- resync specfile from upstream
|
||||||
|
|
||||||
|
* Mon Feb 10 2025 Joseph Marrero Corchado <jmarrero@redhat.com> - 1.1.5-1
|
||||||
|
- Rebase to bootc 1.1.5
|
||||||
|
|
||||||
|
* Thu Jan 23 2025 John Eckersberg <jeckersb@redhat.com> - 1.1.4-3
|
||||||
|
- Cherry pick patch for bootc-status-updated-onboot
|
||||||
|
|
||||||
|
* Tue Jan 21 2025 Colin Walters <walters@verbum.org> - 1.1.4-2
|
||||||
|
- Cherry pick patch for bootc-status-updated
|
||||||
|
|
||||||
|
* Wed Jan 15 2025 Joseph Marrero Corchado <jmarrero@redhat.com> - 1.1.4-1
|
||||||
|
- Release bootc 1.1.4
|
||||||
|
|
||||||
|
* Fri Jan 03 2025 Colin Walters <walters@verbum.org> - 1.1.3-4
|
||||||
|
- Reapply "Flip bcond ostree_ext on"
|
||||||
|
|
||||||
|
* Fri Jan 03 2025 Colin Walters <walters@verbum.org> - 1.1.3-3
|
||||||
|
- Revert "Flip bcond ostree_ext on"
|
||||||
|
|
||||||
|
* Thu Jan 02 2025 Colin Walters <walters@verbum.org> - 1.1.3-2
|
||||||
|
- Flip bcond ostree_ext on
|
||||||
|
|
||||||
|
* Thu Jan 02 2025 Colin Walters <walters@verbum.org> - 1.1.3-1
|
||||||
|
- Update to 1.1.3
|
||||||
|
|
||||||
|
* Thu Jan 02 2025 Colin Walters <walters@verbum.org> - 1.1.2-2
|
||||||
|
- Add a bcond with ostree_ext
|
||||||
|
|
||||||
|
* Thu Nov 07 2024 Joseph Marrero Corchado <jmarrero@redhat.com> - 1.1.2-1
|
||||||
|
- Upgrade to 1.1.2
|
||||||
|
|
||||||
|
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 1.1.0-2
|
||||||
|
- Bump release for October 2024 mass rebuild:
|
||||||
|
|
||||||
|
* Thu Oct 17 2024 Joseph Marrero Corchado <jmarrero@redhat.com> - 1.1.0-1
|
||||||
|
- Upgrade to 1.1.0
|
||||||
|
|
||||||
|
* Fri Sep 20 2024 Joseph Marrero Corchado <jmarrero@redhat.com> - 0.1.16-2
|
||||||
|
- rebuild
|
||||||
|
|
||||||
|
* Thu Sep 12 2024 Colin Walters <walters@verbum.org> - 0.1.16-1
|
||||||
|
- https://github.com/containers/bootc/releases/tag/v0.1.16
|
||||||
|
|
||||||
|
* Fri Aug 16 2024 Colin Walters <walters@verbum.org> - 0.1.15-1
|
||||||
|
- Update to 0.1.15
|
||||||
|
|
||||||
|
* Thu Jul 25 2024 Joseph Marrero <jmarrero@redhat.com> - 0.1.14-1
|
||||||
|
- Update to 0.1.14
|
||||||
|
|
||||||
|
* Fri Jun 28 2024 Colin Walters <walters@verbum.org> - 0.1.13-1
|
||||||
|
- Update to 0.1.13
|
||||||
|
|
||||||
|
* Wed Jun 26 2024 Wei Shi <wshi@redhat.com> - 0.1.12-2
|
||||||
|
- Add gating test for c10s
|
||||||
|
|
||||||
|
* Tue Jun 25 2024 Colin Walters <walters@verbum.org> - 0.1.12-1
|
||||||
|
- Release 0.1.12
|
||||||
|
|
||||||
|
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 0.1.11-2
|
||||||
|
- Bump release for June 2024 mass rebuild
|
||||||
|
|
||||||
|
* Sat Jun 08 2024 Colin Walters <walters@verbum.org> - 0.1.11-1
|
||||||
|
- bootc: Update to 0.1.11
|
||||||
|
|
||||||
|
* Thu Feb 01 2024 Yaakov Selkowitz <yselkowi@redhat.com> - 0.1.6-3
|
||||||
|
- Update Rust macro usage
|
||||||
|
|
||||||
|
* Tue Jan 23 2024 Colin Walters <walters@verbum.org> - 0.1.6-2
|
||||||
|
- Update %%files section
|
||||||
|
|
||||||
|
* Tue Jan 23 2024 Colin Walters <walters@verbum.org> - 0.1.6-1
|
||||||
|
- https://github.com/containers/bootc/releases/tag/v0.1.6
|
||||||
|
|
||||||
|
* Tue Jan 23 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.5-3
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||||
|
|
||||||
|
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.5-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||||
|
|
||||||
|
* Tue Dec 19 2023 Colin Walters <walters@verbum.org> - 0.1.5-1
|
||||||
|
- https://github.com/containers/bootc/releases/tag/v0.1.5
|
||||||
|
|
||||||
|
* Mon Dec 11 2023 Colin Walters <walters@verbum.org> - 0.1.4-3
|
||||||
|
- ExcludeArch: %%{ix86}
|
||||||
|
|
||||||
|
* Tue Dec 05 2023 Colin Walters <walters@verbum.org> - 0.1.4-2
|
||||||
|
- Requires: composefs
|
||||||
|
|
||||||
|
* Fri Nov 10 2023 Colin Walters <walters@verbum.org> - 0.1.4-1
|
||||||
|
- Update to 0.1.4
|
||||||
|
|
||||||
|
* Wed Nov 08 2023 Yaakov Selkowitz <yselkowi@redhat.com> - 0.1.3-2
|
||||||
|
- Fix build with rust-toolset
|
||||||
|
|
||||||
|
* Mon Nov 06 2023 Colin Walters <walters@verbum.org> - 0.1.3-1
|
||||||
|
- local build
|
||||||
|
|
||||||
|
* Tue Oct 24 2023 Colin Walters <walters@verbum.org> - 0.1.2-3
|
||||||
|
- Add Recommends: bootupd
|
||||||
|
|
||||||
|
* Sat Oct 21 2023 Colin Walters <walters@verbum.org> - 0.1.2-2
|
||||||
|
- Add a requirement on skopeo
|
||||||
|
|
||||||
|
* Sat Oct 21 2023 Colin Walters <walters@verbum.org> - 0.1.2-1
|
||||||
|
- Initial import
|
||||||
|
## END: Generated by rpmautospec
|
2
sources
Normal file
2
sources
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
SHA512 (bootc-1.1.6-vendor.tar.zstd) = 9fcd7356a1c97e704dd0b0f1aa2bc6929da65fd59a38031cf398bd3a1f8e5bb73d6b410a07a52767d41055785fbeeb0c31688a939ae2f5278e5dbc68ee700aa2
|
||||||
|
SHA512 (bootc-1.1.6.tar.zstd) = 977a26e4739ba623389c51efa7122ab14b2efd7ca15d210a0eb51918ec52492c70286396f7fc25ab0615038939c0c0890fad116126b0076748c7f40c9a912f41
|
Loading…
Reference in New Issue
Block a user