Skip to content

Commit 4e89672

Browse files
maggiehe00rjeberhard
authored andcommitted
Backport Remote Console installation change to release/4.1
1 parent c9da581 commit 4e89672

File tree

10 files changed

+84
-74
lines changed

10 files changed

+84
-74
lines changed

Jenkinsfile

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,10 @@ pipeline {
189189
description: 'URL to download WIT.',
190190
defaultValue: 'https://github.com/oracle/weblogic-image-tool/releases/latest'
191191
)
192+
string(name: 'REMOTECONSOLE_VERSION',
193+
description: 'RemoteConsole version.',
194+
defaultValue: '2.4.7'
195+
)
192196
string(name: 'TEST_IMAGES_REPO',
193197
description: '',
194198
defaultValue: "${env.WKT_OCIR_HOST}"
@@ -527,6 +531,7 @@ EOF
527531
echo "-Dwko.it.prometheus.chart.version=\"${PROMETHEUS_CHART_VERSION}\"" >> ${WORKSPACE}/.mvn/maven.config
528532
echo "-Dwko.it.grafana.chart.version=\"${GRAFANA_CHART_VERSION}\"" >> ${WORKSPACE}/.mvn/maven.config
529533
echo "-Dwko.it.collect.logs.on.success=\"${COLLECT_LOGS_ON_SUCCESS}\"" >> ${WORKSPACE}/.mvn/maven.config
534+
echo "-Dwko.it.remoteconsole.version=\"${REMOTECONSOLE_VERSION}\"" >> ${WORKSPACE}/.mvn/maven.config
530535
531536
echo "${WORKSPACE}/.mvn/maven.config contents:"
532537
cat "${WORKSPACE}/.mvn/maven.config"

Jenkinsfile.kindnightly

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -259,6 +259,10 @@ pipeline {
259259
description: 'Collect logs for successful runs. Default is false.',
260260
defaultValue: false
261261
)
262+
string(name: 'REMOTECONSOLE_VERSION',
263+
description: 'RemoteConsole version.',
264+
defaultValue: '2.4.7'
265+
)
262266
}
263267

264268
stages {
@@ -550,6 +554,7 @@ EOF
550554
echo "-Dwko.it.prometheus.chart.version=\"${PROMETHEUS_CHART_VERSION}\"" >> ${WORKSPACE}/.mvn/maven.config
551555
echo "-Dwko.it.grafana.chart.version=\"${GRAFANA_CHART_VERSION}\"" >> ${WORKSPACE}/.mvn/maven.config
552556
echo "-Dwko.it.collect.logs.on.success=\"${COLLECT_LOGS_ON_SUCCESS}\"" >> ${WORKSPACE}/.mvn/maven.config
557+
echo "-Dwko.it.remoteconsole.version=\"${REMOTECONSOLE_VERSION}\"" >> ${WORKSPACE}/.mvn/maven.config
553558

554559
echo "${WORKSPACE}/.mvn/maven.config contents:"
555560
cat "${WORKSPACE}/.mvn/maven.config"

Jenkinsfile.oke

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,10 @@ pipeline {
165165
description: 'Collect logs for successful runs. Default is false.',
166166
defaultValue: false
167167
)
168+
string(name: 'REMOTECONSOLE_VERSION',
169+
description: 'RemoteConsole version.',
170+
defaultValue: '2.4.7'
171+
)
168172
}
169173

170174

@@ -523,6 +527,7 @@ EOF
523527
echo "-Dwko.it.prometheus.chart.version=\"${PROMETHEUS_CHART_VERSION}\"" >> ${WORKSPACE}/.mvn/maven.config
524528
echo "-Dwko.it.grafana.chart.version=\"${GRAFANA_CHART_VERSION}\"" >> ${WORKSPACE}/.mvn/maven.config
525529
echo "-Dwko.it.collect.logs.on.success=\"${COLLECT_LOGS_ON_SUCCESS}\"" >> ${WORKSPACE}/.mvn/maven.config
530+
echo "-Dwko.it.remoteconsole.version=\"${REMOTECONSOLE_VERSION}\"" >> ${WORKSPACE}/.mvn/maven.config
526531

527532
echo "${WORKSPACE}/.mvn/maven.config contents:"
528533
cat "${WORKSPACE}/.mvn/maven.config"

integration-tests/pom.xml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@
5959
<wko.it.remoteconsole.download.url>${remoteconsole.download.url}</wko.it.remoteconsole.download.url>
6060
<wko.it.wle.version>${env.WLE_VERSION}</wko.it.wle.version>
6161
<wko.it.wle.download.url>${wle.download.url}</wko.it.wle.download.url>
62+
<wko.it.remoteconsole.version>${remoteconsole.version}</wko.it.remoteconsole.version>
6263
<wko.it.wle.file.name>${env.WLE_FILE_NAME}</wko.it.wle.file.name>
6364
<wko.it.snake.version>${snake.version}</wko.it.snake.version>
6465
<wko.it.snake.download.url>${snake.download.url}</wko.it.snake.download.url>
@@ -252,6 +253,7 @@
252253
<wko.it.oraclelinux.test.version>${wko.it.oraclelinux.test.version}</wko.it.oraclelinux.test.version>
253254
<wko.it.wdt.download.url>${wko.it.wdt.download.url}</wko.it.wdt.download.url>
254255
<wko.it.wit.download.url>${wko.it.wit.download.url}</wko.it.wit.download.url>
256+
<wko.it.remoteconsole.version>${wko.it.remoteconsole.version}</wko.it.remoteconsole.version>
255257
<wko.it.remoteconsole.download.url>${wko.it.remoteconsole.download.url}</wko.it.remoteconsole.download.url>
256258
<wko.it.wle.version>${wko.it.wle.version}</wko.it.wle.version>
257259
<wko.it.wle.download.url>${wko.it.wle.download.url}</wko.it.wle.download.url>

integration-tests/src/test/java/oracle/weblogic/kubernetes/ItRemoteConsole.java

Lines changed: 38 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
import io.kubernetes.client.openapi.models.V1IngressRule;
1818
import io.kubernetes.client.openapi.models.V1IngressServiceBackend;
1919
import io.kubernetes.client.openapi.models.V1ServiceBackendPort;
20+
import oracle.weblogic.kubernetes.actions.TestActions;
2021
import oracle.weblogic.kubernetes.actions.impl.NginxParams;
2122
import oracle.weblogic.kubernetes.actions.impl.primitive.HelmParams;
2223
import oracle.weblogic.kubernetes.annotations.DisabledOnSlimImage;
@@ -43,8 +44,11 @@
4344
import static oracle.weblogic.kubernetes.TestConstants.OKD;
4445
import static oracle.weblogic.kubernetes.TestConstants.RESULTS_ROOT;
4546
import static oracle.weblogic.kubernetes.TestConstants.SKIP_CLEANUP;
47+
import static oracle.weblogic.kubernetes.actions.ActionConstants.REMOTECONSOLE_DOWNLOAD_URL;
48+
import static oracle.weblogic.kubernetes.actions.ActionConstants.REMOTECONSOLE_FILE;
4649
import static oracle.weblogic.kubernetes.actions.ActionConstants.RESOURCE_DIR;
4750
import static oracle.weblogic.kubernetes.actions.TestActions.getServicePort;
51+
import static oracle.weblogic.kubernetes.actions.TestActions.installWlsRemoteConsole;
4852
import static oracle.weblogic.kubernetes.actions.TestActions.listIngresses;
4953
import static oracle.weblogic.kubernetes.actions.impl.Service.getServiceNodePort;
5054
import static oracle.weblogic.kubernetes.utils.ApplicationUtils.callWebAppAndWaitTillReady;
@@ -60,8 +64,6 @@
6064
import static oracle.weblogic.kubernetes.utils.OperatorUtils.installAndVerifyOperator;
6165
import static oracle.weblogic.kubernetes.utils.PodUtils.getExternalServicePodName;
6266
import static oracle.weblogic.kubernetes.utils.ThreadSafeLogger.getLogger;
63-
import static oracle.weblogic.kubernetes.utils.WebLogicRemoteConsoleUtils.installAndVerifyWlsRemoteConsole;
64-
import static oracle.weblogic.kubernetes.utils.WebLogicRemoteConsoleUtils.shutdownWlsRemoteConsole;
6567
import static org.assertj.core.api.Assertions.assertThat;
6668
import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
6769
import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -154,6 +156,8 @@ public static void initAll(@Namespaces(4) List<String> namespaces) {
154156
}
155157

156158
// install WebLogic remote console
159+
logger.info("REMOTECONSOLE_DOWNLOAD_URL [{0}]", REMOTECONSOLE_DOWNLOAD_URL);
160+
logger.info("REMOTECONSOLE_FILE [{0}]", REMOTECONSOLE_FILE);
157161
assertTrue(installAndVerifyWlsRemoteConsole(domainNamespace, adminServerPodName),
158162
"Remote Console installation failed");
159163

@@ -383,4 +387,36 @@ private static void verifyRemoteConsoleConnectionThroughLB(int nodePortOfLB) {
383387
"Calling web app failed");
384388
}
385389

390+
/**
391+
* Install WebLogic Remote Console.
392+
* @param domainNamespace namespace in which the domain will be created
393+
* @param adminServerPodName the name of the admin server pod
394+
*
395+
* @return true if WebLogic Remote Console is successfully installed, false otherwise.
396+
*/
397+
public static boolean installAndVerifyWlsRemoteConsole(String domainNamespace, String adminServerPodName) {
398+
399+
assertThat(installWlsRemoteConsole(domainNamespace, adminServerPodName))
400+
.as("WebLogic Remote Console installation succeeds")
401+
.withFailMessage("WebLogic Remote Console installation failed")
402+
.isTrue();
403+
404+
return true;
405+
}
406+
407+
/**
408+
* Shutdown WebLogic Remote Console.
409+
*
410+
* @return true if WebLogic Remote Console is successfully shutdown, false otherwise.
411+
*/
412+
public static boolean shutdownWlsRemoteConsole() {
413+
414+
assertThat(TestActions.shutdownWlsRemoteConsole())
415+
.as("WebLogic Remote Console shutdown succeeds")
416+
.withFailMessage("WebLogic Remote Console shutdown failed")
417+
.isTrue();
418+
419+
return true;
420+
}
421+
386422
}

integration-tests/src/test/java/oracle/weblogic/kubernetes/actions/ActionConstants.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -65,15 +65,17 @@ public interface ActionConstants {
6565
public static final String SNAKE = "SNAKE";
6666

6767
public static final String REMOTECONSOLE = "REMOTECONSOLE";
68+
public static final String REMOTECONSOLE_VERSION =
69+
getNonEmptySystemProperty("wko.it.remoteconsole.version", "2.4.7");
6870
//remoteconsole jar file after unzipping
69-
public static final String REMOTECONSOLE_FILE = WORK_DIR + "/console/console.jar";
71+
public static final String REMOTECONSOLE_FILE = WORK_DIR + "/backend/console.jar";
7072
public static final String REMOTECONSOLE_DOWNLOAD_URL_DEFAULT =
71-
"https://github.com/oracle/weblogic-remote-console/releases/latest";
73+
"https://github.com/oracle/weblogic-remote-console/releases/download/v"
74+
+ REMOTECONSOLE_VERSION + "/";
7275
public static final String REMOTECONSOLE_DOWNLOAD_URL
7376
= getNonEmptySystemProperty("wko.it.remoteconsole.download.url", REMOTECONSOLE_DOWNLOAD_URL_DEFAULT);
74-
public static final String REMOTECONSOLE_VERSION =
75-
getNonEmptySystemProperty("remoteconsole.version", "1.1.0");
76-
public static final String REMOTECONSOLE_DOWNLOAD_FILENAME_DEFAULT = "console.zip";
77+
public static final String REMOTECONSOLE_DOWNLOAD_FILENAME_DEFAULT =
78+
"WebLogic-Remote-Console-" + REMOTECONSOLE_VERSION + "-linux.zip";
7779
public static final String REMOTECONSOLE_ZIP_PATH = DOWNLOAD_DIR + "/" + REMOTECONSOLE_DOWNLOAD_FILENAME_DEFAULT;
7880

7981
public static final String WLE_VERSION = getNonEmptySystemProperty("wko.it.wle.version", "latest");

integration-tests/src/test/java/oracle/weblogic/kubernetes/actions/impl/WebLogicRemoteConsole.java

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33

44
package oracle.weblogic.kubernetes.actions.impl;
55

6-
import java.nio.file.Paths;
7-
86
import oracle.weblogic.kubernetes.actions.impl.primitive.Installer;
97
import oracle.weblogic.kubernetes.logging.LoggingFacade;
108
import oracle.weblogic.kubernetes.utils.ExecResult;
@@ -15,7 +13,6 @@
1513
import static oracle.weblogic.kubernetes.utils.ApplicationUtils.callWebAppAndWaitTillReady;
1614
import static oracle.weblogic.kubernetes.utils.CommonTestUtils.testUntil;
1715
import static oracle.weblogic.kubernetes.utils.ExecCommand.exec;
18-
import static oracle.weblogic.kubernetes.utils.FileUtils.copyFileFromPod;
1916
import static oracle.weblogic.kubernetes.utils.ThreadSafeLogger.getLogger;
2017
import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
2118

@@ -71,21 +68,13 @@ private static boolean downloadRemoteConsole() {
7168
private static boolean runRemoteconsole(String domainNamespace, String adminServerPodName) {
7269

7370
String jarLocation = REMOTECONSOLE_FILE;
74-
75-
assertDoesNotThrow(() -> copyFileFromPod(domainNamespace,
76-
adminServerPodName, "weblogic-server",
77-
"/u01/oracle/wlserver/server/lib/DemoTrust.jks",
78-
Paths.get(WORK_DIR, "DemoTrust.jks")));
7971
StringBuffer javaCmd = new StringBuffer("java");
80-
javaCmd.append(" -Dconsole.disableHostnameVerification=true");
81-
javaCmd.append(" -Djavax.net.ssl.trustStore=" + "\"" + WORK_DIR + "/DemoTrust.jks" + "\"");
82-
javaCmd.append(" -Djavax.net.ssl.trustStoreType=\"JKS\"");
8372
javaCmd.append(" -jar ");
8473
javaCmd.append(jarLocation);
8574
javaCmd.append(" > ");
86-
javaCmd.append(WORK_DIR + "/console");
75+
javaCmd.append(WORK_DIR + "/backend");
8776
javaCmd.append("/remoteconsole.out 2>&1 ");
88-
javaCmd.append(WORK_DIR + "/console");
77+
javaCmd.append(WORK_DIR + "/backend");
8978
javaCmd.append(" &");
9079
logger.info("java command to start remote console {0}", javaCmd.toString());
9180

@@ -95,6 +84,7 @@ private static boolean runRemoteconsole(String domainNamespace, String adminServ
9584

9685
return ((result.exitValue() == 0) && accessRemoteconsole());
9786

87+
9888
}
9989

10090
private static boolean accessRemoteconsole() {

integration-tests/src/test/java/oracle/weblogic/kubernetes/actions/impl/primitive/Installer.java

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -197,11 +197,22 @@ && new File(downloadDir, getInstallerFileName(params.type())).exists()) {
197197
}
198198

199199
private boolean unzip(String downloadDir) {
200-
String command = String.format(
201-
"unzip -o -d %s %s/%s",
202-
WORK_DIR,
203-
downloadDir,
204-
getInstallerFileName(params.type()));
200+
String command = null;
201+
if (params.type().equalsIgnoreCase("REMOTECONSOLE")) {
202+
command = String.format(
203+
"unzip -q %s/%s \"backend/*\" -d %s",
204+
downloadDir,
205+
getInstallerFileName(params.type()),
206+
WORK_DIR);
207+
} else {
208+
command = String.format(
209+
"unzip -o -d %s %s/%s",
210+
WORK_DIR,
211+
downloadDir,
212+
getInstallerFileName(params.type()));
213+
}
214+
215+
getLogger().info("The unzip command is: {0} for: {1} ", command, params.type());
205216

206217
return Command.withParams(
207218
defaultCommandParams()

integration-tests/src/test/java/oracle/weblogic/kubernetes/utils/CommonTestUtils.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,6 @@
6565
import static oracle.weblogic.kubernetes.actions.ActionConstants.MODEL_DIR;
6666
import static oracle.weblogic.kubernetes.actions.ActionConstants.REMOTECONSOLE;
6767
import static oracle.weblogic.kubernetes.actions.ActionConstants.REMOTECONSOLE_DOWNLOAD_FILENAME_DEFAULT;
68-
import static oracle.weblogic.kubernetes.actions.ActionConstants.REMOTECONSOLE_DOWNLOAD_URL_DEFAULT;
6968
import static oracle.weblogic.kubernetes.actions.ActionConstants.RESOURCE_DIR;
7069
import static oracle.weblogic.kubernetes.actions.ActionConstants.SNAKE;
7170
import static oracle.weblogic.kubernetes.actions.ActionConstants.SNAKE_DOWNLOADED_FILENAME;
@@ -1880,7 +1879,10 @@ public static String getActualLocationIfNeeded(
18801879
String actualLocation = location;
18811880
if (needToGetActualLocation(location, type)) {
18821881
actualLocation = location + "/download/" + getInstallerFileName(type);
1882+
} else if (!needToGetActualLocation(location, type) && type.equalsIgnoreCase(REMOTECONSOLE)) {
1883+
actualLocation = location + getInstallerFileName(type);
18831884
}
1885+
18841886
getLogger().info("The actual download location for {0} is {1}", type, actualLocation);
18851887
return actualLocation;
18861888
}
@@ -1895,8 +1897,6 @@ private static boolean needToGetActualLocation(
18951897
return WIT_DOWNLOAD_URL_DEFAULT.equals(location);
18961898
case WLE:
18971899
return WLE_DOWNLOAD_URL_DEFAULT.equals(location);
1898-
case REMOTECONSOLE:
1899-
return REMOTECONSOLE_DOWNLOAD_URL_DEFAULT.equals(location);
19001900
default:
19011901
return false;
19021902
}

integration-tests/src/test/java/oracle/weblogic/kubernetes/utils/WebLogicRemoteConsoleUtils.java

Lines changed: 0 additions & 46 deletions
This file was deleted.

0 commit comments

Comments
 (0)