From 5c51a9bdafda4987ab7da52b816e01ea6b56502d Mon Sep 17 00:00:00 2001 From: Matthias Beyer Date: Thu, 11 Mar 2021 11:14:41 +0100 Subject: Endpoint configuration as Map This patch rewrites the endpoint configuration format to be a map. The problem here is, that a list of endpoints cannot easily be used with layered configuration, where a part of the configuration lives in the XDG config home of the user and the rest lives in the repository. With this patch, the endpoints are configured with a map instead of an array, which makes it less complicated to overwrite. The name of an endpoint is now the key in the map. A type `EndpointName` was introduced to take advantage of strong typing. Thus, the patch touches a bit more code to adapt to the new type in use. Signed-off-by: Matthias Beyer Tested-by: Matthias Beyer --- src/commands/build.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/commands/build.rs') diff --git a/src/commands/build.rs b/src/commands/build.rs index 9880552..81077d4 100644 --- a/src/commands/build.rs +++ b/src/commands/build.rs @@ -102,10 +102,10 @@ pub async fn build( .docker() .endpoints() .iter() - .cloned() - .map(|ep_cfg| { + .map(|(ep_name, ep_cfg)| { crate::endpoint::EndpointConfiguration::builder() - .endpoint(ep_cfg) + .endpoint_name(ep_name.clone()) + .endpoint(ep_cfg.clone()) .required_images(config.docker().images().clone()) .required_docker_versions(config.docker().docker_versions().clone()) .required_docker_api_versions(config.docker().docker_api_versions().clone()) -- cgit v1.2.3