我在管道中有 3 个阶段,所有 3 个阶段中的每个作业都在创建一个 xml 数据文件。这些作业并行运行。
我想在第 4 阶段合并所有 xml 数据文件。下面是我的 yml 代码
stages:
- deploy
- test
- execute
- artifact
script:
- XYZ
artifacts:
name: datafile.xml
paths:
- data/
问题:我如何从以前的工作中收集所有 xml 来合并它?文件名是唯一的。
我在管道中有 3 个阶段,所有 3 个阶段中的每个作业都在创建一个 xml 数据文件。这些作业并行运行。
我想在第 4 阶段合并所有 xml 数据文件。下面是我的 yml 代码
stages:
- deploy
- test
- execute
- artifact
script:
- XYZ
artifacts:
name: datafile.xml
paths:
- data/
问题:我如何从以前的工作中收集所有 xml 来合并它?文件名是唯一的。
这是一个.gitlab-ci.yml
将工件收集到最终工件中的文件(获取早期阶段生成的文件,并将它们放在一起)。
关键是需求属性,它从早期作业中获取工件(带有artifacts: true
)。
stages:
- stage_one
- stage_two
- generate_content
apple:
stage: stage_one
script: echo apple > apple.txt
artifacts:
paths:
- apple.txt
banana:
stage: stage_two
script: echo banana > banana.txt
artifacts:
paths:
- banana.txt
put_it_all_together:
stage: generate_content
needs:
- job: apple
artifacts: true
- job: banana
artifacts: true
script:
- cat apple.txt banana.txt > fruit.txt
artifacts:
paths:
- fruit.txt