Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Also use ODBC connection for sqlalchemy engine in OdbcHook like JdbcHook #5

Closed
wants to merge 150 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
150 commits
Select commit Hold shift + click to select a range
b7c8ebb
Fix dag warning documentation (#42858)
pierrejeambrun Oct 10, 2024
7250e26
Fix issue generation for provider after folder restructure (#42883)
eladkal Oct 10, 2024
937cc29
AIP-84 Migrate the public endpoint Get DAG to FastAPI (#42848)
omkar-foss Oct 10, 2024
efcb554
AIP-84 Migrate GET Dag Run endpoint to FastAPI (#42725)
rawwar Oct 10, 2024
14bbbb6
add majorosdonat as bosch user (#42890)
majorosdonat Oct 10, 2024
978bb0c
Move the session auth backend to FAB auth manager (#42878)
vincbeck Oct 10, 2024
c7104f5
Move user and roles schemas to fab provider (#42869)
vincbeck Oct 10, 2024
2b541f3
Add support for run conf to backfill (#42865)
dstandish Oct 10, 2024
2b15e9f
Fix main (#42903)
pierrejeambrun Oct 10, 2024
c0ab523
Fix main: js/types/api-generated.ts (#42906)
dstandish Oct 10, 2024
f4270da
mark TestGKEStartKueueInsideClusterOperator tests with flaky decorato…
gopidesupavan Oct 10, 2024
70b8e50
Remove dag.run() method (#42761)
dstandish Oct 10, 2024
e0b7077
Add test for behavior for paused backfill (#42837)
dstandish Oct 10, 2024
df4df2a
Use url_from_endpoint inside HttpHook. (#42785)
simi Oct 10, 2024
61aaddd
Fix typo in Breeze (#42919)
kaxil Oct 10, 2024
6c4d67f
Docs: Add templating info to TaskFlow tutorial (#42887)
infused-kim Oct 11, 2024
7202ee8
Add possibility to override the conn type for Druid (#42793)
Rasnar Oct 11, 2024
0372743
fix: HttpSensorTrigger to include `method` when serializing (#42925)
rawwar Oct 11, 2024
23ba1df
AIP-84 Fix dag display name search (#42863)
pierrejeambrun Oct 11, 2024
5e78aaa
Check _is_canary_run/pr condition in is_legacy_ui_api_labeled method …
gopidesupavan Oct 11, 2024
57aeb34
Allow python 3.12 for the breeze release commands (#42936)
ashb Oct 11, 2024
a81066e
Render errors when getting a list of dags (#42897)
bbovenzi Oct 11, 2024
39f8e1d
Remove the referrer from Webserver to Scarf (#42901)
kaxil Oct 11, 2024
a052d9e
Split providers out of the main "airflow/" tree into a UV workspace p…
vlieven Oct 11, 2024
15df465
increase backoff_factor and add try/catch in k8s tests (#42940)
gopidesupavan Oct 11, 2024
92a82eb
Consistent python version checks and troubleshooting (#42944)
potiuk Oct 11, 2024
aab1e37
Update README.rst (#42941)
AndreMiranda-dev Oct 11, 2024
b9b24f4
Add a "backfill create" command (#42922)
dstandish Oct 11, 2024
db9c130
Fix SNOWFLAKE_CONN_ID and DAG_ID in Snowpark system tests (#42952)
sfc-gh-jdu Oct 12, 2024
15fc509
Fix broken links in Release Management docs (#42958)
kaxil Oct 12, 2024
7d8ea68
Restrict looker-sdk version 24.18.0 and microsoft-kiota-http 1.3.4 (#…
gopidesupavan Oct 12, 2024
911efec
upgrade trove-classifiers (#42950)
gopidesupavan Oct 12, 2024
465332b
Chart: fix VCT for scheduler in local and persistent mode (#42946)
Aakcht Oct 12, 2024
794b153
fix: use instance base_container_name to fetch logs on trigger_reentr…
peloyeje Oct 12, 2024
84726c2
fix: 03_contributors_quick_start_docs (#42927)
kgw7401 Oct 12, 2024
4cd1e7d
Add skeleton project for task-sdk (#42904)
kaxil Oct 12, 2024
8ee9d01
Upgrade Trove classifier to `2024.10.12` (#42961)
kaxil Oct 12, 2024
48c7b22
Add missed brackets for our dev script for Spell checks (#42965)
kaxil Oct 12, 2024
95c46ec
FIX: Don't raise a warning in ExecutorSafeguard when execute is calle…
dabla Oct 12, 2024
3661a08
Upgrade Helm Chart dependencies to latest released (#42816)
potiuk Oct 13, 2024
8b1c57a
Fix PythonOperator DAG error when DAG has hyphen in name (#42902)
jason810496 Oct 13, 2024
51f4302
fIX handling removal of dependencies (#42967)
potiuk Oct 13, 2024
f1735b4
mark test_task_workflow_trigger_success as flaky (#42972)
gopidesupavan Oct 13, 2024
cd5eb2c
Create a User Settings button with light/dark mode toggle as a menu i…
AryanK1511 Oct 13, 2024
b92c66d
AIP-84 Migrate delete Dag Run endpoint to FastAPI (#42910)
rawwar Oct 13, 2024
ad54501
Make datStats endpoint dag_ids parameter optional (#42955)
michaeljs-c Oct 13, 2024
43f48ba
trove classifier upgrade (#42979)
gopidesupavan Oct 13, 2024
d6a1a52
Change directory used by simple auth manager to store generated passw…
vincbeck Oct 13, 2024
20f8290
Disable flaky mssql based integration tests (#42811)
gopidesupavan Oct 13, 2024
d9956cc
Remove BackfillJobRunner class (#42943)
dstandish Oct 14, 2024
7ae3a55
Add early job_id xcom_push for google provider Beam Pipeline operator…
olegkachur-e Oct 14, 2024
72da8f6
Add logic to mark backfills as complete (#42683)
dstandish Oct 14, 2024
baa87b6
fix mypy check failure on main (#42976)
rawwar Oct 14, 2024
c5e4a74
mark test_setup_constraint_mapped_task_upstream_removed_and_success a…
gopidesupavan Oct 14, 2024
85c2b7d
Update providers metadata 2024-10-14 (#42995)
eladkal Oct 14, 2024
5316e61
Update json schema pre-commit to have draft7 schema in file (#43005)
ephraimbuddy Oct 14, 2024
b979deb
AIP-84 Patch Variable (#42929)
pierrejeambrun Oct 14, 2024
ced319f
Commit the session between writing and deletion of RTIF (#42928)
ephraimbuddy Oct 14, 2024
2e5607a
Refactor FastApi Dag and DagRun endpoints tests (#42949)
rawwar Oct 14, 2024
4122597
Minor updates in UI contributing docs (#43013)
kaxil Oct 14, 2024
4c5ad9c
AIP-84 post variable (#42948)
pierrejeambrun Oct 14, 2024
2b101e2
Feature: Added event_handler parameter in MSGraphAsyncOperator (#42539)
dabla Oct 15, 2024
f918f14
uv version bump to 0.4.20 (#42905)
dirrao Oct 15, 2024
272cd9a
Removed deprecated Chainable type from BaseOperator (#42776)
dirrao Oct 15, 2024
c941484
pin in providers (#43001)
rawwar Oct 15, 2024
cd1e9f5
Move tests_common from "dev" to top-level. (#42985)
potiuk Oct 15, 2024
cc0aad0
Add AssetActive model (#42612)
uranusjr Oct 15, 2024
6c9c327
Migrate the public endpoint Delete DAG to FastAPI (#42914)
omkar-foss Oct 15, 2024
c471c31
Clarifying PLUGINS_FOLDER permissions by DAG authors (#43022)
amoghrajesh Oct 15, 2024
2eaa90f
kubernetes package version bump to 31.0.0 (#42907)
dirrao Oct 15, 2024
732e056
Make google provider pyarrow dependency explicit (#42996)
saucoide Oct 15, 2024
f38d56d
Add search by dag_display_name_pattern on dag list page with rebase (…
luyangliuable Oct 15, 2024
9bd1edc
Deprecate session auth backend (#42909)
vincbeck Oct 15, 2024
520c443
fix: Change CustomSecurityManager method name (#43034)
kgw7401 Oct 15, 2024
12f0b9f
Update to 0.4.21 of UV (#43032)
potiuk Oct 15, 2024
477d747
Add retry on error 502 and 504 (#42994)
majorosdonat Oct 15, 2024
1ca6208
AIP-84 Migrate get connections to FastAPI API #42571 (#42782)
bugraoz93 Oct 15, 2024
fe0cc6e
Make `RedshiftDataOperator` handle multiple queries (#42900)
jroachgolf84 Oct 15, 2024
d634904
Bump `uv` to `0.4.21` in other places (#43033)
kaxil Oct 15, 2024
59cf3ef
require 1.2.1 common.compat for openlineage provider (#43039)
mobuchowski Oct 15, 2024
330cdf0
Detect system color theme and add active state to nav button (#43041)
bbovenzi Oct 15, 2024
f708fc9
Migrate health info to fastapi (#42938)
bbovenzi Oct 15, 2024
7b151d3
Add upperbound to microsoft-kiota-abstractions (#43021)
rawwar Oct 15, 2024
c9c4ca5
fix path to providers dir for mount sources breeze flag (#43042)
mobuchowski Oct 15, 2024
f1f9201
Create Operators for Google Cloud Vertex AI Context Caching (#43008)
CYarros10 Oct 15, 2024
2899e5f
add lowerbount to requests-toolbelt and replace requests_toolbelt wit…
rawwar Oct 15, 2024
e939c42
✨ Allow node_selector templating in KPO (#43051)
bdsoha Oct 15, 2024
3c3973e
Rename views to routes for FastAPI apps (#43057)
kaxil Oct 15, 2024
6c3bc91
Follow-up SLA purge (#42808)
ferruzzi Oct 15, 2024
5101b7e
Bump `uv` to `0.4.22` (#43056)
kaxil Oct 16, 2024
1af5b93
Add 'name' and 'group' to public Asset class (#42812)
uranusjr Oct 16, 2024
6549b17
Remove zombie ti from its executor (#42932)
uranusjr Oct 16, 2024
e20146d
Drop unneeded unique() call on SQL (#43064)
uranusjr Oct 16, 2024
80f8a0e
Allow building docs for not-ready providers (#43071)
kaxil Oct 16, 2024
aaa5f35
Typo correction in 07_local_virtualenv.rst - "way" (#43072)
biswa-b Oct 16, 2024
251fc58
Enable explicit namespaces (#42951)
ferruzzi Oct 16, 2024
60c02f5
Replace Mateusz with Kalyan in the triage team (#43074)
potiuk Oct 16, 2024
39a16c0
Reorganize ``api_fastapi`` folder into apps (#43062)
kaxil Oct 16, 2024
75b2294
Tweak AssetAlias to match Asset for AIP-74 additions (#42814)
uranusjr Oct 16, 2024
12afc1d
Fix pytest from working outside breeze (#43082)
kaxil Oct 16, 2024
e78421d
Fix typo in ``pyproject.toml`` (#43077)
shahar1 Oct 16, 2024
598e0ee
Remove DAG.get_num_active_runs (#43067)
dstandish Oct 16, 2024
4effea2
Fix UI lint pre-commit hook (#43086)
pierrejeambrun Oct 16, 2024
749526d
Fixed failing static checks (#43087)
kaxil Oct 16, 2024
b7007e2
Added task_instance_mutation_hook for mapped operator index 0 (#42661)
AutomationDev85 Oct 16, 2024
4cdbc38
Fix selective checks when only pyproject.toml changes (#43088)
potiuk Oct 16, 2024
fda4514
fix(providers/mongo): prevent applying lower method on boolean field …
josix Oct 16, 2024
dfa6ad4
add kubernetes_conn_id to templated fields (#42786)
gopidesupavan Oct 16, 2024
f25ce51
Add min version to cloudpickle (#43066)
rawwar Oct 16, 2024
5124422
Initialize dashboard page with health (#43090)
bbovenzi Oct 16, 2024
69e4a5e
Update constraints to broken canary (#43095)
jscheffl Oct 16, 2024
2b21e88
Fix flaky `test_get_dags` in FastAPI routes (#43100)
kaxil Oct 16, 2024
b3b4850
SSHHook expose auth_timeout parameter (#43048)
gyandeeps Oct 17, 2024
f587edf
vertex ai training operators: add display_name to rendered fields (#4…
WSHoekstra Oct 17, 2024
3f8ac22
Print the key name when max_length is exceeded (#43061)
jabbera Oct 17, 2024
7abc289
Revert "Fix flaky `test_get_dags` in FastAPI routes (#43100)" (#43108)
pierrejeambrun Oct 17, 2024
ec37818
Ensure stable secondary ordering (#43085)
pierrejeambrun Oct 17, 2024
9ce6d49
Add simple "Task Execution" API server (#43015)
kaxil Oct 17, 2024
3ca80dd
Add ClientConnectorError to be a retryable error in databricks provid…
rawwar Oct 17, 2024
c881565
passing the filetype for SlackAPIFileOperator (#43069)
Bowrna Oct 17, 2024
2ed06d1
chore(docs): add required import of BranchDayOfWeekOperator (#43053)
sfirke Oct 17, 2024
b010acd
Update unit_tests.rst links error (#43114)
yangyulely Oct 17, 2024
3b9e156
added MultipleFilesWebHdfsSensor (#43045)
eilon246810 Oct 17, 2024
95e0c23
Bump to `0.4.23` to fix a uv bug (#43121)
kaxil Oct 17, 2024
2576eea
Clean up some eslint rules to better fit what we do (#43093)
bbovenzi Oct 17, 2024
571cf09
Fixed failing static checks & provider tests (#43122)
kaxil Oct 17, 2024
4a6d71f
Add min version to python-ldap (#43104)
rawwar Oct 17, 2024
7324cda
feat(providers/fab): Use asset in common provider (#43112)
Lee-W Oct 17, 2024
61e3fa0
Add `bugraoz93` in the triage team (#43124)
kaxil Oct 17, 2024
c7b9c8d
Exclude backfill dag runs in active_runs_of_dags counts (#42684)
dstandish Oct 17, 2024
a2b32d6
feat(providers/amazon): Use asset in common provider (#43110)
Lee-W Oct 17, 2024
ae96933
Max active tasks to be evaluated per dag run (#42953)
dstandish Oct 17, 2024
8e6d396
Doc: Update example for dbt Cloud connection string (#43094)
dpguthrie Oct 17, 2024
824ec4a
AIP-69: Add Executor to Edge Provider (#42048)
jscheffl Oct 17, 2024
ececdd3
Speed-up rebuilding of CI image after pip/uv version change (#43101)
potiuk Oct 17, 2024
e286bd7
Pin debian image version for Dataproc SparkR system test (#43113)
MaksYermak Oct 17, 2024
aeb7e90
Fix TestTranslationLegacyModelPredictLink dataset_id error (#42463)
olegkachur-e Oct 17, 2024
15f09c7
Add timezone selection to new UI (#43132)
bbovenzi Oct 17, 2024
b86bb24
37437 (#43107)
vVv-AA Oct 17, 2024
60b8056
Fix broken stat scheduler_loop_duration (#42886)
0vj00 Oct 17, 2024
8b15840
AIP-69: Breeze adjustments for introduction of Edge Executor (#41731)
jscheffl Oct 17, 2024
360a6c4
Ignore "depends_on_past" for first run in a backfill (#43131)
dstandish Oct 17, 2024
76c8470
AIP-69: Add leftover glue of all pieces to Edge Provider (#42051)
jscheffl Oct 18, 2024
b540eb0
Add docs about `cursor` extra param in Postgres Connection (#43134)
kaxil Oct 18, 2024
1f0bba2
feat(providers/openlineage): Use asset in common provider (#43111)
Lee-W Oct 18, 2024
5eeea54
Bump ``uv`` to ``0.4.24`` (#43135)
kaxil Oct 18, 2024
66f9f37
Add cross reference for Edge Executor in Airflow docs (#43136)
kaxil Oct 18, 2024
2531338
Airflow Core/Docs adjustments for introduction of AIP-69 Edge Executo…
jscheffl Oct 18, 2024
424cf50
add min version to plyvel (#43129)
rawwar Oct 18, 2024
be680b1
refactor: OdbcHook must use it's own connection when creating a sqlal…
davidblain-infrabel Oct 18, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 2 additions & 1 deletion .asf.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -123,12 +123,13 @@ github:
# https://github.com/apache/infrastructure-asfyaml/blob/main/README.md#assigning-the-github-triage-role-to-external-collaborators
- aritra24
- dirrao
- mhenc
- rawwar
- nathadfield
- sunank200
- vatsrahul1001
- cmarteepants
- gopidesupavan
- bugraoz93

notifications:
jobs: jobs@airflow.apache.org
2 changes: 2 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,14 @@
!docs
!licenses
!providers/
!task_sdk/

# Add those folders to the context so that they are available in the CI container
!scripts

# Add tests and kubernetes_tests to context.
!tests
!tests_common
!kubernetes_tests
!helm_tests
!docker_tests
Expand Down
3 changes: 3 additions & 0 deletions .github/boring-cyborg.yml
Original file line number Diff line number Diff line change
Expand Up @@ -679,6 +679,9 @@ labelPRBasedOnFilePath:
area:system-tests:
- tests/system/**/*

area:task-sdk:
- task_sdk/**/*

area:db-migrations:
- airflow/migrations/versions/*

Expand Down
7 changes: 7 additions & 0 deletions .github/workflows/additional-ci-image-checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,10 @@ on: # yamllint disable-line rule:truthy
description: "Docker cache specification to build the image (registry, local, disabled)."
required: true
type: string
disable-airflow-repo-cache:
description: "Disable airflow repo cache read from main."
required: true
type: string
canary-run:
description: "Whether this is a canary run (true/false)"
required: true
Expand Down Expand Up @@ -112,6 +116,7 @@ jobs:
use-uv: "true"
include-success-outputs: ${{ inputs.include-success-outputs }}
docker-cache: ${{ inputs.docker-cache }}
disable-airflow-repo-cache: ${{ inputs.disable-airflow-repo-cache }}
if: inputs.branch == 'main'

# Check that after earlier cache push, breeze command will build quickly
Expand Down Expand Up @@ -168,3 +173,5 @@ jobs:
# use-uv: "true"
# upgrade-to-newer-dependencies: ${{ inputs.upgrade-to-newer-dependencies }}
# docker-cache: ${{ inputs.docker-cache }}
# disable-airflow-repo-cache: ${{ inputs.disable-airflow-repo-cache }}
#
6 changes: 6 additions & 0 deletions .github/workflows/additional-prod-image-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,10 @@ on: # yamllint disable-line rule:truthy
description: "Docker cache specification to build the image (registry, local, disabled)."
required: true
type: string
disable-airflow-repo-cache:
description: "Disable airflow repo cache read from main."
required: true
type: string
canary-run:
description: "Whether to run the canary run (true/false)"
required: true
Expand All @@ -72,6 +76,7 @@ jobs:
chicken-egg-providers: ${{ inputs.chicken-egg-providers }}
constraints-branch: ${{ inputs.constraints-branch }}
docker-cache: ${{ inputs.docker-cache }}
disable-airflow-repo-cache: ${{ inputs.disable-airflow-repo-cache }}
if: inputs.default-branch == 'main' && inputs.canary-run == 'true'

prod-image-extra-checks-release-branch:
Expand All @@ -89,6 +94,7 @@ jobs:
chicken-egg-providers: ${{ inputs.chicken-egg-providers }}
constraints-branch: ${{ inputs.constraints-branch }}
docker-cache: ${{ inputs.docker-cache }}
disable-airflow-repo-cache: ${{ inputs.disable-airflow-repo-cache }}
if: inputs.default-branch != 'main' && inputs.canary-run == 'true'

test-examples-of-prod-image-building:
Expand Down
4 changes: 4 additions & 0 deletions .github/workflows/build-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@ jobs:
prod-image-build: ${{ steps.selective-checks.outputs.prod-image-build }}
docker-cache: ${{ steps.selective-checks.outputs.docker-cache }}
default-branch: ${{ steps.selective-checks.outputs.default-branch }}
disable-airflow-repo-cache: ${{ steps.selective-checks.outputs.disable-airflow-repo-cache }}
constraints-branch: ${{ steps.selective-checks.outputs.default-constraints-branch }}
runs-on-as-json-default: ${{ steps.selective-checks.outputs.runs-on-as-json-default }}
runs-on-as-json-public: ${{ steps.selective-checks.outputs.runs-on-as-json-public }}
Expand Down Expand Up @@ -210,6 +211,8 @@ jobs:
constraints-branch: ${{ needs.build-info.outputs.constraints-branch }}
upgrade-to-newer-dependencies: ${{ needs.build-info.outputs.upgrade-to-newer-dependencies }}
docker-cache: ${{ needs.build-info.outputs.docker-cache }}
disable-airflow-repo-cache: ${{ needs.build-info.outputs.disable-airflow-repo-cache }}


generate-constraints:
name: Generate constraints
Expand Down Expand Up @@ -256,3 +259,4 @@ jobs:
upgrade-to-newer-dependencies: ${{ needs.build-info.outputs.upgrade-to-newer-dependencies }}
chicken-egg-providers: ${{ needs.build-info.outputs.chicken-egg-providers }}
docker-cache: ${{ needs.build-info.outputs.docker-cache }}
disable-airflow-repo-cache: ${{ needs.build-info.outputs.disable-airflow-repo-cache }}
5 changes: 5 additions & 0 deletions .github/workflows/ci-image-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,10 @@ on: # yamllint disable-line rule:truthy
description: "Docker cache specification to build the image (registry, local, disabled)."
required: true
type: string
disable-airflow-repo-cache:
description: "Disable airflow repo cache read from main."
required: true
type: string
jobs:
build-ci-images:
strategy:
Expand Down Expand Up @@ -171,6 +175,7 @@ ${{ inputs.do-build == 'true' && inputs.image-tag || '' }}"
--python "${{ matrix.python-version }}" --platform "${{ inputs.platform }}"
env:
DOCKER_CACHE: ${{ inputs.docker-cache }}
DISABLE_AIRFLOW_REPO_CACHE: ${{ inputs.disable-airflow-repo-cache }}
INSTALL_MYSQL_CLIENT_TYPE: ${{ inputs.install-mysql-client-type }}
UPGRADE_TO_NEWER_DEPENDENCIES: ${{ inputs.upgrade-to-newer-dependencies }}
# You can override CONSTRAINTS_GITHUB_REPOSITORY by setting secret in your repo but by default the
Expand Down
7 changes: 7 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ jobs:
outputs:
image-tag: ${{ github.event.pull_request.head.sha || github.sha }}
docker-cache: ${{ steps.selective-checks.outputs.docker-cache }}
disable-airflow-repo-cache: ${{ steps.selective-checks.outputs.disable-airflow-repo-cache }}
affected-providers-list-as-string: >-
${{ steps.selective-checks.outputs.affected-providers-list-as-string }}
upgrade-to-newer-dependencies: ${{ steps.selective-checks.outputs.upgrade-to-newer-dependencies }}
Expand Down Expand Up @@ -93,6 +94,7 @@ jobs:
run-ui-tests: ${{ steps.selective-checks.outputs.run-ui-tests }}
run-www-tests: ${{ steps.selective-checks.outputs.run-www-tests }}
run-kubernetes-tests: ${{ steps.selective-checks.outputs.run-kubernetes-tests }}
run-task-sdk-tests: ${{ steps.selective-checks.outputs.run-task-sdk-tests }}
basic-checks-only: ${{ steps.selective-checks.outputs.basic-checks-only }}
ci-image-build: ${{ steps.selective-checks.outputs.ci-image-build }}
prod-image-build: ${{ steps.selective-checks.outputs.prod-image-build }}
Expand Down Expand Up @@ -207,6 +209,7 @@ jobs:
upgrade-to-newer-dependencies: ${{ needs.build-info.outputs.upgrade-to-newer-dependencies }}
constraints-branch: ${{ needs.build-info.outputs.default-constraints-branch }}
docker-cache: ${{ needs.build-info.outputs.docker-cache }}
disable-airflow-repo-cache: ${{ needs.build-info.outputs.disable-airflow-repo-cache }}

wait-for-ci-images:
timeout-minutes: 120
Expand Down Expand Up @@ -263,6 +266,7 @@ jobs:
upgrade-to-newer-dependencies: ${{ needs.build-info.outputs.upgrade-to-newer-dependencies }}
skip-pre-commits: ${{ needs.build-info.outputs.skip-pre-commits }}
docker-cache: ${{ needs.build-info.outputs.docker-cache }}
disable-airflow-repo-cache: ${{ needs.build-info.outputs.disable-airflow-repo-cache }}
canary-run: ${{ needs.build-info.outputs.canary-run }}
latest-versions-only: ${{ needs.build-info.outputs.latest-versions-only }}
include-success-outputs: ${{ needs.build-info.outputs.include-success-outputs }}
Expand Down Expand Up @@ -558,6 +562,7 @@ jobs:
chicken-egg-providers: ${{ needs.build-info.outputs.chicken-egg-providers }}
constraints-branch: ${{ needs.build-info.outputs.default-constraints-branch }}
docker-cache: ${{ needs.build-info.outputs.docker-cache }}
disable-airflow-repo-cache: ${{ needs.build-info.outputs.disable-airflow-repo-cache }}

wait-for-prod-images:
timeout-minutes: 80
Expand Down Expand Up @@ -614,6 +619,7 @@ jobs:
upgrade-to-newer-dependencies: ${{ needs.build-info.outputs.upgrade-to-newer-dependencies }}
chicken-egg-providers: ${{ needs.build-info.outputs.chicken-egg-providers }}
docker-cache: ${{ needs.build-info.outputs.docker-cache }}
disable-airflow-repo-cache: ${{ needs.build-info.outputs.disable-airflow-repo-cache }}
default-python-version: ${{ needs.build-info.outputs.default-python-version }}
canary-run: ${{ needs.build-info.outputs.canary-run }}
if: needs.build-info.outputs.prod-image-build == 'true'
Expand Down Expand Up @@ -669,6 +675,7 @@ jobs:
upgrade-to-newer-dependencies: ${{ needs.build-info.outputs.upgrade-to-newer-dependencies }}
include-success-outputs: ${{ needs.build-info.outputs.include-success-outputs }}
docker-cache: ${{ needs.build-info.outputs.docker-cache }}
disable-airflow-repo-cache: ${{ needs.build-info.outputs.disable-airflow-repo-cache }}
canary-run: ${{ needs.build-info.outputs.canary-run }}

notify-slack-failure:
Expand Down
5 changes: 5 additions & 0 deletions .github/workflows/finalize-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,10 @@ on: # yamllint disable-line rule:truthy
description: "Docker cache specification to build the image (registry, local, disabled)."
required: true
type: string
disable-airflow-repo-cache:
description: "Disable airflow repo cache read from main."
required: true
type: string
include-success-outputs:
description: "Whether to include success outputs (true/false)"
required: true
Expand Down Expand Up @@ -148,6 +152,7 @@ jobs:
use-uv: "true"
include-success-outputs: ${{ inputs.include-success-outputs }}
docker-cache: ${{ inputs.docker-cache }}
disable-airflow-repo-cache: ${{ inputs.disable-airflow-repo-cache }}
if: inputs.canary-run == 'true'

# push-buildx-cache-to-github-registry-arm:
Expand Down
6 changes: 6 additions & 0 deletions .github/workflows/prod-image-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,10 @@ on: # yamllint disable-line rule:truthy
description: "Docker cache specification to build the image (registry, local, disabled)."
required: true
type: string
disable-airflow-repo-cache:
description: "Disable airflow repo cache read from main."
required: true
type: string
jobs:

build-prod-packages:
Expand Down Expand Up @@ -276,6 +280,7 @@ ${{ inputs.do-build == 'true' && inputs.image-tag || '' }}"
env:
PUSH: ${{ inputs.push-image }}
DOCKER_CACHE: ${{ inputs.docker-cache }}
DISABLE_AIRFLOW_REPO_CACHE: ${{ inputs.disable-airflow-repo-cache }}
DEBIAN_VERSION: ${{ inputs.debian-version }}
INSTALL_MYSQL_CLIENT_TYPE: ${{ inputs.install-mysql-client-type }}
UPGRADE_TO_NEWER_DEPENDENCIES: ${{ inputs.upgrade-to-newer-dependencies }}
Expand All @@ -291,6 +296,7 @@ ${{ inputs.do-build == 'true' && inputs.image-tag || '' }}"
env:
PUSH: ${{ inputs.push-image }}
DOCKER_CACHE: ${{ inputs.docker-cache }}
DISABLE_AIRFLOW_REPO_CACHE: ${{ inputs.disable-airflow-repo-cache }}
DEBIAN_VERSION: ${{ inputs.debian-version }}
INSTALL_MYSQL_CLIENT_TYPE: ${{ inputs.install-mysql-client-type }}
UPGRADE_TO_NEWER_DEPENDENCIES: ${{ inputs.upgrade-to-newer-dependencies }}
Expand Down
6 changes: 6 additions & 0 deletions .github/workflows/prod-image-extra-checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,10 @@ on: # yamllint disable-line rule:truthy
description: "Docker cache specification to build the image (registry, local, disabled)."
required: true
type: string
disable-airflow-repo-cache:
description: "Disable airflow repo cache read from main."
required: true
type: string
jobs:
myssql-client-image:
uses: ./.github/workflows/prod-image-build.yml
Expand All @@ -84,6 +88,7 @@ jobs:
chicken-egg-providers: ${{ inputs.chicken-egg-providers }}
constraints-branch: ${{ inputs.constraints-branch }}
docker-cache: ${{ inputs.docker-cache }}
disable-airflow-repo-cache: ${{ inputs.disable-airflow-repo-cache }}

pip-image:
uses: ./.github/workflows/prod-image-build.yml
Expand All @@ -107,3 +112,4 @@ jobs:
chicken-egg-providers: ${{ inputs.chicken-egg-providers }}
constraints-branch: ${{ inputs.constraints-branch }}
docker-cache: ${{ inputs.docker-cache }}
disable-airflow-repo-cache: ${{ inputs.disable-airflow-repo-cache }}
6 changes: 6 additions & 0 deletions .github/workflows/push-image-cache.yml
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,10 @@ on: # yamllint disable-line rule:truthy
description: "Docker cache specification to build the image (registry, local, disabled)."
required: true
type: string
disable-airflow-repo-cache:
description: "Disable airflow repo cache read from main."
required: true
type: string
jobs:
push-ci-image-cache:
name: "Push CI ${{ inputs.cache-type }}:${{ matrix.python }} image cache "
Expand All @@ -100,6 +104,7 @@ jobs:
DEFAULT_BRANCH: ${{ inputs.branch }}
DEFAULT_CONSTRAINTS_BRANCH: ${{ inputs.constraints-branch }}
DOCKER_CACHE: ${{ inputs.docker-cache }}
DISABLE_AIRFLOW_REPO_CACHE: ${{ inputs.disable-airflow-repo-cache }}
GITHUB_REPOSITORY: ${{ github.repository }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.actor }}
Expand Down Expand Up @@ -162,6 +167,7 @@ jobs:
DEFAULT_BRANCH: ${{ inputs.branch }}
DEFAULT_CONSTRAINTS_BRANCH: ${{ inputs.constraints-branch }}
DOCKER_CACHE: ${{ inputs.docker-cache }}
DISABLE_AIRFLOW_REPO_CACHE: ${{ inputs.disable-airflow-repo-cache }}
GITHUB_REPOSITORY: ${{ github.repository }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.actor }}
Expand Down
91 changes: 91 additions & 0 deletions .github/workflows/task-sdk-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
# 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.
#
---
name: Task SDK tests
on: # yamllint disable-line rule:truthy
workflow_call:
inputs:
runs-on-as-json-default:
description: "The array of labels (in json form) determining default runner used for the build."
required: true
type: string
image-tag:
description: "Tag to set for the image"
required: true
type: string
canary-run:
description: "Whether this is a canary run"
required: true
type: string
default-python-version:
description: "Which version of python should be used by default"
required: true
type: string
python-versions:
description: "JSON-formatted array of Python versions to build images from"
required: true
type: string
jobs:
task-sdk-tests:
timeout-minutes: 80
name: Task SDK:P${{ matrix.python-version }} tests
runs-on: ${{ fromJSON(inputs.runs-on-as-json-default) }}
strategy:
fail-fast: false
matrix:
python-version: "${{fromJSON(inputs.python-versions)}}"
env:
GITHUB_REPOSITORY: ${{ github.repository }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.actor }}
IMAGE_TAG: "${{ inputs.image-tag }}"
INCLUDE_NOT_READY_PROVIDERS: "true"
PYTHON_MAJOR_MINOR_VERSION: "${{ inputs.default-python-version }}"
VERBOSE: "true"
CLEAN_AIRFLOW_INSTALLATION: "${{ inputs.canary-run }}"
if: inputs.run-task-sdk-tests == 'true'
steps:
- name: "Cleanup repo"
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
with:
persist-credentials: false
- name: "Cleanup docker"
run: ./scripts/ci/cleanup_docker.sh
- name: "Prepare breeze & CI image: ${{ matrix.python-version }}:${{ inputs.image-tag }}"
uses: ./.github/actions/prepare_breeze_and_image
- name: "Cleanup dist files"
run: rm -fv ./dist/*
- name: "Prepare Task SDK packages: wheel"
run: >
breeze release-management prepare-task-sdk-package --package-format wheel
- name: "Verify wheel packages with twine"
run: |
pipx uninstall twine || true
pipx install twine && twine check dist/*.whl
- name: >
Run provider unit tests on
Airflow Task SDK:Python ${{ matrix.python-version }}
if: matrix.run-tests == 'true'
run: >
breeze testing tests --run-in-parallel
--parallel-test-types TaskSDK
--use-packages-from-dist
--package-format wheel
Loading
Loading