diff --git a/lib/manager/homebrew/extract.js b/lib/manager/homebrew/extract.js index 497f5bc05ea3c4cb8478ed3ada207ff74497e01a..cab4695a294f231df6db0f2f3c7ab9ea622398c2 100644 --- a/lib/manager/homebrew/extract.js +++ b/lib/manager/homebrew/extract.js @@ -47,8 +47,7 @@ function extractPackageFile(content) { } const dep = { depName: `${ownerName}/${repoName}`, - url, - managerData: { ownerName, repoName, sha256 }, + managerData: { ownerName, repoName, sha256, url }, currentValue, datasource: 'github', }; diff --git a/lib/manager/homebrew/update.js b/lib/manager/homebrew/update.js index d48711c03267f34f00942a4fe95ac45bb49e01d3..84e13b84298d00424c56f662894c63e9c812ad9c 100644 --- a/lib/manager/homebrew/update.js +++ b/lib/manager/homebrew/update.js @@ -22,10 +22,10 @@ async function updateDependency(content, upgrade) { // Example urls: // "https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz" // "https://github.com/aide/aide/releases/download/v0.16.1/aide-0.16.1.tar.gz" - const oldParsedUrlPath = parseUrlPath(upgrade.url); + const oldParsedUrlPath = parseUrlPath(upgrade.managerData.url); if (!oldParsedUrlPath) { logger.debug( - `Failed to update - upgrade.url is invalid ${upgrade.depName}` + `Failed to update - upgrade.managerData.url is invalid ${upgrade.depName}` ); return content; } @@ -65,7 +65,7 @@ async function updateDependency(content, upgrade) { .createHash('sha256') .update(file) .digest('hex'); - newContent = updateUrl(content, upgrade.url, newUrl); + newContent = updateUrl(content, upgrade.managerData.url, newUrl); if (!newContent) { logger.debug(`Failed to update url for dependency ${upgrade.depName}`); return content; diff --git a/test/manager/homebrew/__snapshots__/extract.spec.js.snap b/test/manager/homebrew/__snapshots__/extract.spec.js.snap index 4e47a69182a4865f9c030fb5a59a38167e26e14d..d23a50867e79dfb154877ab7478539a3f243230b 100644 --- a/test/manager/homebrew/__snapshots__/extract.spec.js.snap +++ b/test/manager/homebrew/__snapshots__/extract.spec.js.snap @@ -11,8 +11,8 @@ Object { "ownerName": "bazelbuild", "repoName": "bazel-watcher", "sha256": "26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4", + "url": "https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz", }, - "url": "https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz", }, ], } @@ -29,8 +29,8 @@ Object { "ownerName": "aide", "repoName": "aide", "sha256": "0f2b7cecc70c1a27d35c06c98804fcdb9f326630de5d035afc447122186010b7", + "url": "https://github.com/aide/aide/releases/download/v0.16.1/aide-0.16.1.tar.gz", }, - "url": "https://github.com/aide/aide/releases/download/v0.16.1/aide-0.16.1.tar.gz", }, ], } @@ -47,8 +47,8 @@ Object { "ownerName": "bazelbuild", "repoName": "bazel-watcher", "sha256": "26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4", + "url": "https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz", }, - "url": "https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz", }, ], } @@ -65,9 +65,9 @@ Object { "ownerName": null, "repoName": null, "sha256": "6f2cf5cfb987a2df2f791c162209039804fd8fd12692da69f52153ec9668e9ca", + "url": "https://github.com/hlandau/acme.git", }, "skipReason": "unsupported-url", - "url": "https://github.com/hlandau/acme.git", }, ], } @@ -84,9 +84,9 @@ Object { "ownerName": null, "repoName": null, "sha256": "26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4", + "url": "https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.not_tar.not_gz", }, "skipReason": "unsupported-url", - "url": "https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.not_tar.not_gz", }, ], } @@ -103,9 +103,9 @@ Object { "ownerName": null, "repoName": null, "sha256": "26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4", + "url": "https://github.com/bazelbuild/bazel-watcher/archive/vInvalid.version.2.tar.gz", }, "skipReason": "unsupported-url", - "url": "https://github.com/bazelbuild/bazel-watcher/archive/vInvalid.version.2.tar.gz", }, ], } @@ -122,9 +122,9 @@ Object { "ownerName": null, "repoName": null, "sha256": "26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4", + "url": null, }, "skipReason": "unsupported-url", - "url": null, }, ], } @@ -141,9 +141,9 @@ Object { "ownerName": null, "repoName": null, "sha256": "26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4", + "url": "invalid_url", }, "skipReason": "unsupported-url", - "url": "invalid_url", }, ], } @@ -160,9 +160,9 @@ Object { "ownerName": "bazelbuild", "repoName": "bazel-watcher", "sha256": "26f5125218fad2741d3caf937b0229", + "url": "https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz", }, "skipReason": "invalid-sha256", - "url": "https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz", }, ], } @@ -179,9 +179,9 @@ Object { "ownerName": "bazelbuild", "repoName": "bazel-watcher", "sha256": null, + "url": "https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz", }, "skipReason": "invalid-sha256", - "url": "https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz", }, ], } @@ -198,9 +198,9 @@ Object { "ownerName": null, "repoName": null, "sha256": "26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4", + "url": null, }, "skipReason": "unsupported-url", - "url": null, }, ], } @@ -217,9 +217,9 @@ Object { "ownerName": null, "repoName": null, "sha256": "fbddda9230cf6ee2a4f5706b4b11e2190ae45f5eda1f0409dc4f99b35e0a70ee", + "url": "https://downloads.sourceforge.net/aa-project/aalib-1.4rc5.tar.gz", }, "skipReason": "unsupported-url", - "url": "https://downloads.sourceforge.net/aa-project/aalib-1.4rc5.tar.gz", }, ], } @@ -236,9 +236,9 @@ Object { "ownerName": null, "repoName": null, "sha256": "3f53b2fc277756042449416150acc477f29de93692944f8a77e8cef285a1efd8", + "url": "https://downloads.sourceforge.net/project/a-a-p/aap-1.094.zip", }, "skipReason": "unsupported-url", - "url": "https://downloads.sourceforge.net/project/a-a-p/aap-1.094.zip", }, ], } diff --git a/test/manager/homebrew/update.spec.js b/test/manager/homebrew/update.spec.js index ce1b00061fabacc3e7dd28524cc48a54faadaf68..6d7e1515b57d00bef481e0e1970d2a32dd89c132 100644 --- a/test/manager/homebrew/update.spec.js +++ b/test/manager/homebrew/update.spec.js @@ -23,9 +23,9 @@ describe('manager/homebrew/update', () => { repoName: 'aide', sha256: '0f2b7cecc70c1a27d35c06c98804fcdb9f326630de5d035afc447122186010b7', + url: + 'https://github.com/aide/aide/releases/download/v0.16.1/aide-0.16.1.tar.gz', }, - url: - 'https://github.com/aide/aide/releases/download/v0.16.1/aide-0.16.1.tar.gz', newValue: 'v0.17.7', }; got.mockReturnValueOnce({ body: 'some_content_1' }); @@ -43,8 +43,9 @@ describe('manager/homebrew/update', () => { repoName: 'bazel-watcher', sha256: '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4', + url: + 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz', }, - url: 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz', newValue: 'v0.9.3', }; got.mockReturnValueOnce({ body: 'some_content_2' }); @@ -62,8 +63,9 @@ describe('manager/homebrew/update', () => { repoName: 'bazel-watcher', sha256: '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4', + url: + 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz', }, - url: 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz', newValue: 'v0.9.3', }; got.mockImplementationOnce(() => { @@ -83,8 +85,8 @@ describe('manager/homebrew/update', () => { repoName: 'bazel-watcher', sha256: '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4', + url: 'invalid_url', }, - url: 'invalid_url', newValue: 'v0.9.3', }; got.mockImplementationOnce(() => { @@ -104,8 +106,9 @@ describe('manager/homebrew/update', () => { repoName: 'invalid/repo/name', sha256: '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4', + url: + 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz', }, - url: 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz', newValue: 'v0.9.3', }; got @@ -129,8 +132,9 @@ describe('manager/homebrew/update', () => { repoName: 'wrong-version/archive/v10.2.3.tar.gz', sha256: '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4', + url: + 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz', }, - url: 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz', newValue: 'v0.9.3', }; got @@ -161,8 +165,9 @@ describe('manager/homebrew/update', () => { repoName: 'bazel-watcher', sha256: '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4', + url: + 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz', }, - url: 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz', newValue: 'v0.9.3', }; got.mockImplementationOnce(() => { @@ -188,8 +193,9 @@ describe('manager/homebrew/update', () => { repoName: 'bazel-watcher', sha256: '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4', + url: + 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz', }, - url: 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz', newValue: 'v0.9.3', }; got.mockImplementationOnce(() => { @@ -216,8 +222,9 @@ describe('manager/homebrew/update', () => { repoName: 'bazel-watcher', sha256: '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4', + url: + 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz', }, - url: 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz', newValue: 'v0.9.3', }; got.mockImplementationOnce(() => { @@ -243,8 +250,9 @@ describe('manager/homebrew/update', () => { repoName: 'bazel-watcher', sha256: '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4', + url: + 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz', }, - url: 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz', newValue: 'v0.9.3', }; got.mockImplementationOnce(() => {