Browse Source

fix: release-notes plays more nicely with clerk (#16901)

Explicitly look not just for Clerk's "notes persisted"
message but also its "no release notes" message.
trop[bot] 6 years ago
parent
commit
29a0bc23c4
1 changed files with 13 additions and 11 deletions
  1. 13 11
      script/release-notes/notes.js

+ 13 - 11
script/release-notes/notes.js

@@ -69,6 +69,7 @@ const getNoteFromClerk = async (number, owner, repo) => {
   if (!comments || !comments.data) return
 
   const CLERK_LOGIN = 'release-clerk[bot]'
+  const CLERK_NO_NOTES = '**No Release Notes**'
   const PERSIST_LEAD = '**Release Notes Persisted**\n\n'
   const QUOTE_LEAD = '> '
 
@@ -76,18 +77,19 @@ const getNoteFromClerk = async (number, owner, repo) => {
     if (comment.user.login !== CLERK_LOGIN) {
       continue
     }
-    if (!comment.body.startsWith(PERSIST_LEAD)) {
-      continue
+    if (comment.body === CLERK_NO_NOTES) {
+      return NO_NOTES
+    }
+    if (comment.body.startsWith(PERSIST_LEAD)) {
+      return comment.body
+        .slice(PERSIST_LEAD.length).trim() // remove PERSIST_LEAD
+        .split('\r?\n') // break into lines
+        .map(line => line.trim())
+        .filter(line => line.startsWith(QUOTE_LEAD)) // notes are quoted
+        .map(line => line.slice(QUOTE_LEAD.length)) // unquote the lines
+        .join(' ') // join the note lines
+        .trim()
     }
-    const note = comment.body
-      .slice(PERSIST_LEAD.length).trim() // remove PERSIST_LEAD
-      .split('\r?\n') // break into lines
-      .map(line => line.trim())
-      .filter(line => line.startsWith(QUOTE_LEAD)) // notes are quoted
-      .map(line => line.slice(QUOTE_LEAD.length)) // unquote the lines
-      .join(' ') // join the note lines
-      .trim()
-    return note
   }
 }