podman_api/opts/manifests.rs
1use containers_api::{
2 impl_field, impl_opts_builder, impl_opts_required_builder, impl_str_field, impl_url_bool_field,
3 impl_url_vec_field, impl_vec_field,
4};
5
6impl_opts_required_builder!(url =>
7 /// Adjust how a manifest list is created.
8 ManifestCreate,
9 ///
10 /// Parameters:
11 /// * name - Manifest list name.
12 name => "name"
13);
14
15impl ManifestCreateOptsBuilder {
16 impl_url_bool_field!(
17 /// Add all contents if given list.
18 all => "all"
19 );
20
21 impl_url_bool_field!(
22 /// Modify an existing list if one with the desired name already exists.
23 amend => "amend"
24 );
25
26 impl_url_vec_field!(
27 /// One or more names of an image or a manifest list. Repeat parameter as needed.
28 images => "images"
29 );
30}
31
32impl_opts_builder!(json =>
33 /// Adjust how an image is added to a manifest list.
34 ManifestImageAdd
35);
36
37impl ManifestImageAddOptsBuilder {
38 impl_field!(
39 /// True when operating on a list to include all images.
40 all: bool => "all"
41 );
42
43 impl_vec_field!(
44 /// Annotation to add to manifest list.
45 annotation => "annotation"
46 );
47
48 impl_str_field!(
49 /// Overrides the architecture for the image.
50 arch => "arch"
51 );
52
53 impl_vec_field!(
54 /// Feature list for the image.
55 features => "features"
56 );
57
58 impl_vec_field!(
59 /// Optional list of images to add to manifest list.
60 images => "images"
61 );
62
63 impl_str_field!(
64 /// Overrides the operating system for the image.
65 os => "os"
66 );
67
68 impl_str_field!(
69 /// OS features for the image.
70 os_features => "os_features"
71 );
72
73 impl_str_field!(
74 /// Overrides the operating system for the image.
75 os_version => "os_version"
76 );
77
78 impl_str_field!(
79 /// Variant for the image.
80 variant => "variant"
81 );
82}
83
84impl_opts_required_builder!(url =>
85 /// Adjust how a manifest list is pushed to a registry.
86 ManifestPush,
87 /// The destination for the manifest
88 destination => "destination"
89);
90
91impl ManifestPushOptsBuilder {
92 impl_url_bool_field!(
93 /// Push all images.
94 all => "all"
95 );
96
97 impl_url_bool_field!(
98 /// Silences extra stream data on push.
99 quiet => "quiet"
100 );
101
102 impl_url_bool_field!(
103 /// Require HTTPS and verify signatures when contacting registries.
104 tls_verify => "tlsVerify"
105 );
106}