azure-devops - 如何从子命令分配变量?
问题描述
我正在尝试生成一个字符串并将其分配给我想在以后的任务中使用的变量。
尝试通读文档,但没有任何示例说明如何执行此操作。
使用Bash@3
不工作
GITSHA=$(git rev-parse --verify HEAD | cut -c1-10)
echo '##vso[task.setvariable variable=tag]$(1.0.0-${GITSHA})'
echo $TAG
不工作
GITSHA=$(git rev-parse --verify HEAD | cut -c1-10)
echo '##vso[task.setvariable variable=tag]1.0.0-${GITSHA}'
echo $TAG
不工作
GITSHA=$(git rev-parse --verify HEAD | cut -c1-10)
echo '##vso[task.setvariable variable=tag]"1.0.0-${GITSHA})"'
echo $TAG
我希望有一种方法可以在脚本期间生成一个值并使用这种机制分配它,以便可以在下游任务中使用它。
解决方案
如何从子命令分配变量?
似乎语法不正确。
请尝试以下格式:
GITSHA=$(git rev-parse --verify HEAD | cut -c1-10)
echo "##vso[task.setvariable variable=tag]1.0.0-$GITSHA"
然后该变量应该在下一步中起作用,您可以使用命令行显示它:
steps:
- script: |
echo $(tag)
此外,您可以使用命令行任务并运行以下命令来设置变量:
set GITSHA=(git rev-parse --verify HEAD | cut -c1-10)
echo '##vso[task.setvariable variable=tag]1.0.0-%GITSHA%
推荐阅读
- c - 无法理解以下代码。以下代码如何创建正定矩阵
- javascript - Vue 公式中的多选下拉菜单
- android - Google Developer Console 中的应用更新被拒绝
- android - 华为的 Kotlin BLE 扫描问题
- javascript - 如何在节点 js 中获取 IST 日期时间(YYYY-MM-DD HH:mm:ss)?
- css - 如何禁用 Vuetify 样式?
- cassandra - 在写入 Cassandra 时防止出现竞争条件
- c++ - 复合类型的make_array不起作用
- substrate - 浏览第一个教程:启动节点时“无法访问本机证书存储”
- css - Bootstrap 4 三级子菜单不在右侧