import os def _get_config_expand(config): """ Get config with both context and dockerfile_path written to it """ if config and "subdir" in config and "context" not in config: config_expand = dict(config) config_expand["context"] = _create_context(config["subdir"]) config_expand["dockerfile_path"] = _create_dockerfile_path(config["subdir"]) return config_expand return config or {} def _create_context(current_subdir): """ Create context from current subdir """ if current_subdir.endswith("Dockerfile"): context, _ = os.path.split(current_subdir) if context == "": return os.path.sep return context if current_subdir == "": current_subdir = os.path.sep + current_subdir if current_subdir[len(current_subdir) - 1] != os.path.sep: current_subdir += os.path.sep context, _ = os.path.split(current_subdir) return context def _create_dockerfile_path(current_subdir): """ Create dockefile path from current subdir """ if current_subdir.endswith("Dockerfile"): return current_subdir if current_subdir == "": current_subdir = os.path.sep + current_subdir if current_subdir[len(current_subdir) - 1] != os.path.sep: current_subdir += os.path.sep return current_subdir + "Dockerfile"