0

我有以下 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"

但我希望它添加多个而不更新我的源。

4

1 回答 1

1

这对于您标记的技术是不可能的。$ref就是这样,对外部子树的引用。您需要序列连接,这既不是也不是普通的 YAML 或 JSON 提供的。

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

- name: Core
  description: Core functionality
- name: Artifact
  description: Artifact management
- !append {$ref: "v1/publications.yml#/tags"}
于 2021-11-03T10:34:02.353 回答