如何在github操作中使用计算属性

Dre*_*ton 5 bash yaml github-actions

我正在尝试在新的github action yaml格式(新)中重建ci-cd,问题是我似乎无法在一个步骤中将计算值用作参数。

我尝试了以下

      - name: Download Cache
        uses: ./.github/actions/cache
        with:
          entrypoint: restore_cache
          args: --bucket=gs://[bucket secret] --key=node-modules-cache-$(checksum package.json)-node-12.7.0
Run Code Online (Sandbox Code Playgroud)

但是,“ $(checksum package.json)”作为参数的一部分无效。请不要与命令校验和存在(容器中确实存在)无关。

我正在尝试在Google Cloud build中复制这种设置

  - name: gcr.io/$PROJECT_ID/restore_cache
    id: restore_cache_node
    args:
      - '--bucket=gs://${_CACHE_BUCKET}'
      - '--key=node-modules-cache-$(checksum package.json)-node-${_NODE_VERSION}'
Run Code Online (Sandbox Code Playgroud)

我希望能够以与其他ci-cd解决方案类似的方式使用计算参数。

有没有办法做到这一点,我很想念?也许能够在docker容器中使用'run:'来运行一些命令。

pet*_*ans 1

目前我知道的唯一解决方案是计算上一步中的值,以便您可以在后续步骤中使用它。

有关使用的方法,请参阅此答案set-output。这是我建议在工作流程步骤之间传递计算值的方法。 Github Actions,如何在作业步骤之间共享计算值?

或者,您可以创建环境变量。计算出的环境变量也可以在后续步骤中使用。 如何在 GitHub Actions 中使用 bash 表达式设置环境变量?