【问题标题】:Is there a way to set project metadata in GCP deployment manager有没有办法在 GCP 部署管理器中设置项目元数据
【发布时间】:2018-11-19 13:50:48
【问题描述】:

我们正在使用 GCP 部署管理器来发布我们的基础架构。我们需要有一个可以从所有组访问的共享位置(例如项目元数据)。我认为如果我们可以将它作为代码的基础设施的一部分,那就太好了,这样我们就可以将它与所有组联系起来。
我认为目前 GCP 部署管理器中没有这样的 resource,但我也不希望有一些单独的脚本来执行此模式之外的更新。
有人可以帮忙吗?在云中存储通用元数据的最佳方式是什么,如果云无法提供正确的工具,我们如何以清晰/好的方式解决这个问题?

【问题讨论】:

    标签: google-cloud-platform google-deployment-manager


    【解决方案1】:

    使用 DM 不支持的 compute.v1.projects API 设置项目范围的元数据。您可以查看 DM here 支持的资源列表。 您可能想通过 Feature Request

    建议对该资源的支持

    【讨论】:

      【解决方案2】:

      这是一个 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"] }}
      

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-14
      相关资源
      最近更新 更多