Bodhi config: add a 'betafreeze' release status

This allows us to apply the +1/+2/7 day/14 day requirements
at Beta freeze time without also disabling blocking in the Koji
hub config.

We want to apply the requirements on *entering* Beta freeze
rather than *exiting* it to avoid an awkward situation where
updates reach a 3-day autopush threshold during the freeze and
are submitted for stable, but when we apply the 7-day/14-day
requirements at the time of lifting the freeze, they do not
meet that requirement and are ejected from the stable push.

Applying the requirements on entering Beta freeze should avoid
this issue. Beta freezes always last longer than 11 days, so it
should never be possible for an update created under the 3-day
requirements to get into a 'regular' stable push during the next
11 days. The manual stable pushes for FE and blocker bugs done
during freezes use the bodhi-push script, which does not check
any requirements, so the issue won't occur there either.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
This commit is contained in:
Adam Williamson
2025-09-12 14:39:11 -07:00
committed by kevin
parent 66fd97b462
commit ebf224f92f

View File

@@ -567,9 +567,7 @@ fedora_modular.mandatory_days_in_testing = 7
# You can define alternative policies than the defaults for specific Releases by defining a setting
# of the form Release.name.status (with -'s removed from the name). You can set the status to any
# string you like, and then for each status, you can override the mandatory days in testing, the
# critpath number of admin approvals, and the critpath minimum karma. For example, if we want to set
# Fedora 28 as a pre-beta, and we want it to have different rules in pre-beta and post-beta, we
# could do something like this:
# critpath number of admin approvals, and the critpath minimum karma.
{% if FedoraBranchedBodhi is defined and FedoraBranchedBodhi == 'preenable' %}
f{{ FedoraBranchedNumber }}.status = pre_beta
@@ -583,12 +581,12 @@ f{{ FedoraBranchedNumber }}.pre_beta.mandatory_days_in_testing = 3
f{{ FedoraBranchedNumber }}.pre_beta.min_karma = 1
f{{ FedoraBranchedNumber }}.pre_beta.critpath.min_karma = 1
f{{ FedoraBranchedNumber }}.pre_beta.critpath.mandatory_days_in_testing = 3
{% elif FedoraBranchedBodhi is defined and FedoraBranchedBodhi == 'postbeta' %}
f{{ FedoraBranchedNumber }}.status = post_beta
f{{ FedoraBranchedNumber }}.post_beta.mandatory_days_in_testing = 7
f{{ FedoraBranchedNumber }}.post_beta.min_karma = 1
f{{ FedoraBranchedNumber }}.post_beta.critpath.min_karma = 2
f{{ FedoraBranchedNumber }}.post_beta.critpath.mandatory_days_in_testing = 14
{% elif FedoraBranchedBodhi is defined and FedoraBranchedBodhi in ('betafreeze', 'postbeta') %}
f{{ FedoraBranchedNumber }}.status = {{ FedoraBranchedBodhi }}
f{{ FedoraBranchedNumber }}.{{ FedoraBranchedBodhi }}.mandatory_days_in_testing = 7
f{{ FedoraBranchedNumber }}.{{ FedoraBranchedBodhi }}.min_karma = 1
f{{ FedoraBranchedNumber }}.{{ FedoraBranchedBodhi }}.critpath.min_karma = 2
f{{ FedoraBranchedNumber }}.{{ FedoraBranchedBodhi }}.critpath.mandatory_days_in_testing = 14
{% endif %}
# Rawhide layered containers are shipped through bodhi and rawhide containers not require any day