我们正在使用GCP部署管理器发布基础架构。我们需要有一个可以从所有组访问的共享位置(例如,项目元数据)。我认为,如果可以将其作为代码作为基础结构的一部分,那应该很棒,这样我们就可以将其与所有组联系起来。
我认为目前GCP部署管理器中没有这样的resource,但我也不希望有一些单独的脚本来完成此更新。
有人可以帮忙吗?在云中存储通用元数据的最佳方法是什么,如果云无法提供正确的工具,我们如何以清晰/巧妙的方式解决此问题?
答案 0 :(得分:1)
使用compute.v1.projects API设置项目范围的元数据是DM不支持的。您可以查看DM here支持的资源列表。 您可能希望通过Feature Request
建议对此资源提供支持答案 1 :(得分:0)
这是一个Yaml配置文件及其模板:
project.yaml配置:
# Set project metadata
imports:
- path: project.jinja
resources:
- name: project
type: project.jinja
properties:
key: 'abcd'
value: 1234
还有project.jinja模板:
{#
Template: Set Project Metadata
#}
resources:
- name: data
action: gcp-types/compute-v1:compute.projects.setCommonInstanceMetadata
metadata:
runtimePolicy:
- UPDATE_ON_CHANGE
properties:
items:
- key: {{ properties["key"] }}
value: {{ properties["value"] }}