Skip to content

Handling “Airflow confs” in Task SDK #44352

@kaxil

Description

@kaxil

Figure out how to retrieve Airflow configurations (from airflow.cfg) in the Task SDK without importing Airflow core.

Investigate different approaches for configuration architecture in separated server and SDK components, analyze trade-offs, and recommend the best approach.

Configuration Split Options to Investigate

Option 1: Complete Independence

  • Approach: Separate configuration files for server and SDK
  • Pros: Clean separation, no network dependencies
  • Cons: Configuration duplication, sync issues
  • Use case: When server and workers are in different environments

Option 2: API-Based Inheritance

  • Approach: SDK queries server API for configuration values
  • Pros: Centralized configuration management
  • Cons: Network dependency, potential latency
  • Use case: When workers need dynamic configuration updates

Option 3: Bootstrap Injection

  • Approach: Server injects essential config at task startup
  • Pros: No runtime API calls, centralized control
  • Cons: Static configuration, larger task payloads
  • Use case: When configuration is stable and performance is critical

Option 4: Hybrid Local-First + API Fallback

  • Approach: Local config first, API fallback for inherited values, caching
  • Pros: Performance + flexibility, graceful degradation
  • Cons: Complexity, cache invalidation challenges
  • Use case: Best of both worlds approach

## Open Questions

  • What about ProvidersManager class that is used to fetch configs from Providers

Metadata

Metadata

Assignees

Labels

area:corearea:task-execution-interface-aip72AIP-72: Task Execution Interface (TEI) aka Task SDKpriority:mediumBug that should be fixed before next release but would not block a release

Type

No type

Projects

Status

In Progress

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions