【发布时间】:2018-12-11 08:55:07
【问题描述】:
错误如下:
ERROR: (gcloud.deployment-manager.deployments.update) Error in Operation [operation-1544517871651-57cbb1716c8b8-4fa66ff2-9980028f]: errors:
- code: MISSING_REQUIRED_FIELD
location: /deployments/infrastructure/resources/projects/resources-practice/serviceAccounts/storage-buckets-backend/keys/json->$.properties->$.parent
message: |-
Missing required field 'parent' with schema:
{
"type" : "string"
}
以下是我的 jinja 模板内容:
resource:
- name: {{ name }}-keys
type: iam.v1.serviceAccounts.key
properties:
name: projects/{{ properties["projectID"] }}/serviceAccounts/{{ serviceAccount["name"] }}/keys/json
privateKeyType: enum(TYPE_GOOGLE_CREDENTIALS_FILE)
keyAlgorithm: enum(KEY_ALG_RSA_2048)
附注 我对属性的参考基于https://cloud.google.com/iam/reference/rest/v1/projects.serviceAccounts.keys
【问题讨论】:
-
我只能提供部分解决方案。 1)您缺少父母。这需要是一个现有的服务帐户:
parent: projects/development-123456/serviceAccounts/mysa@development-123456.iam.gserviceaccount.com -
2) 移除封装 privateKeyType 和 keyAlgoritm 的枚举。
-
@JohnHanley,你能给我举个1的例子吗。)
-
您是指现有服务帐户的示例吗?
-
您尝试执行的部署会为项目中的现有服务帐户创建服务帐户凭据。问题是我不知道如何告诉部署管理器将返回的凭据保存到文件中。
标签: google-cloud-platform service-accounts google-deployment-manager