我有一个包含2个脚本任务的bamboo
管道。
1.安装npm包的脚本任务(工作正常)
1.运行nodejs
脚本和curl
命令的脚本任务(有问题)
在第二个脚本任务中,我
tee -a test.js > /dev/null << EOT
nodejs script that sets a variable
var signedToken = token + "." + signature;
process.env.AuthToken = signedToken;
EOT
echo "xxxxxxxxxxxxxxxxx"
node test.js
echo "xxxxxxxxxxxxxxxxx"
curl --location 'https://test.com/' \
--header 'Content-Type: application/json' \
--header 'Authorization: ${bamboo.AuthToken}' \ not working
--data '{ }'
字符串
在curl
命令中,如何将头Authorization设置为在nodejs
脚本中设置的变量(本例中为signedToken)的值?
1条答案
按热度按时间slsn1g291#
process.env
是您的节点进程。您需要一种方法将signedToken
暴露给当前的shell进程。一种方法是将标记打印到stdout并在bash中捕获它,假设节点脚本不产生任何其他输出。以下是它的要点:字符串
如果节点脚本产生其他输出,则将令牌写入外部文件,然后bash脚本将在curl命令中读取和使用该文件。