Airflow 훅
Airflow 훅 (Airflow Hooks)
Airflow Hook은 Airflow의 REST API를 사용해 Airflow 설치 환경에서 DAG 실행을 트리거해요. DAG가 트리거되면 훅 실행이 성공하고, 그렇지 않으면 실패해요.
출처: 문서
본문
액션 파일의 Airflow 훅 속성
정보
전체 설정 스키마와 세부 사항은 Action configuration 문서를 참고하세요
| 속성 | 설명 | 데이터 타입 | 예시 | 필수 | 환경 변수 지원 |
|---|---|---|---|---|---|
| url | Airflow 인스턴스의 URL | String | http://localhost:8080 | yes | no |
| dag_id | 트리거할 DAG | String | example_dag | yes | no |
| username | 요청을 수행하는 Airflow 사용자 이름 | String | admin | yes | no |
| password | 요청을 수행하는 Airflow 사용자의 비밀번호 | String | admin | yes | yes |
| dag_conf | 그대로 전달될 DAG run 구성 | JSON | no | no | |
| wait_for_dag | DAG run이 완료되고 상태가 반영될 때까지 기다려요 (기본값: false) | Boolean | no | no | |
| timeout | DAG run 완료를 기다릴 시간 (기본값: 1m) | String (golang's Duration representation) | no | no |
예시
...
hooks:
- id: trigger_my_dag
type: airflow
description: Trigger an example_dag
properties:
url: "http://localhost:8000"
dag_id: "example_dag"
username: "admin"
password: "{{ ENV.AIRFLOW_SECRET }}"
dag_conf:
some: "additional_conf"
...
설정 필드에 기록되는 훅 정보
lakeFS는 액션을 트리거한 이벤트를 Airflow 요청의 설정 속성(conf)에 항목으로 추가해요.
이 항목의 키는 lakeFS_event이고 값은 이 문서에서 설명하는 이벤트와 일치해요.
더 알아보기 (Learn more)
공식 문서: lakeFS Airflow Hooks 가이드