我有一个简单的脚本来读取天蓝色管道中设置的秘密变量。我可以直接从“脚本”步骤打印,但无法在 python 脚本中解析。当我内联打印时,它可以工作。这似乎是一件非常基本的事情,但我已经检查了很多博客和选项。这个博客似乎在谈论我面临的问题:https ://brandonsnotepad.wordpress.com/2021/04/23/azure-devops-secret-variables-python/ 但没有帮助:(我没有到目前为止它工作。
在职的:
steps:
- script: echo $TOKEN
displayName: 'Run a one-line script'
env:
TOKEN: $(TOKEN)
输出:xxx
上面的输出是可以理解的。
我想在我的脚本中包含这个令牌以进行进一步处理
- task: PythonScript@0
inputs:
scriptSource: 'filePath'
scriptPath: './test.py'
failOnStderr: true
env:
TOKEN: $(TOKEN)
displayName: 'Get Token'
test.py 我尝试了以下选项:1。
token = os.getenv("TOKEN")
在这种情况下,我得到了这个错误。我正在使用 3.7.10 python 版本
NameError: name 'os' is not defined
所以我尝试这样做pip install os
,但以这个错误结束。我的理解是os
python应该附带一个默认包。但仍然根据上述错误进行了尝试。
ERROR: Could not find a version that satisfies the requirement os (from versions: none)
ERROR: No matching distribution found for os
- 然后我尝试参考我在单行脚本中所做的方式。
token = $(TOKEN)
错误:
SyntaxError: invalid syntax
- 然后假设,因为它是一个变量并从脚本传递,我也试过这个
token = TOKEN
错误:
NameError: name 'TOKEN' is not defined