通过命令行更新气流中的命名环境变量

时间:2020-10-13 21:08:03

标签: json airflow directed-acyclic-graphs

我有一个关于气流的变量,叫做
BLUE_APPLE。

我当前已登录到气流Web服务器。

airflow variables --get BLUE_APPLE 

显示

  {
    "title": "Sample Konfabulator Widget",
    "name": "main_window",
    "weedth": 500,
    "height ": 500
}

如何从命令行更新此BLUE_APPLE以反映(weedth->宽度,并删除高度旁边的空格):

  {
    "title": "Sample Konfabulator Widget",
    "name": "main_window",
    "width": 500,
    "height": 500
}

我看着 https://airflow.apache.org/docs/stable/cli-ref#variables

airflow variables [-h] [-s KEY VAL] [-g KEY] [-j] [-d VAL] [-i FILEPATH]
              [-e FILEPATH] [-x KEY]

但是没有有关此操作的示例。

1 个答案:

答案 0 :(得分:1)

您可以使用-s-i选项。

带有-s KEY VAL(为密钥设置变量)

airflow variables -s BLUE_APPLE "{ \"title\": \"Sample Konfabulator Widget\", \"name\": \"main_window\", \"width\": 500, \"height\": 500 }"

带有-i FILEPATH(导入JSON文件)

airflow variables -i /path/to/my/variables.json

并且variables.json应该具有

{
    "BLUE_APPLE": {
        "title": "Sample Konfabulator Widget",
        "name": "main_window",
        "width": 500,
        "height": 500
    }
}

在这两个选项中,您都需要传递整个对象,因为您无法更新对象内的子键。