red*_*war 21 github github-actions
我可以得到reowner/repo-name,${{ github.repository }}但我喜欢只得到repo-name.
当我在做的时候。
Gitlab 有一些我可以用的东西
如何从.yaml非内部脚本获取引用访问环境变量?不${{ $ENV_VAR }}工作?可能不是。
有没有办法直接在yaml中删除或替换a中的斜杠?
build:
needs: test
name: Build release Zip
runs-on: ubuntu-latest
env:
DEPLOY_REF: ${{ github.sha }}
DEPLOY_REF_SHORT: ${{ github.sha }}
DEPLOY_ZIPFILE: ${{ github.workspace }}/build/zip/${{ github.repository }}-${{ github.sha }}.zip
steps:
Run Code Online (Sandbox Code Playgroud)
Sam*_*ira 24
github上下文还包含事件数据,您可以从中轻松阅读一些更详细的信息。在这种情况下,${{ github.event.repository.name }}只会给你repo-name一部分。
创建测试工作流/作业以打印所有上下文数据可能是一个好主意,直到您熟悉它们为止,请参阅示例将上下文信息打印到日志文件。
至于替换文本,您始终可以使用::set-env或::set-output将第一步用于准备您以后需要的所有内容。您只需要以特定格式打印名称/值,这样您就可以在执行此操作时使用您熟悉的任何 shell 来操作文本:
# All steps after this one will have env variable `GHA_BRANCH` passed to them.
- run: echo ::set-env name=GHA_BRANCH::$(echo $GITHUB_REF | awk -F / '{print $3}')
shell: bash
Run Code Online (Sandbox Code Playgroud)
小智 24
除了 @Samira 响应之外,您还可以用来${GITHUB_REPOSITORY#*/}获取存储库名称,因为它会删除/前缀之前的所有内容。
例如,在我的工作流程中我使用:
- run: echo ::set-env name=TF_VAR_instance_label::${GITHUB_REPOSITORY#*/}-${GITHUB_SHA:0:7}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6962 次 |
| 最近记录: |