L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Données et recherche · SKILL.md

providers-extensions

providers-extensions

Work with Airflow providers, standard operators/sensors/hooks, custom extensions, provider metadata, and provider package maintenance conventions.

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

name: providers-extensions description: "Work with Airflow providers, standard operators/sensors/hooks, custom extensions, provider metadata, and provider package maintenance conventions." disable-model-invocation: true metadata: disco-role: operating license: Apache 2.0

Providers and Extensions

Use this sub-skill when a task involves Airflow providers or extension points: selecting provider packages/extras, importing standard operators/sensors/hooks in Dags, writing custom operators/hooks/sensors, registering plugins/listeners/timetables/notifiers/extra links, or maintaining provider package metadata.

Route First

  • For general Dag authoring, TaskFlow, task mapping, assets, schedules, or airflow.sdk basics, use ../authoring-task-sdk/ first and return here only for provider-specific imports or extension classes.
  • For CLI, Breeze, CI, release preparation, or broad provider-release classification workflows, use ../contribution-tooling/; this sub-skill only covers the provider files and safe metadata checks needed during ordinary development.
  • For REST API, web UI internals, scheduler, executor, Helm, Docker, or deployment behavior, use the corresponding sibling sub-skill rather than treating providers as a catch-all.
  • For cloud-service-specific APIs, prefer the relevant provider’s own documentation or source; this sub-skill covers Airflow provider conventions and the standard provider patterns, not deep SDK behavior for every integration.

What To Read

  • references/provider-api-patterns.md for public extension boundaries, standard provider imports, operator/sensor/hook patterns, package naming, extras, and provider entry points.
  • references/extension-workflows.md for recipes for custom operators, hooks, sensors, plugins, listeners, timetables, notifiers, extra links, and provider-package tests.
  • references/provider-metadata.md for provider.yaml, get_provider_info, pyproject.toml, generated-file cautions, docs/changelog rules, and the bundled checker.
  • references/troubleshooting.md for missing provider packages, import errors, connection IDs, deferrable trigger dependencies, generated-file mistakes, and docs/changelog pitfalls.

Fast Guidance

  • Install/import provider-specific code explicitly. Airflow core does not guarantee that every provider is installed; standard operators such as BashOperator and FileSensor live in apache-airflow-providers-standard.
  • Use public bases for new runtime code: airflow.sdk.BaseOperator, airflow.sdk.BaseSensorOperator, airflow.sdk.BaseHook, airflow.sdk.BaseNotifier, airflow.sdk.BaseOperatorLink, and documented plugin/listener/timetable APIs.
  • Keep expensive work out of operator constructors. Resolve hooks, connections, network clients, and service jobs inside execute, poke, trigger code, or helper methods called from execution.
  • Treat provider.yaml as the human-edited source for provider metadata. get_provider_info.py, provider docs indexes, and most provider pyproject.toml content are generated; edit only the preserved dependency sections unless the generation workflow says otherwise.
  • Before touching provider metadata, run scripts/check_provider_metadata.py --provider-dir <provider-dir> against the provider directory you are editing and fix reported errors before relying on generated files.

Done Criteria

A provider/extension change is ready when imports come from installed provider packages, custom classes use public extension points, metadata and entry points agree, generated files are not hand-edited incorrectly, and tests cover the changed operator/hook/sensor/plugin behavior without depending on external services unless explicitly mocked or isolated.

Skills enregistrées