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

potiuk pushed a commit to branch v2-3-test
in repository https://gitbox.apache.org/repos/asf/airflow.git

commit 0c106a47d0ce378abb6216981b99e05836d2dfb4
Author: Jarek Potiuk <[email protected]>
AuthorDate: Thu Jun 16 10:50:19 2022 +0200

    Improve production image release workflow (#24481)
    
    Few improvements:
    
    * direct link to workflow in the docs
    * "green" success screenshots (separate screenshot for rc)
    * job and step names contain both Airflow version and python version
    * running subsequent build with same version will cancel past
      in-progress build (in case you quickly make constraint fis for
      example and re-run)
    
    (cherry picked from commit 8ad18bf02924d1677502231e678951bc5b8cb420)
---
 .github/workflows/release_dockerhub_image.yml |  13 +++++++++----
 dev/README_RELEASE_AIRFLOW.md                 |  18 +++++++++---------
 dev/images/release_prod_image.png             | Bin 112569 -> 76309 bytes
 dev/images/release_prod_image_rc.png          | Bin 0 -> 65816 bytes
 4 files changed, 18 insertions(+), 13 deletions(-)

diff --git a/.github/workflows/release_dockerhub_image.yml 
b/.github/workflows/release_dockerhub_image.yml
index bd9fdaec1e..a6c3e86ddd 100644
--- a/.github/workflows/release_dockerhub_image.yml
+++ b/.github/workflows/release_dockerhub_image.yml
@@ -16,7 +16,7 @@
 # under the License.
 #
 ---
-name: "Release PROD image"
+name: "Release PROD images"
 on:  # yamllint disable-line rule:truthy
   workflow_dispatch:
     inputs:
@@ -27,6 +27,9 @@ on:  # yamllint disable-line rule:truthy
         description: 'Skip Latest: Set to true if not latest.'
         default: ''
         required: false
+concurrency:
+  group: ${{ github.event.inputs.airflowVersion }}
+  cancel-in-progress: true
 jobs:
   build-info:
     timeout-minutes: 10
@@ -53,7 +56,7 @@ jobs:
         run: ./scripts/ci/selective_ci_checks.sh
   release-images:
     timeout-minutes: 120
-    name: "Release images"
+    name: "Release images: ${{ github.event.inputs.airflowVersion }}, ${{ 
matrix.python-version }}"
     runs-on: ${{ github.repository == 'apache/airflow' && 'self-hosted' || 
'ubuntu-20.04' }}
     needs: [build-info]
     strategy:
@@ -98,7 +101,8 @@ jobs:
         run: >
           echo ${{ secrets.DOCKERHUB_TOKEN }} |
           docker login --password-stdin --username ${{ secrets.DOCKERHUB_USER 
}}
-      - name: "Release regular images"
+      - name: >
+          Release regular images: ${{ github.event.inputs.airflowVersion }}, 
${{ matrix.python-version }}
         run: >
           breeze release-prod-images
           --dockerhub-repo ${{ github.repository }}
@@ -106,7 +110,8 @@ jobs:
           ${{ needs.build-info.outputs.skipLatest }}
           ${{ needs.build-info.outputs.limitPlatform }}
           --limit-python ${{ matrix.python-version }}
-      - name: "Release slim images"
+      - name: >
+          Release slim images: ${{ github.event.inputs.airflowVersion }}, ${{ 
matrix.python-version }}
         run: >
           breeze release-prod-images
           --dockerhub-repo ${{ github.repository }}
diff --git a/dev/README_RELEASE_AIRFLOW.md b/dev/README_RELEASE_AIRFLOW.md
index 3d242ff9d4..98f3062134 100644
--- a/dev/README_RELEASE_AIRFLOW.md
+++ b/dev/README_RELEASE_AIRFLOW.md
@@ -27,7 +27,7 @@
   - [Build RC artifacts](#build-rc-artifacts)
   - [[\Optional\] Prepare new release branches and 
cache](#%5Coptional%5C-prepare-new-release-branches-and-cache)
   - [Prepare PyPI convenience "snapshot" 
packages](#prepare-pypi-convenience-snapshot-packages)
-  - [Prepare production Docker Image](#prepare-production-docker-image)
+  - [Prepare production Docker Image RC](#prepare-production-docker-image-rc)
   - [Prepare issue for testing status of 
rc](#prepare-issue-for-testing-status-of-rc)
   - [Prepare Vote email on the Apache Airflow release 
candidate](#prepare-vote-email-on-the-apache-airflow-release-candidate)
 - [Verify the release candidate by PMCs](#verify-the-release-candidate-by-pmcs)
@@ -486,7 +486,7 @@ is not supposed to be used by and advertised to the 
end-users who do not read th
     git push origin tag ${VERSION}
     ```
 
-## Prepare production Docker Image
+## Prepare production Docker Image RC
 
 Production Docker images should be manually prepared and pushed by the release 
manager or another committer
 who has access to Airflow's DockerHub. Note that we started releasing a 
multi-platform build, so you need
@@ -496,15 +496,15 @@ to have an environment prepared to build multi-platform 
images. You can achieve
 * Emulation (very slow)
 * Hardware builders if you have both AMD64 and ARM64 hardware locally
 
-Building the image is triggered by running the `Release PROD image` workflow 
via
-[GitHub Actions](https://github.com/apache/airflow/actions).
+Building the image is triggered by running the
+[Release PROD 
Images](https://github.com/apache/airflow/actions/workflows/release_dockerhub_image.yml)
 workflow.
 
 When you trigger it you need to pass:
 
-* Airflow Version
-* Optional "true" in skip latest field if you do not want to retag the latest 
image
+* Airflow Version (including the right rc suffix)
+* Optional "true" in the "Skip latest:" field if you do not want to re-tag the 
latest image
 
-![Release prod image](images/release_prod_image.png)
+![Release prod image](images/release_prod_image_rc.png)
 
 The manual building is described in 
[MANUALLY_BUILDING_IMAGES.md](MANUALLY_BUILDING_IMAGES.md).
 
@@ -957,8 +957,8 @@ At this point we release an official package:
 
 ## Manually prepare production Docker Image
 
-Building the image is triggered by running the `Release PROD image` workflow 
via
-[GitHub Actions](https://github.com/apache/airflow/actions).
+Building the image is triggered by running the
+[Release PROD 
Images](https://github.com/apache/airflow/actions/workflows/release_dockerhub_image.yml)
 workflow.
 
 When you trigger it you need to pass:
 
diff --git a/dev/images/release_prod_image.png 
b/dev/images/release_prod_image.png
index 78f941a43b..50336e5194 100644
Binary files a/dev/images/release_prod_image.png and 
b/dev/images/release_prod_image.png differ
diff --git a/dev/images/release_prod_image_rc.png 
b/dev/images/release_prod_image_rc.png
new file mode 100644
index 0000000000..c88b1285c8
Binary files /dev/null and b/dev/images/release_prod_image_rc.png differ

Reply via email to