Skip to content

Commit

Permalink
Add triggering PR and Push workflows for provider branches
Browse files Browse the repository at this point in the history
With FAB 1.5.2 we have the first case where we need to build and
release providers for old MAJOR version. That requires `pull_request`
and `push` workflows to start when they are targetted against
`providers-*/v[VERSION]` branches.

The .asf.yaml is updated to make providers-fab/v1-5 protected and
documentation of provider's lifecycle is updated to explain how
we work with releasing past versions of providers.
  • Loading branch information
potiuk committed Dec 22, 2024
1 parent 1796c40 commit 7147e52
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 2 deletions.
5 changes: 5 additions & 0 deletions .asf.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,11 @@ github:
required_approving_review_count: 1
required_linear_history: true
required_conversation_resolution: true
providers-fab/v1-5:
required_pull_request_reviews:
required_approving_review_count: 1
required_linear_history: true
required_conversation_resolution: true
collaborators:
# Max 10 collaborators allowed
# https://github.com/apache/infrastructure-asfyaml/blob/main/README.md#assigning-the-github-triage-role-to-external-collaborators
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,9 @@ on: # yamllint disable-line rule:truthy
schedule:
- cron: '28 1,7,13,19 * * *'
push:
branches: ['v[0-9]+-[0-9]+-test']
branches: ['v[0-9]+-[0-9]+-test', 'providers-*/v[0-9]+-[0-9]+]']
pull_request:
branches: ['main', 'v[0-9]+-[0-9]+-test', 'v[0-9]+-[0-9]+-stable']
branches: ['main', 'v[0-9]+-[0-9]+-test', 'v[0-9]+-[0-9]+-stable', 'providers-*/v[0-9]+-[0-9]+']
workflow_dispatch:
permissions:
# All other permissions are set to none
Expand Down
12 changes: 12 additions & 0 deletions providers/src/airflow/providers/MANAGING_PROVIDERS_LIFECYCLE.rst
Original file line number Diff line number Diff line change
Expand Up @@ -471,6 +471,18 @@ considered by the release management commands.

As soon as the provider is released, you should update the provider to ``state: ready``.

Releasing providers for past releases
=====================================

Sometimes we might want to release provider for previous MAJOR when new release is already
released (or bumped in main). This is done by releasing them from ``providers-<PROVIDER>/vX-Y`` branch
- for example ``providers-fab/v1-5`` can be used to release the ``1.5.2`` when ``2.0.0`` is already being
released or voted on.

The release process looks like usual, the only difference is that the specific branch is used to release
the provider and update all documentation, the changes and cherry-picking should be targeting that
branch.

Suspending providers
====================

Expand Down

0 comments on commit 7147e52

Please sign in to comment.