private static void sanitizeContainerNetworkComponents(CompositeTemplate entity) { for (Entry<String, ComponentTemplate<ContainerNetworkDescription>> entry : filterComponentTemplates( entity.components, ContainerNetworkDescription.class).entrySet()) { ComponentTemplate<ContainerNetworkDescription> component = entry.getValue(); component.data.id = null; component.data.tenantLinks = null; } }
private static void sanitizeContainerVolumeComponents(CompositeTemplate entity) { for (Entry<String, ComponentTemplate<ContainerVolumeDescription>> entry : filterComponentTemplates( entity.components, ContainerVolumeDescription.class).entrySet()) { ComponentTemplate<ContainerVolumeDescription> component = entry.getValue(); component.data.id = null; component.data.tenantLinks = null; } }
private static void normalizeClosureDescriptions(CompositeTemplate entity, boolean serialize) { if (!serialize) { return; } for (Entry<String, ComponentTemplate<ClosureDescription>> entry : filterComponentTemplates( entity.components, ClosureDescription.class).entrySet()) { ComponentTemplate<ClosureDescription> component = entry.getValue(); CustomClosureDescription newData = new CustomClosureDescription(); PropertyUtils.mergeServiceDocuments(newData, component.data); if (newData.inputs != null) { newData.serializedInputs = new HashMap<>(); newData.inputs.entrySet().forEach((e -> { newData.serializedInputs.put(e.getKey(), e.getValue().toString()); })); newData.inputs = null; } if (newData.logConfiguration != null) { newData.serializedLogConfiguration = jsonToMap(newData.logConfiguration); newData.logConfiguration = null; } component.data = newData; } }
if (!isNullOrEmpty(components)) { compose.services = new LinkedHashMap<>(); for (Entry<String, ComponentTemplate<ContainerDescription>> entry : filterComponentTemplates( components, ContainerDescription.class).entrySet()) { compose.services.put(entry.getKey(), for (Entry<String, ComponentTemplate<ContainerNetworkDescription>> entry : filterComponentTemplates( components, ContainerNetworkDescription.class).entrySet()) { if (compose.networks == null) { for (Entry<String, ComponentTemplate<ContainerVolumeDescription>> entry : filterComponentTemplates( components, ContainerVolumeDescription.class).entrySet()) { if (compose.volumes == null) {
private static void sanitizeContainerComponents(CompositeTemplate entity, boolean serialize) { for (Entry<String, ComponentTemplate<ContainerDescription>> entry : filterComponentTemplates( entity.components, ContainerDescription.class).entrySet()) { ComponentTemplate<ContainerDescription> component = entry.getValue(); normalizeContainerDescription(component, serialize); if (!entry.getKey().equals(component.data.name)) { Utils.logWarning("Container name '%s' differs from component name '%s' and " + "it will be overridden with the component name!", component.data.name, entry.getKey()); component.data.name = entry.getKey(); } component.data.tenantLinks = null; // this could be a new serializer... HealthConfig hc = component.data.healthConfig; if (hc != null && hc.protocol == null) { component.data.healthConfig = null; } // this could be a new serializer... LogConfig lc = component.data.logConfig; if (lc != null && lc.type == null && isNullOrEmpty(lc.config)) { component.data.logConfig = null; } } }
public static KubernetesTemplate fromCompositeTemplateToKubernetesTemplate( CompositeTemplate template) { if (template == null) { return null; } KubernetesTemplate kubernetesTemplate = new KubernetesTemplate(); if (!isNullOrEmpty(template.components)) { kubernetesTemplate.deployments = new LinkedHashMap<>(); kubernetesTemplate.services = new LinkedHashMap<>(); Map<String, ComponentTemplate<ContainerDescription>> containerComponents = filterComponentTemplates( template.components, ContainerDescription.class); for (Entry<String, ComponentTemplate<ContainerDescription>> container : containerComponents .entrySet()) { Deployment deployment = fromContainerDescriptionToDeployment( container.getValue().data, template.name); kubernetesTemplate.deployments.put(deployment.metadata.name, deployment); if (!isNullOrEmpty(container.getValue().data.portBindings)) { Service service = fromContainerDescriptionToService(container.getValue().data, template.name); kubernetesTemplate.services.put(service.metadata.name, service); } } } return kubernetesTemplate; }