有没有办法在 GCP 部署管理器中将文件导入 YAML

Is there a way we can import a file into YAML in GCP Deployment Manager

我正在尝试在 GCP 部署管理器中创建一个配置文件,并且我有一个需要作为文本导入的元数据文件。

我知道如何在 .py 文件中执行此操作,但想知道如何在 YAML 中执行此操作。

我尝试了不同的方法,但 none 似乎有效。

尽管 Deployment Manager 可以使用 imports 语句将 Jinja2 或 Python 模板导入到根配置文件中,但无法导入纯 YAML。这是 YAML 的限制。它没有“导入”或“包含”功能。

此处讨论了类似的问题:。

在纯 YAML 部署文件中,元数据可以按字面意思提供,如文档中所述

Google Cloud Platform for AWS Professionals: Infrastructure Deployment Tools:

resources:
- name: my-first-vm-template
  type: compute.v1.instance
  properties:
   ...
   metadata:
     items:
     - key: startup-script
       value: "STARTUP-SCRIPT-CONTENTS"

如果要从文件加载元数据,则必须使用 Jinja2 模板。在 codelabs.developers.google.com:

有一个例子

Deploy Your Infrastructure Using Deployment Manager > Creating your deployment configuration

imports:
- path: instance.jinja
- path: ../startup-script.sh
  name: startup-script.sh
resources:
- name: my-instance
  type: instance.jinja
  properties:
    metadata-from-file:
      startup-script: startup-script.sh