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

fix: assign config.force after every mergeChildConfig

parent 13f09b9f
Branches
No related tags found
No related merge requests found
...@@ -180,7 +180,7 @@ function mergeChildConfig(parent, child) { ...@@ -180,7 +180,7 @@ function mergeChildConfig(parent, child) {
); );
} }
} }
return config; return Object.assign(config, config.force);
} }
function filterConfig(inputConfig, targetStage) { function filterConfig(inputConfig, targetStage) {
......
...@@ -2,7 +2,6 @@ const minimatch = require('minimatch'); ...@@ -2,7 +2,6 @@ const minimatch = require('minimatch');
const versioning = require('../versioning'); const versioning = require('../versioning');
const { mergeChildConfig } = require('../config'); const { mergeChildConfig } = require('../config');
const { applyForceConfig } = require('../workers/repository/init/force');
module.exports = { module.exports = {
applyPackageRules, applyPackageRules,
...@@ -134,5 +133,5 @@ function applyPackageRules(inputConfig) { ...@@ -134,5 +133,5 @@ function applyPackageRules(inputConfig) {
delete config.matchCurrentVersion; delete config.matchCurrentVersion;
} }
}); });
return applyForceConfig(config); return config;
} }
const { mergeChildConfig } = require('../../../config');
function applyForceConfig(input) {
let config = { ...input };
if (config.force && Object.keys(config.force).length) {
logger.debug('Applying forced config');
config = mergeChildConfig(config, config.force);
config.packageRules = config.packageRules || [];
config.packageRules.push({
...config.force,
packagePatterns: ['.*'],
});
}
return config;
}
module.exports = {
applyForceConfig,
};
...@@ -4,7 +4,6 @@ const { initApis } = require('../init/apis'); ...@@ -4,7 +4,6 @@ const { initApis } = require('../init/apis');
const { checkBaseBranch } = require('./base'); const { checkBaseBranch } = require('./base');
const { mergeRenovateConfig } = require('./config'); const { mergeRenovateConfig } = require('./config');
const { detectSemanticCommits } = require('./semantic'); const { detectSemanticCommits } = require('./semantic');
const { applyForceConfig } = require('./force');
async function initRepo(input) { async function initRepo(input) {
let config = { let config = {
...@@ -17,7 +16,6 @@ async function initRepo(input) { ...@@ -17,7 +16,6 @@ async function initRepo(input) {
config = await initApis(config); config = await initApis(config);
config = await checkOnboardingBranch(config); config = await checkOnboardingBranch(config);
config = await mergeRenovateConfig(config); config = await mergeRenovateConfig(config);
config = await applyForceConfig(config);
checkIfConfigured(config); checkIfConfigured(config);
config = await checkBaseBranch(config); config = await checkBaseBranch(config);
config.semanticCommits = await detectSemanticCommits(config); config.semanticCommits = await detectSemanticCommits(config);
......
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`workers/repository/init/flatten flattenPackageRules() forces 1`] = `
Object {
"a": 2,
"b": 2,
"force": Object {
"a": 2,
"b": 2,
},
"packageRules": Array [
Object {
"a": 2,
"b": 2,
"packagePatterns": Array [
".*",
],
},
],
}
`;
const {
applyForceConfig,
} = require('../../../../lib/workers/repository/init/force');
describe('workers/repository/init/flatten', () => {
describe('flattenPackageRules()', () => {
it('returns empty', () => {
expect(applyForceConfig({})).toEqual({});
});
it('forces', () => {
const res = applyForceConfig({ a: 1, force: { a: 2, b: 2 } });
expect(res).toMatchSnapshot();
expect(res.a).toEqual(2);
expect(res.b).toEqual(2);
});
});
});
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment