diff --git a/src/application-manager.coffee b/src/application-manager.coffee index 9ae71921..d612e77e 100644 --- a/src/application-manager.coffee +++ b/src/application-manager.coffee @@ -793,7 +793,7 @@ module.exports = class ApplicationManager extends EventEmitter for availableImage in available if availableImage.appId == image.appId return availableImage.name - return 'resin/scratch' + return null # returns: # imagesToRemove: images that diff --git a/src/compose/images.coffee b/src/compose/images.coffee index 3b1964b2..e3458e06 100644 --- a/src/compose/images.coffee +++ b/src/compose/images.coffee @@ -59,7 +59,7 @@ module.exports = class Images extends EventEmitter .catch => @reportChange(image.imageId, _.merge(_.clone(image), { status: 'Downloading', downloadProgress: 0 })) Promise.try => - if validation.checkTruthy(opts.delta) and opts.deltaSource? and opts.deltaSource != 'resin/scratch' + if validation.checkTruthy(opts.delta) and opts.deltaSource? @logger.logSystemEvent(logTypes.downloadImageDelta, { image }) @inspectByName(opts.deltaSource) .then (srcImage) => diff --git a/src/lib/docker-utils.coffee b/src/lib/docker-utils.coffee index f0c8efd5..a647a525 100644 --- a/src/lib/docker-utils.coffee +++ b/src/lib/docker-utils.coffee @@ -59,14 +59,13 @@ module.exports = class DockerUtils extends DockerToolbelt { deltaRequestTimeout, deltaApplyTimeout, deltaRetryCount, deltaRetryInterval, uuid, currentApiKey, deltaEndpoint, apiEndpoint, - deltaSource, deltaSourceId, deltaVersion, startFromEmpty = false + deltaSource, deltaSourceId, deltaVersion } = fullDeltaOpts retryCount = checkInt(deltaRetryCount) retryInterval = checkInt(deltaRetryInterval) requestTimeout = checkInt(deltaRequestTimeout) applyTimeout = checkInt(deltaApplyTimeout) version = checkInt(deltaVersion) - deltaSource = 'resin/scratch' if startFromEmpty or !deltaSource? deltaSourceId ?= deltaSource log = (str) -> @@ -76,6 +75,12 @@ module.exports = class DockerUtils extends DockerToolbelt log("Unsupported delta version: #{version}. Falling back to regular pull") return @fetchImageWithProgress(imgDest, fullDeltaOpts, onProgress) + # Since the supervisor never calls this function without a source anymore, + # this should never happen, but we handle it anyways. + if !deltaSource? + log("Falling back to regular pull due to lack of a delta source") + return @fetchImageWithProgress(imgDest, fullDeltaOpts, onProgress) + docker = this log("Starting delta to #{imgDest}") @@ -110,7 +115,7 @@ module.exports = class DockerUtils extends DockerToolbelt if not (300 <= res.statusCode < 400 and res.headers['location']?) throw new Error("Got #{res.statusCode} when requesting image from delta server.") deltaUrl = res.headers['location'] - if deltaSource is 'resin/scratch' + if !deltaSource? deltaSrc = null else deltaSrc = deltaSourceId