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 f0ec450c8eb Set rc0 as suffix used for chicken-egg-providers (#49387)
f0ec450c8eb is described below

commit f0ec450c8eb6adbe0124ad4e8fa17dcaea81018d
Author: Jarek Potiuk <ja...@potiuk.com>
AuthorDate: Thu Apr 17 10:51:15 2025 +0200

    Set rc0 as suffix used for chicken-egg-providers (#49387)
    
    Learning from yesterday frantic attempts to relase Airflow 3.0.0rc3
    with some providers that were changed mid-flight, this is the last
    step to make both regular release in main (with dev0) and the
    dockerhub release (with rc0) works.
    
    The way how it works:
    
    * after #49373 we are flooring >= dependencies for all airflow
      distributions to >= XX0 (where XX might be dev or rc)
    
    * we are building all chicken-egg-providers with rc0 suffix now.
      for example fab 2.0.1 will be locally built as 2.0.1rc0, git
      0.0.2 will be built as 0.0.2rc0. Both will have apache-airflow
      >= 3.0.0rc0 as dependency. Similarly common.messaging that is
      already released as 1.0.0 will be locally build as 1.0.0rc0 as
      it is still chicken-egg-provider until we release Airflow 3.0.0.
      if it is already released as 1.0.0rc0, we will skip building it
      locally and use PyPI version.
    
    This should work in all cases:
    
    * when we already released final version (common.messaging), we
      are going to have locally built common.messaging 1.0.0rc0 which
      will have apache-airflow>=3.0.0rc0. The 1.0.0 of common.messaging
      from PyPI cannot be used because it has apache-airflow>=3.0.0.
      Airlfow 3.0.0rc0 wil be built with common.messaging >= 1.0.0rc0
      so all requirements will be satisfied.
    
    * when we have not yet released chicken-egg-provider such as git 0.0.2)
      we will locally build 0.0.2rc0 (unless it is already released) and
      use this one locally. Airflow will use git >= 0.0.2rc0 if min version
      is set to 0.0.2.
    
    * In case such provider (git 0.0.2) has been released already as rc0, it
      will be skipped automatically when building it and we will use `PyPI`
      version instead
---
 .github/workflows/release_dockerhub_image.yml | 12 +++---------
 1 file changed, 3 insertions(+), 9 deletions(-)

diff --git a/.github/workflows/release_dockerhub_image.yml 
b/.github/workflows/release_dockerhub_image.yml
index 7f83b7274c6..0afeb8e143e 100644
--- a/.github/workflows/release_dockerhub_image.yml
+++ b/.github/workflows/release_dockerhub_image.yml
@@ -27,11 +27,6 @@ on:  # yamllint disable-line rule:truthy
         description: 'Skip Latest: Set to true if not latest.'
         default: ''
         required: false
-      includePreRelease:
-        description: 'Include pre-release: Set to true to include 
pre-releases.'
-        default: ''
-        type: boolean
-        required: false
 permissions:
   contents: read
   packages: read
@@ -52,7 +47,6 @@ jobs:
       defaultPythonVersion: ${{ 
steps.selective-checks.outputs.default-python-version }}
       chicken-egg-providers: ${{ 
steps.selective-checks.outputs.chicken-egg-providers }}
       skipLatest: ${{ github.event.inputs.skipLatest == '' && ' ' || 
'--skip-latest' }}
-      includePreRelease: ${{ github.event.inputs.includePreRelease == '' && ' 
' || '--include-pre-release' }}
       limitPlatform: ${{ github.repository == 'apache/airflow' && ' ' || 
'--limit-platform linux/amd64' }}
     env:
       GITHUB_CONTEXT: ${{ toJson(github) }}
@@ -151,16 +145,16 @@ jobs:
       - name: "Create airflow_cache builder"
         run: docker buildx create --name airflow_cache
       - name: "Prepare chicken-eggs provider distributions"
-        # In case of provider distributions which use latest dev0 version of 
providers, we should prepare them
+        # In case of provider distributions which use latest r00 version of 
providers, we should prepare them
         # from the source code, not from the PyPI because they have 
apache-airflow>=X.Y.Z dependency
-        # And when we prepare them from sources they will have 
apache-airflow>=X.Y.Z.dev0
+        # And when we prepare them from sources they will have 
apache-airflow>=X.Y.Z.rc0
         shell: bash
         env:
           CHICKEN_EGG_PROVIDERS: ${{ 
needs.build-info.outputs.chicken-egg-providers }}
         run: >
           breeze release-management prepare-provider-distributions
           --distribution-format wheel
-          --version-suffix-for-pypi dev0 ${CHICKEN_EGG_PROVIDERS}
+          --version-suffix-for-pypi rc0 ${CHICKEN_EGG_PROVIDERS}
         if: needs.build-info.outputs.chicken-egg-providers != ''
       - name: "Copy dist packages to docker-context files"
         shell: bash

Reply via email to