Skip to content

Commit 5846983

Browse files
committed
fix
1 parent 8221a94 commit 5846983

File tree

1 file changed

+25
-66
lines changed

1 file changed

+25
-66
lines changed

integration-tests/src/test/java/oracle/kubernetes/operator/ITOperatorUpgrade.java

Lines changed: 25 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,13 @@
88
import static oracle.kubernetes.operator.BaseTest.QUICKTEST;
99
import static oracle.kubernetes.operator.BaseTest.logger;
1010

11-
import java.lang.reflect.Field;
1211
import java.nio.file.Files;
1312
import java.nio.file.Paths;
1413
import java.util.ArrayList;
1514
import java.util.List;
1615
import java.util.Map;
1716
import java.util.logging.Level;
1817
import oracle.kubernetes.operator.utils.Domain;
19-
import oracle.kubernetes.operator.utils.ExecCommand;
2018
import oracle.kubernetes.operator.utils.ExecResult;
2119
import oracle.kubernetes.operator.utils.Operator;
2220
import oracle.kubernetes.operator.utils.TestUtils;
@@ -36,8 +34,8 @@
3634
public class ITOperatorUpgrade extends BaseTest {
3735

3836
private static final String OP_BASE_REL = "2.0";
39-
private static final String OP_TARGET_RELEASE_VERSION = "apiVersion: weblogic.oracle/v4";
4037
private static final String OP_TARGET_RELEASE = "weblogic-kubernetes-operator:latest";
38+
private static final String DOM_TARGET_RELEASE_VERSION = "weblogic.oracle/v4";
4139
private static final String OP_NS = "weblogic-operator";
4240
private static final String OP_DEP_NAME = "operator-upgrade";
4341
private static final String OP_SA = "operator-sa";
@@ -58,21 +56,15 @@ public class ITOperatorUpgrade extends BaseTest {
5856
public static void staticPrepare() throws Exception {
5957
if (!QUICKTEST) {
6058
initialize(APP_PROPS_FILE);
61-
// pullImages();
6259
opUpgradeTmpDir = BaseTest.getResultDir() + "/operatorupgrade";
63-
// findOperatorJar();
6460
}
6561
}
6662

6763
private void setupOperatorAndDomain(String operatorGitRelease, String operatorRelease)
6864
throws Exception {
6965
logger.log(Level.INFO, "+++++++++++++++Beginning Test Setup+++++++++++++++++++++");
7066
TestUtils.exec("rm -rf " + Paths.get(opUpgradeTmpDir).toString());
71-
// TestUtils.exec("rm -rf " + Paths.get(opUpgradeTmpDir, "develop").toString());
7267
Files.createDirectories(Paths.get(opUpgradeTmpDir));
73-
// Files.createDirectories(Paths.get(opUpgradeTmpDir, "develop"));
74-
// setEnv("IMAGE_NAME_OPERATOR", "oracle/weblogic-kubernetes-operator");
75-
// setEnv("IMAGE_TAG_OPERATOR", operatorRelease);
7668
Map<String, Object> operatorMap = TestUtils.loadYaml(OPERATOR1_YAML);
7769
operatorMap.put("operatorImageName", "oracle/weblogic-kubernetes-operator");
7870
operatorMap.put("operatorImageTag", operatorRelease);
@@ -95,7 +87,6 @@ private void setupOperatorAndDomain(String operatorGitRelease, String operatorRe
9587
// testBasicUseCases(domain);
9688
// testClusterScaling(operator20, domain);
9789
printCompVersions();
98-
// findOperatorJar();
9990
logger.log(Level.INFO, "+++++++++++++++Ending Test Setup+++++++++++++++++++++");
10091
}
10192

@@ -108,8 +99,10 @@ public void cleanupOperatorAndDomain() throws Exception {
10899
}
109100
if (operator20 != null) {
110101
operator20.destroy();
111-
// operator20 = null;
112102
}
103+
ExecResult result = cleanup();
104+
logger.log(Level.INFO, "cleanup stdout\n" + result.stdout());
105+
logger.log(Level.INFO, "cleanup stderr\n" + result.stderr());
113106
TestUtils.ExecAndPrintLog(
114107
"kubectl delete pods,services,deployments,replicasets,configmaps,services --all --grace-period=0 --force --ignore-not-found -n "
115108
+ OP_NS);
@@ -120,9 +113,6 @@ public void cleanupOperatorAndDomain() throws Exception {
120113
"kubectl delete crd --all --grace-period=0 --ignore-not-found --force");
121114
TestUtils.ExecAndPrintLog("kubectl delete ns weblogic-operator --ignore-not-found --force");
122115
TestUtils.ExecAndPrintLog("kubectl delete ns weblogic-domain --ignore-not-found --force");
123-
ExecResult result = cleanup();
124-
logger.log(Level.INFO, "cleanup stdout\n" + result.stdout());
125-
logger.log(Level.INFO, "cleanup stderr\n" + result.stderr());
126116
logger.log(Level.INFO, "+++++++++++++++Done AfterTest cleanup+++++++++++++++++++++");
127117
}
128118

@@ -143,19 +133,16 @@ public static void staticUnPrepare() throws Exception {
143133
}
144134

145135
@Test
146-
public void testOperatorUpgradeFrom2_0ToDevelop() throws Exception {
136+
public void testOperatorUpgradeFrom2_0() throws Exception {
147137
String testMethod = new Object() {}.getClass().getEnclosingMethod().getName();
148138
logTestBegin(testMethod);
149139
setupOperatorAndDomain("2.0", "2.0");
150-
// setEnv("IMAGE_NAME_OPERATOR", "weblogic-kubernetes-operator");
151-
// setEnv("IMAGE_TAG_OPERATOR", "latest");
152140
upgradeOperator(true);
153-
logger.info(
154-
"+++++++++++++++++++++++++++++++++-SUCCESS--------------------------------+" + testMethod);
141+
logger.info("SUCCESS - " + testMethod);
155142
}
156143

157144
@Test
158-
public void testOperatorUpgradeFrom2_0_1ToDevelop() throws Exception {
145+
public void testOperatorUpgradeFrom2_0_1() throws Exception {
159146
String testMethod = new Object() {}.getClass().getEnclosingMethod().getName();
160147
logTestBegin(testMethod);
161148
setupOperatorAndDomain("release/2.0.1", "2.0.1");
@@ -164,7 +151,7 @@ public void testOperatorUpgradeFrom2_0_1ToDevelop() throws Exception {
164151
}
165152

166153
@Test
167-
public void testOperatorUpgradeFrom2_1ToDevelop() throws Exception {
154+
public void testOperatorUpgradeFrom2_1() throws Exception {
168155
String testMethod = new Object() {}.getClass().getEnclosingMethod().getName();
169156
logTestBegin(testMethod);
170157
setupOperatorAndDomain("release/2.1", "2.1");
@@ -173,7 +160,7 @@ public void testOperatorUpgradeFrom2_1ToDevelop() throws Exception {
173160
}
174161

175162
@Test
176-
public void testOperatorUpgradeFrom2_2_0ToDevelop() throws Exception {
163+
public void testOperatorUpgradeFrom2_2_0() throws Exception {
177164
String testMethod = new Object() {}.getClass().getEnclosingMethod().getName();
178165
logTestBegin(testMethod);
179166
setupOperatorAndDomain("release/2.2", "2.2.0");
@@ -182,7 +169,7 @@ public void testOperatorUpgradeFrom2_2_0ToDevelop() throws Exception {
182169
}
183170

184171
@Test
185-
public void testOperatorUpgradeFrom2_2_1ToDevelop() throws Exception {
172+
public void testOperatorUpgradeFrom2_2_1() throws Exception {
186173
String testMethod = new Object() {}.getClass().getEnclosingMethod().getName();
187174
logTestBegin(testMethod);
188175
setupOperatorAndDomain("release/2.2.1", "2.2.1");
@@ -191,60 +178,36 @@ public void testOperatorUpgradeFrom2_2_1ToDevelop() throws Exception {
191178
}
192179

193180
private void upgradeOperator(boolean restart) throws Exception {
194-
upgradeOperatorHelm(OP_TARGET_RELEASE);
195-
// printCompVersions();
196-
// if (restart) {
197-
// checkDomainRollingRestarted();
198-
// }
199-
printCompVersions();
200-
checkOperatorVersion(OP_TARGET_RELEASE_VERSION);
181+
operator20.callHelmUpgrade("image=" + OP_TARGET_RELEASE);
182+
if (restart) {
183+
checkDomainRollingRestarted();
184+
}
185+
checkOperatorVersion(DOM_TARGET_RELEASE_VERSION);
201186
// testBasicUseCases(domain);
202187
// testClusterScaling(operator20, domain);
203188
}
204189

205-
private static void pullImages() throws Exception {
206-
TestUtils.ExecAndPrintLog("docker pull oracle/weblogic-kubernetes-operator:" + OP_BASE_REL);
207-
}
208-
209-
private void upgradeOperatorHelm(String upgradeRelease) throws Exception {
210-
operator20.callHelmUpgrade("image=" + upgradeRelease);
211-
logger.log(Level.INFO, "Sleeping for up to 15 minutes");
190+
private void checkOperatorVersion(String version) throws Exception {
191+
boolean result = false;
192+
logger.log(Level.INFO, "Checking for the domain apiVersion in a loop for up to 15 minutes");
212193
for (int i = 0; i < 900; i = i + 10) {
213-
Thread.sleep(1000 * 10);
214194
TestUtils.ExecAndPrintLog(
215-
"kubectl get domain -n weblogic-domain operator20domain -o jsonpath={.apiVersion}");
195+
"kubectl get domain -n " + DOM_NS + " " + DUID + " -o jsonpath={.apiVersion}");
216196
ExecResult exec =
217197
TestUtils.exec(
218-
"kubectl get domain -n weblogic-domain operator20domain -o jsonpath={.apiVersion}");
219-
if (exec.stdout().contains("weblogic.oracle/v4")) {
198+
"kubectl get domain -n " + DOM_NS + " " + DUID + " -o jsonpath={.apiVersion}");
199+
if (exec.stdout().contains(DOM_TARGET_RELEASE_VERSION)) {
220200
logger.log(Level.INFO, "Got the expected apiVersion");
201+
result = true;
221202
break;
222203
}
204+
Thread.sleep(1000 * 10);
223205
}
224-
TestUtils.ExecAndPrintLog("kubectl get all --all-namespaces");
225-
}
226-
227-
private void checkOperatorVersion(String version) throws Exception {
228-
ExecResult result = ExecCommand.exec("kubectl get domain " + DUID + " -o yaml -n " + DOM_NS);
229-
if (!result.stdout().contains(version)) {
230-
logger.log(Level.INFO, result.stdout());
206+
if (!result) {
231207
throw new RuntimeException("FAILURE: Didn't get the expected operator version");
232208
}
233209
}
234210

235-
public static void setEnv(String key, String value) {
236-
try {
237-
Map<String, String> env = System.getenv();
238-
Class<?> cl = env.getClass();
239-
Field field = cl.getDeclaredField("m");
240-
field.setAccessible(true);
241-
Map<String, String> writableEnv = (Map<String, String>) field.get(env);
242-
writableEnv.put(key, value);
243-
} catch (Exception e) {
244-
throw new IllegalStateException("Failed to set environment variable", e);
245-
}
246-
}
247-
248211
private void checkDomainRollingRestarted() throws Exception {
249212
domain.verifyAdminServerRestarted();
250213
TestUtils.checkPodReady(DUID + "-" + domain.getAdminServerName(), DOM_NS);
@@ -258,12 +221,8 @@ private void checkDomainRollingRestarted() throws Exception {
258221
}
259222

260223
private void printCompVersions() throws Exception {
261-
TestUtils.ExecAndPrintLog("kubectl get domain " + DUID + " -o yaml -n " + DOM_NS);
262224
TestUtils.ExecAndPrintLog("docker images");
263225
TestUtils.ExecAndPrintLog("kubectl get pods -n " + OP_NS + " -o yaml");
264-
}
265-
266-
private static void findOperatorJar() throws Exception {
267-
TestUtils.ExecAndPrintLog("find /scratch -name weblogic-kubernetes-operator-2.3.0.jar");
226+
TestUtils.ExecAndPrintLog("kubectl get domain " + DUID + " -o yaml -n " + DOM_NS);
268227
}
269228
}

0 commit comments

Comments
 (0)