0

我有一个 python 项目,我正在使用 pytest 与 Report Portal 集成。
我从 Jenkins(自由式项目)执行测试。

为了获取报告门户中每个会话的用户名,我需要知道access_token用户的报告门户。
找到这些后,我为每个用户向 Jenkins 添加了一个秘密文本,其 ID 为用户 Jenkins BUILD_USER_ID

接下来,在 Jenkins 配置页面中,我点击了Use secret text(s) or file(s)Build Environment
然后点击Add and Secret text
我调用了变量 RP_UUID
并将凭据设置为Parameter expression.

詹金斯给了我一个提示:

有效的参数表达式由包含在 ${ 和 } 中的参数名称组成

我试图将此文件设置为${ BUILD_USER_ID },但出现以下错误:

Rebuilds build #17
Running as SYSTEM
Building remotely on Automation in workspace /var/lib/jenkins/workspace/test
[WS-CLEANUP] Deleting project workspace...
[WS-CLEANUP] Deferred wipeout is used...
[WS-CLEANUP] Done
ERROR: Could not find credentials entry with ID '${ BUILD_USER_ID }'
Finished: FAILURE

我尝试了各种方法,但似乎现阶段的詹金斯无法识别任何变量名。

知道如何解决这个问题或任何不同的方法吗?

ps
该字段Set Jenkins user build variables已打勾。

4

1 回答 1

0

请参阅JENKINS-36470参数表达式部分中唯一可以扩展的参数类型是凭据参数。不支持所有其他参数。因此,如果您想使用这种机制,您必须将输入参数定义为 Credentials 类型:

在此处输入图像描述

于 2021-06-30T07:33:53.430 回答