This is an automated email from the ASF dual-hosted git repository.
sbp pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tooling-trusted-releases.git
The following commit(s) were added to refs/heads/main by this push:
new f2d97d9 Show available template variables on relevant release policy
fields
f2d97d9 is described below
commit f2d97d964d4191c02166f0f7be1d117263ba7901
Author: Sean B. Palmer <[email protected]>
AuthorDate: Wed Dec 31 16:41:02 2025 +0000
Show available template variables on relevant release policy fields
---
atr/get/projects.py | 22 +++++++++++++++++++++-
atr/shared/projects.py | 6 ++----
2 files changed, 23 insertions(+), 5 deletions(-)
diff --git a/atr/get/projects.py b/atr/get/projects.py
index 6fdab15..30be82e 100644
--- a/atr/get/projects.py
+++ b/atr/get/projects.py
@@ -322,6 +322,14 @@ def _render_finish_form(project: sql.Project) ->
htm.Element:
htm.h3(".mb-0")["Release policy - Finish options"]
]
+ announce_release_template_widget = _textarea_with_variables(
+ field_name="announce_release_template",
+ default_value=project.policy_announce_release_template or "",
+ template_variables=construct.announce_template_variables(),
+ rows=10,
+ documentation="Email template for messages to announce a finished
release.",
+ )
+
with card.block(htm.div, classes=".card-body") as card_body:
form.render_block(
card_body,
@@ -338,6 +346,7 @@ def _render_finish_form(project: sql.Project) ->
htm.Element:
border=True,
# wider_widgets=True,
textarea_rows=10,
+ custom={"announce_release_template":
announce_release_template_widget},
)
return card.collect()
@@ -543,6 +552,14 @@ def _render_vote_form(project: sql.Project) -> htm.Element:
documentation="Markdown text describing how to test release
candidates.",
)
+ start_vote_template_widget = _textarea_with_variables(
+ field_name="start_vote_template",
+ default_value=project.policy_start_vote_template or "",
+ template_variables=construct.vote_template_variables(),
+ rows=10,
+ documentation="Email template for messages to start a vote on a
release.",
+ )
+
with card.block(htm.div, classes=".card-body") as card_body:
form.render_block(
card_body,
@@ -555,7 +572,10 @@ def _render_vote_form(project: sql.Project) -> htm.Element:
# wider_widgets=True,
textarea_rows=10,
skip=skip_fields,
- custom={"release_checklist": release_checklist_widget},
+ custom={
+ "release_checklist": release_checklist_widget,
+ "start_vote_template": start_vote_template_widget,
+ },
)
return card.collect()
diff --git a/atr/shared/projects.py b/atr/shared/projects.py
index b27dd6f..20344e5 100644
--- a/atr/shared/projects.py
+++ b/atr/shared/projects.py
@@ -193,8 +193,7 @@ class VotePolicyForm(form.Form):
)
start_vote_template: str = form.label(
"Start vote template",
- "Email template for messages to start a vote on a release.",
- widget=form.Widget.TEXTAREA,
+ widget=form.Widget.CUSTOM,
)
@pydantic.model_validator(mode="after")
@@ -224,8 +223,7 @@ class FinishPolicyForm(form.Form):
)
announce_release_template: str = form.label(
"Announce release template",
- "Email template for messages to announce a finished release.",
- widget=form.Widget.TEXTAREA,
+ widget=form.Widget.CUSTOM,
)
preserve_download_files: form.Bool = form.label(
"Preserve download files",
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]