From b6b0382937ed1861ca2ec3eb72453dcf774bae95 Mon Sep 17 00:00:00 2001 From: Manuele Simi Date: Mon, 6 Jul 2020 13:47:57 -0400 Subject: [PATCH] Do not require the gcube release number in the changelogs. Manage when there is only one tag (first release) for the component. --- Jenkinsfile | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index fd7ccbf..0750377 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -183,12 +183,21 @@ String extract(repo_url, log_content, tag, gCube_release_version, component) { println "Changelong content: ${log_content}" if (log_content.startsWith('Missing CHANGELOG.md')) return log_content + " at ${repo_url}" - def matcher = ("${log_content}" =~ /(?is)\[v$tag\]\s*\[r$gCube_release_version\](.*?)##\s+\[v.*?\]/) + def section = '' + def matcher = ("${log_content}" =~ /(?is)\[v$tag\](.*?)##\s+\[v.*?\]/) if (!matcher.find()) { - return "Tags ${tag} / ${gCube_release_version} not found in CHANGELOG.md at ${repo_url}" + def eof_matcher = ("${log_content}" =~ /(?is)\[v$tag\](.*$?)/) + if (!eof_matcher.find()) { + return "Tags ${tag} / ${gCube_release_version} not found in CHANGELOG.md at ${repo_url}" + } else { + assert eof_matcher[0][1]: "Missing release notes for ${component}" + section = eof_matcher[0][1] + } + } else { + assert matcher[0][1]: "Missing release notes for ${component}" + section = matcher[0][1] } - assert matcher[0][1]: "Missing release notes for ${component}" - return matcher[0][1] + return section.replace("[r$gCube_release_version]", '') } /**