podman_rest_client/v5/models/manifest_modify_options.rs
1use serde::{Deserialize, Serialize};
2#[derive(Default, Debug, Serialize, Deserialize)]
3/// ManifestModifyOptions provides the model for mutating a manifest
4/// swagger 2.0 does not support oneOf for schema validation.
5///
6/// Operation "update" uses all fields.
7/// Operation "remove" uses fields: Operation and Images
8/// Operation "annotate" uses fields: Operation and Annotations
9pub struct ManifestModifyOptions {
10 /// True when operating on a list to include all images
11 pub all: Option<bool>,
12 /// Annotation to add to the item in the manifest list
13 pub annotation: Option<Vec<String>>,
14 /// Annotations to add to the item in the manifest list by a map which is preferred over Annotation
15 pub annotations: Option<std::collections::HashMap<String, String>>,
16 /// Arch overrides the architecture for the item in the manifest list
17 pub arch: Option<String>,
18 pub artifact_annotations: Option<std::collections::HashMap<String, String>>,
19 pub artifact_config: Option<String>,
20 pub artifact_config_type: Option<String>,
21 pub artifact_exclude_titles: Option<bool>,
22 pub artifact_files: Option<Vec<String>>,
23 pub artifact_layer_type: Option<String>,
24 pub artifact_subject: Option<String>,
25 /// The following are all of the fields from ManifestAddArtifactOptions.
26 /// We can't just embed the whole structure because it embeds a
27 /// ManifestAnnotateOptions, which would conflict with the one that
28 /// ManifestAddOptions embeds.
29 pub artifact_type: Option<String>,
30 /// Feature list for the item in the manifest list
31 pub features: Option<Vec<String>>,
32 /// Images is an optional list of image references to add to manifest list
33 pub images: Option<Vec<String>>,
34 /// IndexAnnotation is a slice of key=value annotations to add to the manifest list itself
35 pub index_annotation: Option<Vec<String>>,
36 /// IndexAnnotations is a map of key:value annotations to add to the manifest list itself, by a map which is preferred over IndexAnnotation
37 pub index_annotations: Option<std::collections::HashMap<String, String>>,
38 pub operation: Option<String>,
39 /// OS overrides the operating system for the item in the manifest list
40 pub os: Option<String>,
41 /// OS features for the item in the manifest list
42 pub os_features: Option<Vec<String>>,
43 /// OSVersion overrides the operating system for the item in the manifest list
44 pub os_version: Option<String>,
45 /// IndexSubject is a subject value to set in the manifest list itself
46 pub subject: Option<String>,
47 /// Variant for the item in the manifest list
48 pub variant: Option<String>,
49}