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.
pub fn get_versions() -> Result<Value, Error> {
pub fn get_versions() -> Result<Vec<APTUpdateInfo>, Error> {
const PACKAGES: &[&str] = &[
"ifupdown2",
"libjs-extjs",
@ -350,7 +350,7 @@ pub fn get_versions() -> Result<Value, Error> {
}
}
Ok(json!(packages))
Ok(packages)
}
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> {
let output_format = get_output_format(&param);
let mut packages = if verbose {
crate::api2::node::apt::get_versions()?
} 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 packages = crate::api2::node::apt::get_versions()?;
let mut packages = json!(if verbose { &packages[..] } else { &packages[0..1] });
let options = default_table_format_options()
.disable_sort()