From 15c2facf999244df7443381fa8c887e0452a4351 Mon Sep 17 00:00:00 2001 From: Adam Monsen Date: Mon, 22 Dec 2025 14:36:06 -0800 Subject: [PATCH] FINERACT-2424: post 1.14.0 release docs cleanup * Go analog for step 15, automation was broken. * Fix two admonitions: I meant to use `NOTE`. `INFO` is not a valid admonition in asciidoc, so it just shows up as text. --- .../fineract/gradle/FineractPlugin.groovy | 31 +------------- .../email/release.step15.announce.message.ftl | 40 ------------------- .../step15.txt.ftl} | 10 ++++- .../en/chapters/release/process-step10.adoc | 2 +- .../en/chapters/release/process-step11.adoc | 2 +- .../en/chapters/release/process-step15.adoc | 20 ++++++---- 6 files changed, 25 insertions(+), 80 deletions(-) delete mode 100644 buildSrc/src/main/resources/email/release.step15.announce.message.ftl rename buildSrc/src/main/resources/{email/release.step15.announce.subject.ftl => instructions/step15.txt.ftl} (83%) diff --git a/buildSrc/src/main/groovy/org/apache/fineract/gradle/FineractPlugin.groovy b/buildSrc/src/main/groovy/org/apache/fineract/gradle/FineractPlugin.groovy index f1cf57ef7..1de94a7ef 100644 --- a/buildSrc/src/main/groovy/org/apache/fineract/gradle/FineractPlugin.groovy +++ b/buildSrc/src/main/groovy/org/apache/fineract/gradle/FineractPlugin.groovy @@ -432,36 +432,7 @@ class FineractPlugin implements Plugin { doFirst { log.warn("Release step 15: send email to announcement mailing list") - FineractPluginExtension.FineractPluginStep step = step(extension, "step15") - - String version = project.properties?['fineract.release.version'] - - if(!version) { - TextIO textIO = TextIoFactory.getTextIO() - - version = textIO.newStringInputReader() - .withPattern("\\d+.\\d+.\\d+") - .read("Release Version"); - } - - // TODO: input validation, see FINERACT-1610 - - FineractPluginExtension.FineractPluginJiraParams issues = jiraService.search(step.jira) - - def versions = jiraService.getProjectVersions(step.jira.projectId) - def filteredVersions = versions.findAll { - log.warn(">>>> VERSION: ${it.id} - ${it.name} - ${it.description}") - it.name == version - } - - this.context?.project?['fineract.release.version'] = version - this.context?.project?['fineract.release.issues'] = issues.result - this.context?.project?['fineract.release.projectId'] = step.jira.projectId - this.context?.project?['fineract.release.versionId'] = filteredVersions[0]?.id - - if(step.email) { - emailService.send( processEmailParams(step.email, this.context) ) - } + printInstructions(project, "step15") } } } diff --git a/buildSrc/src/main/resources/email/release.step15.announce.message.ftl b/buildSrc/src/main/resources/email/release.step15.announce.message.ftl deleted file mode 100644 index 4ccb8322e..000000000 --- a/buildSrc/src/main/resources/email/release.step15.announce.message.ftl +++ /dev/null @@ -1,40 +0,0 @@ -<#-- - - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, - software distributed under the License is distributed on an - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, either express or implied. See the License for the - specific language governing permissions and limitations - under the License. - ---> -The Apache Fineract project is pleased to announce -the release of Apache Fineract ${project['fineract.release.version']}. -The release is available for download from -https://fineract.apache.org/#downloads - -Apache Fineract is an open-source core banking platform providing a flexible, extensible foundation for a wide range of financial services. By making robust banking technology openly available, it lowers barriers for institutions and innovators to reach underserved and unbanked populations. - -This release addressed ${project['fineract.release.issues']?size} issues. - -Readme: https://github.com/apache/fineract/blob/${project['fineract.release.version']}/README.md - -Release page: https://cwiki.apache.org/confluence/display/FINERACT/${project['fineract.release.version']}+-+Apache+Fineract - -List of fixed issues: -https://issues.apache.org/jira/secure/ReleaseNote.jspa?version=${project['fineract.release.versionId']}&styleName=Html&projectId=${project['fineract.release.projectId']} - -For more information on Apache Fineract please visit -project home page: https://fineract.apache.org - -The Apache Fineract Team diff --git a/buildSrc/src/main/resources/email/release.step15.announce.subject.ftl b/buildSrc/src/main/resources/instructions/step15.txt.ftl similarity index 83% rename from buildSrc/src/main/resources/email/release.step15.announce.subject.ftl rename to buildSrc/src/main/resources/instructions/step15.txt.ftl index 41d04d822..58f119614 100644 --- a/buildSrc/src/main/resources/email/release.step15.announce.subject.ftl +++ b/buildSrc/src/main/resources/instructions/step15.txt.ftl @@ -18,4 +18,12 @@ under the License. --> -[ANNOUNCE] Apache Fineract ${project['fineract.release.version']} Release + + +[INSTRUCTIONS:START] + +Manually draft an email using your Apache ID. + +See https://fineract.apache.org/docs/current/#_step_15_announcement_email + +[INSTRUCTIONS:END] diff --git a/fineract-doc/src/docs/en/chapters/release/process-step10.adoc b/fineract-doc/src/docs/en/chapters/release/process-step10.adoc index a7ba519d6..c3c081ae2 100644 --- a/fineract-doc/src/docs/en/chapters/release/process-step10.adoc +++ b/fineract-doc/src/docs/en/chapters/release/process-step10.adoc @@ -12,4 +12,4 @@ Initiate voting with https://release-test.apache.org[the ATR (ASF Trusted Releas ./gradlew fineractReleaseStep10 ---- -INFO: Use the ATR for this task. +NOTE: Use the ATR for this task. diff --git a/fineract-doc/src/docs/en/chapters/release/process-step11.adoc b/fineract-doc/src/docs/en/chapters/release/process-step11.adoc index 51a3de319..81719e602 100644 --- a/fineract-doc/src/docs/en/chapters/release/process-step11.adoc +++ b/fineract-doc/src/docs/en/chapters/release/process-step11.adoc @@ -12,4 +12,4 @@ Conclude voting with https://release-test.apache.org[the ATR (ASF Trusted Releas ./gradlew fineractReleaseStep11 ---- -INFO: Use the ATR for this task. +NOTE: Use the ATR for this task. diff --git a/fineract-doc/src/docs/en/chapters/release/process-step15.adoc b/fineract-doc/src/docs/en/chapters/release/process-step15.adoc index 4f199a9b0..842f1ee04 100644 --- a/fineract-doc/src/docs/en/chapters/release/process-step15.adoc +++ b/fineract-doc/src/docs/en/chapters/release/process-step15.adoc @@ -2,19 +2,25 @@ == Description -Send an email to `announce@apache.org` (sender address must be `@apache.org`): +Manually draft an email using your Apache ID. This works best if you use plain text since the Apache announcements list rejects HTML. Use `format=flowed` for readability, following instructions at https://useplaintext.email. Follow a https://lists.apache.org/thread/0xrtf2tgbcgczx1w6rlt9lxqvx68bfg3[recent example], substituting: -[source,text] ----- -include::{rootdir}/buildSrc/src/main/resources/email/release.step15.announce.subject.ftl[lines=21..] +**** +* [ ] version number in subject +* [ ] version number in intro paragraph +* [ ] number of issues addressed (get this number from the release page on confluence -- the github release page includes unresolved issues since issues can span multiple PRs) +* [ ] version number in release page link +* [ ] version number (aka git tag) in link to "Contributors, changelog, and pull requests" (github release page) +* [ ] use your own email signature, or omit the email signature altogether +**** -include::{rootdir}/buildSrc/src/main/resources/email/release.step15.announce.message.ftl[lines=21..] ----- +Send the email to dev@fineract.apache.org and announce@apache.org. == Gradle Task .Command [source,bash,subs="attributes+,+macros"] ---- -./gradlew fineractReleaseStep15 -Pfineract.release.version={revnumber} +./gradlew fineractReleaseStep15 ---- + +NOTE: Do this task manually.