Github Actions:跨工作共享步骤

问题描述 投票:0回答:1

在我的 Github 操作工作流程中,我有一个安装 eksctl 的工作:

  install-cluster:
    name: "staging - create cluster"
    runs-on: ubuntu-latest
    steps:

  - name: Setup eksctl
    run: |
      curl --silent --location "https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_$(uname -s)_amd64.tar.gz" | tar xz -C /tmp
      sudo mv /tmp/eksctl /usr/local/bin

然后我有另一份工作(在同一工作流程中),我部署了一些应用程序。如何在我的第二份工作中使用 eksctl 安装步骤。目前,我在第二项工作中添加了一个步骤来安装 eksctl。缓存是执行此操作的唯一方法吗?就像我安装一个工具并将其二进制文件保留在缓存中并在我的第二份工作中将其取回一样?

github github-actions
1个回答
2
投票

GitHub 操作作业将在其自己的运行器上运行,这意味着您无法在第二个作业中重复使用第一个作业中安装的二进制文件。如果您想让它可用而无需重新安装,您可能必须在第二个作业中使用操作来上传[1]和下载[2]该工件。

如果您想在同一作业中缓存二进制文件,并在其他步骤中重复使用它,您可以设置https://github.com/actions/cache

参考资料:

  1. https://github.com/actions/upload-artifact
  2. https://github.com/actions/download-artifact
© www.soinside.com 2019 - 2024. All rights reserved.