in src/main/java/com/epam/gmp/service/ScriptContextBuilder.java [134:166]
protected ConfigObject preProcessConfig(Deque<ConfigLayer> configStack, ConfigLayer layer, String environment, Map<String, Object> bindingMap) {
ConfigObject scriptConfig;
if (layer.getScript() != null) {
scriptConfig = fillParamMapFromGroovy(layer.getScript(), environment, bindingMap);
updateWithDefaultExecutor(scriptConfig, layer);
Map<String, Object> executorConfig = (Map<String, Object>) scriptConfig.get(EXECUTOR_FIELD);
GmpConfigObject yamlCfg;
String yamlToInclude = null;
if (!StringUtils.isEmpty(executorConfig.get(INCLUDE_CONFIG_FIELD))) {
configStack.addFirst(new ConfigLayer(layer.getRoot(), executorConfig.get(INCLUDE_CONFIG_FIELD).toString()));
}
if (!StringUtils.isEmpty(executorConfig.get(INCLUDE_YAML_FIELD))) {
yamlToInclude = executorConfig.get(INCLUDE_YAML_FIELD).toString();
}
if (!StringUtils.isEmpty(yamlToInclude)) {
Map<String, Object> yamlObject = yamlLoader.getObject(scriptConfig, layer.getRoot(), yamlToInclude);
yamlCfg = new GmpConfigObject();
yamlCfg.mapMerge(yamlObject);
yamlCfg.mapMerge(scriptConfig);
scriptConfig = yamlCfg;
}
} else {
scriptConfig = new ConfigObject();
updateWithDefaultExecutor(scriptConfig, layer);
}
return scriptConfig;
}