GoogleCloudPlatform / deploymentmanager-samples

Deployment Manager samples and templates.
Apache License 2.0
940 stars 717 forks source link

Create service accounts return INVALID_ARGUMENT #674

Open TriPSs opened 2 years ago

TriPSs commented 2 years ago

Input:

imports:
  - path: templates/service_accounts.jinja
    name: service_accounts.jinja

resources:
  - name: cloud-functions
    type: service_accounts.jinja
    properties:
      description: "Fallback service account for functions"

service_accounts.jinja:

resources:
- type: gcp-types/iam-v1:projects.serviceAccounts
  name: {{ env['name'] }}
  properties:
    accountId: {{ env['name'] }}
    displayName: {{ env['name'] }}

    {% if 'description' in properties %}
    description: {{ properties['description'] }}
    {% endif %}

Output:

- code: RESOURCE_ERROR
  location: /deployments/resources-service-accounts/resources/cfs-email
  message: '{"ResourceType":"gcp-types/iam-v1:projects.serviceAccounts","ResourceErrorCode":"400","ResourceErrorMessage":{"code":400,"message":"Invalid
    JSON payload received. Unknown name \"description\": Cannot find field.","status":"INVALID_ARGUMENT","details":[{"@type":"type.googleapis.com/google.rpc.BadRequest","fieldViolations":[{"description":"Invalid
    JSON payload received. Unknown name \"description\": Cannot find field."}]}],"statusMessage":"Bad
    Request","requestPath":"https://iam.googleapis.com/v1/projects/project-app/serviceAccounts","httpMethod":"POST"}}'

It's unclear why my request is invalid, and why it throws INVALID_ARGUMENT as docs say description is a valid field..

Any ideas?