Google Deploy Manager(无效的配置文件:模板提取失败/找不到资源)

Nik*_*s B 0 google-compute-engine

使用Google Deploy Manager时:

gcloud deployment-manager deployments create  my-environment --config my-environment.jinja
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

ErrorsValueListEntry INVALID_CONFIG

无效的配置文件:模板获取失败:找不到资源

无论我的内容如何my-environment.jinja-即使复制文档中的样本

不知道我在做什么错吗?

小智 7

Deployment Manager命令行工具将模板(由扩展名.jinja.py文件扩展名)与顶级配置(可以具有任何其他文件扩展名)不同地视为--config标志的输入。

如果输入配置是模板,则该工具将在模板的模式文件(例如foo.jinja.schema)中查找要定义的子导入,而不是像顶级YAML配置那样在配置本身中定义。

我的猜测是上面的错误代码片段不完整,完整的错误包含有关无法找到哪个模板的详细信息。可能这是未正确导入的子模板。

顶层配置

顶级YAML配置my-environment.yaml可能看起来像:

imports
- path: sub-template.jinja

resources:
- name: sub-template
  type: sub-template.jinja
Run Code Online (Sandbox Code Playgroud)

这是使用以下命令部署的:

gcloud deployment-manager deployments create env --config my-environment.yaml
Run Code Online (Sandbox Code Playgroud)

模板

模板my-environment.jinja将定义为:

resources:
- name: sub-template
  type: sub-template.jinja
Run Code Online (Sandbox Code Playgroud)

带有一个单独的文件,my-environment.jinja.schema用于定义属性架构和导入:

imports:
- path: sub-template.jinja
Run Code Online (Sandbox Code Playgroud)

可以使用以下命令进行部署:

gcloud deployment-manager deployments create env --config my-environment.jinja
Run Code Online (Sandbox Code Playgroud)

甚至可以使用从命令行获取属性--properties

有关模式的更多信息,请参见Deployment Manager文档中的“使用模式”。