azure-devops - azure devops - 如何使用环境变量在任务中创建新变量?
问题描述
我可以在任务中获取新的字符串变量但是如果这个新变量中有环境变量,它会失败我需要在任务中使用curl结合API和环境变量来获取新变量。
For Simple Example
//get string variable in task it work
- task: Bash@3
displayName: foovariable
inputs:
targetType: 'inline'
script: |
FOO="FOOTEST"
echo "##vso[task.setvariable variable=FOO]$FOO"
- task: Bash@3
displayName: echofoo
inputs:
targetType: 'inline'
script: |
echo "$(FOO)"
//print FOOTEST
//string with variables in new variables then it will fail
variables:
NAME: Eddy
steps:
- task: Bash@3
displayName: foovariable
inputs:
targetType: 'inline'
script: |
Hello="Hi $(NAME)"
echo "##vso[task.setvariable variable=HELLO]$HELLO"
- task: Bash@3
displayName: echofoo
inputs:
targetType: 'inline'
script: |
echo "$(Hello)"
//I Need it to show "Hi Eddy"
请帮我修改语法 谢谢
解决方案
您可以尝试不要将调用的环境变量放在双引号中。像这样:
- task: Bash@3
displayName: foovariable
inputs:
targetType: 'inline'
script: |
Hello="hi "$NAME
echo "##vso[task.setvariable variable=HELLO]$Hello"
- task: Bash@3
displayName: echofoo
inputs:
targetType: 'inline'
script: |
echo "$(Hello)"
在 echofoo 步骤中可以看到,它可以成功打印 $(Hello):
推荐阅读
- laravel - 如何为数据透视表创建测试?
- wso2 - 如何更改 WSO2 3.2.0 APIM 的默认端口?
- firebase - firestore 更新地图字段
- apache-kafka - KSQLDB - 流不使用 TOPIC 键产生任何结果
- javascript - 在第一页加载时反应不准确地计算 div 的高度
- python - “无法使用提供的凭据登录。” 尝试登录我的用户时
- python - 如何将月份添加到日期时间对象?
- r - igraph广度优先搜索(bfs)回调函数R
- gnuradio - 使用 GNURadio 生成 IQ 文件的最佳方法是什么,这些文件在由矢量信号发生器循环时是相位连续的?
- web-services - 如何禁用肥皂网络服务的详细错误消息?