0

我有以下 Yaml 脚本。我正在寻找如何获取创建的令牌并将其存储到变量中:

    - bash: |
        echo {} > ~/.databricks-connect#
        source py37-venv/bin/activate
        pip3 install wheel
        pip3 install databricks-cli
      displayName: Install Databricks CLI
    - bash: |
        source py37-venv/bin/activate
        databricks configure --token <<EOF
        ${DATABRICKS_HOST}
        ${DATABRICKS_AAD_TOKEN}
        EOF
        databricks tokens create --lifetime-seconds 129600 --comment "My comment."

上述命令返回的响应是这个 json:

{
  "token_value": "dapi1a23b45678901cd2e3fa4bcde56f7890",
  "token_info": {
    "token_id": "1ab23cd45678e90123f4567abc8d9e012345fa67890123b45678cde90fa123b4",
    "creation_time": 1621287738473,
    "expiry_time": 1621417338473,
    "comment": "My comment."
  }
}

我想存储上面token_value的值,以便可以在下面的另一个任务中使用它。

4

1 回答 1

1

您可以使用jq解析响应 json 来获取令牌值,例如:

token=$(databricks tokens create --lifetime-seconds 129600 --comment "My comment." | jq .token_value --raw-output)

使用logging 命令设置$token为变量(您可以将其设置为秘密或不设置,单击链接查看使用情况),然后在下一个作业中使用它()。$(setvar.databrickstoken)

echo "##vso[task.setvariable variable=databrickstoken;issecret=true;isoutput=true]$token"
于 2021-08-23T02:58:55.427 回答