ComenzarEmpieza gratis

Definir una tarea con BashOperator

BashOperator te permite especificar cualquier comando o script de Shell y añadirlo a un flujo de trabajo de Airflow. Puede ser un gran primer paso para implementar Airflow en tu entorno.

Hasta ahora has estado ejecutando algunos scripts manualmente para limpiar datos (usando un script llamado cleanup.sh) antes de entregarlos a tus compañeros del equipo de Data Analytics. A medida que te asignan más tareas, te has dado cuenta de que es difícil mantener el ritmo ejecutándolo todo a mano, y más aún gestionar errores o reintentos. Quieres implementar un script sencillo como operador de Airflow.

El DAG de Airflow analytics_dag ya está definido y tiene la configuración adecuada.

Este ejercicio forma parte del curso

Introducción a Apache Airflow en Python

Ver curso

Instrucciones del ejercicio

  • Importa el objeto BashOperator.
  • Define un BashOperator llamado cleanup con task_id igual a cleanup_task.
  • Usa el comando cleanup.sh.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Import the BashOperator
from airflow.operators.bash import ____

with DAG(dag_id="test_dag", default_args={"start_date": "2024-01-01"}) as analytics_dag:
  # Define the BashOperator 
  cleanup = ____(
      task_id=____,
      # Define the bash_command
      bash_command=____,
  )
Editar y ejecutar código