@@ -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