diff --git a/lib/workers/repository/init/config.js b/lib/workers/repository/init/config.js index 8f35c24ace3586ad6ed0a35cdca524af1d136332..7e80b9b20e9584da14a7a9eb7cef24b72125ed07 100644 --- a/lib/workers/repository/init/config.js +++ b/lib/workers/repository/init/config.js @@ -89,7 +89,16 @@ async function mergeRenovateConfig(config) { error.validationMessage = JSON.stringify(jsonValidationError); throw error; } - renovateJson = JSON.parse(renovateConfig); + try { + renovateJson = JSON.parse(renovateConfig); + } catch (err) /* istanbul ignore next */ { + logger.debug({ renovateConfig }, 'Error parsing renovate config'); + const error = new Error('config-validation'); + error.configFile = configFile; + error.validationError = 'Invalid JSON (parsing failed)'; + error.validationMessage = 'JSON.parse error: ' + err.message; + throw error; + } logger.info({ config: renovateJson }, 'renovate.json config'); } const migratedConfig = await migrateAndValidate(config, renovateJson);