Skip to content

Commit ddc277d

Browse files
committed
Added validationError Mbean to parse error in topology
1 parent 975a7fa commit ddc277d

File tree

3 files changed

+31
-5
lines changed

3 files changed

+31
-5
lines changed

operator/src/main/java/oracle/kubernetes/operator/helpers/ConfigMapHelper.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
import java.io.StringReader;
1717
import java.util.HashMap;
1818
import java.util.Map;
19+
import java.util.List;
1920
import oracle.kubernetes.operator.KubernetesConstants;
2021
import oracle.kubernetes.operator.LabelConstants;
2122
import oracle.kubernetes.operator.ProcessingConstants;
@@ -534,6 +535,7 @@ static DomainTopology parseDomainTopologyYaml(String topologyYaml) {
534535
public static class DomainTopology {
535536
private boolean domainValid;
536537
private WlsDomainConfig domain;
538+
private List<String> validationErrors;
537539

538540
public boolean getDomainValid() {
539541
return this.domainValid;
@@ -551,5 +553,13 @@ public WlsDomainConfig getDomain() {
551553
public void setDomain(WlsDomainConfig domain) {
552554
this.domain = domain;
553555
}
556+
557+
public List<String> getValidationErrors() {
558+
return validationErrors;
559+
}
560+
561+
public void setValidationErrors(List<String> validationErrors) {
562+
this.validationErrors = validationErrors;
563+
}
554564
}
555565
}

operator/src/main/resources/scripts/introspectDomain.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -364,11 +364,10 @@ def validateServerCustomChannelName(self):
364364
for server in self.env.getDomain().getServers():
365365
naps = server.getNetworkAccessPoints()
366366
for nap in naps:
367-
name=self.name(nap)
368-
if name in reservedNames:
369-
self.addError("The custom channel " + name + " is a reserved name."
367+
if nap.getName() in reservedNames:
368+
self.addError("The custom channel " + self.name(nap) + " is a reserved name.")
370369

371-
def validateClusterServersHaveSameCustomChannels():
370+
#def validateClusterServersHaveSameCustomChannels():
372371

373372
def isValid(self):
374373
return len(self.errors) == 0

operator/src/test/java/oracle/kubernetes/operator/helpers/ConfigMapHelperTest.java

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -467,6 +467,12 @@ public boolean containsAll(V1ConfigMap actual, V1ConfigMap expected) {
467467
+ " listenPort: 7001\n"
468468
+ " listenAddress: \"domain1-admin-server\"\n";
469469

470+
private static final String INVALID_TOPOLOGY =
471+
"domainValid: false\n"
472+
+ "validationErrors:\n"
473+
+ " - \"The dynamic cluster \\\"mycluster\\\"'s dynamic servers use calculated listen ports.\"";
474+
475+
470476
@Test
471477
public void parseDomainTopologyYaml() {
472478
ConfigMapHelper.DomainTopology domainTopology =
@@ -583,4 +589,15 @@ public void parseMixedClusterTopologyYaml() {
583589
assertEquals(3, wlsClusterConfig.getDynamicClusterSize());
584590
assertEquals(5, wlsClusterConfig.getServerConfigs().size());
585591
}
586-
}
592+
593+
@Test
594+
public void parseInvalidTopologyYamlWithValidationErrors() {
595+
ConfigMapHelper.DomainTopology domainTopology =
596+
ConfigMapHelper.parseDomainTopologyYaml(INVALID_TOPOLOGY);
597+
598+
assertNotNull(domainTopology.getValidationErrors());
599+
assertFalse(domainTopology.getDomainValid());
600+
assertEquals("The dynamic cluster \"mycluster\"'s dynamic servers use calculated listen ports.",domainTopology.getValidationErrors().get(0));
601+
602+
}
603+
}

0 commit comments

Comments
 (0)