[pve-devel] [PATCH manager v1 3/3] pveceph: print repo metadata when installing from manual
Aaron Lauterer
a.lauterer at proxmox.com
Wed May 28 18:46:30 CEST 2025
By printing the site and component, the person installing it manuall has
a final check to see if the correct repository is being used.
Signed-off-by: Aaron Lauterer <a.lauterer at proxmox.com>
---
Notes:
I intially tried to get the repo definition similar to how it is in the
.list file and printed by apt-cache policy {package} but failed so far,
getting that info via AptPkg::Cache. Therefore, I used what I found so far.
PVE/CLI/pveceph.pm | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/PVE/CLI/pveceph.pm b/PVE/CLI/pveceph.pm
index bff7ba70..4cf5ff27 100755
--- a/PVE/CLI/pveceph.pm
+++ b/PVE/CLI/pveceph.pm
@@ -223,7 +223,6 @@ __PACKAGE__->register_method ({
};
if ($repo eq "manual") {
- # TODO: get used repo metadata and print it as additional info
my $apt_cache = AptPkg::Cache->new() || die "unable to initialize AptPkg::Cache\n";
my @ceph_versions = $apt_cache->{'ceph-common:amd64'}->{'VersionList'}->@*;
my $latest_available = $ceph_versions[0]->{'VerStr'};
@@ -231,6 +230,12 @@ __PACKAGE__->register_method ({
die "Selected Ceph version '${selected_version}' does not match the available version in the repository '${latest_available}' \n"
if ($latest_available !~ "^$selected_version");
+
+ my $pkg_infos = $ceph_versions[0]->{'FileList'}[0]->{'File'};
+ print "\nUsing the following manual repository:\n"
+ ."Site:\t\t $pkg_infos->{'Site'}\n"
+ ."Component:\t $pkg_infos->{'Component'}\n\n";
+
}
my @apt_install = qw(apt-get --no-install-recommends -o Dpkg::Options::=--force-confnew install --);
--
2.39.5
More information about the pve-devel
mailing list