Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions .github/.pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
---
default_stages: [manual]
default_language_version:
python: python311
minimum_pre_commit_version: '3.2.0'
repos:
- repo: https://github.com/eclipse-csi/octopin
rev: 21360742e352e87450f99e180fdfc2cf774a72a3
hooks:
- id: pin-versions
name: Pin versions of dependencies in CI workflows (manual)
stages: ['manual']
22 changes: 19 additions & 3 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@

# API
/airflow-core/src/airflow/api/ @ephraimbuddy @pierrejeambrun @rawwar @jason810496
/airflow-core/src/airflow/api_fastapi/ @ephraimbuddy @pierrejeambrun @rawwar @jason810496 @bugraoz93
/airflow-core/src/airflow/api_fastapi/ @ephraimbuddy @pierrejeambrun @rawwar @jason810496 @bugraoz93 @shubhamraj-git
/airflow-core/src/airflow/api_fastapi/execution_api/ @ashb @kaxil @amoghrajesh

# Airflow CTL
Expand All @@ -33,7 +33,18 @@
/airflow-core/src/airflow/api_fastapi/auth/ @vincbeck

# UI
/airflow-core/src/airflow/ui/ @bbovenzi @pierrejeambrun @ryanahamilton @jscheffl
/airflow-core/src/airflow/ui/ @bbovenzi @pierrejeambrun @ryanahamilton @jscheffl @shubhamraj-git

# Translation Owners (i18n)
# Note: Non committer engaged translators are listed in comments prevent making file syntax invalid
# See: https://github.com/apache/airflow/blob/main/airflow-core/src/airflow/ui/public/i18n/README.md#43-engaged-translator
airflow-core/src/airflow/ui/public/i18n/locales/ar/ @shahar1 @hussein-awala # + @ahmadtfarhan
airflow-core/src/airflow/ui/public/i18n/locales/de/ @jscheffl # + @TJaniF @m1racoli
airflow-core/src/airflow/ui/public/i18n/locales/he/ @eladkal @shahar1 @romsharon98 # +@Dev-iL
airflow-core/src/airflow/ui/public/i18n/locales/nl/ @BasPH # + @DjVinnii
airflow-core/src/airflow/ui/public/i18n/locales/pl/ @potiuk @mobuchowski # + @kacpermuda
airflow-core/src/airflow/ui/public/i18n/locales/zh-TW/ @Lee-W @jason810496 # + @RoyLee1224 @guan404ming
airflow-core/src/airflow/ui/public/i18n/locales/fr/ @pierrejeambrun @vincbeck

# Security/Permissions
/airflow-core/src/airflow/security/permissions.py @vincbeck
Expand Down Expand Up @@ -69,6 +80,7 @@
/providers/edge3/ @jscheffl
/providers/fab/ @vincbeck
/providers/hashicorp/ @hussein-awala
/providers/keycloak/ @vincbeck
/providers/openlineage/ @mobuchowski
/providers/slack/ @eladkal
/providers/smtp/ @hussein-awala
Expand All @@ -77,7 +89,7 @@

# Dev tools
/.github/workflows/ @potiuk @ashb @gopidesupavan
/dev/ @potiuk @ashb @jedcunningham @gopidesupavan
/dev/ @potiuk @ashb @jedcunningham @gopidesupavan @amoghrajesh
/docker-tests/ @potiuk @ashb @gopidesupavan @jason810496
/kubernetes-tests/ @potiuk @ashb @gopidesupavan @jason810496
/helm-tests/ @dstandish @jedcunningham
Expand Down Expand Up @@ -109,4 +121,8 @@ ISSUE_TRIAGE_PROCESS.rst @eladkal
/providers/fab/src/airflow-core/src/airflow/providers/fab/migrations/ @ephraimbuddy

# AIP-72 - Task SDK
# Python SDK
/task-sdk/ @ashb @kaxil @amoghrajesh

# Golang SDK
/go-sdk/ @ashb @kaxil @amoghrajesh
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ body:
the latest release or main to see if the issue is fixed before reporting it.
multiple: false
options:
- "3.0.1"
- "3.0.2"
- "2.11.0"
- "main (development)"
- "Other Airflow 2 version (please specify below)"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ body:
- apache-pig
- apache-pinot
- apache-spark
- apache-tinkerpop
- apprise
- arangodb
- asana
Expand Down Expand Up @@ -75,6 +76,7 @@ body:
- influxdb
- jdbc
- jenkins
- keycloak
- microsoft-azure
- microsoft-mssql
- microsoft-psrp
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,8 @@ body:
What Apache Airflow Helm Chart version are you using?
multiple: false
options:
- "1.16.0 (latest released)"
- "1.17.0 (latest released)"
- "1.16.0"
- "1.15.0"
- "1.14.0"
- "1.13.1"
Expand Down
8 changes: 7 additions & 1 deletion .github/actions/install-pre-commit/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,16 @@ inputs:
default: "3.9"
uv-version:
description: 'uv version to use'
default: "0.7.8" # Keep this comment to allow automatic replacement of uv version
default: "0.7.14" # Keep this comment to allow automatic replacement of uv version
pre-commit-version:
description: 'pre-commit version to use'
default: "4.2.0" # Keep this comment to allow automatic replacement of pre-commit version
pre-commit-uv-version:
description: 'pre-commit-uv version to use'
default: "4.1.4" # Keep this comment to allow automatic replacement of pre-commit-uv version
skip-pre-commits:
description: "Skip some pre-commits from installation"
default: ""
runs:
using: "composite"
steps:
Expand All @@ -40,6 +43,7 @@ runs:
UV_VERSION: ${{inputs.uv-version}}
PRE_COMMIT_VERSION: ${{inputs.pre-commit-version}}
PRE_COMMIT_UV_VERSION: ${{inputs.pre-commit-uv-version}}
SKIP: ${{ inputs.skip-pre-commits }}
run: |
pip install uv==${UV_VERSION} || true
uv tool install pre-commit==${PRE_COMMIT_VERSION} --with uv==${UV_VERSION} \
Expand Down Expand Up @@ -86,3 +90,5 @@ runs:
shell: bash
run: pre-commit install-hooks || (cat ~/.cache/pre-commit/pre-commit.log && exit 1)
working-directory: ${{ github.workspace }}
env:
SKIP: ${{ inputs.skip-pre-commits }}
2 changes: 1 addition & 1 deletion .github/actions/post_tests_success/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ runs:
mkdir ./files/coverage-reports
mv ./files/coverage*.xml ./files/coverage-reports/ || true
- name: "Upload all coverage reports to codecov"
uses: codecov/codecov-action@b9fd7d16f6d7d1b5d2bec1a2887e65ceed900238 # v4
uses: codecov/codecov-action@b9fd7d16f6d7d1b5d2bec1a2887e65ceed900238
env:
CODECOV_TOKEN: ${{ inputs.codecov-token }}
if: env.ENABLE_COVERAGE == 'true' && env.TEST_TYPES != 'Helm' && inputs.python-version != '3.12'
Expand Down
34 changes: 30 additions & 4 deletions .github/boring-cyborg.yml
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,9 @@ labelPRBasedOnFilePath:
provider:apache-spark:
- providers/apache/spark/**

provider:apache-tinkerpop:
- providers/apache/tinkerpop/**

provider:apprise:
- providers/apprise/**

Expand Down Expand Up @@ -108,9 +111,6 @@ labelPRBasedOnFilePath:
provider:common-sql:
- providers/common/sql/**

provider:standard:
- providers/standard/**

provider:databricks:
- providers/databricks/**

Expand Down Expand Up @@ -216,7 +216,7 @@ labelPRBasedOnFilePath:
provider:opsgenie:
- providers/opsgenie/**

provider:Oracle:
provider:oracle:
- providers/oracle/**

provider:pagerduty:
Expand Down Expand Up @@ -276,6 +276,9 @@ labelPRBasedOnFilePath:
provider:ssh:
- providers/ssh/**

provider:standard:
- providers/standard/**

provider:tableau:
- providers/tableau/**

Expand Down Expand Up @@ -326,6 +329,24 @@ labelPRBasedOnFilePath:
- .rat-excludes
- .readthedocs.yml

# This should be copy of the "area:dev-tools" above and should be updated when we switch maintenance branch
backport-to-v3-0-test:
- scripts/**/*
- dev/**/*
- .github/**/*
- Dockerfile.ci
- CONTRIBUTING.rst
- contributing-docs/**/*
- yamllint-config.yml
- .asf.yaml
- .bash_completion
- .dockerignore
- .hadolint.yaml
- .pre-commit-config.yaml
- .rat-excludes
- .readthedocs.yml


kind:documentation:
- airflow-core/docs/**/*
- chart/docs/**/*
Expand Down Expand Up @@ -353,11 +374,16 @@ labelPRBasedOnFilePath:
- airflow-core/docs/administration-and-deployment/lineage.rst

area:Logging:
- airflow-core/src/airflow/config_templates/airflow_local_settings.py
- airflow-core/tests/unit/core/test_logging_config.py
- airflow-core/src/airflow/utils/log/**/*
- airflow-core/docs/administration-and-deployment/logging-monitoring/logging-*.rst
- airflow-core/tests/unit/utils/log/**/*
- providers/**/log/*

area:ConfigTemplates:
- airflow-core/src/airflow/config_templates/*

area:Plugins:
- airflow-core/src/airflow/cli/commands/plugins_command.py
- airflow-core/src/airflow/plugins_manager.py
Expand Down
17 changes: 13 additions & 4 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,14 +33,23 @@ updates:

- package-ecosystem: npm
directories:
- /airflow-core/src/airflow/api_fastapi/auth/managers/simple/ui
- /airflow-core/src/airflow/ui
schedule:
interval: daily
groups:
core-ui-package-updates:
patterns:
- "*"

- package-ecosystem: npm
directories:
- /airflow-core/src/airflow/api_fastapi/auth/managers/simple/ui
schedule:
interval: daily
groups:
core-ui-package-updates:
patterns:
- "*"
- package-ecosystem: npm
directories:
- /providers/fab/src/airflow/providers/fab/www
Expand All @@ -51,7 +60,7 @@ updates:
patterns:
- "*"

# Repeat dependency updates on 2.10 branch as well
# Repeat dependency updates on 2.11 branch as well
- package-ecosystem: pip
directories:
- /clients/python
Expand All @@ -60,14 +69,14 @@ updates:
- /
schedule:
interval: daily
target-branch: v2-10-test
target-branch: v2-11-test

- package-ecosystem: npm
directories:
- /airflow/www/
schedule:
interval: daily
target-branch: v2-10-test
target-branch: v2-11-test
groups:
core-ui-package-updates:
patterns:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/additional-ci-image-checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@ jobs:
shell: bash
run: docker run -v "${GITHUB_WORKSPACE}:/workspace" -u 0:0 bash -c "rm -rf /workspace/*"
- name: "Checkout ${{ github.ref }} ( ${{ github.sha }} )"
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
persist-credentials: false
- name: "Prepare and cleanup runner"
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/additional-prod-image-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ jobs:
shell: bash
run: docker run -v "${GITHUB_WORKSPACE}:/workspace" -u 0:0 bash -c "rm -rf /workspace/*"
- name: "Checkout ${{ github.ref }} ( ${{ github.sha }} )"
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 2
persist-credentials: false
Expand Down Expand Up @@ -144,7 +144,7 @@ jobs:
shell: bash
run: docker run -v "${GITHUB_WORKSPACE}:/workspace" -u 0:0 bash -c "rm -rf /workspace/*"
- name: "Checkout ${{ github.ref }} ( ${{ github.sha }} )"
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 2
persist-credentials: false
Expand Down
24 changes: 22 additions & 2 deletions .github/workflows/airflow-distributions-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,10 @@ on: # yamllint disable-line rule:truthy
description: "Whether this is a canary run (true/false)"
required: true
type: string
use-local-venv:
description: "Whether local venv should be used for tests (true/false)"
required: true
type: string
permissions:
contents: read
jobs:
Expand All @@ -80,7 +84,7 @@ jobs:
shell: bash
run: docker run -v "${GITHUB_WORKSPACE}:/workspace" -u 0:0 bash -c "rm -rf /workspace/*"
- name: "Checkout ${{ github.ref }} ( ${{ github.sha }} )"
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
persist-credentials: false
- name: "Prepare breeze & CI image: ${{ matrix.python-version }}"
Expand All @@ -89,18 +93,34 @@ jobs:
platform: ${{ inputs.platform }}
python: ${{ matrix.python-version }}
use-uv: ${{ inputs.use-uv }}
if: ${{ inputs.use-local-venv != 'true' }}
- name: "Prepare and cleanup runner"
run: ./scripts/ci/prepare_and_cleanup_runner.sh
shell: bash
if: ${{ inputs.use-local-venv == 'true' }}
- name: "Install Breeze"
uses: ./.github/actions/breeze
with:
use-uv: ${{ inputs.use-uv }}
if: ${{ inputs.use-local-venv == 'true' }}
- name: "Cleanup dist files"
run: rm -fv ./dist/*
if: ${{ matrix.python-version == inputs.default-python-version }}
# Conditional steps based on the distribution name
- name: "Prepare Airflow ${{inputs.distribution-name}}: wheel"
env:
DISTRIBUTION_TYPE: "${{ inputs.distribution-cmd-format }}"
run: >
USE_LOCAL_HATCH: "${{ inputs.use-local-venv }}"
run: |
uv tool uninstall hatch || true
uv tool install hatch==1.14.1
breeze release-management "${DISTRIBUTION_TYPE}" --distribution-format wheel
if: ${{ matrix.python-version == inputs.default-python-version }}
- name: "Verify wheel packages with twine"
run: |
uv tool uninstall twine || true
uv tool install twine && twine check dist/*.whl
if: ${{ matrix.python-version == inputs.default-python-version }}
- name: >
Run unit tests for Airflow ${{inputs.distribution-name}}:Python ${{ matrix.python-version }}
env:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/automatic-backport.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ jobs:

- name: Find PR information
id: pr-info
uses: actions/github-script@v7
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/backport-cli.yml
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ jobs:
steps:
- name: "Checkout ${{ github.ref }} ( ${{ github.sha }} )"
id: checkout-for-backport
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
persist-credentials: true
fetch-depth: 0
Expand Down
Loading