Implementation:Apache Airflow Verify Release Calendar
Appearance
| Knowledge Sources | |
|---|---|
| Domains | Release_Engineering, Automation |
| Last Updated | 2026-02-08 00:00 GMT |
Overview
Concrete tool for verifying release schedules against published calendars provided by verify_release_calendar.py.
Description
The verify_release_calendar.py script fetches the Confluence release plan wiki page and the Google Calendar iCal feed, parses both into structured data (Release and CalendarEntry dataclasses), and cross-references them to identify discrepancies.
Usage
Run before starting any release cycle to validate the schedule.
Code Reference
Source Location
- Repository: Apache Airflow
- File: dev/verify_release_calendar.py
- Lines: L1-624
Signature
def fetch_confluence_page() -> str: ...
def parse_confluence_releases(html_content: str) -> list[Release]: ...
def fetch_calendar_entries() -> list[CalendarEntry]: ...
def verify_releases(
releases: list[Release],
calendar_entries: list[CalendarEntry],
) -> bool: ...
def main() -> None:
"""CLI entry point with --save-html / --load-html options."""
...
Import
# Run the verification script
python dev/verify_release_calendar.py
# With caching
python dev/verify_release_calendar.py --save-html /tmp/release.html
python dev/verify_release_calendar.py --load-html /tmp/release.html
I/O Contract
Inputs
| Name | Type | Required | Description |
|---|---|---|---|
| Confluence URL | str | Yes | Release plan wiki page URL |
| Calendar iCal URL | str | Yes | Google Calendar iCal feed URL |
| --save-html | Path | No | Cache HTML locally |
| --load-html | Path | No | Load from cache instead of fetching |
Outputs
| Name | Type | Description |
|---|---|---|
| Verification report | Console output | Comparison of planned vs. calendar releases |
| Discrepancies | List | Identified scheduling conflicts |
| Pass/Fail | bool | Whether all releases match calendar entries |
Usage Examples
Verify Release Schedule
# Verify current release schedule
python dev/verify_release_calendar.py
# Cache for offline review
python dev/verify_release_calendar.py --save-html /tmp/releases.html
Related Pages
Implements Principle
Page Connections
Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment