This is an automated email from the ASF dual-hosted git repository.
ephraimanierobi pushed a commit to branch v3-1-test
in repository https://gitbox.apache.org/repos/asf/airflow.git
The following commit(s) were added to refs/heads/v3-1-test by this push:
new 874a9483b68 [v3-1-test] Minor fixes for the release candidate command
(#57806) (#57849)
874a9483b68 is described below
commit 874a9483b687290dc1f75d8d37191f1c7faafea2
Author: github-actions[bot]
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Wed Nov 5 11:04:30 2025 +0100
[v3-1-test] Minor fixes for the release candidate command (#57806) (#57849)
Patch releases sync PR no longer comes from the test branch. Updating
the command to reflect it
(cherry picked from commit e5c7442c036d98a2a53407d21cbd4c9f0804955f)
Co-authored-by: Ephraim Anierobi <[email protected]>
---
dev/README_RELEASE_AIRFLOW.md | 4 +++-
.../output_release-management_start-rc-process.svg | 24 +++++++++++++---------
.../output_release-management_start-rc-process.txt | 2 +-
.../commands/release_candidate_command.py | 18 ++++++++++++----
.../commands/release_management_commands_config.py | 1 +
5 files changed, 33 insertions(+), 16 deletions(-)
diff --git a/dev/README_RELEASE_AIRFLOW.md b/dev/README_RELEASE_AIRFLOW.md
index f8aaa54d122..6850209f35b 100644
--- a/dev/README_RELEASE_AIRFLOW.md
+++ b/dev/README_RELEASE_AIRFLOW.md
@@ -279,6 +279,7 @@ export VERSION_WITHOUT_RC=${VERSION/rc?/}
export TASK_SDK_VERSION=1.0.5rc1
export TASK_SDK_VERSION_WITHOUT_RC=${TASK_SDK_VERSION/rc?/}
export PREVIOUS_VERSION=3.0.4
+export SYNC_BRANCH=changes-3.1.2rc1 # sync branch, if different from the test
branch
# Set AIRFLOW_REPO_ROOT to the path of your git repo
export AIRFLOW_REPO_ROOT=$(pwd)
@@ -365,7 +366,8 @@ uv tool install -e ./dev/breeze
breeze release-management start-rc-process \
--version ${VERSION} \
--previous-version ${PREVIOUS_VERSION} \
- --task-sdk-version ${TASK_SDK_VERSION}
+ --task-sdk-version ${TASK_SDK_VERSION} \
+ --sync-branch ${SYNC_BRANCH}
```
**Testing the start-rc-process command:**
diff --git
a/dev/breeze/doc/images/output_release-management_start-rc-process.svg
b/dev/breeze/doc/images/output_release-management_start-rc-process.svg
index 45c7c863b53..6706dbff753 100644
--- a/dev/breeze/doc/images/output_release-management_start-rc-process.svg
+++ b/dev/breeze/doc/images/output_release-management_start-rc-process.svg
@@ -1,4 +1,4 @@
-<svg class="rich-terminal" viewBox="0 0 1482 489.2"
xmlns="http://www.w3.org/2000/svg">
+<svg class="rich-terminal" viewBox="0 0 1482 513.5999999999999"
xmlns="http://www.w3.org/2000/svg">
<!-- Generated with Rich https://www.textualize.io -->
<style>
@@ -45,7 +45,7 @@
<defs>
<clipPath id="breeze-release-management-start-rc-process-clip-terminal">
- <rect x="0" y="0" width="1463.0" height="438.2" />
+ <rect x="0" y="0" width="1463.0" height="462.59999999999997" />
</clipPath>
<clipPath id="breeze-release-management-start-rc-process-line-0">
<rect x="0" y="1.5" width="1464" height="24.65"/>
@@ -98,9 +98,12 @@
<clipPath id="breeze-release-management-start-rc-process-line-16">
<rect x="0" y="391.9" width="1464" height="24.65"/>
</clipPath>
+<clipPath id="breeze-release-management-start-rc-process-line-17">
+ <rect x="0" y="416.3" width="1464" height="24.65"/>
+ </clipPath>
</defs>
- <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1"
x="1" y="1" width="1480" height="487.2" rx="8"/><text
class="breeze-release-management-start-rc-process-title" fill="#c5c8c6"
text-anchor="middle" x="740"
y="27">Command: release-management start-rc-process</text>
+ <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1"
x="1" y="1" width="1480" height="511.6" rx="8"/><text
class="breeze-release-management-start-rc-process-title" fill="#c5c8c6"
text-anchor="middle" x="740"
y="27">Command: release-management start-rc-process</text>
<g transform="translate(26,22)">
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
@@ -121,13 +124,14 @@
</text><text class="breeze-release-management-start-rc-process-r5" x="0"
y="215.2" textLength="12.2"
clip-path="url(#breeze-release-management-start-rc-process-line-8)">│</text><text
class="breeze-release-management-start-rc-process-r6" x="24.4" y="215.2"
textLength="12.2"
clip-path="url(#breeze-release-management-start-rc-process-line-8)">*</text><text
class="breeze-release-management-start-rc-process-r4" x="61" y="215.2"
textLength="219.6" clip-path="url(#breeze-release-management-star [...]
</text><text class="breeze-release-management-start-rc-process-r5" x="0"
y="239.6" textLength="12.2"
clip-path="url(#breeze-release-management-start-rc-process-line-9)">│</text><text
class="breeze-release-management-start-rc-process-r4" x="61" y="239.6"
textLength="170.8"
clip-path="url(#breeze-release-management-start-rc-process-line-9)">--github-token</text><text
class="breeze-release-management-start-rc-process-r1" x="329.4" y="239.6"
textLength="878.4" clip-path="url(#breeze-release- [...]
</text><text class="breeze-release-management-start-rc-process-r5" x="0"
y="264" textLength="12.2"
clip-path="url(#breeze-release-management-start-rc-process-line-10)">│</text><text
class="breeze-release-management-start-rc-process-r4" x="61" y="264"
textLength="158.6"
clip-path="url(#breeze-release-management-start-rc-process-line-10)">--remote-name</text><text
class="breeze-release-management-start-rc-process-r1" x="329.4" y="264"
textLength="536.8" clip-path="url(#breeze-release-manag [...]
-</text><text class="breeze-release-management-start-rc-process-r5" x="0"
y="288.4" textLength="1464"
clip-path="url(#breeze-release-management-start-rc-process-line-11)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-release-management-start-rc-process-r1" x="1464" y="288.4"
textLength="12.2"
clip-path="url(#breeze-release-management-start-rc-process-line-11)">
-</text><text class="breeze-release-management-start-rc-process-r5" x="0"
y="312.8" textLength="24.4"
clip-path="url(#breeze-release-management-start-rc-process-line-12)">╭─</text><text
class="breeze-release-management-start-rc-process-r5" x="24.4" y="312.8"
textLength="195.2"
clip-path="url(#breeze-release-management-start-rc-process-line-12)"> Common options </text><text
class="breeze-release-management-start-rc-process-r5" x="219.6" y="312.8"
textLength="1220" clip-path= [...]
-</text><text class="breeze-release-management-start-rc-process-r5" x="0"
y="337.2" textLength="12.2"
clip-path="url(#breeze-release-management-start-rc-process-line-13)">│</text><text
class="breeze-release-management-start-rc-process-r4" x="24.4" y="337.2"
textLength="97.6"
clip-path="url(#breeze-release-management-start-rc-process-line-13)">--answer</text><text
class="breeze-release-management-start-rc-process-r9" x="158.6" y="337.2"
textLength="24.4" clip-path="url(#breeze-release-mana [...]
-</text><text class="breeze-release-management-start-rc-process-r5" x="0"
y="361.6" textLength="12.2"
clip-path="url(#breeze-release-management-start-rc-process-line-14)">│</text><text
class="breeze-release-management-start-rc-process-r4" x="24.4" y="361.6"
textLength="109.8"
clip-path="url(#breeze-release-management-start-rc-process-line-14)">--dry-run</text><text
class="breeze-release-management-start-rc-process-r9" x="158.6" y="361.6"
textLength="24.4" clip-path="url(#breeze-release-ma [...]
-</text><text class="breeze-release-management-start-rc-process-r5" x="0"
y="386" textLength="12.2"
clip-path="url(#breeze-release-management-start-rc-process-line-15)">│</text><text
class="breeze-release-management-start-rc-process-r4" x="24.4" y="386"
textLength="109.8"
clip-path="url(#breeze-release-management-start-rc-process-line-15)">--verbose</text><text
class="breeze-release-management-start-rc-process-r9" x="158.6" y="386"
textLength="24.4" clip-path="url(#breeze-release-manageme [...]
-</text><text class="breeze-release-management-start-rc-process-r5" x="0"
y="410.4" textLength="12.2"
clip-path="url(#breeze-release-management-start-rc-process-line-16)">│</text><text
class="breeze-release-management-start-rc-process-r4" x="24.4" y="410.4"
textLength="73.2"
clip-path="url(#breeze-release-management-start-rc-process-line-16)">--help</text><text
class="breeze-release-management-start-rc-process-r9" x="158.6" y="410.4"
textLength="24.4" clip-path="url(#breeze-release-manage [...]
-</text><text class="breeze-release-management-start-rc-process-r5" x="0"
y="434.8" textLength="1464"
clip-path="url(#breeze-release-management-start-rc-process-line-17)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-release-management-start-rc-process-r1" x="1464" y="434.8"
textLength="12.2"
clip-path="url(#breeze-release-management-start-rc-process-line-17)">
+</text><text class="breeze-release-management-start-rc-process-r5" x="0"
y="288.4" textLength="12.2"
clip-path="url(#breeze-release-management-start-rc-process-line-11)">│</text><text
class="breeze-release-management-start-rc-process-r6" x="24.4" y="288.4"
textLength="12.2"
clip-path="url(#breeze-release-management-start-rc-process-line-11)">*</text><text
class="breeze-release-management-start-rc-process-r4" x="61" y="288.4"
textLength="158.6" clip-path="url(#breeze-release-management-st [...]
+</text><text class="breeze-release-management-start-rc-process-r5" x="0"
y="312.8" textLength="1464"
clip-path="url(#breeze-release-management-start-rc-process-line-12)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-release-management-start-rc-process-r1" x="1464" y="312.8"
textLength="12.2"
clip-path="url(#breeze-release-management-start-rc-process-line-12)">
+</text><text class="breeze-release-management-start-rc-process-r5" x="0"
y="337.2" textLength="24.4"
clip-path="url(#breeze-release-management-start-rc-process-line-13)">╭─</text><text
class="breeze-release-management-start-rc-process-r5" x="24.4" y="337.2"
textLength="195.2"
clip-path="url(#breeze-release-management-start-rc-process-line-13)"> Common options </text><text
class="breeze-release-management-start-rc-process-r5" x="219.6" y="337.2"
textLength="1220" clip-path= [...]
+</text><text class="breeze-release-management-start-rc-process-r5" x="0"
y="361.6" textLength="12.2"
clip-path="url(#breeze-release-management-start-rc-process-line-14)">│</text><text
class="breeze-release-management-start-rc-process-r4" x="24.4" y="361.6"
textLength="97.6"
clip-path="url(#breeze-release-management-start-rc-process-line-14)">--answer</text><text
class="breeze-release-management-start-rc-process-r9" x="158.6" y="361.6"
textLength="24.4" clip-path="url(#breeze-release-mana [...]
+</text><text class="breeze-release-management-start-rc-process-r5" x="0"
y="386" textLength="12.2"
clip-path="url(#breeze-release-management-start-rc-process-line-15)">│</text><text
class="breeze-release-management-start-rc-process-r4" x="24.4" y="386"
textLength="109.8"
clip-path="url(#breeze-release-management-start-rc-process-line-15)">--dry-run</text><text
class="breeze-release-management-start-rc-process-r9" x="158.6" y="386"
textLength="24.4" clip-path="url(#breeze-release-manageme [...]
+</text><text class="breeze-release-management-start-rc-process-r5" x="0"
y="410.4" textLength="12.2"
clip-path="url(#breeze-release-management-start-rc-process-line-16)">│</text><text
class="breeze-release-management-start-rc-process-r4" x="24.4" y="410.4"
textLength="109.8"
clip-path="url(#breeze-release-management-start-rc-process-line-16)">--verbose</text><text
class="breeze-release-management-start-rc-process-r9" x="158.6" y="410.4"
textLength="24.4" clip-path="url(#breeze-release-ma [...]
+</text><text class="breeze-release-management-start-rc-process-r5" x="0"
y="434.8" textLength="12.2"
clip-path="url(#breeze-release-management-start-rc-process-line-17)">│</text><text
class="breeze-release-management-start-rc-process-r4" x="24.4" y="434.8"
textLength="73.2"
clip-path="url(#breeze-release-management-start-rc-process-line-17)">--help</text><text
class="breeze-release-management-start-rc-process-r9" x="158.6" y="434.8"
textLength="24.4" clip-path="url(#breeze-release-manage [...]
+</text><text class="breeze-release-management-start-rc-process-r5" x="0"
y="459.2" textLength="1464"
clip-path="url(#breeze-release-management-start-rc-process-line-18)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-release-management-start-rc-process-r1" x="1464" y="459.2"
textLength="12.2"
clip-path="url(#breeze-release-management-start-rc-process-line-18)">
</text>
</g>
</g>
diff --git
a/dev/breeze/doc/images/output_release-management_start-rc-process.txt
b/dev/breeze/doc/images/output_release-management_start-rc-process.txt
index 60bca552ac9..e30182bb8da 100644
--- a/dev/breeze/doc/images/output_release-management_start-rc-process.txt
+++ b/dev/breeze/doc/images/output_release-management_start-rc-process.txt
@@ -1 +1 @@
-8c938ba1642769000bab086687b60815
+153b981130da73a16d62b4e656b54f44
diff --git
a/dev/breeze/src/airflow_breeze/commands/release_candidate_command.py
b/dev/breeze/src/airflow_breeze/commands/release_candidate_command.py
index d588eedd7f4..247a3ab35e6 100644
--- a/dev/breeze/src/airflow_breeze/commands/release_candidate_command.py
+++ b/dev/breeze/src/airflow_breeze/commands/release_candidate_command.py
@@ -207,7 +207,7 @@ def validate_on_correct_branch_for_tagging(version_branch):
console_print(f"[success]On correct branch '{expected_branch}' for
tagging")
-def merge_pr(version_branch, remote_name):
+def merge_pr(version_branch, remote_name, sync_branch):
if confirm_action("Do you want to merge the Sync PR?"):
run_command(
[
@@ -222,7 +222,7 @@ def merge_pr(version_branch, remote_name):
check=True,
)
run_command(
- ["git", "merge", "--ff-only", f"v{version_branch}-test"],
+ ["git", "merge", "--ff-only", f"{sync_branch}"],
check=True,
)
if confirm_action("Do you want to push the changes? Pushing the
changes closes the PR"):
@@ -367,6 +367,8 @@ def create_artifacts_with_docker():
"prepare-airflow-distributions",
"--distribution-format",
"both",
+ "--version-suffix",
+ "",
],
check=True,
)
@@ -377,6 +379,8 @@ def create_artifacts_with_docker():
"prepare-task-sdk-distributions",
"--distribution-format",
"both",
+ "--version-suffix",
+ "",
],
check=True,
)
@@ -613,6 +617,9 @@ def prepare_airflow_tarball(
@click.option("--version", required=True, help="The release candidate version
e.g. 2.4.3rc1")
@click.option("--previous-version", required=True, help="Previous version
released e.g. 2.4.2")
@click.option("--task-sdk-version", required=True, help="The task SDK version
e.g. 1.0.6rc1.")
[email protected](
+ "--sync-branch", required=True, help="The branch of the sync PR. Can be
the test branch. Please specify"
+)
@click.option(
"--github-token", help="GitHub token to use in generating issue for
testing of release candidate"
)
@@ -620,7 +627,9 @@ def prepare_airflow_tarball(
@option_answer
@option_dry_run
@option_verbose
-def publish_release_candidate(version, previous_version, task_sdk_version,
github_token, remote_name):
+def publish_release_candidate(
+ version, previous_version, task_sdk_version, sync_branch, github_token,
remote_name
+):
from packaging.version import Version
airflow_version = Version(version)
@@ -663,13 +672,14 @@ def publish_release_candidate(version, previous_version,
task_sdk_version, githu
console_print(f"task_sdk_version_without_rc:
{task_sdk_version_without_rc}")
console_print(f"airflow_repo_root: {airflow_repo_root}")
console_print(f"remote_name: {remote_name}")
+ console_print(f"sync_branch: {sync_branch}")
console_print()
console_print(f"Below are your git remotes. We will push to
{remote_name}:")
run_command(["git", "remote", "-v"])
console_print()
confirm_action("Verify that the above information is correct. Do you want
to continue?", abort=True)
# Merge the sync PR
- merge_pr(version_branch, remote_name)
+ merge_pr(version_branch, remote_name, sync_branch)
#
# # Tag & clean the repo
# Validate we're on the correct branch before tagging
diff --git
a/dev/breeze/src/airflow_breeze/commands/release_management_commands_config.py
b/dev/breeze/src/airflow_breeze/commands/release_management_commands_config.py
index 9c7b086c1dd..f9385d1226f 100644
---
a/dev/breeze/src/airflow_breeze/commands/release_management_commands_config.py
+++
b/dev/breeze/src/airflow_breeze/commands/release_management_commands_config.py
@@ -424,6 +424,7 @@ RELEASE_MANAGEMENT_PARAMETERS: dict[str, list[dict[str, str
| list[str]]]] = {
"--task-sdk-version",
"--github-token",
"--remote-name",
+ "--sync-branch",
],
}
],