From b991b370a5c659803517c85cef53f838595ac2af Mon Sep 17 00:00:00 2001 From: Gerald Pinder Date: Sun, 6 Oct 2024 00:35:25 -0400 Subject: [PATCH] fix: Use full json inspection for docker inspect driver --- process/drivers/docker_driver.rs | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/process/drivers/docker_driver.rs b/process/drivers/docker_driver.rs index 33ae7d1..19f3d61 100644 --- a/process/drivers/docker_driver.rs +++ b/process/drivers/docker_driver.rs @@ -38,20 +38,31 @@ use super::{ #[derive(Deserialize, Debug, Clone)] struct DockerImageMetadata { - config: DockerImageMetadataConfig, - annotations: HashMap, + manifest: DockerImageMetadataManifest, + image: DockerImageMetadataImage, } #[derive(Deserialize, Debug, Clone)] -struct DockerImageMetadataConfig { +struct DockerImageMetadataManifest { digest: String, } +#[derive(Deserialize, Debug, Clone)] +struct DockerImageMetadataImage { + config: DockerImageConfig, +} + +#[derive(Deserialize, Debug, Clone)] +#[serde(rename_all = "PascalCase")] +struct DockerImageConfig { + labels: HashMap, +} + impl From for ImageMetadata { fn from(value: DockerImageMetadata) -> Self { Self { - labels: value.annotations, - digest: value.config.digest, + labels: value.image.config.labels, + digest: value.manifest.digest, } } } @@ -361,7 +372,8 @@ impl InspectDriver for DockerDriver { }, "imagetools", "inspect", - "--raw", + "--format", + "{{json .}}", &url ); trace!("{command:?}");