diff --git a/lib/config/definitions.js b/lib/config/definitions.js index 964709adc10353c93f6edb426bdf5b73202bbd06..13366aaa74fc4033ad104a3f8149c8bf10c3294a 100644 --- a/lib/config/definitions.js +++ b/lib/config/definitions.js @@ -1109,6 +1109,8 @@ const options = [ commitMessageTopic: '{{{depName}}} Docker tag', major: { enabled: false }, rollbackPrs: false, + commitMessageExtra: + 'to v{{#if isMajor}}{{{newMajor}}}{{else}}{{{newVersion}}}{{/if}}', digest: { branchTopic: '{{{depNameSanitized}}}-{{{currentValue}}}', commitMessageExtra: 'to {{newDigestShort}}', diff --git a/lib/datasource/docker.js b/lib/datasource/docker.js index 38bcc795427fe8fa58f72e1115bd88acdca176db..9a171e6a020b3b72e6e363c537abb4a4bd83e3a0 100644 --- a/lib/datasource/docker.js +++ b/lib/datasource/docker.js @@ -108,20 +108,16 @@ function extractDigestFromResponse(manifestResponse) { * The `newValue` supplied here should be a valid tag for the docker image. * * This function will: - * - Reconstruct the tag using newValue and tagSuffix - * - Look up a sha256 digest for that tag on its registry + * - Look up a sha256 digest for a tag on its registry * - Return the digest as a string */ async function getDigest(config, newValue) { - const { dockerRegistry, depName, tagSuffix } = config; + const { dockerRegistry, depName } = config; logger.debug(`getDigest(${dockerRegistry}, ${depName}, ${newValue})`); const massagedRegistry = massageRegistry(config, dockerRegistry); const repository = getRepository(depName, dockerRegistry); - let newTag = newValue || 'latest'; - if (tagSuffix) { - newTag += `-${tagSuffix}`; - } + const newTag = newValue || 'latest'; try { const cacheNamespace = 'datasource-docker-digest'; const cacheKey = `${massagedRegistry}:${repository}:${newTag}`; diff --git a/lib/manager/circleci/extract.js b/lib/manager/circleci/extract.js index ba691bdcf18dcdfa2fea68022067062fe605b70b..f60923ad9327fffb9f1fc9c6ceabb782259ef517 100644 --- a/lib/manager/circleci/extract.js +++ b/lib/manager/circleci/extract.js @@ -17,7 +17,7 @@ function extractPackageFile(content) { { dockerRegistry: dep.dockerRegistry, depName: dep.depName, - currentTag: dep.currentTag, + currentValue: dep.currentValue, currentDigest: dep.currentDigest, }, 'CircleCI docker image' diff --git a/lib/manager/docker-compose/extract.js b/lib/manager/docker-compose/extract.js index feaa2ae7d3aac42a45b255d5e5a0324d9e323200..e235d46c8aa89265dee80cf0645ae6cca6abbd19 100644 --- a/lib/manager/docker-compose/extract.js +++ b/lib/manager/docker-compose/extract.js @@ -17,7 +17,7 @@ function extractPackageFile(content) { { dockerRegistry: dep.dockerRegistry, depName: dep.depName, - currentTag: dep.currentTag, + currentValue: dep.currentValue, currentDigest: dep.currentDigest, }, 'Docker Compose image' @@ -27,7 +27,9 @@ function extractPackageFile(content) { } lineNumber += 1; } - deps = deps.filter(dep => !(dep.currentTag && dep.currentTag.includes('${'))); + deps = deps.filter( + dep => !(dep.currentValue && dep.currentValue.includes('${')) + ); if (!deps.length) { return null; } diff --git a/lib/manager/dockerfile/extract.js b/lib/manager/dockerfile/extract.js index 0a62e2c09052a055165efa5ba90242b4728c8d28..91a1581f2e07d042f91384348c74d515a6516a7b 100644 --- a/lib/manager/dockerfile/extract.js +++ b/lib/manager/dockerfile/extract.js @@ -14,38 +14,22 @@ function splitImageParts(currentFrom) { } const currentDepTagDigest = split.join('/'); const [currentDepTag, currentDigest] = currentDepTagDigest.split('@'); - const [depName, currentTag] = currentDepTag.split(':'); - let currentValue; - let tagSuffix; - if (currentTag) { - [currentValue, ...tagSuffix] = currentTag.split('-'); - tagSuffix = tagSuffix && tagSuffix.length ? tagSuffix.join('-') : undefined; - } + const [depName, currentValue] = currentDepTag.split(':'); return { dockerRegistry, depName, - currentTag, currentDigest, currentDepTagDigest, currentDepTag, currentValue, - tagSuffix, }; } -function getPurl(dockerRegistry, depName, tagSuffix) { +function getPurl(dockerRegistry, depName) { let purl = `pkg:docker/${depName}`; if (dockerRegistry) { purl += `?registry=${dockerRegistry}`; } - if (tagSuffix) { - if (!purl.includes('?')) { - purl += '?'; - } else { - purl += '&'; - } - purl += `suffix=${tagSuffix}`; - } return purl; } @@ -55,7 +39,7 @@ function getDep(currentFrom) { currentFrom, versionScheme: 'docker', }; - const purl = getPurl(dep.dockerRegistry, dep.depName, dep.tagSuffix); + const purl = getPurl(dep.dockerRegistry, dep.depName); dep.purl = purl; if ( (dep.depName === 'node' || dep.depName.endsWith('/node')) && @@ -89,7 +73,7 @@ function extractPackageFile(content) { logger.debug( { depName: dep.depName, - currentTag: dep.currentTag, + currentValue: dep.currentValue, currentDigest: dep.currentDigest, }, 'Dockerfile FROM' @@ -114,7 +98,7 @@ function extractPackageFile(content) { logger.info( { depName: dep.depName, - currentTag: dep.currentTag, + currentValue: dep.currentValue, currentDigest: dep.currentDigest, }, 'Dockerfile COPY --from' diff --git a/lib/manager/dockerfile/update.js b/lib/manager/dockerfile/update.js index 7bdd89866a9791c946f2c33e4eca0b2e9e270f86..378155567947768ff0ee9a55f49c8cd0cd449fa4 100644 --- a/lib/manager/dockerfile/update.js +++ b/lib/manager/dockerfile/update.js @@ -4,14 +4,11 @@ module.exports = { }; function getNewFrom(upgrade) { - const { dockerRegistry, depName, newValue, tagSuffix, newDigest } = upgrade; + const { dockerRegistry, depName, newValue, newDigest } = upgrade; let newFrom = dockerRegistry ? `${dockerRegistry}/` : ''; newFrom += `${depName}`; if (newValue) { newFrom += `:${newValue}`; - if (tagSuffix) { - newFrom += `-${tagSuffix}`; - } } if (newDigest) { newFrom += `@${newDigest}`; diff --git a/lib/manager/kubernetes/extract.js b/lib/manager/kubernetes/extract.js index 1f02f81f719b4fb08fbe68d6910fd1aef0758765..ee6421550c1583c7a9a7163ba8c2ad4d84f69e25 100644 --- a/lib/manager/kubernetes/extract.js +++ b/lib/manager/kubernetes/extract.js @@ -24,7 +24,7 @@ function extractPackageFile(content) { { dockerRegistry: dep.dockerRegistry, depName: dep.depName, - currentTag: dep.currentTag, + currentValue: dep.currentValue, currentDigest: dep.currentDigest, }, 'Kubernetes image' @@ -34,7 +34,9 @@ function extractPackageFile(content) { } lineNumber += 1; } - deps = deps.filter(dep => !(dep.currentTag && dep.currentTag.includes('${'))); + deps = deps.filter( + dep => !(dep.currentValue && dep.currentValue.includes('${')) + ); if (!deps.length) { return null; } diff --git a/lib/versioning/docker/index.js b/lib/versioning/docker/index.js index c2a07e9e02145ef2448bad476104bf92fa488778..aff7726004c31f4e632425a4163f2659c2bc6b88 100644 --- a/lib/versioning/docker/index.js +++ b/lib/versioning/docker/index.js @@ -9,6 +9,11 @@ function parse(version) { return { release, suffix: suffix || '' }; } +function valueToVersion(value) { + // Remove any suffix after '-', e.g. '-alpine' + return value ? value.split('-')[0] : value; +} + function compare(version1, vervion2) { const parsed1 = parse(version1); const parsed2 = parse(vervion2); @@ -50,4 +55,5 @@ module.exports = { compare, }), isCompatible, + valueToVersion, }; diff --git a/lib/workers/branch/index.js b/lib/workers/branch/index.js index 265b77330643e599eef46c83560d1b4145e6bda1..e0cddd84f21fc76509d8e138821d3b505795b5e3 100644 --- a/lib/workers/branch/index.js +++ b/lib/workers/branch/index.js @@ -63,7 +63,7 @@ async function processBranch(branchConfig, prHourlyLimitReached, packageFiles) { content = `As this PR has been closed unmerged, Renovate will ignore this upgrade updateType and you will not receive PRs for *any* future ${ config.depName }:${ - config.currentTag + config.currentValue } digest updates. Digest updates will resume if you update the specified tag at any time.`; } else { content = `As this PR has been closed unmerged, Renovate will now ignore this update (${ diff --git a/lib/workers/repository/process/lookup/index.js b/lib/workers/repository/process/lookup/index.js index 26e20f11623376fb8ed5774a78b9d1477c531925..52f78026731d655e0e2bfa17d3753998b3fd6ec9 100644 --- a/lib/workers/repository/process/lookup/index.js +++ b/lib/workers/repository/process/lookup/index.js @@ -26,6 +26,7 @@ async function lookupUpdates(config) { isVersion, matches, getNewValue, + valueToVersion, } = versioning.get(config.versionScheme); const res = { updates: [], warnings: [] }; if (isValid(currentValue)) { @@ -202,6 +203,16 @@ async function lookupUpdates(config) { }); } } + if (valueToVersion) { + for (const release of res.releases || []) { + release.version = valueToVersion(release.version); + } + for (const update of res.updates || []) { + update.newVersion = valueToVersion(update.newValue); + update.fromVersion = valueToVersion(update.fromVersion); + update.toVersion = valueToVersion(update.toVersion); + } + } // update digest for all for (const update of res.updates) { if (config.pinDigests || config.currentDigest) { diff --git a/lib/workers/repository/updates/branchify.js b/lib/workers/repository/updates/branchify.js index c482406865c2c56045755194fe6c29d6a3de9857..ebbce8261cf2a5c611faa6e395f7027c3146b174 100644 --- a/lib/workers/repository/updates/branchify.js +++ b/lib/workers/repository/updates/branchify.js @@ -36,7 +36,7 @@ function branchifyUpgrades(config, packageFiles) { const update = { ...u }; // Massage legacy vars just in case update.currentVersion = update.currentValue; - update.newVersion = update.newValue; + update.newVersion = update.newVersion || update.newValue; // massage for handlebars const upper = str => str.charAt(0).toUpperCase() + str.substr(1); if (update.updateType) { diff --git a/test/datasource/docker.spec.js b/test/datasource/docker.spec.js index f283d23740a193d70cdc28d7ef9d484a82bfa5af..bb0f20bd4d30a3e362332a651f56b5f09a9759d1 100644 --- a/test/datasource/docker.spec.js +++ b/test/datasource/docker.spec.js @@ -136,8 +136,8 @@ describe('api/docker', () => { headers: { 'docker-content-digest': 'some-digest' }, }); const res = await docker.getDigest( - { depName: 'some-dep', tagSuffix: 'alpine' }, - '8.0.0' + { depName: 'some-dep' }, + '8.0.0-alpine' ); expect(res).toBe('some-digest'); }); diff --git a/test/manager/circleci/__snapshots__/extract.spec.js.snap b/test/manager/circleci/__snapshots__/extract.spec.js.snap index 77a10b1d8ea4c8f4cbc4c4e66df4d76ee569c9ad..e5d8b7ed773a99a6a918e1dfabb16213ef9cc751 100644 --- a/test/manager/circleci/__snapshots__/extract.spec.js.snap +++ b/test/manager/circleci/__snapshots__/extract.spec.js.snap @@ -8,13 +8,11 @@ Array [ "currentDepTagDigest": "node", "currentDigest": undefined, "currentFrom": "node", - "currentTag": undefined, "currentValue": undefined, "depName": "node", "dockerRegistry": undefined, "lineNumber": 12, "purl": "pkg:docker/node", - "tagSuffix": undefined, "versionScheme": "docker", }, Object { @@ -23,13 +21,11 @@ Array [ "currentDepTagDigest": "node:4", "currentDigest": undefined, "currentFrom": "node:4", - "currentTag": "4", "currentValue": "4", "depName": "node", "dockerRegistry": undefined, "lineNumber": 57, "purl": "pkg:docker/node", - "tagSuffix": undefined, "versionScheme": "docker", }, Object { @@ -38,13 +34,11 @@ Array [ "currentDepTagDigest": "node:6", "currentDigest": undefined, "currentFrom": "node:6", - "currentTag": "6", "currentValue": "6", "depName": "node", "dockerRegistry": undefined, "lineNumber": 61, "purl": "pkg:docker/node", - "tagSuffix": undefined, "versionScheme": "docker", }, Object { @@ -53,13 +47,11 @@ Array [ "currentDepTagDigest": "node:8.9.0", "currentDigest": undefined, "currentFrom": "node:8.9.0", - "currentTag": "8.9.0", "currentValue": "8.9.0", "depName": "node", "dockerRegistry": undefined, "lineNumber": 65, "purl": "pkg:docker/node", - "tagSuffix": undefined, "versionScheme": "docker", }, ] diff --git a/test/manager/docker-compose/__snapshots__/extract.spec.js.snap b/test/manager/docker-compose/__snapshots__/extract.spec.js.snap index 32fee42dfa8649e049b0e57bb555191379a44182..67168308988f48faa6c0b4f21464da21ac4cdbac 100644 --- a/test/manager/docker-compose/__snapshots__/extract.spec.js.snap +++ b/test/manager/docker-compose/__snapshots__/extract.spec.js.snap @@ -7,13 +7,11 @@ Array [ "currentDepTagDigest": "something/redis:alpine", "currentDigest": undefined, "currentFrom": "quay.io/something/redis:alpine", - "currentTag": "alpine", "currentValue": "alpine", "depName": "something/redis", "dockerRegistry": "quay.io", "lineNumber": 4, "purl": "pkg:docker/something/redis?registry=quay.io", - "tagSuffix": undefined, "versionScheme": "docker", }, Object { @@ -22,13 +20,11 @@ Array [ "currentDepTagDigest": "node:10.0.0", "currentDigest": undefined, "currentFrom": "node:10.0.0", - "currentTag": "10.0.0", "currentValue": "10.0.0", "depName": "node", "dockerRegistry": undefined, "lineNumber": 18, "purl": "pkg:docker/node", - "tagSuffix": undefined, "versionScheme": "docker", }, Object { @@ -36,13 +32,11 @@ Array [ "currentDepTagDigest": "postgres:9.4.0", "currentDigest": undefined, "currentFrom": "postgres:9.4.0", - "currentTag": "9.4.0", "currentValue": "9.4.0", "depName": "postgres", "dockerRegistry": undefined, "lineNumber": 21, "purl": "pkg:docker/postgres", - "tagSuffix": undefined, "versionScheme": "docker", }, Object { @@ -50,13 +44,11 @@ Array [ "currentDepTagDigest": "dockersamples/examplevotingapp_vote:before", "currentDigest": undefined, "currentFrom": "dockersamples/examplevotingapp_vote:before", - "currentTag": "before", "currentValue": "before", "depName": "dockersamples/examplevotingapp_vote", "dockerRegistry": undefined, "lineNumber": 31, "purl": "pkg:docker/dockersamples/examplevotingapp_vote", - "tagSuffix": undefined, "versionScheme": "docker", }, Object { @@ -64,13 +56,11 @@ Array [ "currentDepTagDigest": "dockersamples/examplevotingapp_result:before", "currentDigest": undefined, "currentFrom": "dockersamples/examplevotingapp_result:before", - "currentTag": "before", "currentValue": "before", "depName": "dockersamples/examplevotingapp_result", "dockerRegistry": undefined, "lineNumber": 46, "purl": "pkg:docker/dockersamples/examplevotingapp_result", - "tagSuffix": undefined, "versionScheme": "docker", }, Object { @@ -78,13 +68,11 @@ Array [ "currentDepTagDigest": "dockersamples/examplevotingapp_worker", "currentDigest": undefined, "currentFrom": "dockersamples/examplevotingapp_worker", - "currentTag": undefined, "currentValue": undefined, "depName": "dockersamples/examplevotingapp_worker", "dockerRegistry": undefined, "lineNumber": 62, "purl": "pkg:docker/dockersamples/examplevotingapp_worker", - "tagSuffix": undefined, "versionScheme": "docker", }, Object { @@ -92,13 +80,11 @@ Array [ "currentDepTagDigest": "dockersamples/visualizer:stable", "currentDigest": undefined, "currentFrom": "dockersamples/visualizer:stable", - "currentTag": "stable", "currentValue": "stable", "depName": "dockersamples/visualizer", "dockerRegistry": undefined, "lineNumber": 79, "purl": "pkg:docker/dockersamples/visualizer", - "tagSuffix": undefined, "versionScheme": "docker", }, ] diff --git a/test/manager/dockerfile/__snapshots__/extract.spec.js.snap b/test/manager/dockerfile/__snapshots__/extract.spec.js.snap index 567365120e489b84eaf8dc8a862c8718d9cdc565..5903e28fe2730454bc4ea06d259048b136b4e0e8 100644 --- a/test/manager/dockerfile/__snapshots__/extract.spec.js.snap +++ b/test/manager/dockerfile/__snapshots__/extract.spec.js.snap @@ -8,15 +8,13 @@ Array [ "currentDepTagDigest": "node:8.11.3-alpine@sha256:d743b4141b02fcfb8beb68f92b4cd164f60ee457bf2d053f36785bf86de16b0d", "currentDigest": "sha256:d743b4141b02fcfb8beb68f92b4cd164f60ee457bf2d053f36785bf86de16b0d", "currentFrom": "node:8.11.3-alpine@sha256:d743b4141b02fcfb8beb68f92b4cd164f60ee457bf2d053f36785bf86de16b0d", - "currentTag": "8.11.3-alpine", - "currentValue": "8.11.3", + "currentValue": "8.11.3-alpine", "depName": "node", "dockerRegistry": undefined, "fromPrefix": "FROM", "fromSuffix": "AS node", "lineNumber": 2, - "purl": "pkg:docker/node?suffix=alpine", - "tagSuffix": "alpine", + "purl": "pkg:docker/node", "versionScheme": "docker", }, Object { @@ -24,7 +22,6 @@ Array [ "currentDepTagDigest": "buildkite/puppeteer:1.1.1", "currentDigest": undefined, "currentFrom": "buildkite/puppeteer:1.1.1", - "currentTag": "1.1.1", "currentValue": "1.1.1", "depName": "buildkite/puppeteer", "dockerRegistry": undefined, @@ -32,7 +29,6 @@ Array [ "fromSuffix": "AS puppeteer", "lineNumber": 3, "purl": "pkg:docker/buildkite/puppeteer", - "tagSuffix": undefined, "versionScheme": "docker", }, ] @@ -46,7 +42,6 @@ Array [ "currentDepTagDigest": "node:6.12.3", "currentDigest": undefined, "currentFrom": "node:6.12.3", - "currentTag": "6.12.3", "currentValue": "6.12.3", "depName": "node", "dockerRegistry": undefined, @@ -54,7 +49,6 @@ Array [ "fromSuffix": "as frontend", "lineNumber": 0, "purl": "pkg:docker/node", - "tagSuffix": undefined, "versionScheme": "docker", }, Object { @@ -62,15 +56,13 @@ Array [ "currentDepTagDigest": "python:3.6-slim", "currentDigest": undefined, "currentFrom": "python:3.6-slim", - "currentTag": "3.6-slim", - "currentValue": "3.6", + "currentValue": "3.6-slim", "depName": "python", "dockerRegistry": undefined, "fromPrefix": "FROM", "fromSuffix": "", "lineNumber": 4, - "purl": "pkg:docker/python?suffix=slim", - "tagSuffix": "slim", + "purl": "pkg:docker/python", "versionScheme": "docker", }, ] @@ -83,7 +75,6 @@ Array [ "currentDepTagDigest": "k8s-skaffold/skaffold:v0.11.0", "currentDigest": undefined, "currentFrom": "gcr.io/k8s-skaffold/skaffold:v0.11.0", - "currentTag": "v0.11.0", "currentValue": "v0.11.0", "depName": "k8s-skaffold/skaffold", "dockerRegistry": "gcr.io", @@ -91,7 +82,6 @@ Array [ "fromSuffix": "/usr/bin/skaffold /usr/bin/skaffold", "lineNumber": 1, "purl": "pkg:docker/k8s-skaffold/skaffold?registry=gcr.io", - "tagSuffix": undefined, "versionScheme": "docker", }, ] @@ -105,7 +95,6 @@ Array [ "currentDepTagDigest": "node:8.7.0", "currentDigest": undefined, "currentFrom": "registry.allmine.info:5005/node:8.7.0", - "currentTag": "8.7.0", "currentValue": "8.7.0", "depName": "node", "dockerRegistry": "registry.allmine.info:5005", @@ -113,7 +102,6 @@ Array [ "fromSuffix": "", "lineNumber": 0, "purl": "pkg:docker/node?registry=registry.allmine.info:5005", - "tagSuffix": undefined, "versionScheme": "docker", }, ] @@ -126,7 +114,6 @@ Array [ "currentDepTagDigest": "calico/node", "currentDigest": undefined, "currentFrom": "calico/node", - "currentTag": undefined, "currentValue": undefined, "depName": "calico/node", "dockerRegistry": undefined, @@ -134,7 +121,6 @@ Array [ "fromSuffix": "", "lineNumber": 0, "purl": "pkg:docker/calico/node", - "tagSuffix": undefined, "versionScheme": "docker", }, ] @@ -148,7 +134,6 @@ Array [ "currentDepTagDigest": "node", "currentDigest": undefined, "currentFrom": "node", - "currentTag": undefined, "currentValue": undefined, "depName": "node", "dockerRegistry": undefined, @@ -156,7 +141,6 @@ Array [ "fromSuffix": "", "lineNumber": 3, "purl": "pkg:docker/node", - "tagSuffix": undefined, "versionScheme": "docker", }, ] @@ -170,7 +154,6 @@ Array [ "currentDepTagDigest": "node:8", "currentDigest": undefined, "currentFrom": "registry2.something.info/node:8", - "currentTag": "8", "currentValue": "8", "depName": "node", "dockerRegistry": "registry2.something.info", @@ -178,7 +161,6 @@ Array [ "fromSuffix": "", "lineNumber": 0, "purl": "pkg:docker/node?registry=registry2.something.info", - "tagSuffix": undefined, "versionScheme": "docker", }, ] @@ -192,15 +174,13 @@ Array [ "currentDepTagDigest": "node:8-alpine", "currentDigest": undefined, "currentFrom": "registry2.something.info/node:8-alpine", - "currentTag": "8-alpine", - "currentValue": "8", + "currentValue": "8-alpine", "depName": "node", "dockerRegistry": "registry2.something.info", "fromPrefix": "FROM", "fromSuffix": "", "lineNumber": 0, - "purl": "pkg:docker/node?registry=registry2.something.info&suffix=alpine", - "tagSuffix": "alpine", + "purl": "pkg:docker/node?registry=registry2.something.info", "versionScheme": "docker", }, ] @@ -214,7 +194,6 @@ Array [ "currentDepTagDigest": "someaccount/node:8", "currentDigest": undefined, "currentFrom": "registry2.something.info/someaccount/node:8", - "currentTag": "8", "currentValue": "8", "depName": "someaccount/node", "dockerRegistry": "registry2.something.info", @@ -222,7 +201,6 @@ Array [ "fromSuffix": "", "lineNumber": 0, "purl": "pkg:docker/someaccount/node?registry=registry2.something.info", - "tagSuffix": undefined, "versionScheme": "docker", }, ] @@ -236,7 +214,6 @@ Array [ "currentDepTagDigest": "node:8", "currentDigest": undefined, "currentFrom": "registry2.something.info:5005/node:8", - "currentTag": "8", "currentValue": "8", "depName": "node", "dockerRegistry": "registry2.something.info:5005", @@ -244,7 +221,6 @@ Array [ "fromSuffix": "", "lineNumber": 0, "purl": "pkg:docker/node?registry=registry2.something.info:5005", - "tagSuffix": undefined, "versionScheme": "docker", }, ] @@ -258,7 +234,6 @@ Array [ "currentDepTagDigest": "node@sha256:eb85fc5b1198f5e1ec025ea07586bdbbf397e7d82df66c90d7511f533517e063", "currentDigest": "sha256:eb85fc5b1198f5e1ec025ea07586bdbbf397e7d82df66c90d7511f533517e063", "currentFrom": "node@sha256:eb85fc5b1198f5e1ec025ea07586bdbbf397e7d82df66c90d7511f533517e063", - "currentTag": undefined, "currentValue": undefined, "depName": "node", "dockerRegistry": undefined, @@ -266,7 +241,6 @@ Array [ "fromSuffix": "", "lineNumber": 0, "purl": "pkg:docker/node", - "tagSuffix": undefined, "versionScheme": "docker", }, ] @@ -280,15 +254,13 @@ Array [ "currentDepTagDigest": "node:8.9.0-alpine", "currentDigest": undefined, "currentFrom": "node:8.9.0-alpine", - "currentTag": "8.9.0-alpine", - "currentValue": "8.9.0", + "currentValue": "8.9.0-alpine", "depName": "node", "dockerRegistry": undefined, "fromPrefix": "FROM", "fromSuffix": "as base", "lineNumber": 0, - "purl": "pkg:docker/node?suffix=alpine", - "tagSuffix": "alpine", + "purl": "pkg:docker/node", "versionScheme": "docker", }, ] @@ -302,7 +274,6 @@ Array [ "currentDepTagDigest": "node", "currentDigest": undefined, "currentFrom": "node", - "currentTag": undefined, "currentValue": undefined, "depName": "node", "dockerRegistry": undefined, @@ -310,7 +281,6 @@ Array [ "fromSuffix": "", "lineNumber": 0, "purl": "pkg:docker/node", - "tagSuffix": undefined, "versionScheme": "docker", }, ] @@ -324,7 +294,6 @@ Array [ "currentDepTagDigest": "mynamespace/node:8", "currentDigest": undefined, "currentFrom": "mynamespace/node:8", - "currentTag": "8", "currentValue": "8", "depName": "mynamespace/node", "dockerRegistry": undefined, @@ -332,7 +301,6 @@ Array [ "fromSuffix": "", "lineNumber": 0, "purl": "pkg:docker/mynamespace/node", - "tagSuffix": undefined, "versionScheme": "docker", }, ] @@ -346,15 +314,13 @@ Array [ "currentDepTagDigest": "node:8.9.0-alpine", "currentDigest": undefined, "currentFrom": "node:8.9.0-alpine", - "currentTag": "8.9.0-alpine", - "currentValue": "8.9.0", + "currentValue": "8.9.0-alpine", "depName": "node", "dockerRegistry": undefined, "fromPrefix": "FROM", "fromSuffix": "", "lineNumber": 0, - "purl": "pkg:docker/node?suffix=alpine", - "tagSuffix": "alpine", + "purl": "pkg:docker/node", "versionScheme": "docker", }, ] @@ -368,7 +334,6 @@ Array [ "currentDepTagDigest": "node:8.9.0@sha256:eb85fc5b1198f5e1ec025ea07586bdbbf397e7d82df66c90d7511f533517e063", "currentDigest": "sha256:eb85fc5b1198f5e1ec025ea07586bdbbf397e7d82df66c90d7511f533517e063", "currentFrom": "node:8.9.0@sha256:eb85fc5b1198f5e1ec025ea07586bdbbf397e7d82df66c90d7511f533517e063", - "currentTag": "8.9.0", "currentValue": "8.9.0", "depName": "node", "dockerRegistry": undefined, @@ -376,7 +341,6 @@ Array [ "fromSuffix": "", "lineNumber": 0, "purl": "pkg:docker/node", - "tagSuffix": undefined, "versionScheme": "docker", }, ] @@ -390,7 +354,6 @@ Array [ "currentDepTagDigest": "node", "currentDigest": undefined, "currentFrom": "node", - "currentTag": undefined, "currentValue": undefined, "depName": "node", "dockerRegistry": undefined, @@ -398,7 +361,6 @@ Array [ "fromSuffix": "", "lineNumber": 0, "purl": "pkg:docker/node", - "tagSuffix": undefined, "versionScheme": "docker", }, ] @@ -412,7 +374,6 @@ Array [ "currentDepTagDigest": "node:6.12.3", "currentDigest": undefined, "currentFrom": "node:6.12.3", - "currentTag": "6.12.3", "currentValue": "6.12.3", "depName": "node", "dockerRegistry": undefined, @@ -420,7 +381,6 @@ Array [ "fromSuffix": "as frontend", "lineNumber": 0, "purl": "pkg:docker/node", - "tagSuffix": undefined, "versionScheme": "docker", }, ] @@ -434,7 +394,6 @@ Array [ "currentDepTagDigest": "node:6.12.3", "currentDigest": undefined, "currentFrom": "node:6.12.3", - "currentTag": "6.12.3", "currentValue": "6.12.3", "depName": "node", "dockerRegistry": undefined, @@ -442,7 +401,6 @@ Array [ "fromSuffix": "as frontend", "lineNumber": 0, "purl": "pkg:docker/node", - "tagSuffix": undefined, "versionScheme": "docker", }, ] @@ -456,7 +414,6 @@ Array [ "currentDepTagDigest": "node:6.12.3", "currentDigest": undefined, "currentFrom": "node:6.12.3", - "currentTag": "6.12.3", "currentValue": "6.12.3", "depName": "node", "dockerRegistry": undefined, @@ -464,7 +421,6 @@ Array [ "fromSuffix": "as frontend", "lineNumber": 0, "purl": "pkg:docker/node", - "tagSuffix": undefined, "versionScheme": "docker", }, ] diff --git a/test/manager/dockerfile/__snapshots__/update.spec.js.snap b/test/manager/dockerfile/__snapshots__/update.spec.js.snap index ef595744b5bf8d14c934d4be662716cc050c1b74..d7467353fe5f3b8a5798387b0d2f2478e024e589 100644 --- a/test/manager/dockerfile/__snapshots__/update.spec.js.snap +++ b/test/manager/dockerfile/__snapshots__/update.spec.js.snap @@ -22,7 +22,7 @@ COPY --from=gcr.io/k8s-skaffold/skaffold:v0.12.0 /usr/bin/skaffold /usr/bin/skaf exports[`manager/dockerfile/update updateDependency replaces existing value 1`] = ` "# comment FROM node:8 -FROM node:8-alpine@sha256:abcdefghijklmnop +FROM node:8.1-alpine@sha256:abcdefghijklmnop RUN something " `; diff --git a/test/manager/dockerfile/extract.spec.js b/test/manager/dockerfile/extract.spec.js index 0c105000e07b3a2739888b7ca3728c1d57dbd740..5d385ca3302d2cec37dd80122cdd05e1439e5d8e 100644 --- a/test/manager/dockerfile/extract.spec.js +++ b/test/manager/dockerfile/extract.spec.js @@ -45,7 +45,6 @@ describe('lib/manager/dockerfile/extract', () => { const res = extractPackageFile('FROM node:8.9.0-alpine as base\n', config) .deps; expect(res).toMatchSnapshot(); - // expect(res.currentTag.includes(' ')).toBe(false); }); it('handles comments', () => { const res = extractPackageFile( diff --git a/test/manager/dockerfile/update.spec.js b/test/manager/dockerfile/update.spec.js index 3a1c6b881f474f1b150e47554592e92dbab79364..afc8fb3424b15e8d3cb3d63a23b32ae231b51789 100644 --- a/test/manager/dockerfile/update.spec.js +++ b/test/manager/dockerfile/update.spec.js @@ -7,10 +7,9 @@ describe('manager/dockerfile/update', () => { const upgrade = { lineNumber: 1, depName: 'node', - newValue: '8', + newValue: '8.1-alpine', fromPrefix: 'FROM', fromSuffix: '', - tagSuffix: 'alpine', newDigest: 'sha256:abcdefghijklmnop', }; const res = dockerfile.updateDependency(fileContent, upgrade); diff --git a/test/manager/gitlabci/__snapshots__/extract.spec.js.snap b/test/manager/gitlabci/__snapshots__/extract.spec.js.snap index 0bcd76a4ba85b80da4fdae96ff0a777b95dfaca7..3342b99539de9ba3d3f55d57159b7d5c9630cdc3 100644 --- a/test/manager/gitlabci/__snapshots__/extract.spec.js.snap +++ b/test/manager/gitlabci/__snapshots__/extract.spec.js.snap @@ -7,14 +7,12 @@ Array [ "currentDepTagDigest": "hadolint/hadolint:latest", "currentDigest": undefined, "currentFrom": "hadolint/hadolint:latest", - "currentTag": "latest", "currentValue": "latest", "depName": "hadolint/hadolint", "depType": "image", "dockerRegistry": undefined, "lineNumber": 36, "purl": "pkg:docker/hadolint/hadolint", - "tagSuffix": undefined, "versionScheme": "docker", }, Object { @@ -22,14 +20,12 @@ Array [ "currentDepTagDigest": "docker:latest", "currentDigest": undefined, "currentFrom": "docker:latest", - "currentTag": "latest", "currentValue": "latest", "depName": "docker", "depType": "image", "dockerRegistry": undefined, "lineNumber": 53, "purl": "pkg:docker/docker", - "tagSuffix": undefined, "versionScheme": "docker", }, Object { @@ -37,14 +33,12 @@ Array [ "currentDepTagDigest": "docker:dind", "currentDigest": undefined, "currentFrom": "docker:dind", - "currentTag": "dind", "currentValue": "dind", "depName": "docker", "depType": "service-image", "dockerRegistry": undefined, "lineNumber": 55, "purl": "pkg:docker/docker", - "tagSuffix": undefined, "versionScheme": "docker", }, Object { @@ -52,14 +46,12 @@ Array [ "currentDepTagDigest": "docker:latest", "currentDigest": undefined, "currentFrom": "docker:latest", - "currentTag": "latest", "currentValue": "latest", "depName": "docker", "depType": "image", "dockerRegistry": undefined, "lineNumber": 75, "purl": "pkg:docker/docker", - "tagSuffix": undefined, "versionScheme": "docker", }, Object { @@ -67,14 +59,12 @@ Array [ "currentDepTagDigest": "docker:dind", "currentDigest": undefined, "currentFrom": "docker:dind", - "currentTag": "dind", "currentValue": "dind", "depName": "docker", "depType": "service-image", "dockerRegistry": undefined, "lineNumber": 77, "purl": "pkg:docker/docker", - "tagSuffix": undefined, "versionScheme": "docker", }, ] diff --git a/test/manager/kubernetes/__snapshots__/extract.spec.js.snap b/test/manager/kubernetes/__snapshots__/extract.spec.js.snap index 6c985710a36fd54145e7aba14194af03bbd7b742..899e1707d14edb86e1813cf61ed3c6c41c801a76 100644 --- a/test/manager/kubernetes/__snapshots__/extract.spec.js.snap +++ b/test/manager/kubernetes/__snapshots__/extract.spec.js.snap @@ -7,13 +7,11 @@ Array [ "currentDepTagDigest": "external_storage/local-volume-provisioner:v2.1.0", "currentDigest": undefined, "currentFrom": "quay.io/external_storage/local-volume-provisioner:v2.1.0", - "currentTag": "v2.1.0", "currentValue": "v2.1.0", "depName": "external_storage/local-volume-provisioner", "dockerRegistry": "quay.io", "lineNumber": 14, "purl": "pkg:docker/external_storage/local-volume-provisioner?registry=quay.io", - "tagSuffix": undefined, "versionScheme": "docker", }, ] @@ -26,13 +24,11 @@ Array [ "currentDepTagDigest": "nginx:1.7.9", "currentDigest": undefined, "currentFrom": "nginx:1.7.9", - "currentTag": "1.7.9", "currentValue": "1.7.9", "depName": "nginx", "dockerRegistry": undefined, "lineNumber": 18, "purl": "pkg:docker/nginx", - "tagSuffix": undefined, "versionScheme": "docker", }, Object { @@ -40,13 +36,11 @@ Array [ "currentDepTagDigest": "kube-proxy-amd64:v1.11.1", "currentDigest": undefined, "currentFrom": "k8s.gcr.io/kube-proxy-amd64:v1.11.1", - "currentTag": "v1.11.1", "currentValue": "v1.11.1", "depName": "kube-proxy-amd64", "dockerRegistry": "k8s.gcr.io", "lineNumber": 46, "purl": "pkg:docker/kube-proxy-amd64?registry=k8s.gcr.io", - "tagSuffix": undefined, "versionScheme": "docker", }, ] diff --git a/test/workers/repository/process/lookup/__snapshots__/index.spec.js.snap b/test/workers/repository/process/lookup/__snapshots__/index.spec.js.snap index e68236b70763fb795f062ed532b0deb4937c0118..eddbf205348848099731fd62681aa441fc4db80b 100644 --- a/test/workers/repository/process/lookup/__snapshots__/index.spec.js.snap +++ b/test/workers/repository/process/lookup/__snapshots__/index.spec.js.snap @@ -868,6 +868,7 @@ Object { "newMajor": 9, "newMinor": null, "newValue": "9", + "newVersion": "9", "releaseTimestamp": undefined, "toVersion": "9", "updateType": "major", @@ -901,6 +902,7 @@ Object { "newMajor": 8, "newMinor": 2, "newValue": "8.2", + "newVersion": "8.2", "releaseTimestamp": undefined, "toVersion": "8.2", "updateType": "minor", @@ -912,6 +914,7 @@ Object { "newMajor": 9, "newMinor": 0, "newValue": "9.0", + "newVersion": "9.0", "releaseTimestamp": undefined, "toVersion": "9.0", "updateType": "major", @@ -948,6 +951,7 @@ Object { "newMajor": 8, "newMinor": 2, "newValue": "8.2.5", + "newVersion": "8.2.5", "releaseTimestamp": undefined, "toVersion": "8.2.5", "updateType": "minor", diff --git a/test/workers/repository/updates/__snapshots__/flatten.spec.js.snap b/test/workers/repository/updates/__snapshots__/flatten.spec.js.snap index d6ac38b77985812f15fc11b48984b6df3c126bbf..807664ce672aeaa6023620302d220027908b0138 100644 --- a/test/workers/repository/updates/__snapshots__/flatten.spec.js.snap +++ b/test/workers/repository/updates/__snapshots__/flatten.spec.js.snap @@ -573,7 +573,7 @@ Array [ "commitBody": null, "commitMessage": "{{{commitMessagePrefix}}} {{{commitMessageAction}}} {{{commitMessageTopic}}} {{{commitMessageExtra}}} {{{commitMessageSuffix}}}", "commitMessageAction": "Update", - "commitMessageExtra": "to {{#if isMajor}}v{{{newMajor}}}{{else}}{{#if isSingleVersion}}v{{{toVersion}}}{{else}}{{{newValue}}}{{/if}}{{/if}}", + "commitMessageExtra": "to v{{#if isMajor}}{{{newMajor}}}{{else}}{{{newVersion}}}{{/if}}", "commitMessagePrefix": null, "commitMessageSuffix": null, "commitMessageTopic": "{{{depName}}} Docker tag", @@ -666,7 +666,7 @@ Array [ "commitBody": null, "commitMessage": "{{{commitMessagePrefix}}} {{{commitMessageAction}}} {{{commitMessageTopic}}} {{{commitMessageExtra}}} {{{commitMessageSuffix}}}", "commitMessageAction": "Update", - "commitMessageExtra": "to {{#if isMajor}}v{{{newMajor}}}{{else}}{{#if isSingleVersion}}v{{{toVersion}}}{{else}}{{{newValue}}}{{/if}}{{/if}}", + "commitMessageExtra": "to v{{#if isMajor}}{{{newMajor}}}{{else}}{{{newVersion}}}{{/if}}", "commitMessagePrefix": null, "commitMessageSuffix": null, "commitMessageTopic": "{{{depName}}} Docker tag",