Definiera en BashOperator med @task.bash
Med en Bash-uppgift kan du ange valfritt skalkommando eller skript och lägga till det i ett Airflow-arbetsflöde. Det är ett utmärkt sätt att komma igång med Airflow i din miljö.
Du har hittills kört några skript manuellt för att rensa data (med hjälp av ett skript som heter cleanup.sh) innan du levererar resultaten till dina kollegor i Data Analytics-gruppen. Allt eftersom fler uppgifter tilldelats dig har du märkt att det blir allt svårare att hålla koll på allt som behöver köras manuellt – än mindre hantera fel eller omförsök. Nu vill du implementera ett enkelt skript som en Airflow-operator.
Airflow-objekten dag och task har redan importerats.
Den här övningen är en del av kursen
Introduktion till Apache Airflow i Python
Övningsinstruktioner
- Använd dekoratorn
@task.bashför att definiera uppgiften. - Använd metodnamnet
cleanup_task. - Se till att uppgiften returnerar
cleanup.sh.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
@dag(
dag_id='analytics_dag',
start_date=datetime(2026,1,1)
)
def analytics_dag():
# Specify a Bash task
@____
def ____():
return '____'
# Run the task
cleanup_task()
analytics_dag()