Azure DevOps Pipeline无法从变量组获取TOKEN问题求助
解决Azure DevOps Pipeline无法读取变量组中TOKEN变量的问题
你的YAML代码里没正确引用目标变量组,这是拿不到TOKEN变量的核心原因,按下面方法修改即可:
1. 修正变量组引用方式
在variables块里,要明确声明引用的变量组,而不是只定义一个叫GROUP的变量。修改后的代码示例:
trigger: - main #qa pool: vmImage: 'ubuntu-latest' variables: - group: databrick-unity-catalog # 直接引入变量组 - name: DATABRICKS_TOKEN value: $(TOKEN) # 现在能正确读取变量组里的TOKEN - name: DATABRICKS_HOST value: "host_name" - name: NOTEBOOK_PATH value: "my_path" - name: JOB_ID value: "999999999" steps: - task: UsePythonVersion@0 inputs: versionSpec: '3.x' displayName: 'Set Python Version' - script: | echo "$DATABRICKS_HOST" echo "$DATABRICKS_TOKEN" echo "$NOTEBOOK_PATH" echo "$JOB_ID" displayName: 'Print Variables Only'
也可以用更简洁的写法:
variables: - group: databrick-unity-catalog DATABRICKS_HOST: "host_name" DATABRICKS_TOKEN: $(TOKEN) NOTEBOOK_PATH: "my_path" JOB_ID: "999999999"
2. 额外验证要点
- 确认变量组
databrick-unity-catalog确实存在,且里面确实有名为TOKEN的非机密变量 - 检查流水线所在项目是否有权限访问该变量组(在变量组的「安全性」设置里确认)
修改后重新运行流水线,看Print Variables Only步骤的输出,就能看到TOKEN的正确值了。
内容的提问来源于stack exchange,提问作者vw96
相关产品推荐
相关产品推荐

