apt: use typed response for get_versions

...and cleanup get_versions for manager CLI.

Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
This commit is contained in:
Stefan Reiter 2020-11-12 10:12:54 +01:00 committed by Thomas Lamprecht
parent 87367decf2
commit 5e293f1315
2 changed files with 4 additions and 10 deletions

View File

@ -261,7 +261,7 @@ fn apt_get_changelog(
}, },
)] )]
/// Get package information for important Proxmox Backup Server packages. /// Get package information for important Proxmox Backup Server packages.
pub fn get_versions() -> Result<Value, Error> { pub fn get_versions() -> Result<Vec<APTUpdateInfo>, Error> {
const PACKAGES: &[&str] = &[ const PACKAGES: &[&str] = &[
"ifupdown2", "ifupdown2",
"libjs-extjs", "libjs-extjs",
@ -350,7 +350,7 @@ pub fn get_versions() -> Result<Value, Error> {
} }
} }
Ok(json!(packages)) Ok(packages)
} }
const SUBDIRS: SubdirMap = &[ const SUBDIRS: SubdirMap = &[

View File

@ -383,14 +383,8 @@ async fn report() -> Result<Value, Error> {
async fn get_versions(verbose: bool, param: Value) -> Result<Value, Error> { async fn get_versions(verbose: bool, param: Value) -> Result<Value, Error> {
let output_format = get_output_format(&param); let output_format = get_output_format(&param);
let mut packages = if verbose { let packages = crate::api2::node::apt::get_versions()?;
crate::api2::node::apt::get_versions()? let mut packages = json!(if verbose { &packages[..] } else { &packages[0..1] });
} else {
// TODO: slice first element out in a nicer way?
let packages = crate::api2::node::apt::get_versions()?;
let packages = packages.as_array().unwrap();
Value::Array(vec![packages[0].to_owned()])
};
let options = default_table_format_options() let options = default_table_format_options()
.disable_sort() .disable_sort()