/** * Get all labels from all enrichers for a certain kind * * @param kind resource type for which labels should be extracted * @return extracted labels */ public static Map<String, String> extractLabels(ProcessorConfig config, Kind kind, List<Enricher> enrichers) { return extract(config, Extractor.LABEL_EXTRACTOR, kind, enrichers); }
/** * Returns if class is in compile classpath. * @param all True if all of them must be there. * @param clazz fully qualified class name. * @return True if present, false otherwise. */ public boolean isClassInCompileClasspath(boolean all, String... clazz) { if (all) { return hasAllClasses(clazz); } else { return hasAnyClass(clazz); } }
public boolean hasInitContainer(PodTemplateSpecBuilder builder, String name) { return getInitContainer(builder, name) != null; }
@Override public void visit(PodTemplateSpecBuilder builder) { InitContainerHandler initContainerHandler = new InitContainerHandler(log); if (initContainerHandler.hasInitContainer(builder, enricherName)) { log.verbose("Removing init container from openshift.yml for %s", enricherName); initContainerHandler.removeInitContainer(builder, enricherName); } } });
public VolumePermissionEnricher(MavenEnricherContext buildContext) { super(buildContext, ENRICHER_NAME); initContainerHandler = new InitContainerHandler(buildContext.getLog()); }
private static Map<String, String> extract(ProcessorConfig config, Extractor extractor, Kind kind, List<Enricher> enrichers) { Map <String, String> ret = new HashMap<>(); for (Enricher enricher : filterEnrichers(config, enrichers)) { putAllIfNotNull(ret, extractor.extract(enricher, kind)); } return ret; }
@Override public void visit(PodTemplateSpecBuilder builder) { initContainerHandler.appendInitContainer(builder, createInitContainer()); }
private void loop(ProcessorConfig config, Function<Enricher, Void> function) { for (Enricher enricher : filterEnrichers(config, enrichers)) { function.apply(enricher); } }
protected String detectDefaultDashboard() { String dashboard = getConfig(Config.metricsDashboard); if (StringUtils.isNotBlank(dashboard)) { return dashboard; } if (getContext().getProjectClassLoaders().isClassInCompileClasspath(false,"org.apache.camel.CamelContext")) { return "camel-routes.json"; } return "kubernetes-pods.json"; }
/** * Transforms the Dom object into a Map. * This Map can contain pairs key/value where value can be a simple type, another Map (Inner objects) * and a list of simple types. * * Currently it is NOT supported List of complex objects. * @param root object. * @return Map of DOM structure. */ public static Map<String, Object> extract(Xpp3Dom root) { if (root == null) { return new HashMap<>(); } return getElement(root); }
@Override public ProjectClassLoaders getProjectClassLoaders() { return new ProjectClassLoaders(MavenUtil.getCompileClassLoader(getProject()) ); }
@Override public void visit(ServiceSpecBuilder item) { MapUtil.mergeIfAbsent(item.getSelector(), extractSelector(getConfig(), Kind.SERVICE, enrichers)); } }
private void updateAnnotations(ObjectMeta metadata) { overlayMap(metadata.getAnnotations(),annotationFromConfig); overlayMap(metadata.getAnnotations(), extractAnnotations(getProcessorConfig(), getKind(), enrichers)); }
private void updateLabels(ObjectMeta metadata) { overlayMap(metadata.getLabels(),labelsFromConfig); overlayMap(metadata.getLabels(), extractLabels(getProcessorConfig(), getKind(), enrichers)); }
public VolumePermissionEnricher(EnricherContext buildContext) { super(buildContext, ENRICHER_NAME); initContainerHandler = new InitContainerHandler(buildContext.getLog()); }
@Override public void visit(PodTemplateSpecBuilder builder) { initContainerHandler.appendInitContainer(builder, createInitContainer()); }
public static Map<String, String> extractAnnotations(ProcessorConfig config, Kind kind, List<Enricher> enrichers) { return extract(config, Extractor.ANNOTATION_EXTRACTOR, kind, enrichers); }
public boolean hasInitContainer(PodTemplateSpecBuilder builder, String name) { return getInitContainer(builder, name) != null; }
public AutoTLSEnricher(EnricherContext buildContext) { super(buildContext, ENRICHER_NAME); this.secretName = getConfig(Config.tlsSecretName, getProject().getArtifactId() + "-tls"); this.initContainerHandler = new InitContainerHandler(buildContext.getLog()); }
public static Map<String, String> extractSelector(ProcessorConfig config, Kind kind, List<Enricher> enrichers) { return extract(config, Extractor.SELECTOR_EXTRACTOR, kind, enrichers); }