public static LabelSelector getPodLabelSelector(Set<HasMetadata> entities) { LabelSelector chosenSelector = null; for (HasMetadata entity : entities) { LabelSelector selector = getPodLabelSelector(entity); if (selector != null) { if (chosenSelector != null && !chosenSelector.equals(selector)) { throw new IllegalArgumentException("Multiple selectors found for the given entities: " + chosenSelector + " - " + selector); } chosenSelector = selector; } } return chosenSelector; }
Date ignorePodsOlderThan, boolean waitInCurrentThread) { LabelSelector selector = KubernetesResourceUtil.getPodLabelSelector(entities);
kubernetes.extensions().deployments().inNamespace(namespace).withName(name).replace(resource); selector = getPodLabelSelector(entity); kubernetes.extensions().replicaSets().inNamespace(namespace).withName(name).replace(resource); selector = getPodLabelSelector(entity); kubernetes.replicationControllers().inNamespace(namespace).withName(name).replace(resource); selector = getPodLabelSelector(entity); selector = getPodLabelSelector(entity);
private String getPortForwardUrl(final Set<HasMetadata> resources) throws Exception { LabelSelector selector = KubernetesResourceUtil.getPodLabelSelector(resources); if (selector == null) { log.warn("Unable to determine a selector for application pods"); return null; } Properties properties = SpringBootUtil.getSpringBootApplicationProperties(MavenUtil.getCompileClassLoader(getContext().getProject())); SpringBootConfigurationHelper propertyHelper = new SpringBootConfigurationHelper(SpringBootUtil.getSpringBootVersion(getContext().getProject())); int port = IoUtil.getFreeRandomPort(); int containerPort = propertyHelper.getServerPort(properties); portForwardService.forwardPortAsync(getContext().getLogger(), selector, containerPort, port); return createForwardUrl(propertyHelper, properties, port); }