代码之家  ›  专栏  ›  技术社区  ›  JChao

是否有方法通过Airflow API创建/修改连接

  •  3
  • JChao  · 技术社区  · 6 年前

    Admin -> Connections ,我们有能力创建/修改连接的参数,但我想知道是否可以通过API进行同样的操作,以便能够以编程方式设置连接

    airflow.models.Connection 似乎它只处理实际连接到实例,而不是将其保存到列表中。这似乎是一个应该实现的函数,但我不确定在哪里可以找到这个特定函数的文档。

    2 回复  |  直到 6 年前
        1
  •  24
  •   mad_    6 年前

    连接实际上是一个模型,您可以使用它来查询和插入新的连接

    from airflow import settings
    from airflow.models import Connection
    conn = Connection(
            conn_id=conn_id,
            conn_type=conn_type,
            host=host,
            login=login,
            password=password,
            port=port
    ) #create a connection object
    session = settings.Session() # get the session
    session.add(conn)
    session.commit() # it will insert the connection object programmatically.
    
        2
  •  9
  •   Taylor D. Edmiston    6 年前

    airflow connections --add ...
    

    用法:

    airflow connections [-h] [-l] [-a] [-d] [--conn_id CONN_ID]
                        [--conn_uri CONN_URI] [--conn_extra CONN_EXTRA]
                        [--conn_type CONN_TYPE] [--conn_host CONN_HOST]
                        [--conn_login CONN_LOGIN] [--conn_password CONN_PASSWORD]
                        [--conn_schema CONN_SCHEMA] [--conn_port CONN_PORT]
    

    https://airflow.apache.org/cli.html#connections

    它看起来不像CLI目前支持修改现有的连接,但是在GITHUB上有一个JRRA问题,它带有一个活动的开放式PR。