Registry / workflow / apache-airflow-providers-apache-flink

apache-airflow-providers-apache-flink

JSON →
library1.8.5pypypiunverified

The Apache Airflow Apache Flink Provider package extends Apache Airflow's capabilities by integrating with Apache Flink. It enables users to programmatically author, schedule, and monitor workflows that involve submitting Flink jobs and interacting with Flink clusters directly from Airflow DAGs. This provider is actively maintained, with version 1.8.4 released on March 28, 2026, and follows a regular release cadence aligned with the broader Airflow ecosystem.

pip install apache-airflow-providers-apache-flink
INSTALL
IMPORT
SIG · APACHE-AIRFLOW-PRO
A
apache-airflow-providers-apache-flink
workflowpythonv1.8.5
Install
29.0s avg
Import
Disk
380MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v1.8.5 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.103.940 runs
installs and imports cleanly · install 0.0s · import 0.000s · 382.1MB
glibc
py 3.103.940 runs
installs and imports cleanly · install 29.0s · import 0.000s · 382MB
380MB installed
● package 380MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

FlinkOperator
from airflow.providers.apache.flink.operators.flink import FlinkOperator
from airflow.providers.apache.flink.operators.flink import FlinkOperator

This quickstart demonstrates a basic Airflow DAG using the `FlinkOperator` to submit a Flink job. Ensure that you have a Flink connection configured in your Airflow environment (e.g., named 'flink_default') and replace `/path/to/my-flink-job.jar` with the actual path to your Flink job JAR file. For Kubernetes deployments, the Flink image can be configured via `FLINK_K8S_IMAGE` environment variable.

from __future__ import annotations import os import pendulum from airflow.models.dag import DAG from airflow.providers.apache.flink.operators.flink import FlinkOperator with DAG( dag_id="flink_example_dag", start_date=pendulum.datetime(2023, 1, 1, tz="UTC"), schedule=None, catchup=False, tags=["flink", "example"], ) as dag: submit_flink_job = FlinkOperator( task_id="submit_example_flink_job", job_name="my_example_flink_job", main_class="com.example.flink.MyJob", jar="/path/to/my-flink-job.jar", flink_configuration={ "taskmanager.memory.process.size": "2g", "kubernetes.container.image": os.environ.get("FLINK_K8S_IMAGE", "flink:latest"), }, # Ensure a Flink connection is configured in Airflow UI with ID 'flink_default' # flink_conn_id="flink_default", )
Debug
Known issues
breakingAirflow provider packages, including apache-airflow-providers-apache-flink, have minimum Apache Airflow core version requirements that change with new provider releases. For instance, provider version 1.8.0 requires Airflow 2.11.0+, while older versions might support earlier Airflow versions. Installing a newer provider with an older Airflow core can lead to unexpected errors or incompatibility.
fix
Always check the provider's official documentation or changelog for the `Requirements` section to verify the minimum supported Airflow version before upgrading. Ensure your Airflow environment meets these requirements.
affects: <1.8.0 with Airflow >=2.11.0, or >=1.8.0 with Airflow <2.11.0
gotchaWhen deploying Airflow in distributed environments (e.g., Docker, Kubernetes), the `apache-airflow-providers-apache-flink` package must be installed on all relevant Airflow components, including the scheduler, webserver, and workers. Failing to install the provider consistently across all components can result in errors like DAGs not appearing or tasks failing due to missing imports.
fix
Include `pip install apache-airflow-providers-apache-flink` in your Airflow Dockerfile or ensure it's part of your `requirements.txt` used for building Airflow images or installing dependencies on all nodes.
affects: All versions in distributed Airflow setups.
gotchaThe `FlinkKubernetesOperator`'s `application_file` parameter can accept either a path to a `.yaml` or `.json` file, or a YAML/JSON string directly. There have been reported issues where passing a file path might not work as expected, while passing the content as a string resolves the issue. This can be a subtle parsing problem.
fix
If encountering issues with `application_file` as a path, try reading the file content into a string and passing the string directly to the `application_file` parameter. For example, `application_file=open('flink_deployment.yaml').read()`.
affects: Potentially all versions using `FlinkKubernetesOperator`.
Upgrade
Version history
1.8.5latest on PyPI · released Jun 7, 2026
Audit
Dependencies
apache-airflowrequiredCore Airflow functionality is required to use this provider.
apache-airflow-providers-common-compatoptionalProvides common compatibility features across providers.
cryptographyrequiredRequired for secure operations, likely within underlying Airflow or Flink connections.
apache-airflow-providers-cncf-kubernetesoptionalNeeded for using FlinkKubernetesOperator to deploy Flink applications on Kubernetes.
Agent activity
64 hits · last 30 days
node
56
OpenAI (training)
2
Resources
apache-airflow-providers-apache-flink — pip install apache-airflow-providers-apache-flink · libregistry