设置容器要使用的卷数组。可以使用卷在服务或作业中的其他步骤之间共享数据。可以在主机上指定命名Docker卷、匿名Docker卷或绑定挂载。
工作流程
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
第一个作业(build)有一个build目录,但当第二个作业(deploy)运行时,它没有,只包含源代码。
这个项目是一个mono repo,我试图部署的代码位于路径server
,因此所有work-directory
标志。
您可以使用Github操作upload-artifact和download-artifact在作业之间共享数据。
在工作1:
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
我在AWS中使用Terraform部署了一个基础设施。这个基础设施可以部署到不同的环境中,我使用的是工作区。 部署中的大多数组件应该为每个工作区分别创建,但我有几个关键组件希望在它们之间共享,主要是: IAM角色和权限 例如: 第一个资源是一个IAM角色,应该在该Lambda的所有实例中共享,并且不应该重新创建多次。 第二个资源是Lambda函数,其名称取决于当前工作区,因此每个工作区将部署并跟踪
我只是从GitHub操作开始,并尝试正确配置作业。现在我有了一个建立python并安装依赖项的作业构建,我还有一个需要运行依赖项的behave test作业。当我在一个工作中进行测试和构建时,一切正常。但我想在不同的工作中进行构建和测试。但是当我在这个配置中运行它们时,我得到了错误。我在requirementx中安装了Behave。txt文件。我做错了什么?这种配置通常可能吗?
我从我的. jar文件运行多个作业。我想在我的工作之间共享状态。但所有输入在每个工作中消耗(来自kafka)并生成重复输出。我看到我的闪烁面板。所有的工作“记录发送”是3。我认为必须将数字拆分到我的工作。 我使用此命令创建作业 我怎样才能修复它?
我很难搞清楚这一点,基本上我有一个< code>headerTitleService,我希望能够在我的< code>header组件中动态设置标题,但由于某种原因,当我设置标题时,什么也没有显示?我没有得到任何错误,所以我似乎可以找出问题是什么.. 表头.组件. ts header.component.html home.component.ts
我开始使用GitHub Actions,并且能够为Elixir设置CI管道,操作构建和测试没有任何问题。我还想使用heroku操作部署应用程序,所以我继续添加了GitHub中可用的应用程序,但在这样做之后,我收到了以下错误: 无效的工作流文件每个步骤都必须定义一个用途或运行键 这是我的工作流程在添加heroku操作之前的样子: 这就是我添加heroku动作的方式 以下是错误以了解更多详细信息。
问题内容: 背景: 我们每天晚上都有一份詹金斯工作()构建可交付成果。我们还有另一项工作(),第二天通过专有协议将可交付成果推送到生产机器。这是因为某些生产机器仅在一天中的某些时段可用(这也使我们有机会修复任何最后的构建中断)。 需要访问作业构建的可交付成果(因此需要访问同一工作空间)。我们有多个节点和并发的内部版本(因此是不可预测的工作空间),并且由于资源有限,所以最好不要将作业绑定到固定的节点