气流额外的操作员链接未渲染

时间:2019-10-27 18:14:47

标签: airflow

我在获取额外的操作员链接以渲染Airflow时遇到问题。

我们下面有一个这样的代码段。

class ExampleLink(BaseOperatorLink):
    def get_link(self, operator, dttm):
        return 'http://example.org'

问题在于该按钮未在Airflow UI中呈现。我目前正在使用v1.10.4,但是如果这是问题,我可以进行更新。

是否有人熟悉在UI中创建自定义按钮的用法?

我也将其传递给自定义运算符,如下所示


class ExampleOperator(BaseOperator):
    ui_color = '#e4f0e8'
    operator_extra_link_dict = {
        'Example Console': ExampleLink(),
    }

对此表示任何建议或示例用法。

我在日志中也没有看到任何错误。

1 个答案:

答案 0 :(得分:0)

OperatorLink应该定义如下:

class ExampleLink(BaseOperatorLink):
    name = "example"
    def get_link(self, operator, dttm):
        return 'http://example.org'

上面的name将显示在按钮上。

您需要将以下内容传递给自定义类:

class ExampleOperator(BaseOperator):
    ui_color = '#e4f0e8'
    operator_extra_links = {
        'Example Console': ExampleLink(),
    }

注意:操作员链接仅适用于RBAC UI,不适用于基于Flask-admin的旧UI