From 7e43fce47bb10330a569d96073d615d886dd983f Mon Sep 17 00:00:00 2001
From: Rhys Arkins <rhys@keylocation.sg>
Date: Thu, 15 Jun 2017 20:57:18 +0200
Subject: [PATCH] Add check for logJSON (#306)

Fixes #305
---
 lib/workers/pr.js | 57 +++++++++++++++++++++++++----------------------
 1 file changed, 30 insertions(+), 27 deletions(-)

diff --git a/lib/workers/pr.js b/lib/workers/pr.js
index 320b663f0f..3339dec674 100644
--- a/lib/workers/pr.js
+++ b/lib/workers/pr.js
@@ -58,33 +58,36 @@ async function ensurePr(upgrades) {
       upgrade.changeLogToVersion
     );
     // Store changelog markdown for backwards compatibility
-    config.changelog = config.changelog || changelogHelper.getMarkdown(logJSON);
-    upgrade.repositoryUrl = logJSON.project.repository;
-    upgrade.githubName = logJSON.project.github;
-    upgrade.releases = [];
-    logJSON.versions.forEach(version => {
-      const release = Object.assign({}, version);
-      release.date = version.date.toISOString().slice(0, 10);
-      release.commits = [];
-      if (release.changes) {
-        release.changes.forEach(change => {
-          const commit = Object.assign({}, change);
-          delete commit.date;
-          commit.shortSha = change.sha.slice(0, 7);
-          commit.url = `${logJSON.project.repository}/commit/${change.sha}`;
-          if (change.message) {
-            commit.message = change.message.split('\n')[0];
-            const re = /([\s(])#(\d+)([)\s]?)/g;
-            commit.message = commit.message.replace(
-              re,
-              `$1[#$2](${upgrade.repositoryUrl}/issues/$2)$3`
-            );
-          }
-          release.commits.push(commit);
-        });
-      }
-      upgrade.releases.push(release);
-    });
+    if (logJSON) {
+      config.changelog =
+        config.changelog || changelogHelper.getMarkdown(logJSON);
+      upgrade.repositoryUrl = logJSON.project.repository;
+      upgrade.githubName = logJSON.project.github;
+      upgrade.releases = [];
+      logJSON.versions.forEach(version => {
+        const release = Object.assign({}, version);
+        release.date = version.date.toISOString().slice(0, 10);
+        release.commits = [];
+        if (release.changes) {
+          release.changes.forEach(change => {
+            const commit = Object.assign({}, change);
+            delete commit.date;
+            commit.shortSha = change.sha.slice(0, 7);
+            commit.url = `${logJSON.project.repository}/commit/${change.sha}`;
+            if (change.message) {
+              commit.message = change.message.split('\n')[0];
+              const re = /([\s(])#(\d+)([)\s]?)/g;
+              commit.message = commit.message.replace(
+                re,
+                `$1[#$2](${upgrade.repositoryUrl}/issues/$2)$3`
+              );
+            }
+            release.commits.push(commit);
+          });
+        }
+        upgrade.releases.push(release);
+      });
+    }
     config.upgrades.push(upgrade);
   }
 
-- 
GitLab