首页 > 解决方案 > Azure DevOps 发布 - Ruby 脚本:所有内容都在 & 之后被剪切到一个秘密变量中

问题描述

看来我的问题与此处描述的问题非常接近

我有Azure DevOps带有预定义秘密变量的发布定义(在下面的屏幕截图中不是秘密,以更好地说明问题)

Azure DevOps 变量

在发布定义中有一个读取这个变量的 Ruby 脚本,但由于某种奇怪的原因,只有 Smith 被选中,之后的所有内容都被删除,因此我的发布一直失败

Ruby 脚本示例 在此处输入图像描述

Azure DevOps 日志示例 在此处输入图像描述

我最大的怀疑是这与&符号特殊字符有关&

以前有没有其他人遇到过类似的情况?

由于最近的评论而更新问题

我不会以明文形式传递密码。在这里,它作为一个例子来完成。我总是将它作为秘密变量传递 在此处输入图像描述

然后这个秘密变量作为参数传递给脚本 在此处输入图像描述

到目前为止我尝试过的

  1. 在此处输入图像描述导致了这个 在此处输入图像描述

  1. 在此处输入图像描述导致了这个在此处输入图像描述


  2. 在此处输入图像描述导致了这个在此处输入图像描述


标签: rubyvariablesazure-devops

解决方案


我这里没有ruby脚本,但是我使用powershell将带有&符号的变量传递给ps1脚本,报错,根据错误信息提示:不允许使用&符号。& 运算符保留供将来使用。您可以尝试用双引号 ("&") 将 & 号括起来,以将其作为字符串的一部分传递。希望这可以帮助。


推荐阅读