diff --git a/CHANGES b/CHANGES index 7c3ad3002..c0b7a0f2a 100644 --- a/CHANGES +++ b/CHANGES @@ -1968,4 +1968,5 @@ * Fix crash when redis config was set * Update schedule was unselected in the UI * cloudron-setup: --provider is now optional +* show warning for unstable updates diff --git a/src/apps.js b/src/apps.js index 0f585d5d5..0044ee3c4 100644 --- a/src/apps.js +++ b/src/apps.js @@ -1848,6 +1848,8 @@ function canAutoupdateApp(app, updateInfo) { // for invalid subscriptions the appstore does not return a dockerImage if (!manifest.dockerImage) return false; + if (updateInfo.unstable) return false; // only manual update allowed for unstable updates + if ((semver.major(app.manifest.version) !== 0) && (semver.major(app.manifest.version) !== semver.major(manifest.version))) return false; // major changes are blocking if (app.runState === exports.RSTATE_STOPPED) return false; // stopped apps won't run migration scripts and shouldn't be updated diff --git a/src/appstore.js b/src/appstore.js index 439de3247..93686dd7f 100644 --- a/src/appstore.js +++ b/src/appstore.js @@ -416,7 +416,9 @@ function getAppUpdate(app, options, callback) { return callback(new BoxError(BoxError.EXTERNAL_ERROR, util.format('Malformed update: %s %s', result.statusCode, result.text))); } - // { id, creationDate, manifest } + updateInfo.unstable = !!updateInfo.unstable; + + // { id, creationDate, manifest, unstable } callback(null, updateInfo); }); });