]> git.proxmox.com Git - pve-manager.git/commitdiff
api: nodes: add full info about current kernel from uname call
authorThomas Lamprecht <t.lamprecht@proxmox.com>
Wed, 22 Nov 2023 12:19:34 +0000 (13:19 +0100)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Wed, 22 Nov 2023 12:45:42 +0000 (13:45 +0100)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
PVE/API2/Nodes.pm

index be000d945e5577fa5465d6632bc80e1ab40854a1..f4b70b3d9d5be1d0092dabfebe1d5b19215c5264 100644 (file)
@@ -342,6 +342,19 @@ __PACKAGE__->register_method ({
        return PVE::pvecfg::version_info();
     }});
 
+my sub get_current_kernel_info {
+    my ($sysname, $nodename, $release, $version, $machine) = POSIX::uname();
+
+    my $kernel_version_string = "$sysname $release $version"; # for legacy compat
+    my $current_kernel = {
+       sysname => $sysname,
+       release => $release,
+       version => $version,
+       machine => $machine,
+    };
+    return ($current_kernel, $kernel_version_string);
+}
+
 __PACKAGE__->register_method({
     name => 'status',
     path => 'status',
@@ -377,9 +390,9 @@ __PACKAGE__->register_method({
        my ($avg1, $avg5, $avg15) = PVE::ProcFSTools::read_loadavg();
        $res->{loadavg} = [ $avg1, $avg5, $avg15];
 
-       my ($sysname, $nodename, $release, $version, $machine) = POSIX::uname();
-
-       $res->{kversion} = "$sysname $release $version";
+       my ($current_kernel_info, $kversion_string) = get_current_kernel_info();
+       $res->{kversion} = $kversion_string;
+       $res->{'current-kernel'} = $current_kernel_info;
 
        $res->{cpuinfo} = PVE::ProcFSTools::read_cpuinfo();