/** * Returns Qualified name for the specified Kubernetes Resource * * @param entity Kubernetes resource * @return */ public static String getQualifiedName(HasMetadata entity) { if (entity != null) { return "" + getNamespace(entity) + "/" + getName(entity); } else { return null; } }
/** * Returns name of the resource from it's Metadata * * @param entity Kubernetes resource * @return */ public static String getName(HasMetadata entity) { if (entity != null) { return getName(entity.getMetadata()); } else { return null; } }
@Test public void testNullSafeOperationsForName() { String resourceName = KubernetesResourceUtil.getName(configMap1); assertNotNull(resourceName); assertEquals("configmap1", resourceName); }
@Test public void testNames() { assertTrue(KubernetesResourceUtil.isValidName(KubernetesResourceUtil.getName(configMap1))); assertFalse(KubernetesResourceUtil.isValidName("test.invalid.name")); assertTrue(KubernetesResourceUtil.isValidLabelOrAnnotation(KubernetesResourceUtil.getOrCreateAnnotations(configMap1))); assertFalse(KubernetesResourceUtil.isValidLabelOrAnnotation(Collections.singletonMap("NoUppercaseOrSpecialCharsLike=Equals", "bar"))); assertTrue(KubernetesResourceUtil.isValidName(KubernetesResourceUtil.sanitizeName("test.invalid.name"))); assertTrue(KubernetesResourceUtil.isValidName(KubernetesResourceUtil.sanitizeName("90notcool-n@me"))); } }