From 6a48c03b3de363be8b972becfea575dd35dc0c96 Mon Sep 17 00:00:00 2001 From: Rhys Arkins <rhys@arkins.net> Date: Wed, 17 Oct 2018 12:19:34 +0200 Subject: [PATCH] fix: massage empty renovate config to {} (#2663) --- lib/platform/github/storage.js | 10 ++++++++-- lib/workers/repository/init/config.js | 8 ++++++-- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/lib/platform/github/storage.js b/lib/platform/github/storage.js index a257c1cb67..cfe0203537 100644 --- a/lib/platform/github/storage.js +++ b/lib/platform/github/storage.js @@ -248,8 +248,14 @@ class Storage { throw error; } } - if (res && res.body.content) { - return Buffer.from(res.body.content, 'base64').toString(); + if (res && res.body) { + if (res.body.content) { + if (res.body.content.length) { + return Buffer.from(res.body.content, 'base64').toString(); + } + // istanbul ignore next + return ''; + } } return null; } diff --git a/lib/workers/repository/init/config.js b/lib/workers/repository/init/config.js index df4d51d942..7e1bfec15e 100644 --- a/lib/workers/repository/init/config.js +++ b/lib/workers/repository/init/config.js @@ -57,12 +57,16 @@ async function mergeRenovateConfig(config) { renovateJson = JSON.parse(await platform.getFile('package.json')).renovate; logger.info({ config: renovateJson }, 'package.json>renovate config'); } else { - const renovateConfig = await platform.getFile(configFile); + let renovateConfig = await platform.getFile(configFile); // istanbul ignore if - if (!renovateConfig) { + if (renovateConfig === null) { logger.warn('Fetching renovate config returns null'); throw new Error('registry-failure'); } + // istanbul ignore if + if (!renovateConfig.length) { + renovateConfig = '{}'; + } let allowDuplicateKeys = true; let jsonValidationError = jsonValidator.validate( renovateConfig, -- GitLab