protected static PodTemplateSpec applyResourceToPodTemplate()

in flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/config/FlinkConfigBuilder.java [482:517]


    protected static PodTemplateSpec applyResourceToPodTemplate(
            PodTemplateSpec podTemplate, Resource resource) {
        if (resource == null
                || StringUtils.isNullOrWhitespaceOnly(resource.getEphemeralStorage())) {
            return podTemplate;
        }

        if (podTemplate == null) {
            var newPodTemplate = new PodTemplateSpec();
            newPodTemplate.setSpec(createPodSpecWithResource(resource));
            return newPodTemplate;
        } else if (podTemplate.getSpec() == null) {
            podTemplate.setSpec(createPodSpecWithResource(resource));
            return podTemplate;
        } else {
            boolean hasMainContainer = false;
            for (Container container : podTemplate.getSpec().getContainers()) {
                if (container.getName().equals(Constants.MAIN_CONTAINER_NAME)) {
                    decorateContainerWithEphemeralStorage(
                            container, resource.getEphemeralStorage());
                    hasMainContainer = true;
                }
            }

            if (!hasMainContainer) {
                podTemplate
                        .getSpec()
                        .getContainers()
                        .add(
                                decorateContainerWithEphemeralStorage(
                                        new Container(), resource.getEphemeralStorage()));
            }
        }

        return podTemplate;
    }