From f6b703f1b657a51492b74bd28af89ddd91d1ad14 Mon Sep 17 00:00:00 2001 From: Shahar Epstein <60007259+shahar1@users.noreply.github.com> Date: Tue, 30 Jun 2026 16:33:57 +0300 Subject: [PATCH] [v3-3-test] Gate provider release on artifact completeness check before vote (#69141) A recent ad-hoc provider release reached the vote thread missing the all-providers -source.tar.gz tarball, drawing a -1. The completeness check that catches this already exists as a PMC-reviewer step but the release-manager flow never ran it, so the gap only surfaced after the vote email went out. Run the same check right after the SVN commit so a missing artifact fails for the release manager first. (cherry picked from commit b176ec91dc543338079d92b6697eb59a1520e69b) Co-authored-by: Shahar Epstein <60007259+shahar1@users.noreply.github.com> --- dev/README_RELEASE_PROVIDERS.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/dev/README_RELEASE_PROVIDERS.md b/dev/README_RELEASE_PROVIDERS.md index d958fc68a0857..7a95c062dd1e9 100644 --- a/dev/README_RELEASE_PROVIDERS.md +++ b/dev/README_RELEASE_PROVIDERS.md @@ -592,6 +592,20 @@ svn commit -m "Add artifacts for Airflow Providers ${RELEASE_DATE}" cd "$AIRFLOW_REPO_ROOT" ``` +* Before sending the vote email, gate on the same completeness check the PMC verifiers run, so a + missing artifact (e.g. the `-source.tar.gz` tarball) fails here instead of in the vote thread. + Put the package list from the upcoming vote email into `dev/packages.txt`, then run: + +```shell script +cd "$AIRFLOW_REPO_ROOT" +breeze release-management check-release-files providers --release-date "${RELEASE_DATE}" \ + --packages-file ./dev/packages.txt \ + --path-to-airflow-svn "$(cd ../asf-dist/dev/airflow && pwd -P)" +``` + + It exits non-zero and lists every missing file (including `.asc`/`.sha512` variants) if anything is + absent. Only proceed to the vote once it prints `All expected files are present!`. + Verify that the files are available in the ${RELEASE_DATE} folder under [providers](https://dist.apache.org/repos/dist/dev/airflow/providers/)