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

pierrejeambrun 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 bc80313a98 Explicit a few steps in the release process (#29098)
bc80313a98 is described below

commit bc80313a98e304196795c310db6d842f14031c61
Author: Pierre Jeambrun <[email protected]>
AuthorDate: Sun Jan 29 15:30:24 2023 +0100

    Explicit a few steps in the release process (#29098)
    
    * Update the release process.
    
    * Fix conflics, small update
    
    * Update go release process link with the newly added resource
---
 dev/README_RELEASE_AIRFLOW.md                      | 49 ++++++++++++----------
 .../commands/release_candidate_command.py          |  2 +
 2 files changed, 29 insertions(+), 22 deletions(-)

diff --git a/dev/README_RELEASE_AIRFLOW.md b/dev/README_RELEASE_AIRFLOW.md
index f4eb79a437..a98a25cc27 100644
--- a/dev/README_RELEASE_AIRFLOW.md
+++ b/dev/README_RELEASE_AIRFLOW.md
@@ -22,6 +22,7 @@
 
 - [Selecting what to put into the 
release](#selecting-what-to-put-into-the-release)
   - [Selecting what to cherry-pick](#selecting-what-to-cherry-pick)
+  - [Making the cherry picking](#making-the-cherry-picking)
   - [Reviewing cherry-picked PRs and assigning 
labels](#reviewing-cherry-picked-prs-and-assigning-labels)
 - [Prepare the Apache Airflow Package 
RC](#prepare-the-apache-airflow-package-rc)
   - [Update the milestone](#update-the-milestone)
@@ -92,7 +93,7 @@ and mark those as well. You can accomplish this by running 
the following command
 
 Often you also want to cherry-pick changes related to CI and development 
tools, to include the latest
 stability fixes in CI and improvements in development tools. Usually you can 
see the list of such
-changes via (this will exclude already merged changes:
+changes via (this will exclude already merged changes):
 
 ```shell
 git fetch apache
@@ -116,8 +117,25 @@ git log --oneline --decorate 
apache/v2-2-stable..apache/main -- docs/apache-airf
 Those changes that are "doc-only" changes should be marked with 
`type:doc-only` label so that they
 land in documentation part of the changelog. The tool to review and assign the 
labels is described below.
 
+## Making the cherry picking
+
+To see cherry picking candidates (unmerged PR with the appropriate milestone) 
you can run:
+
+```shell
+./dev/airflow-github compare 2.1.2 --unmerged
+```
+
+Be careful and verify the hash commit specified. This is a 'best effort' to 
find it, and
+could be inaccurate if the PR was referenced in other commits after it was 
merged. You can start
+cherry picking from the bottom of the list. (older commits first)
+
 When you cherry-pick, pick in chronological order onto the `vX-Y-test` release 
branch.
-You'll move them over to be on `vX-Y-stable` once the release is cut.
+You'll move them over to be on `vX-Y-stable` once the release is cut. Use the 
`-x` option
+to keep a reference to the original commit we cherry picked from. ("cherry 
picked from commit ...")
+
+```shell
+git cherry-pick <hash-commit> -x
+```
 
 ## Reviewing cherry-picked PRs and assigning labels
 
@@ -138,7 +156,7 @@ You can also add `--skip-assigned` flag if you want to 
automatically skip the qu
 for the PRs that are already correctly assigned to the milestone. You can also 
avoid the "Are you OK?"
 question with `--assume-yes` flag.
 
-You cn review the list of PRs cherry-picked and produce a nice summary with 
`--print-summary` (this flag
+You can review the list of PRs cherry-picked and produce a nice summary with 
`--print-summary` (this flag
 assumes the `--skip-assigned` flag, so that the summary can be produced 
without questions:
 
 ```shell
@@ -215,7 +233,7 @@ The Release Candidate artifacts we vote upon should be the 
exact ones we vote ag
     pipx install -e ./dev/breeze
     ```
 
-- For major/minor version release,run the following commands to create the 
'test' and 'stable' branches.
+- For major/minor version release, run the following commands to create the 
'test' and 'stable' branches.
 
     ```shell script
     breeze release-management create-minor-branch --version-branch 
${VERSION_BRANCH}
@@ -307,19 +325,11 @@ tied to an airflow release and therefore out of scope.
 
 If API clients are to be released in this airflow version:
 
-- Set environment variables (useful for the rest of the process)
-
-    ```shell script
-    # Set Version
-    export GO_API_CLIENT_VERSION=2.1.3
-    export PYTHON_API_CLIENT_VERSION=2.1.1
-    ```
-
-- Follow the specific release process of each API client to generate the 
artifacts and push to PyPI a
+- Follow the specific release process for each API client to generate the 
artifacts and push to PyPI a
     release candidate client package:
 
-    - [Python 
client](https://github.com/apache/airflow-client-python#release-process)
-    - [Go client](https://github.com/apache/airflow-client-go#release-process)
+    - [Python 
client](https://github.com/apache/airflow-client-python/blob/master/dev/README_RELEASE_CLIENT.md)
+    - [Go 
client](https://github.com/apache/airflow-client-go/blob/master/dev/README_RELEASE_CLIENT.md)
 
 
 ## Prepare issue for testing status of rc
@@ -386,11 +396,6 @@ https://dist.apache.org/repos/dist/dev/airflow/$VERSION/
 Public keys are available at:
 https://dist.apache.org/repos/dist/release/airflow/KEYS
 
-TODO:REMOVE PARAGRAPH IF NOT RELEVANT
-New API clients were generated:
-- Python ${PYTHON_API_CLIENT_VERSION}
-- GO ${GO_API_CLIENT_VERSION}
-
 Please vote accordingly:
 
 [ ] +1 approve
@@ -750,7 +755,7 @@ Documentation for providers can be found in the 
``/docs/apache-airflow`` directo
     ./docs/start_doc_server.sh
     ```
 
-- Copy the documentation to the ``airflow-site`` repository, create commit, 
push changes and open a PR.
+- Copy the documentation to the ``airflow-site`` repository, create commit, 
push changes, open a PR and merge it when the build is green.
 
     ```shell script
     ./docs/publish_docs.py --package-filter apache-airflow --package-filter 
docker-stack
@@ -882,7 +887,7 @@ Update the values of `airflowVersion`, `defaultAirflowTag` 
and `appVersion` in t
 will use the latest released version. You'll need to update 
`chart/values.yaml`, `chart/values.schema.json` and
 `chart/Chart.yaml`.
 
-Also add a note to `UPDATING.rst` that the default version of Airflow has 
changed.
+Add or adjust significant `chart/newsfragments` to express that the default 
version of Airflow has changed.
 
 In `chart/Chart.yaml`, make sure the screenshot annotations are still all 
valid URLs.
 
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 d1f0ed8fdd..d22f6a1e93 100644
--- a/dev/breeze/src/airflow_breeze/commands/release_candidate_command.py
+++ b/dev/breeze/src/airflow_breeze/commands/release_candidate_command.py
@@ -198,6 +198,8 @@ def push_packages_to_test_pypi():
             "Verify that the test package looks good by downloading it and 
installing it into a virtual "
             "environment. The package download link is available at: "
             "https://test.pypi.org/project/apache-airflow/#files";
+            "Install it with the appropriate constraint file, for instance: "
+            "pip install <download_link> --constraint 
https://raw.githubusercontent.com/apache/airflow/constraints-2.2.1rc1/constraints-3.8.txt";
  # noqa: 501
         )
 
 

Reply via email to