Loading src/main/java/org/etsi/osl/cridge/WatcherService.java +12 −5 Original line number Diff line number Diff line Loading @@ -199,20 +199,27 @@ public class WatcherService { } protected void createCRDSharedIndexInformer(CustomResourceDefinition crd) { final Optional<CustomResourceDefinitionVersion> maybeStorageVersion = crd.getSpec().getVersions() Optional<CustomResourceDefinitionVersion> storageAndServed = crd.getSpec().getVersions() .stream() .filter(CustomResourceDefinitionVersion::getStorage) .filter(v -> Boolean.TRUE.equals(v.getStorage()) && Boolean.TRUE.equals(v.getServed())) .findFirst(); if (maybeStorageVersion.isEmpty()) { logger.error("Cannot create createCRDSharedIndexInformer. No storage version found in kind: {}", Optional<CustomResourceDefinitionVersion> anyServed = crd.getSpec().getVersions() .stream() .filter(v -> Boolean.TRUE.equals(v.getServed())) .findFirst(); CustomResourceDefinitionVersion versionToUse = storageAndServed.orElseGet(() -> anyServed.orElse(null)); if (versionToUse == null) { logger.error("Cannot create createCRDSharedIndexInformer. No served version found in kind: {}", crd.getSpec().getNames().getKind()); return; } ResourceDefinitionContext context = new ResourceDefinitionContext.Builder() .withGroup(crd.getSpec().getGroup()) .withVersion(maybeStorageVersion.get().getName()) .withVersion(versionToUse.getName()) .withKind(crd.getSpec().getNames().getKind()) .withPlural(crd.getSpec().getNames().getPlural()).build(); Loading Loading
src/main/java/org/etsi/osl/cridge/WatcherService.java +12 −5 Original line number Diff line number Diff line Loading @@ -199,20 +199,27 @@ public class WatcherService { } protected void createCRDSharedIndexInformer(CustomResourceDefinition crd) { final Optional<CustomResourceDefinitionVersion> maybeStorageVersion = crd.getSpec().getVersions() Optional<CustomResourceDefinitionVersion> storageAndServed = crd.getSpec().getVersions() .stream() .filter(CustomResourceDefinitionVersion::getStorage) .filter(v -> Boolean.TRUE.equals(v.getStorage()) && Boolean.TRUE.equals(v.getServed())) .findFirst(); if (maybeStorageVersion.isEmpty()) { logger.error("Cannot create createCRDSharedIndexInformer. No storage version found in kind: {}", Optional<CustomResourceDefinitionVersion> anyServed = crd.getSpec().getVersions() .stream() .filter(v -> Boolean.TRUE.equals(v.getServed())) .findFirst(); CustomResourceDefinitionVersion versionToUse = storageAndServed.orElseGet(() -> anyServed.orElse(null)); if (versionToUse == null) { logger.error("Cannot create createCRDSharedIndexInformer. No served version found in kind: {}", crd.getSpec().getNames().getKind()); return; } ResourceDefinitionContext context = new ResourceDefinitionContext.Builder() .withGroup(crd.getSpec().getGroup()) .withVersion(maybeStorageVersion.get().getName()) .withVersion(versionToUse.getName()) .withKind(crd.getSpec().getNames().getKind()) .withPlural(crd.getSpec().getNames().getPlural()).build(); Loading