我已经通过
Settings -> Secrets and variables -> Actions --> Tab Variables -> Repository Variable's
预设了一个起始/默认值定义了一个 GitHub 存储库变量。该变量保存最后一次提交 SHA。
如何在新提交后用新 SHA 替换 GitHub 工作流(或作业)中的此变量值,以便新值在下次运行中可用?
这样做的原因是我有一个存储库,其中包含前端和后端的单独源。 我正在使用 GitHub Actions 来触发构建、创建图像、将其放入注册表中......
当提交/推送到存储库时,我已经能够识别 FE、BE 中是否进行了更改,或者两者都没有更改。
例如,如果仅在 BE 中进行更改,我只想为 BE 执行所有操作,而不是为 FE 执行所有操作,并使用最后一次 (BE) 提交的 SHA 更新名为 VERSION_BE 的存储库变量。 对于有限元部分,我不想执行所有步骤。相反,我想在上次构建期间使用 FE 映像以及存储在存储库变量 VERSION_FE 中的 SHA。 创建/标记新创建的图像时,我只想读出(更新的)存储库变量 VERSION_BE 和 VERSION_FE。
您可以使用 github CLI 并从工作流程运行它。
你应该使用gh变量集
name: Comment when opened
on:
issues:
types:
- opened
jobs:
comment:
runs-on: ubuntu-latest
steps:
- run: gh variable set MYVARIABLE --body "<SHA HERE>
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}