Airflow 连接密码在 UI 中不可见,并且在保存连接时无法连接到 slack

Airflow connection passwords not visible in UI and not connecting to slack when connection saved

所以,我正在尝试使用 SlackWebhookOperator 在 airflow 和 slack 之间建立连接。

首先,在气流 UI 中,我试图存储的密码实际上并没有保存。我没有在 PW 领域得到 **********,而是什么都看不到。这是我第一次看到这个,我之前设置的所有连接都存储了密码。

当我将 slack webhook 直接传递给主机时,我的集成运行了,所以我知道它正在到达。

老实说,我是个新手,我似乎找不到太多文档,但我担心我的环境表现得很奇怪。我试过创建多个连接,它们都是这样。

我尝试调用松弛连接时的 dag 代码:

import datetime
from airflow import models
from airflow.hooks.base_hook import BaseHook
from airflow.contrib.operators.slack_webhook_operator import SlackWebhookOperator   

default_dag_args = {
                    'start_date': datetime.datetime(2020, 12, 9),
                    'depends_on_past': False,  
                    'retries': 1,
                    'retry_delay': datetime.timedelta(minutes=5),
                    }
slack_connection = 'Test'
slack_webhook_token = BaseHook.get_connection(slack_connection).password

dag = models.DAG(
                'Test_Slack',
                schedule_interval= '@daily',
                default_args=default_dag_args,
                ) 
                
test_send_slack_message = SlackWebhookOperator(
        task_id = 'Slack_Test',
        http_conn_id = slack_connection,
        token = slack_webhook_token,
        message = 'Test',
        channel = '#channel',
        dag = dag
        
        )
test_send_slack_message.execute(context = None)

正如我所提到的,当我传入完整的松弛网络钩子时,连接确实有效 url。

通过粘贴到额外字段和密码字段解决。

不是最好的解决方案,但气流仍然没有显示任何类型的密码。