python 모듈 설정
sys.path
에 값 추가
- 명시적으로 추가
- 예)
sys.path.append('/home/haejun')
- 경로 List에 직접적으로 추가하는 방식
- 예)
- OS 환경변수
PYTHONPATH
값 추가
Airflow 장점
장점
- 공통함수 작성
- 재활용성 증가
- DAG 깔끔
- 자동적으로 dags폴더와 plugins 폴더를 sys.path에 추가함
개발환경과 Airflow에서의 차이점
- plugins 폴더에 common 폴더와 common_func.py 생성
- python 개발환경
- 기본적으로 개발환경 설정시 프로젝트 폴더가 상위폴더로 잡혀서 아래와 같이 작성해야 함
from plugins.common.common_func
- airflow 환경
- 그러나, airflow에서는 python 개발환경이 아니므로 plugins 폴더를 인식하지 못함
- 따라서 바로 common 폴더명을 지정
- Why? airflow는 자동으로 plugins 폴더를 sys.path에 추가하기 때문에 자동으로 인식!!
from common.common_func
- python 개발환경 오류 해결방법
- 프로젝트 폴더 내
.env
파일 생성 - tip!
.env
는 git에 안 올려도 됨
- 프로젝트 폴더 내
WORKSPACE_FOLDER = /Users/haejun/vscode/airflow
PYTHONPATH = ${WORKSPACE_FOLDER}/plugins