Skip to content

Commit 22f5c22

Browse files
committed
Merge branch 'feature/helm_operator_1_1' of https://github.com/oracle/weblogic-kubernetes-operator into feature/helm_operator_1_1
2 parents 6093790 + 2bf3a5a commit 22f5c22

28 files changed

+1414
-1245
lines changed

kubernetes/src/test/java/oracle/kubernetes/operator/create/CreateDomainGeneratedFilesBaseTest.java

Lines changed: 90 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,85 @@
55
package oracle.kubernetes.operator.create;
66

77
import static java.util.Arrays.asList;
8-
import static oracle.kubernetes.operator.LabelConstants.*;
9-
import static oracle.kubernetes.operator.VersionConstants.*;
10-
import static oracle.kubernetes.operator.utils.CreateDomainInputs.readInputsYamlFile;
11-
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.*;
8+
import static oracle.kubernetes.operator.LabelConstants.APP_LABEL;
9+
import static oracle.kubernetes.operator.LabelConstants.CLUSTERNAME_LABEL;
10+
import static oracle.kubernetes.operator.LabelConstants.DOMAINNAME_LABEL;
11+
import static oracle.kubernetes.operator.LabelConstants.DOMAINUID_LABEL;
12+
import static oracle.kubernetes.operator.LabelConstants.RESOURCE_VERSION_LABEL;
13+
import static oracle.kubernetes.operator.VersionConstants.APACHE_LOAD_BALANCER_V1;
14+
import static oracle.kubernetes.operator.VersionConstants.DOMAIN_V1;
15+
import static oracle.kubernetes.operator.VersionConstants.TRAEFIK_LOAD_BALANCER_V1;
16+
import static oracle.kubernetes.operator.VersionConstants.VOYAGER_LOAD_BALANCER_V1;
17+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.API_GROUP_RBAC;
18+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.API_VERSION_APPS_V1BETA1;
19+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.API_VERSION_EXTENSIONS_V1BETA1;
20+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.API_VERSION_RBAC_V1;
21+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.KIND_CLUSTER_ROLE;
22+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.KIND_SERVICE_ACCOUNT;
23+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.containsRegexps;
24+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.getThenEmptyConfigMapDataValue;
25+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newClusterRole;
26+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newClusterRoleBinding;
27+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newClusterStartup;
28+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newClusterStartupList;
29+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newConfigMap;
30+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newConfigMapVolumeSource;
31+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newContainer;
32+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newContainerPort;
33+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newDeployment;
34+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newDeploymentSpec;
35+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newDomain;
36+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newDomainSpec;
37+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newEnvVar;
38+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newEnvVarList;
39+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newHTTPGetAction;
40+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newHostPathVolumeSource;
41+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newIntOrString;
42+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newJob;
43+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newJobSpec;
44+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newLabelSelector;
45+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newLocalObjectReferenceList;
46+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newObjectMeta;
47+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newPersistentVolume;
48+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newPersistentVolumeClaim;
49+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newPersistentVolumeClaimSpec;
50+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newPersistentVolumeClaimVolumeSource;
51+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newPersistentVolumeSpec;
52+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newPodSpec;
53+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newPodTemplateSpec;
54+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newPolicyRule;
55+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newProbe;
56+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newResourceRequirements;
57+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newRoleRef;
58+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newSecretReference;
59+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newSecretVolumeSource;
60+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newServerStartup;
61+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newServerStartupList;
62+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newService;
63+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newServiceAccount;
64+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newServicePort;
65+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newServiceSpec;
66+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newSubject;
67+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newTCPSocketAction;
68+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newToleration;
69+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newVolume;
70+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newVolumeMount;
1271
import static oracle.kubernetes.operator.utils.YamlUtils.yamlEqualTo;
1372
import static org.hamcrest.MatcherAssert.assertThat;
14-
import static org.hamcrest.Matchers.*;
73+
import static org.hamcrest.Matchers.containsString;
1574

1675
import io.kubernetes.client.custom.Quantity;
17-
import io.kubernetes.client.models.*;
18-
import oracle.kubernetes.operator.utils.CreateDomainInputs;
76+
import io.kubernetes.client.models.ExtensionsV1beta1Deployment;
77+
import io.kubernetes.client.models.V1ConfigMap;
78+
import io.kubernetes.client.models.V1Job;
79+
import io.kubernetes.client.models.V1PersistentVolume;
80+
import io.kubernetes.client.models.V1PersistentVolumeClaim;
81+
import io.kubernetes.client.models.V1Service;
82+
import io.kubernetes.client.models.V1ServiceAccount;
83+
import io.kubernetes.client.models.V1beta1ClusterRole;
84+
import io.kubernetes.client.models.V1beta1ClusterRoleBinding;
85+
import oracle.kubernetes.operator.utils.DomainValues;
86+
import oracle.kubernetes.operator.utils.DomainYamlFactory;
1987
import oracle.kubernetes.operator.utils.GeneratedDomainYamlFiles;
2088
import oracle.kubernetes.operator.utils.ParsedApacheSecurityYaml;
2189
import oracle.kubernetes.operator.utils.ParsedApacheYaml;
@@ -30,7 +98,6 @@
3098
import oracle.kubernetes.operator.utils.ParsedWeblogicDomainPersistentVolumeClaimYaml;
3199
import oracle.kubernetes.operator.utils.ParsedWeblogicDomainPersistentVolumeYaml;
32100
import oracle.kubernetes.weblogic.domain.v1.Domain;
33-
import org.junit.AfterClass;
34101
import org.junit.Test;
35102

36103
/**
@@ -40,8 +107,9 @@
40107
*/
41108
public abstract class CreateDomainGeneratedFilesBaseTest {
42109

43-
private static CreateDomainInputs inputs;
110+
private static DomainValues inputs;
44111
private static GeneratedDomainYamlFiles generatedFiles;
112+
private static DomainYamlFactory factory;
45113

46114
private static final String PROPERTY_TRAEFIK_TOML = "traefik.toml";
47115
private static final String PROPERTY_UTILITY_SH = "utility.sh";
@@ -50,31 +118,31 @@ public abstract class CreateDomainGeneratedFilesBaseTest {
50118
private static final String PROPERTY_CREATE_DOMAIN_SCRIPT_SH = "create-domain-script.sh";
51119
private static final String PROPERTY_CREATE_DOMAIN_PY = "create-domain.py";
52120

53-
protected static CreateDomainInputs getInputs() {
121+
protected static DomainValues getInputs() {
54122
return inputs;
55123
}
56124

57-
protected static GeneratedDomainYamlFiles getGeneratedFiles() {
125+
private static GeneratedDomainYamlFiles getGeneratedFiles() {
58126
return generatedFiles;
59127
}
60128

61-
protected ParsedCreateWeblogicDomainJobYaml getCreateWeblogicDomainJobYaml() {
129+
private ParsedCreateWeblogicDomainJobYaml getCreateWeblogicDomainJobYaml() {
62130
return getGeneratedFiles().getCreateWeblogicDomainJobYaml();
63131
}
64132

65-
protected ParsedDeleteWeblogicDomainJobYaml getDeleteWeblogicDomainJobYaml() {
133+
private ParsedDeleteWeblogicDomainJobYaml getDeleteWeblogicDomainJobYaml() {
66134
return getGeneratedFiles().getDeleteWeblogicDomainJobYaml();
67135
}
68136

69-
protected ParsedDomainCustomResourceYaml getDomainCustomResourceYaml() {
137+
private ParsedDomainCustomResourceYaml getDomainCustomResourceYaml() {
70138
return getGeneratedFiles().getDomainCustomResourceYaml();
71139
}
72140

73-
protected ParsedTraefikSecurityYaml getTraefikSecurityYaml() {
141+
private ParsedTraefikSecurityYaml getTraefikSecurityYaml() {
74142
return getGeneratedFiles().getTraefikSecurityYaml();
75143
}
76144

77-
protected ParsedTraefikYaml getTraefikYaml() {
145+
private ParsedTraefikYaml getTraefikYaml() {
78146
return getGeneratedFiles().getTraefikYaml();
79147
}
80148

@@ -107,74 +175,14 @@ protected ParsedWeblogicDomainPersistentVolumeYaml getWeblogicDomainPersistentVo
107175
return getGeneratedFiles().getWeblogicDomainPersistentVolumeYaml();
108176
}
109177

110-
protected static void setup(CreateDomainInputs val) throws Exception {
111-
inputs = val;
112-
generatedFiles = GeneratedDomainYamlFiles.generateDomainYamlFiles(getInputs());
113-
}
114-
115-
@AfterClass
116-
public static void tearDown() throws Exception {
117-
if (generatedFiles != null) {
118-
generatedFiles.remove();
119-
}
120-
}
121-
122-
@Test
123-
public void generatedCorrect_weblogicDomainInputsYaml() throws Exception {
124-
assertThat(
125-
readInputsYamlFile(generatedFiles.getDomainFiles().getCreateWeblogicDomainInputsYamlPath()),
126-
yamlEqualTo(readInputsYamlFile(generatedFiles.getInputsYamlPath())));
127-
}
128-
129-
@Test
130-
public void createWeblogicDomainJobYaml_hasCorrectNumberOfObjects() throws Exception {
131-
assertThat(
132-
getCreateWeblogicDomainJobYaml().getObjectCount(),
133-
is(getCreateWeblogicDomainJobYaml().getExpectedObjectCount()));
134-
}
135-
136-
@Test
137-
public void deleteWeblogicDomainJobYaml_hasCorrectNumberOfObjects() throws Exception {
138-
assertThat(
139-
getDeleteWeblogicDomainJobYaml().getObjectCount(),
140-
is(getDeleteWeblogicDomainJobYaml().getExpectedObjectCount()));
141-
}
142-
143-
@Test
144-
public void domainCustomResourceYaml_hasCorrectNumberOfObjects() throws Exception {
145-
assertThat(
146-
getDomainCustomResourceYaml().getObjectCount(),
147-
is(getDomainCustomResourceYaml().getExpectedObjectCount()));
148-
}
149-
150-
@Test
151-
public void loadBalancerSecurityYaml_hasCorrectNumberOfObjects() throws Exception {
152-
assertThat(
153-
getTraefikSecurityYaml().getObjectCount(),
154-
is(getTraefikSecurityYaml().getExpectedObjectCount()));
155-
}
156-
157-
@Test
158-
public void loadBalancerYaml_hasCorrectNumberOfObjects() throws Exception {
159-
assertThat(getTraefikYaml().getObjectCount(), is(getTraefikYaml().getExpectedObjectCount()));
160-
}
161-
162-
@Test
163-
public void weblogicDomainPersistentVolumeClaimYaml_hasCorrectNumberOfObjects() throws Exception {
164-
assertThat(
165-
getWeblogicDomainPersistentVolumeClaimYaml().getObjectCount(),
166-
is(getWeblogicDomainPersistentVolumeClaimYaml().getExpectedObjectCount()));
167-
}
168-
169-
@Test
170-
public void weblogicDomainPersistentVolumeYaml_hasCorrectNumberOfObjects() throws Exception {
171-
assertThat(
172-
getWeblogicDomainPersistentVolumeYaml().getObjectCount(),
173-
is(getWeblogicDomainPersistentVolumeYaml().getExpectedObjectCount()));
178+
protected static void setup(DomainYamlFactory factory, DomainValues values) throws Exception {
179+
CreateDomainGeneratedFilesBaseTest.factory = factory;
180+
inputs = values;
181+
generatedFiles = factory.generate(values);
174182
}
175183

176184
@Test
177-
public void generatesCorrect_createWeblogicDomainJob() throws Exception {
185+
public void generatesCorrect_createWeblogicDomainJob() {
178186
assertThat(
179187
getActualCreateWeblogicDomainJob(), yamlEqualTo(getExpectedCreateWeblogicDomainJob()));
180188
}
@@ -407,7 +415,7 @@ public void generatesCorrect_domain() throws Exception {
407415
assertThat(getActualDomain(), yamlEqualTo(getExpectedDomain()));
408416
}
409417

410-
protected Domain getActualDomain() {
418+
private Domain getActualDomain() {
411419
return getDomainCustomResourceYaml().getDomain();
412420
}
413421

kubernetes/src/test/java/oracle/kubernetes/operator/create/CreateDomainGeneratedFilesOptionalFeaturesDisabledTest.java

Lines changed: 2 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,6 @@
44

55
package oracle.kubernetes.operator.create;
66

7-
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.*;
8-
9-
import io.kubernetes.client.models.V1PersistentVolume;
10-
import oracle.kubernetes.operator.utils.CreateDomainInputs;
117
import org.junit.BeforeClass;
128

139
/**
@@ -16,19 +12,10 @@
1612
* image pull secret, production mode is disabled and the weblogic domain storage type is HOST_PATH.
1713
*/
1814
public class CreateDomainGeneratedFilesOptionalFeaturesDisabledTest
19-
extends CreateDomainGeneratedFilesBaseTest {
15+
extends CreateDomainGeneratedFilesOptionalFeaturesDisabledTestBase {
2016

2117
@BeforeClass
2218
public static void setup() throws Exception {
23-
setup(CreateDomainInputs.newInputs()); // defaults to admin node port off, t3 channel off,
24-
}
25-
26-
@Override
27-
protected V1PersistentVolume getExpectedWeblogicDomainPersistentVolume() {
28-
V1PersistentVolume expected = super.getExpectedWeblogicDomainPersistentVolume();
29-
expected
30-
.getSpec()
31-
.hostPath(newHostPathVolumeSource().path(getInputs().getWeblogicDomainStoragePath()));
32-
return expected;
19+
defineDomainYamlFactory(new ScriptedDomainYamlFactory());
3320
}
3421
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
package oracle.kubernetes.operator.create;
2+
3+
import static oracle.kubernetes.operator.utils.KubernetesArtifactUtils.newHostPathVolumeSource;
4+
5+
import io.kubernetes.client.models.V1PersistentVolume;
6+
import oracle.kubernetes.operator.utils.DomainYamlFactory;
7+
8+
public class CreateDomainGeneratedFilesOptionalFeaturesDisabledTestBase
9+
extends CreateDomainGeneratedFilesBaseTest {
10+
protected static void defineDomainYamlFactory(DomainYamlFactory factory) throws Exception {
11+
setup(factory, factory.newDomainValues()); // defaults to admin node port off, t3 channel off,
12+
}
13+
14+
@Override
15+
protected V1PersistentVolume getExpectedWeblogicDomainPersistentVolume() {
16+
V1PersistentVolume expected = super.getExpectedWeblogicDomainPersistentVolume();
17+
expected
18+
.getSpec()
19+
.hostPath(newHostPathVolumeSource().path(getInputs().getWeblogicDomainStoragePath()));
20+
return expected;
21+
}
22+
}

0 commit comments

Comments
 (0)