Skip to content

Commit 3403fe9

Browse files
authored
Merge pull request #331 from oracle/feature/OWLS-66115
Allow WebLogic Docker image to be specified in inputs file for genera…
2 parents 1c070a8 + 2a68fd8 commit 3403fe9

File tree

7 files changed

+33
-3
lines changed

7 files changed

+33
-3
lines changed

kubernetes/create-weblogic-domain-inputs.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,9 @@ managedServerNameBase: managed-server
4040
# Port number for each managed server
4141
managedServerPort: 8001
4242

43+
# WebLogic Docker image
44+
weblogicImage: store/oracle/weblogic:12.2.1.3
45+
4346
# Persistent volume type for the domain's storage.
4447
# The value must be 'HOST_PATH' or 'NFS'.
4548
# If using 'NFS', weblogicDomainStorageNFSServer must be specified.

kubernetes/internal/create-weblogic-domain-job-template.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,7 @@ spec:
275275
restartPolicy: Never
276276
containers:
277277
- name: create-weblogic-domain-job
278-
image: store/oracle/weblogic:12.2.1.3
278+
image: %WEBLOGIC_IMAGE%
279279
imagePullPolicy: IfNotPresent
280280
ports:
281281
- containerPort: 7001

kubernetes/internal/create-weblogic-domain.sh

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -454,6 +454,14 @@ function createYamlFiles {
454454
enabledPrefix="" # uncomment the feature
455455
disabledPrefix="# " # comment out the feature
456456

457+
# For backward compatability, default to "store/oracle/weblogic:12.2.1.3" if not defined in
458+
# create-weblogic-domain-inputs.yaml
459+
if [ -z "${weblogicImage}" ]; then
460+
weblogicImage="store/oracle/weblogic:12.2.1.3"
461+
fi
462+
# Must escape the ':' value in weblogicImage for sed to properly parse and replace
463+
weblogicImage=$(echo ${weblogicImage} | sed -e "s/\:/\\\:/g")
464+
457465
# Generate the yaml to create the persistent volume
458466
echo Generating ${domainPVOutput}
459467

@@ -491,6 +499,7 @@ function createYamlFiles {
491499
cp ${createJobInput} ${createJobOutput}
492500
sed -i -e "s:%NAMESPACE%:$namespace:g" ${createJobOutput}
493501
sed -i -e "s:%WEBLOGIC_CREDENTIALS_SECRET_NAME%:${weblogicCredentialsSecretName}:g" ${createJobOutput}
502+
sed -i -e "s:%WEBLOGIC_IMAGE%:${weblogicImage}:g" ${createJobOutput}
494503
sed -i -e "s:%WEBLOGIC_IMAGE_PULL_SECRET_NAME%:${weblogicImagePullSecretName}:g" ${createJobOutput}
495504
sed -i -e "s:%WEBLOGIC_IMAGE_PULL_SECRET_PREFIX%:${weblogicImagePullSecretPrefix}:g" ${createJobOutput}
496505
sed -i -e "s:%DOMAIN_UID%:${domainUID}:g" ${createJobOutput}
@@ -511,6 +520,7 @@ function createYamlFiles {
511520

512521
cp ${deleteJobInput} ${deleteJobOutput}
513522
sed -i -e "s:%NAMESPACE%:$namespace:g" ${deleteJobOutput}
523+
sed -i -e "s:%WEBLOGIC_IMAGE%:${weblogicImage}:g" ${deleteJobOutput}
514524
sed -i -e "s:%WEBLOGIC_CREDENTIALS_SECRET_NAME%:${weblogicCredentialsSecretName}:g" ${deleteJobOutput}
515525
sed -i -e "s:%WEBLOGIC_IMAGE_PULL_SECRET_NAME%:${weblogicImagePullSecretName}:g" ${deleteJobOutput}
516526
sed -i -e "s:%WEBLOGIC_IMAGE_PULL_SECRET_PREFIX%:${weblogicImagePullSecretPrefix}:g" ${deleteJobOutput}
@@ -538,6 +548,7 @@ function createYamlFiles {
538548
sed -i -e "s:%DOMAIN_UID%:${domainUID}:g" ${dcrOutput}
539549
sed -i -e "s:%DOMAIN_NAME%:${domainName}:g" ${dcrOutput}
540550
sed -i -e "s:%ADMIN_SERVER_NAME%:${adminServerName}:g" ${dcrOutput}
551+
sed -i -e "s:%WEBLOGIC_IMAGE%:${weblogicImage}:g" ${dcrOutput}
541552
sed -i -e "s:%ADMIN_PORT%:${adminPort}:g" ${dcrOutput}
542553
sed -i -e "s:%INITIAL_MANAGED_SERVER_REPLICAS%:${initialManagedServerReplicas}:g" ${dcrOutput}
543554
sed -i -e "s:%EXPOSE_T3_CHANNEL_PREFIX%:${exposeAdminT3ChannelPrefix}:g" ${dcrOutput}

kubernetes/internal/delete-weblogic-domain-job-template.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ spec:
3535
restartPolicy: Never
3636
containers:
3737
- name: delete-weblogic-domain-job
38-
image: store/oracle/weblogic:12.2.1.3
38+
image: %WEBLOGIC_IMAGE%
3939
imagePullPolicy: IfNotPresent
4040
ports:
4141
- containerPort: 7001

kubernetes/internal/domain-custom-resource-template.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ spec:
2121
# The WebLogic Domain Name
2222
domainName: %DOMAIN_NAME%
2323
# The Operator currently does not support other images
24-
image: "store/oracle/weblogic:12.2.1.3"
24+
image: "%WEBLOGIC_IMAGE%"
2525
# imagePullPolicy defaults to "Always" if image version is :latest
2626
imagePullPolicy: "IfNotPresent"
2727
# Identify which Secret contains the WebLogic Admin credentials (note that there is an example of

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ public void defaultInputsFile_hasCorrectContents() throws Exception {
5555
.clusterName("cluster-1")
5656
.clusterType("DYNAMIC")
5757
.domainName("base_domain")
58+
.weblogicImage("store/oracle/weblogic:12.2.1.3")
5859
.domainUID("")
5960
.exposeAdminNodePort("false")
6061
.exposeAdminT3Channel("false")

operator/src/test/java/oracle/kubernetes/operator/utils/CreateDomainInputs.java

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ public class CreateDomainInputs {
7878
private String loadBalancerExposeAdminPort = "";
7979
private String javaOptions = "";
8080
private String version = "";
81+
private String weblogicImage = "";
8182

8283
public static CreateDomainInputs newInputs() throws Exception {
8384
return readDefaultInputsFile()
@@ -87,6 +88,7 @@ public static CreateDomainInputs newInputs() throws Exception {
8788
.clusterName("TestCluster")
8889
.clusterType(CLUSTER_TYPE_DYNAMIC)
8990
.domainName("TestDomain")
91+
.weblogicImage("store/oracle/weblogic:12.2.1.3")
9092
.domainUID("test-domain-uid")
9193
.javaOptions("TestJavaOptions")
9294
.loadBalancerDashboardPort("31315")
@@ -157,6 +159,19 @@ public CreateDomainInputs adminServerName(String adminServerName) {
157159
return this;
158160
}
159161

162+
public String getWeblogicImage() {
163+
return weblogicImage;
164+
}
165+
166+
public void setWeblogicImage(String weblogicImage) {
167+
this.weblogicImage = convertNullToEmptyString(weblogicImage);
168+
}
169+
170+
public CreateDomainInputs weblogicImage(String weblogicImage) {
171+
setWeblogicImage(weblogicImage);
172+
return this;
173+
}
174+
160175
public String getDomainName() {
161176
return domainName;
162177
}

0 commit comments

Comments
 (0)