gpt4 book ai didi

github-actions - 什么时候应该在 github 操作中使用单花括号和双花括号作为变量引用?

转载 作者:行者123 更新时间:2023-12-04 14:51:28 25 4
gpt4 key购买 nike

我开始学习 github 操作(从 jenkins piplines 转换)。我对 yaml 不是很熟悉。
我无法弄清楚何时或为什么应该使用双花括号与单花括号引用变量。我感觉这里有一个重要的区别......
你能指点我吗?

name: sample
on:
workflow_dispatch
env:
MY_VAR: "something"

jobs:
do_things:
runs-on: ubuntu-latest
steps:
- name: "Step 1"
run: echo "${MY_VAR}"
- name: "Step 2"
run: echo "${{env.MY_VAR}}"

enter image description here

最佳答案

这一行:

run: echo "${MY_VAR}"
实际上是在运行一个 bash 脚本,它说:
echo "${MY_VAR}"
所以在这种情况下, ${MY_VAR}根据 bash 的规则进行扩展;在这种情况下,它只会打印环境变量 MY_VAR ,但你可以做 all sorts of crazy things使用 bash 的参数扩展。
另一方面,这一行:
run: echo "${{env.MY_VAR}}"
expression syntax用于 GitHub Actions 并将由 GitHub Actions runner 扩展。在这种情况下,变量 MY_VAR在您的环境上下文中的内容将在 shell 脚本中被替换。
将执行的文字 shell 脚本将在其中包含环境变量值。所以如果 MY_VAR=foo ,那么将运行的文字 bash 脚本是:
echo "foo"
因此,尽管最终结果是相似的,但根据替换发生的时间,到达那里的方式却大不相同。

关于github-actions - 什么时候应该在 github 操作中使用单花括号和双花括号作为变量引用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69004673/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com