Skip to content
Snippets Groups Projects
Commit e011d95e authored by Rhys Arkins's avatar Rhys Arkins
Browse files

fix: don’t resolve empty meteor package.js

Refactors meteor to have a resolve function that detects/filters out empty files (like for other managers).
parent 57921468
No related branches found
No related tags found
No related merge requests found
const configParser = require('../../config');
module.exports = {
resolvePackageFile,
};
async function resolvePackageFile(config, inputFile) {
const packageFile = configParser.mergeChildConfig(config.meteor, inputFile);
logger.debug(
`Resolving packageFile ${JSON.stringify(packageFile.packageFile)}`
);
packageFile.content = await platform.getFile(packageFile.packageFile);
if (!packageFile.content) {
logger.debug('No packageFile content');
return null;
}
return packageFile;
}
...@@ -4,6 +4,7 @@ const minimatch = require('minimatch'); ...@@ -4,6 +4,7 @@ const minimatch = require('minimatch');
const manager = require('./index'); const manager = require('./index');
const dockerResolve = require('../manager/docker/resolve'); const dockerResolve = require('../manager/docker/resolve');
const meteorResolve = require('../manager/meteor/resolve');
const nodeResolve = require('../manager/node/resolve'); const nodeResolve = require('../manager/node/resolve');
const bazelResolve = require('../manager/bazel/resolve'); const bazelResolve = require('../manager/bazel/resolve');
const { mergeChildConfig } = require('../config'); const { mergeChildConfig } = require('../config');
...@@ -146,7 +147,7 @@ async function resolvePackageFiles(config) { ...@@ -146,7 +147,7 @@ async function resolvePackageFiles(config) {
packageFile.currentPackageJsonVersion = packageFile.content.version; packageFile.currentPackageJsonVersion = packageFile.content.version;
return mergeChildConfig(config.npm, packageFile); return mergeChildConfig(config.npm, packageFile);
} else if (packageFile.manager === 'meteor') { } else if (packageFile.manager === 'meteor') {
return mergeChildConfig(config.meteor, packageFile); return meteorResolve.resolvePackageFile(config, packageFile);
} else if (packageFile.manager === 'docker') { } else if (packageFile.manager === 'docker') {
return dockerResolve.resolvePackageFile(config, packageFile); return dockerResolve.resolvePackageFile(config, packageFile);
} else if (packageFile.manager === 'node') { } else if (packageFile.manager === 'node') {
......
...@@ -45,6 +45,7 @@ Array [ ...@@ -45,6 +45,7 @@ Array [
exports[`manager/resolve resolvePackageFiles() detects meteor and docker and travis and bazel 1`] = ` exports[`manager/resolve resolvePackageFiles() detects meteor and docker and travis and bazel 1`] = `
Array [ Array [
Object { Object {
"content": "{}",
"enabled": true, "enabled": true,
"manager": "meteor", "manager": "meteor",
"packageFile": "package.js", "packageFile": "package.js",
......
...@@ -97,7 +97,8 @@ describe('manager/resolve', () => { ...@@ -97,7 +97,8 @@ describe('manager/resolve', () => {
'.travis.yml', '.travis.yml',
'WORKSPACE', 'WORKSPACE',
]; ];
platform.getFile.mockReturnValueOnce('# comment\nFROM node:8\n'); // Dockerfile.js platform.getFile.mockReturnValueOnce('{}'); // package.js
platform.getFile.mockReturnValueOnce('# comment\nFROM node:8\n'); // Dockerfile
platform.getFile.mockReturnValueOnce('hello: world\n'); // Dockerfile platform.getFile.mockReturnValueOnce('hello: world\n'); // Dockerfile
platform.getFile.mockReturnValueOnce('# travis'); // .travis.yml platform.getFile.mockReturnValueOnce('# travis'); // .travis.yml
platform.getFile.mockReturnValueOnce('# WORKSPACE'); // Dockerfile platform.getFile.mockReturnValueOnce('# WORKSPACE'); // Dockerfile
...@@ -110,6 +111,7 @@ describe('manager/resolve', () => { ...@@ -110,6 +111,7 @@ describe('manager/resolve', () => {
'other/Dockerfile', 'other/Dockerfile',
'.travis.yml', '.travis.yml',
'WORKSPACE', 'WORKSPACE',
'package.js',
]; ];
platform.getFile.mockReturnValueOnce('# comment\n'); // Dockerfile platform.getFile.mockReturnValueOnce('# comment\n'); // Dockerfile
const res = await resolvePackageFiles(config); const res = await resolvePackageFiles(config);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment