From 88b6f9b6f325f2ac44623469d7eddeed7c939cff Mon Sep 17 00:00:00 2001 From: Adam Williamson Date: Tue, 18 Feb 2025 09:10:26 -0800 Subject: [PATCH] Clarify the Frozen variable Per https://pagure.io/infra-docs-fpo/pull-request/361 there seems to be substantial confusion about what the "Frozen" variable means: does it refer to the infrastructure freeze, or a freeze for the pending release? It seems like @kevin thought about it as referring to the former, but the only practical use of it in this repo treats it as the latter. Let's make this clear with explicitly-named variables. InfraFrozen tracks the infrastructure freeze, NextReleaseFrozen tracks freezes for the pending release. We formerly had a var called RelEngFrozen which had a similar meaning, but I like this name more because the freeze doesn't apply to *all* releng operations - just because the current Branched is frozen doesn't mean Rawhide or stable releases are frozen. We keep Frozen for 'backwards compatibility', in case anyone is referring to this variable from outside of the repo. This goes along with https://pagure.io/infra-docs-fpo/pull-request/361 which updates the SOPs. Signed-off-by: Adam Williamson --- roles/koji_hub/templates/hub.conf.j2 | 2 +- vars/all/Frozen.yaml | 7 ++++++- vars/all/README | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/roles/koji_hub/templates/hub.conf.j2 b/roles/koji_hub/templates/hub.conf.j2 index a34775c244..a4ed74915c 100644 --- a/roles/koji_hub/templates/hub.conf.j2 +++ b/roles/koji_hub/templates/hub.conf.j2 @@ -207,7 +207,7 @@ package_list = # Rawhide adding, unblocking and blocking is allowed. tag f{{FedoraRawhideNumber}} && match action add unblock block :: allow # In branched blocking is allowed only before final freeze. - tag f{{FedoraBranchedNumber}} && match action add unblock {{ 'block' if not Frozen or FedoraBranchedBodhi != 'postbeta' else '' }} :: allow + tag f{{FedoraBranchedNumber}} && match action add unblock {{ 'block' if not NextReleaseFrozen or FedoraBranchedBodhi != 'postbeta' else '' }} :: allow # Stable releases: only adding and unblocking is allowed. tag f{{FedoraCycleNumber}} f{{FedoraPreviousCycleNumber}} && match action add unblock :: allow # EPEL: adding, blocking, and unblocking are allowed diff --git a/vars/all/Frozen.yaml b/vars/all/Frozen.yaml index b92dc939b3..0ced9edd61 100644 --- a/vars/all/Frozen.yaml +++ b/vars/all/Frozen.yaml @@ -1,2 +1,7 @@ --- -Frozen: True +# is the infrastructure freeze currently in place? +InfraFrozen: True +# is the pending release (Branched) currently frozen? +NextReleaseFrozen: True +# for 'backwards compatibility' +Frozen: {{ InfraFrozen }} diff --git a/vars/all/README b/vars/all/README index ba909b18ed..730abdf231 100644 --- a/vars/all/README +++ b/vars/all/README @@ -35,7 +35,7 @@ FedoraPreviousCycleNumber.yaml - number of previous stable release FedoraPreviousPreviousCycleNumber.yaml - number of previous previous stable release or 0 FedoraPreviousPrevious.yaml - true if there is a previous previous, otherwise false FedoraRawhideNumber.yaml - The number of the current rawhide -Frozen.yaml - If we are frozen or not, true or false +Frozen.yaml - If infra (InfraFrozen) and the pending release (NextReleaseFrozen) are frozen or not, true or false This directory also contains variables (one per file) that are loaded into various playbooks. The first set of these is to allow templates to