如何使用 JSON ref 合并多个列表?

How do I merge multiple lists using JSON ref?

我有以下 YAML

- name: Core
  description: Core functionality
- name: Artifact
  description: Artifact management

# - $ref: "v1/publications.yml#/tags/"

v1/publications.yml 有

tags:
  - name: Publication
    description: |
      This defines the publication API.

我有点希望结果是 我有以下 YAML

- name: Core
  description: Core functionality
- name: Artifact
  description: Artifact management
- name: Publication
  description: |
    This defines the publication API.

# - $ref: "v1/publications.yml#/tags/"

我可以像这样一次做一个...

- name: Core
  description: Core functionality
- name: Artifact
  description: Artifact management
- $ref: "v1/publications.yml#/tags/0"

但我希望它在不更新我的源的情况下添加多个。

您标记的技术无法做到这一点。 $ref 就是对外部子树的引用。您需要序列连接,这既不是 也不是普通 YAML 或 JSON 提供的。

您可以使用许多基于 YAML 的实用程序提供的一些模板技术来执行此操作。如果您可以控制加载代码,您还可以实现自定义标签来执行类似

的操作
- name: Core
  description: Core functionality
- name: Artifact
  description: Artifact management
- !append {$ref: "v1/publications.yml#/tags"}