On on_failure_callback I am calling sns method to send notification which is working fine.
I want to declare sns function as a separate function using airflow plugins.
import boto3
from airflow import DAG
from airflow.operators import BashOperator
from datetime import datetime, timedelta
# t1, t2, t3 and t4 are examples of tasks created using operators
def sns(state):
client = boto3.client('sns',aws_access_key_id='abcd',aws_secret_access_key='abcd',region_name='us-east-1')
response = client.publish(
TargetArn='Topicarn',
Message='Test')
t3 = BashOperator(
task_id='task_3',
bash_command='fail',
on_failure_callback=sns,
dag=dag)
Thanks,
Rajeev