gpt4 book ai didi

GitHub Actions GIT_BRANCH 环境变量

转载 作者:行者123 更新时间:2023-12-05 08:30:21 25 4
gpt4 key购买 nike

我有一个 GitHub 操作运行我的网络应用程序单元测试。我从此操作运行 CodeClimate 测试报告。

CodeClimate 需要设置两个环境变量才能正确发送报告。这些是;

  • GIT_SHA
  • GIT_BRANCH

GitHub 操作通过 github.sha 通过 github 上下文使 git commit sha 可用,因此我可以像这样在操作上设置环境变量;

env:
GIT_SHA: ${{ github.sha }}

然而,github actions 并没有使分支名称可用。

它确实提供了一个名为 GITHUB_REF 的默认环境变量,这是完整的引用,但我知道我可以获取短引用,即使用这种简写语法的分支名称 $GITHUB_REF##*/

我遇到的问题是我无法使用此值设置名为 GITHUB_BRANCH 的环境变量 $GITHUB_REF##*/

有人知道我如何获取分支名称并将其设置为环境变量 GIT_BRANCH 以便 CodeClimate 测试脚本能够使用它。

最终我希望我的环境配置看起来像这样:

env:
GIT_SHA: <git commit sha>
GIT_BRANCH: <current git branch>

最佳答案

Ultimately I want my env config to look like this:

env:
GIT_SHA: <git commit sha>
GIT_BRANCH: <current git branch>

您不仅可以在工作流定义中实现相同的效果(设置环境变量),还可以通过在专用工作流步骤中动态设置变量来实现。你可以通过 environment files 来完成和 built-in GITHUB_SHA and GITHUB_BRANCH variables :

jobs:
set-env:
runs-on: ubuntu-latest
steps:
- name: Set environment variables
run: |
echo "GIT_SHA=${GITHUB_SHA}" >> $GITHUB_ENV
echo "GIT_BRANCH=${GITHUB_REF##*/}" >> $GITHUB_ENV
- name: Use environment variables
run: |
echo "GIT_SHA=${GIT_SHA}"
echo "GIT_BRANCH=${GIT_BRANCH}"

执行工作流应该给你输出:

enter image description here

关于GitHub Actions GIT_BRANCH 环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64883366/

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