diff options
Diffstat (limited to 'src/config/docker_config.rs')
-rw-r--r-- | src/config/docker_config.rs | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/config/docker_config.rs b/src/config/docker_config.rs new file mode 100644 index 0000000..fcc605f --- /dev/null +++ b/src/config/docker_config.rs @@ -0,0 +1,42 @@ +use getset::{CopyGetters, Getters}; +use serde::Deserialize; + +use crate::config::Endpoint; +use crate::util::docker::ImageName; + +#[derive(Debug, Getters, CopyGetters, Deserialize)] +pub struct DockerConfig { + /// The required docker version + /// + /// If not set, it will not be checked, which might result in weird things? + /// + /// # Note + /// + /// Because the docker API returns strings, not a version object, each compatible version must + /// be listed. + #[getset(get = "pub")] + docker_versions: Option<Vec<String>>, + + /// The required docker api version + /// + /// If not set, it will not be checked, which might result in weird things? + /// + /// # Note + /// + /// Because the docker API returns strings, not a version object, each compatible version must + /// be listed. + #[getset(get = "pub")] + docker_api_versions: Option<Vec<String>>, + + /// Whether the program should verify that the required images are present. + /// You want this to be true normally. + #[getset(get_copy = "pub")] + verify_images_present: bool, + + #[getset(get = "pub")] + images: Vec<ImageName>, + + #[getset(get = "pub")] + endpoints: Vec<Endpoint>, +} + |