This is an automated email from the ASF dual-hosted git repository.

potiuk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new 1cac59ed6f Introducing --latest for generate-issue-content-helm-chart 
command (#38648)
1cac59ed6f is described below

commit 1cac59ed6fd008b08a0ad5576b0bd3edc57f2509
Author: Amogh Desai <amoghrajesh1...@gmail.com>
AuthorDate: Mon Apr 1 19:26:43 2024 +0530

    Introducing --latest for generate-issue-content-helm-chart command (#38648)
    
    * Introducing --latest for generate-issue-content-helm-chart command
    
    * testing only
    
    * fetching tags
    
    * review comments from potiuk
---
 .github/workflows/helm-tests.yml                   |  6 ++-
 ...anagement_generate-issue-content-helm-chart.svg | 40 ++++++++++----------
 ...anagement_generate-issue-content-helm-chart.txt |  2 +-
 .../commands/release_management_commands.py        | 44 ++++++++++++++--------
 .../commands/release_management_commands_config.py |  1 +
 .../src/airflow_breeze/utils/version_utils.py      | 37 ++++++++++++++++++
 6 files changed, 92 insertions(+), 38 deletions(-)

diff --git a/.github/workflows/helm-tests.yml b/.github/workflows/helm-tests.yml
index 96597840e7..0c18472648 100644
--- a/.github/workflows/helm-tests.yml
+++ b/.github/workflows/helm-tests.yml
@@ -121,11 +121,13 @@ jobs:
         run: ./dev/sign.sh dist/airflow-*.tgz dist/airflow-*-source.tar.gz
         env:
           SIGN_WITH: d...@airflow.apache.org
+      - name: "Fetch Git Tags"
+        run: git fetch --tags
       - name: "Test helm chart issue generation automatically"
         # Adding same tags for now, will address in a follow-up
         run: >
-          breeze release-management generate-issue-content-helm-chart
-          --previous-release helm-chart/0.0.0dev0 --current-release 
helm-chart/0.0.0dev0
+          breeze release-management generate-issue-content-helm-chart 
--limit-pr-count 10
+          --latest --verbose
       - name: "Upload Helm artifacts"
         uses: actions/upload-artifact@v4
         with:
diff --git 
a/dev/breeze/doc/images/output_release-management_generate-issue-content-helm-chart.svg
 
b/dev/breeze/doc/images/output_release-management_generate-issue-content-helm-chart.svg
index 9cb4c5c6db..83d3bf3d73 100644
--- 
a/dev/breeze/doc/images/output_release-management_generate-issue-content-helm-chart.svg
+++ 
b/dev/breeze/doc/images/output_release-management_generate-issue-content-helm-chart.svg
@@ -1,4 +1,4 @@
-<svg class="rich-terminal" viewBox="0 0 1482 513.5999999999999" 
xmlns="http://www.w3.org/2000/svg";>
+<svg class="rich-terminal" viewBox="0 0 1482 538.0" 
xmlns="http://www.w3.org/2000/svg";>
     <!-- Generated with Rich https://www.textualize.io -->
     <style>
 
@@ -38,14 +38,12 @@
 .breeze-release-management-generate-issue-content-helm-chart-r4 { fill: 
#68a0b3;font-weight: bold }
 .breeze-release-management-generate-issue-content-helm-chart-r5 { fill: 
#868887 }
 .breeze-release-management-generate-issue-content-helm-chart-r6 { fill: 
#8d7b39 }
-.breeze-release-management-generate-issue-content-helm-chart-r7 { fill: 
#cc555a }
-.breeze-release-management-generate-issue-content-helm-chart-r8 { fill: 
#8a4346 }
-.breeze-release-management-generate-issue-content-helm-chart-r9 { fill: 
#98a84b;font-weight: bold }
+.breeze-release-management-generate-issue-content-helm-chart-r7 { fill: 
#98a84b;font-weight: bold }
     </style>
 
     <defs>
     <clipPath 
id="breeze-release-management-generate-issue-content-helm-chart-clip-terminal">
-      <rect x="0" y="0" width="1463.0" height="462.59999999999997" />
+      <rect x="0" y="0" width="1463.0" height="487.0" />
     </clipPath>
     <clipPath 
id="breeze-release-management-generate-issue-content-helm-chart-line-0">
     <rect x="0" y="1.5" width="1464" height="24.65"/>
@@ -101,9 +99,12 @@
 <clipPath 
id="breeze-release-management-generate-issue-content-helm-chart-line-17">
     <rect x="0" y="416.3" width="1464" height="24.65"/>
             </clipPath>
+<clipPath 
id="breeze-release-management-generate-issue-content-helm-chart-line-18">
+    <rect x="0" y="440.7" 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="511.6" rx="8"/><text 
class="breeze-release-management-generate-issue-content-helm-chart-title" 
fill="#c5c8c6" text-anchor="middle" x="740" 
y="27">Command:&#160;release-management&#160;generate-issue-content-helm-chart</text>
+    <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" 
x="1" y="1" width="1480" height="536" rx="8"/><text 
class="breeze-release-management-generate-issue-content-helm-chart-title" 
fill="#c5c8c6" text-anchor="middle" x="740" 
y="27">Command:&#160;release-management&#160;generate-issue-content-helm-chart</text>
             <g transform="translate(26,22)">
             <circle cx="0" cy="0" r="7" fill="#ff5f57"/>
             <circle cx="22" cy="0" r="7" fill="#febc2e"/>
@@ -119,19 +120,20 @@
 </text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r1" x="12.2" 
y="93.2" textLength="719.8" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-3)">Generates&#160;content&#160;for&#160;issue&#160;to&#160;test&#160;the&#160;helm&#160;chart&#160;release.</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r1" 
x="1464" y="93.2" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-conte [...]
 </text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r1" x="1464" 
y="117.6" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-4)">
 </text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="142" textLength="24.4" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-5)">╭─</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r5" 
x="24.4" y="142" textLength="268.4" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-5)">&#160;Generate&#160;issue&#160;flags&#160;</text><text
 class="breeze-release-managem [...]
-</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="166.4" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-6)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r4" x="61" 
y="166.4" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-6)">-</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r4" [...]
-</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="190.8" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-7)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r1" 
x="329.4" y="190.8" textLength="1110.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-7)">variable&#160;set.&#160;Can&#160;be&#160;generated&#160;with:&#160;&#160;&#160;
 [...]
-</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="215.2" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-8)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r1" 
x="329.4" y="215.2" textLength="1110.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-8)">https://github.com/settings/tokens/new?description=Read%20sssues&amp;scopes=rep
 [...]
-</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="239.6" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-9)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r6" 
x="329.4" y="239.6" textLength="1110.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-9)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&
 [...]
-</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="264" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-10)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r7" 
x="24.4" y="264" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-10)">*</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r4" [...]
-</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="288.4" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-11)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r7" 
x="24.4" y="288.4" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-11)">*</text><text
 class="breeze-release-management-generate-issue-content-helm-chart [...]
-</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="312.8" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-12)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r4" x="61" 
y="312.8" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-12)">-</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r [...]
-</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="337.2" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-13)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r4" x="61" 
y="337.2" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-13)">-</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r [...]
-</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="361.6" textLength="1464" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-14)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r1" 
x="1464" y="361.6" textLength="12.2" 
clip-path="url(#breeze-release-management-gener [...]
-</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="386" textLength="24.4" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-15)">╭─</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r5" 
x="24.4" y="386" textLength="195.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-15)">&#160;Common&#160;options&#160;</text><text
 class="breeze-release-management-gener [...]
-</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="410.4" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-16)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r4" 
x="24.4" y="410.4" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-16)">-</text><text
 class="breeze-release-management-generate-issue-content-helm-chart [...]
-</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="434.8" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-17)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r4" 
x="24.4" y="434.8" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-17)">-</text><text
 class="breeze-release-management-generate-issue-content-helm-chart [...]
-</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="459.2" textLength="1464" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-18)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r1" 
x="1464" y="459.2" textLength="12.2" 
clip-path="url(#breeze-release-management-gener [...]
+</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="166.4" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-6)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r4" 
x="24.4" y="166.4" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-6)">-</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r [...]
+</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="190.8" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-7)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r1" 
x="292.8" y="190.8" textLength="1146.8" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-7)">set.&#160;Can&#160;be&#160;generated&#160;with:&#160;&#160;&#160;&#160;&#160;&#
 [...]
+</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="215.2" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-8)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r1" 
x="292.8" y="215.2" textLength="1146.8" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-8)">https://github.com/settings/tokens/new?description=Read%20sssues&amp;scopes=rep
 [...]
+</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="239.6" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-9)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r6" 
x="292.8" y="239.6" textLength="1146.8" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-9)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&
 [...]
+</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="264" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-10)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r4" 
x="24.4" y="264" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-10)">-</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r4" [...]
+</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="288.4" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-11)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r4" 
x="24.4" y="288.4" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-11)">-</text><text
 class="breeze-release-management-generate-issue-content-helm-chart [...]
+</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="312.8" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-12)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r4" 
x="24.4" y="312.8" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-12)">-</text><text
 class="breeze-release-management-generate-issue-content-helm-chart [...]
+</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="337.2" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-13)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r4" 
x="24.4" y="337.2" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-13)">-</text><text
 class="breeze-release-management-generate-issue-content-helm-chart [...]
+</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="361.6" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-14)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r4" 
x="24.4" y="361.6" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-14)">-</text><text
 class="breeze-release-management-generate-issue-content-helm-chart [...]
+</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="386" textLength="1464" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-15)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r1" 
x="1464" y="386" textLength="12.2" 
clip-path="url(#breeze-release-management-generate- [...]
+</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="410.4" textLength="24.4" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-16)">╭─</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r5" 
x="24.4" y="410.4" textLength="195.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-16)">&#160;Common&#160;options&#160;</text><text
 class="breeze-release-management-g [...]
+</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="434.8" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-17)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r4" 
x="24.4" y="434.8" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-17)">-</text><text
 class="breeze-release-management-generate-issue-content-helm-chart [...]
+</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="459.2" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-18)">│</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r4" 
x="24.4" y="459.2" textLength="12.2" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-18)">-</text><text
 class="breeze-release-management-generate-issue-content-helm-chart [...]
+</text><text 
class="breeze-release-management-generate-issue-content-helm-chart-r5" x="0" 
y="483.6" textLength="1464" 
clip-path="url(#breeze-release-management-generate-issue-content-helm-chart-line-19)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-generate-issue-content-helm-chart-r1" 
x="1464" y="483.6" textLength="12.2" 
clip-path="url(#breeze-release-management-gener [...]
 </text>
     </g>
     </g>
diff --git 
a/dev/breeze/doc/images/output_release-management_generate-issue-content-helm-chart.txt
 
b/dev/breeze/doc/images/output_release-management_generate-issue-content-helm-chart.txt
index e9b6a70e80..20d87ba8df 100644
--- 
a/dev/breeze/doc/images/output_release-management_generate-issue-content-helm-chart.txt
+++ 
b/dev/breeze/doc/images/output_release-management_generate-issue-content-helm-chart.txt
@@ -1 +1 @@
-66451b1e0d4897113e3763e04d73b65e
+3e0e080fa8422853ed7df3967725b35f
diff --git 
a/dev/breeze/src/airflow_breeze/commands/release_management_commands.py 
b/dev/breeze/src/airflow_breeze/commands/release_management_commands.py
index b714c01103..11e062252e 100644
--- a/dev/breeze/src/airflow_breeze/commands/release_management_commands.py
+++ b/dev/breeze/src/airflow_breeze/commands/release_management_commands.py
@@ -155,6 +155,7 @@ from airflow_breeze.utils.run_utils import (
     run_command,
 )
 from airflow_breeze.utils.shared_options import get_dry_run, get_verbose
+from airflow_breeze.utils.version_utils import get_latest_airflow_version, 
get_latest_helm_chart_version
 from airflow_breeze.utils.versions import is_pre_release
 from airflow_breeze.utils.virtualenv_utils import create_pip_command, 
create_venv
 
@@ -2290,13 +2291,11 @@ def print_issue_content(
 @click.option(
     "--previous-release",
     type=str,
-    required=True,
     help="commit reference (for example hash or tag) of the previous release.",
 )
 @click.option(
     "--current-release",
     type=str,
-    required=True,
     help="commit reference (for example hash or tag) of the current release.",
 )
 @click.option("--excluded-pr-list", type=str, help="Coma-separated list of PRs 
to exclude from the issue.")
@@ -2306,6 +2305,11 @@ def print_issue_content(
     default=None,
     help="Limit PR count processes (useful for testing small subset of PRs).",
 )
+@click.option(
+    "--latest",
+    is_flag=True,
+    help="Run the command against latest released version of airflow helm 
charts",
+)
 @option_verbose
 def generate_issue_content_helm_chart(
     github_token: str,
@@ -2313,6 +2317,7 @@ def generate_issue_content_helm_chart(
     current_release: str,
     excluded_pr_list: str,
     limit_pr_count: int | None,
+    latest: bool,
 ):
     generate_issue_content(
         github_token,
@@ -2321,7 +2326,7 @@ def generate_issue_content_helm_chart(
         excluded_pr_list,
         limit_pr_count,
         is_helm_chart=True,
-        latest=False,
+        latest=latest,
     )
 
 
@@ -3264,18 +3269,25 @@ def generate_issue_content(
     current = current_release
 
     if latest:
-        import requests
-
-        response = requests.get("https://pypi.org/pypi/apache-airflow/json";)
-        response.raise_for_status()
-        latest_released_version = response.json()["info"]["version"]
-        previous = str(latest_released_version)
-        current = os.getenv("VERSION", "HEAD")
-        if current == "HEAD":
-            get_console().print(
-                "\n[warning]Environment variable VERSION not set, setting 
current release "
-                "version as 'HEAD'\n"
-            )
+        if is_helm_chart:
+            latest_helm_version = get_latest_helm_chart_version()
+            get_console().print(f"\n[info] Latest stable version of helm chart 
is {latest_helm_version}\n")
+            previous = f"helm-chart/{latest_helm_version}"
+            current = os.getenv("VERSION", "HEAD")
+            if current == "HEAD":
+                get_console().print(
+                    "\n[warning]Environment variable VERSION not set, setting 
current release "
+                    "version as 'HEAD' for helm chart release\n"
+                )
+        else:
+            latest_airflow_version = get_latest_airflow_version()
+            previous = str(latest_airflow_version)
+            current = os.getenv("VERSION", "HEAD")
+            if current == "HEAD":
+                get_console().print(
+                    "\n[warning]Environment variable VERSION not set, setting 
current release "
+                    "version as 'HEAD'\n"
+                )
 
     changes = get_changes(verbose, previous, current, is_helm_chart)
     change_prs = [change.pr for change in changes]
@@ -3342,4 +3354,4 @@ def generate_issue_content(
                 users[pr_number].add(linked_issue.user.login)
             progress.advance(task)
 
-    print_issue_content(current_release, pull_requests, linked_issues, users, 
is_helm_chart)
+    print_issue_content(current, pull_requests, linked_issues, users, 
is_helm_chart)
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 97df6a7740..4013476737 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
@@ -113,6 +113,7 @@ RELEASE_MANAGEMENT_PARAMETERS: dict[str, list[dict[str, str 
| list[str]]]] = {
                 "--current-release",
                 "--excluded-pr-list",
                 "--limit-pr-count",
+                "--latest",
             ],
         }
     ],
diff --git a/dev/breeze/src/airflow_breeze/utils/version_utils.py 
b/dev/breeze/src/airflow_breeze/utils/version_utils.py
new file mode 100644
index 0000000000..7b41fa46bd
--- /dev/null
+++ b/dev/breeze/src/airflow_breeze/utils/version_utils.py
@@ -0,0 +1,37 @@
+# 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.
+from __future__ import annotations
+
+
+def get_latest_helm_chart_version():
+    import requests
+
+    response = 
requests.get("https://airflow.apache.org/_gen/packages-metadata.json";)
+    data = response.json()
+    for package in data:
+        if package["package-name"] == "helm-chart":
+            stable_version = package["stable-version"]
+            return stable_version
+
+
+def get_latest_airflow_version():
+    import requests
+
+    response = requests.get("https://pypi.org/pypi/apache-airflow/json";)
+    response.raise_for_status()
+    latest_released_version = response.json()["info"]["version"]
+    return latest_released_version

Reply via email to