Github 操作在作业之间共享工作空间/工件?

2023-11-29

尝试使用 Github 的 beta 操作时,我有两项工作,一项是构建代码,另一项是部署代码。但是,我似乎无法在部署作业中获取构建工件。

我最新的尝试是为每个作业手动设置具有相同卷的容器映像,根据文档,这应该是解决方案:https://help.github.com/en/articles/workflow-syntax-for-github-actions#jobsjob_idcontainervolumes

设置容器要使用的卷数组。您可以使用卷在服务或作业中的其他步骤之间共享数据。您可以在主机上指定命名 Docker 卷、匿名 Docker 卷或绑定安装。

Workflow

name: CI
on:
  push:
    branches:
    - master
    paths:
    - .github/workflows/server.yml
    - server/*
jobs:
  build:
    runs-on: ubuntu-latest
    container:
      image: docker://node:10
      volumes:
      - /workspace:/github/workspace
    steps:
    - uses: actions/checkout@master
    - run: yarn install
      working-directory: server
    - run: yarn build
      working-directory: server
    - run: yarn test
      working-directory: server
    - run: ls
      working-directory: server
  deploy:
    needs: build
    runs-on: ubuntu-latest
    container:
      image: docker://google/cloud-sdk:latest
      volumes:
      - /workspace:/github/workspace
    steps:
      - uses: actions/checkout@master
      - run: ls
        working-directory: server
      - run: gcloud --version

第一个作业(构建)有一个构建目录,但是当第二个作业(部署)运行时它没有,并且仅包含源代码。

该项目是一个单一存储库,其中包含我尝试在路径下部署的代码server因此所有的working-directory flags.


您可以使用 Github Actions upload-artifact 和 download-artifact 在作业之间共享数据。

In job1:

steps:
- uses: actions/checkout@v1

- run: mkdir -p path/to/artifact

- run: echo hello > path/to/artifact/world.txt

- uses: actions/upload-artifact@master
  with:
    name: my-artifact
    path: path/to/artifact

和工作2:

steps:
- uses: actions/checkout@master

- uses: actions/download-artifact@master
  with:
    name: my-artifact
    path: path/to/artifact
    
- run: cat path/to/artifact/world.txt

https://github.com/actions/upload-artifact
https://github.com/actions/download-artifact

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Github 操作在作业之间共享工作空间/工件? 的相关文章

  • Composer 无法获取 github

    今天 我尝试通过运行来安装 Laravelcomposer create project laravel laravel 5 1 myproject prefer dist我收到此错误 Could not fetch https api g
  • 使当前提交成为 Git 存储库中唯一(初始)提交?

    我目前有一个本地 Git 存储库 我将其推送到 Github 存储库 本地存储库有约 10 次提交 Github 存储库是其同步副本 我想要做的是从本地 Git 存储库中删除所有版本历史记录 以便存储库的当前内容显示为唯一提交 因此存储库中
  • Git 更改丢失 - 为什么?

    我们的开发团队正在使用 git 最近我们至少两次丢失了文件更改 我们正在使用私人 Github 存储库 在当前情况下 我们可以返回 Github 上的日志并查看我对文件所做的一些更新 后来 另一位团队成员更改了文件的不同部分 它似乎破坏了我
  • Github - 上传文件

    我正在尝试将文件夹添加到 github 存储库 该文件在 github 上显示为空 并有一个绿色箭头 有谁知道如何解决这个问题 我将不胜感激你的帮助 谢谢 这看起来类似于 Git 如何跟踪未跟踪的内容 https stackoverflow
  • BRISK 特征检测器检测零个关键点

    下面显示的 Brisk 探测器没有给我任何关键点 有人可以提出一个问题吗 我将尝试用一些代码解释我在下面所做的事情 include opencv2 features2d features2d hpp using namespace cv u
  • Git 工作流程:分叉项目并维护本地修改副本,但保持最新

    我正在尝试找出最佳工作流程 用于维护具有自定义功能的 github 托管项目 moodle 的本地副本 同时保持保持副本最新的能力 告诉我我正在考虑做的事情是否完全疯狂 分叉项目 github com moodle moodle gt gi
  • Travis CI 可以在同一存储库的不同分支中使用加密文件吗?

    我正在尝试让 Travis CI 构建在我自己的私人分支和我组织的存储库中工作 我使用以下方法加密了配置文件travis encrypt file命令 它似乎在我自己的 fork 的 travis 设置中创建了两个环境变量 如下所示 加密
  • 在我的例子中,GIT 添加恢复(保留更改)

    在我对文件进行更改之后 我用git add FILE NAME 然后 我想将其恢复为未添加但与此同时保留更改 这个怎么做 git reset FILE NAME会做的 See the git reset manual https git s
  • 当我尝试在 Azure 上部署无框架静态 Web 应用程序时,为什么会从 GitHub Actions 收到生成错误?

    我有一个简单的静态网站 我尝试使用 GitHub Actions 将其部署为 Azure 静态 Web 应用程序 无框架 我的目录结构是 github workflows css img js index html 当我推送到 GitHub
  • 我可以直接在 Maven 中使用 GitHub 项目吗?

    我有兴趣使用GitHub 上的项目 https github com toelen spymemcached jcache作为我的项目中的依赖项 GitHub 项目有一个pom文件 我可以修改我的pom文件来使用这个项目 如果是这样 怎么办
  • 推送更改到 Git 不起作用

    每次我想要提交命令 git push heroku master 时 系统都会要求我在 PowerShell 中输入凭据 当我输入 heroku 凭据 默认情况下连接到 git 时 我收到错误消息 但是 当我输入我的主目录中的 netrc
  • Git Hook - 在我推送到 github 后让服务器拉取

    我有一个本地存储库 并且我在实时服务器上设置了另一个存储库 www site com projects ProjectA 我想要实现的目标非常简单 在我推送到 GitHub 后 我想要存储库位于www site com projects P
  • 我可以通过 GH API 获取两次提交之间一个文件的差异数据吗?

    我知道如何通过 API 以及 SHA 和所有这些好东西来获取文件的提交 但是 假设我只想要 1 次提交中的文件差异或两次提交中同一文件的差异 例如 在这次提交 https github com rails rails commit ea75
  • 在 TFS 下的 CI 队列上构建时包未恢复(VS Online VS2015)

    我问过一个关于构建错误的问题 https stackoverflow com questions 34808954 build errors of missing packages in visual studio online并继续由我绝
  • 无法从 Git 扩展向 GitHub 进行身份验证?

    我只是在 Visual Studio 2010 中设置 Git 扩展 但无法真正使其工作 我无法进行身份验证 在 Git Extensions 中 如果我选择 Plugins gt GitHub 我可以添加用户 密码 API 令牌并选择 S
  • 自动部署资源

    我足够了解我们需要通过单个用户操作来部署我们的应用程序 但是 我don t know 在 NET 商店中可以使用哪些好工具 您如何管理每个环境的配置更改 有人可以给我指出一些用于持续集成的好资源吗 我希望看到一些理论以及逐步的实践指南 Ed
  • 如何在 github 复合操作步骤中动态设置环境变量?

    我确实需要它作为一个环境变量 这是为了复合动作具体来说 在复合操作中 我尝试了许多不同的设置环境变量的方法 我发现做到这一点的唯一方法是使用env在步骤本身内 runs using composite steps name A step e
  • 如何仅在特定错误退出值(0 除外)上将 Jenkins 构建标记为成功?

    当我运行Execute shell构建步骤来执行脚本并且该脚本返回0 Jenkins将构建标记为SUCCESS 否则它将其标记为FAILURE这是预期的默认行为0表示没有错误 任何其他值表示有错误 有没有办法将构建标记为SUCCESS仅当返
  • 将文件从一个存储库复制到另一个存储库的 github 操作

    我的公司创建了一种在环境之间移动文件的复杂方法 现在我们希望将某些构建的 JS 文件 已转换和缩小 从一个 github 存储库移动到另一个 使用 github 操作可以实现这一点吗 最简单的选择是克隆目标存储库 将文件复制到目标存储库中
  • 为什么我的存储库的 github 页面中没有出现问题选项卡?

    我想在 github 存储库中创建问题来纠正存储库中的技术债务 我看不到问题选项卡 对于其他存储库 问题选项卡显示在拉取请求选项卡下方 如何为我的存储库启用问题选项卡 您必须先启用问题 您可以通过点击来做到这一点Settings并启用 问题

随机推荐

  • 如何用Java从给定的数字列表中生成随机数

    假设我有一个像 1 3 7 9 这样的数字数组 向量 那么我需要从这个列表中随机猜测一个数字 在 Java 中使用 Random 类似乎不可能做到这一点 谁能帮我告诉我一种做这种事情的方法 我必须更改用于生成随机数的数字列表 我正在尝试实施
  • Python 3.4 在生成一些(但不是全部)带有分段错误 11 的 Cartopy 地图时崩溃

    我已经在运行 El Capitan 10 11 6 和 Python 3 4 的 Mac 上安装了 Python 映射工具 Cartopy 我可以使用 Cartopy 成功绘制一些地图 但在某些情况下 Python 内核会因分段错误 11
  • 无法实例化类型 [简单类型,类 java.time.LocalDate] 的值

    这里我使用 java 1 8 的 LocalDate 类 在我的 bean 中 我将返回类型设置为 LocalDate 我发送日期格式为07 01 2017 当我试图保存时 我遇到了以下异常 org springframework web
  • 虚函数和纯虚函数之间的区别[重复]

    这个问题在这里已经有答案了 纯虚函数和虚函数有什么区别 我知道 纯虚函数是一个没有函数体的虚函数 但这是什么意思以及下面的行实际上做了什么 virtual void virtualfunctioname 0 虚函数使其类成为多态基类 派生类
  • 为什么这个分支会破坏类型推断?

    我正在使用一个自行开发的实现Either在Java中 有这样的方法 public static
  • 嵌套的弹性元素不会使父元素增长

    我正在尝试编写一个标题 其中包含月份名称以及该月名称正下方的所有日期 天项目具有固定宽度 所以我想 为什么不使用 Flexbox 由于某些原因 day其父级元素正在下降 并且父级元素不会增长 你能告诉我为什么吗flex basis auto
  • 如何使用Python和Cypher在Apache Age中实现最短路径算法?

    我正在开发一个使用 Apache Age 作为图形数据库的 Python 项目 我需要找到两个可能节点之间的最短路径 我如何使用 Python 来实现这个 创建节点和图结构的代码如下 Python code to create nodes
  • 如何创建在设备和佩戴上不同的通知?

    基本上 我想知道是否有可能创建两个不同的通知以及如何创建 一个用于 Android 设备 另一个用于 Android Wear 例如 我想要setContentText 但在 Android 设备上我想要setContentTitle an
  • 在 ObservableList 上调用clear()会导致IndexOutOfBoundsException

    我有一个带有可观察列表的组合框 该列表会随着用户输入字符或进行选择而更新 我遇到的问题是当我从 ComboBox 中选择一个项目并调用侦听器事件 然后调用 ComboBox 的 ObservableList 中的clear 方法时引起的 完
  • Android TCP 应用程序挂在 inStream.readline() 上

    这是一个延续这个问题因为它回答了我原来的问题 但它没有解决错误 问题 如何修复挂在这一行的代码inStream readline 我的意图 这是在一个线程中 该线程将循环检查是否有 outMessage 如果有 它将发送消息 接下来 它将检
  • 如何在 Vim 中实现类似 MATLAB 的单元格模式

    在 MATLAB 中 我们可以向编辑器写入以下内容 a example cell plot rand 3 another cell A rand 2 10 t linspace pi pi 2 10 compass fft A sin t
  • 将 Parceler (@Parcel) 与 Realm.io (Android) 一起使用

    我有以下代码会产生错误 Error Parceler Unable to find read write generator for type io realm Realm for io realm RealmObject realm 一切
  • MATLAB 中的稳定 AccumArray

    MATLAB的内置函数accumarray接受一个函数fun作为第四个参数 A accumarray subs val sz fun 这适用fun到每个元素子集val具有相同的下标subs 然而 该文档指出 如果下标在subs未根据其线性索
  • 在下拉列表内的树层次结构中显示类别/子类别

    我有一个类别表 其中包含字段 id name 和parent id 根类别的parent id 0 现在我想在下拉列表中显示类别列表 结构如下 root category first sub category sub sub categor
  • .NET 4 GUID 是如何生成的?

    我知道有很多问题here以及雷蒙德的出色 像往常一样 post 然而 由于创建 GUID 的算法明显发生了变化 我发现很难获得任何最新信息 这MSDN似乎试图提供尽可能少的信息 关于 NET 4 中如何生成 GUID 我们了解多少 更改了什
  • ID 保存并显示名称 - 带芯片的材质 ui 多选

    我正在使用基于文档示例的 Material UI Multiple Select 我需要保存所选选项的 ID 和显示名称 我尝试了很多方法但没有任何帮助 我需要存储 id 并显示值 请帮助我指导 这是我的代码和盒子link 我也想知道同样的
  • 奇怪的谷歌地图行为 - 瓷砖仅出现在左上象限

    使用谷歌地图数十次 但无法绕过这一点 为地图版本 3 执行 google 的简单 hello world http code google com apis maps documentation javascript tutorial ht
  • 赋值关联性[重复]

    这个问题在这里已经有答案了 赋值运算符有右到左关联性 所以 var x y x y 1 按预期工作 x 等于 1 现在考虑代码 var foo foo x foo n 2 我希望上面的工作像下面这样 var foo n 2 foo x fo
  • 管理两个 NSURLConnection

    我想从两个不同的 kml 文件执行两个异步请求 因此我首先设置两个请求 NSString server1URL NSString stringWithFormat NSMutableURLRequest firstRequest NSMut
  • Github 操作在作业之间共享工作空间/工件?

    尝试使用 Github 的 beta 操作时 我有两项工作 一项是构建代码 另一项是部署代码 但是 我似乎无法在部署作业中获取构建工件 我最新的尝试是为每个作业手动设置具有相同卷的容器映像 根据文档 这应该是解决方案 https help