小智 3
按照设计,如果不使用某种外部资源来存储工件,则无法在管道中的作业之间传递工件。但是,您可以在单个作业中的任务之间传递。此外,您可以在每个任务级别而不是每个作业级别指定图像。因此,执行您想要的操作的最简单方法可能是拥有一个作业,该作业的第一个任务是生成 docker-image,第二个任务将其用作容器映像。
在您的情况下,您将在构建任务中构建 docker 映像,并用于docker export将映像的文件系统导出到 rootfs,您可以将其放入输出 ( my-task-image)。请记住需要匹配的 rootfs 输出的特定架构。您将需要 rootfs/... (提取的“docker导出”)和metadata.json,它只能包含一个空的json对象。您可以查看 docker-image-resource 中的 in 脚本,了解有关如何使其与架构匹配的更多信息: https: //github.com/concourse/docker-image-resource/blob/master/assets/in。然后在后续任务中,您可以在管道 yml 中添加图像参数,如下所示:
- task: use-task-image
image: my-task-image
file: my-project/ci/tasks/my-task.yml
Run Code Online (Sandbox Code Playgroud)
为了在任务中使用构建的图像。
| 归档时间: |
|
| 查看次数: |
2087 次 |
| 最近记录: |