Skip to content

Commit 6789364

Browse files
K8S-529 (fix upgrade) (#39)
K8S-529 [K8s]: Cluster upgrade fails from 1.18.10 to 1.20.4
1 parent 2eb1d27 commit 6789364

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed

addons/upgrade.jps

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -238,7 +238,7 @@ actions:
238238
resp = resp.response || resp;
239239
if (resp.result != 0) return resp;
240240

241-
var apps = resp.apps, newAddons = {}, newJps, isInstalled;
241+
var apps = resp.apps, newAddons = {}, mainApp = {}, newJps;
242242

243243
try {
244244
newJps = toNative(new org.yaml.snakeyaml.Yaml().load(new com.hivext.api.core.utils.Transport().get(manifestUrl)));
@@ -259,13 +259,12 @@ actions:
259259
for (var i = 0, n = apps.length; i < n; i++) {
260260
var app = apps[i], nodeGroup = "", jps;
261261

262-
if (!app.isInstalled) continue;
262+
if (!app.isInstalled) continue;
263263
app.settings.data = app.settings.data || {};
264264
app.settings.data.version = version;
265265

266266
if (app.app_id == "kubernetes" || app.app_id == "kubernetes-release") {
267-
jps = newJps;
268-
isInstalled = true;
267+
mainApp[app.app_id] = { jps: newJps, data: app.settings.data };
269268
} else {
270269
jps = newAddons[app.app_id];
271270
nodeGroup = "k8sm";
@@ -282,10 +281,12 @@ actions:
282281
if (jps) schedule(jps, batch, app.settings.data);
283282
}
284283

285-
for (var appId in newAddons) schedule(buildAddon(newAddons[appId], newJps, true), batch);
284+
if (mainApp) {
285+
mainApp = mainApp["kubernetes-release"] || mainApp.kubernetes;
286+
schedule(mainApp.jps, batch, mainApp.data);
287+
} else return { result: com.hivext.api.Response.OBJECT_FORMAT_ERROR, error: "Kubernetes manifest is not found!", data: ex};
286288

287-
if (!isInstalled)
288-
return { result: com.hivext.api.Response.OBJECT_FORMAT_ERROR, error: "Kubernetes manifest is not found!", data: ex};
289+
for (var appId in newAddons) schedule(buildAddon(newAddons[appId], newJps, true), batch);
289290

290291
if (batch.methods.length > 0) {
291292
var batchResp = api.utils.batch.Call(appid, toJSON(batch), false);

0 commit comments

Comments
 (0)