1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
/*
* supports a RESTful API for the Libpod library
*
* This documentation describes the Podman v2.x+ RESTful API. It consists of a Docker-compatible API and a Libpod API providing support for Podman’s unique features such as pods. To start the service and keep it running for 5,000 seconds (-t 0 runs forever): podman system service -t 5000 & You can then use cURL on the socket using requests documented below. NOTE: if you install the package podman-docker, it will create a symbolic link for /run/docker.sock to /run/podman/podman.sock NOTE: Some fields in the API response JSON are encoded as omitempty, which means that if said field has a zero value, they will not be encoded in the API response. This is a feature to help reduce the size of the JSON responses returned via the API. NOTE: Due to the limitations of [go-swagger](https://github.com/go-swagger/go-swagger), some field values that have a complex type show up as null in the docs as well as in the API responses. This is because the zero value for the field type is null. The field description in the docs will state what type the field is expected to be for such cases. See podman-system-service(1) for more information. Quick Examples: 'podman info' curl --unix-socket /run/podman/podman.sock http://d/v5.0.0/libpod/info 'podman pull quay.io/containers/podman' curl -XPOST --unix-socket /run/podman/podman.sock -v 'http://d/v5.0.0/images/create?fromImage=quay.io%2Fcontainers%2Fpodman' 'podman list images' curl --unix-socket /run/podman/podman.sock -v 'http://d/v5.0.0/libpod/images/json' | jq
*
* The version of the OpenAPI document: 5.0.0
* Contact: podman@lists.podman.io
* Generated by: https://openapi-generator.tech
*/
use crate::models;
use serde::{Deserialize, Serialize};
/// Summary : Summary summary
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct Summary {
/// Number of containers using this image. Includes both stopped and running containers. This size is not calculated by default, and depends on which API endpoint is used. `-1` indicates that the value has not been set / calculated.
#[serde(rename = "Containers")]
pub containers: i64,
/// Date and time at which the image was created as a Unix timestamp (number of seconds sinds EPOCH).
#[serde(rename = "Created")]
pub created: i64,
/// ID is the content-addressable ID of an image. This identifier is a content-addressable digest calculated from the image's configuration (which includes the digests of layers used by the image). Note that this digest differs from the `RepoDigests` below, which holds digests of image manifests that reference the image.
#[serde(rename = "Id")]
pub id: String,
/// User-defined key/value metadata.
#[serde(rename = "Labels")]
pub labels: std::collections::HashMap<String, String>,
/// ID of the parent image. Depending on how the image was created, this field may be empty and is only set for images that were built/created locally. This field is empty if the image was pulled from an image registry.
#[serde(rename = "ParentId")]
pub parent_id: String,
/// List of content-addressable digests of locally available image manifests that the image is referenced from. Multiple manifests can refer to the same image. These digests are usually only available if the image was either pulled from a registry, or if the image was pushed to a registry, which is when the manifest is generated and its digest calculated.
#[serde(rename = "RepoDigests")]
pub repo_digests: Vec<String>,
/// List of image names/tags in the local image cache that reference this image. Multiple image tags can refer to the same image, and this list may be empty if no tags reference the image, in which case the image is \"untagged\", in which case it can still be referenced by its ID.
#[serde(rename = "RepoTags")]
pub repo_tags: Vec<String>,
/// Total size of image layers that are shared between this image and other images. This size is not calculated by default. `-1` indicates that the value has not been set / calculated.
#[serde(rename = "SharedSize")]
pub shared_size: i64,
/// Total size of the image including all layers it is composed of.
#[serde(rename = "Size")]
pub size: i64,
/// Total size of the image including all layers it is composed of. Deprecated: this field is omitted in API v1.44, but kept for backward compatibility. Use Size instead.
#[serde(rename = "VirtualSize", skip_serializing_if = "Option::is_none")]
pub virtual_size: Option<i64>,
}
impl Summary {
/// Summary summary
pub fn new(
containers: i64,
created: i64,
id: String,
labels: std::collections::HashMap<String, String>,
parent_id: String,
repo_digests: Vec<String>,
repo_tags: Vec<String>,
shared_size: i64,
size: i64,
) -> Summary {
Summary {
containers,
created,
id,
labels,
parent_id,
repo_digests,
repo_tags,
shared_size,
size,
virtual_size: None,
}
}
}