1- # Copyright 2022 Google LLC
1+ # Copyright 2024 Google LLC
22#
33# Licensed under the Apache License, Version 2.0 (the "License");
44# you may not use this file except in compliance with the License.
@@ -19,120 +19,121 @@ metadata:
1919 annotations :
2020 config.kubernetes.io/local-config : " true"
2121spec :
22- title : Terraform Service Accounts Module
23- source :
24- repo : https://github.com/terraform-google-modules/terraform-google-service-accounts
25- sourceType : git
26- version : 4.4.1
27- actuationTool :
28- type : Terraform
29- version : ' >= 0.13'
30- subBlueprints :
31- - name : key-distributor
32- location : modules/key-distributor
33- examples :
34- - name : key_distributor
35- location : examples/key_distributor
36- - name : multiple_service_accounts
37- location : examples/multiple_service_accounts
38- - name : single_service_account
39- location : examples/single_service_account
40- variables :
41- - name : billing_account_id
42- description : If assigning billing role, specificy a billing account (default is to assign at the organizational level).
43- type : string
44- default : " "
45- required : false
46- - name : description
47- description : Default description of the created service accounts (defaults to no description)
48- type : string
49- default : " "
50- required : false
51- - name : descriptions
52- description : List of descriptions for the created service accounts (elements default to the value of `description`)
53- type : list(string)
54- default : []
55- required : false
56- - name : display_name
57- description : Display names of the created service accounts (defaults to 'Terraform-managed service account')
58- type : string
59- default : Terraform-managed service account
60- required : false
61- - name : generate_keys
62- description : Generate keys for service accounts.
63- type : bool
64- default : false
65- required : false
66- - name : grant_billing_role
67- description : Grant billing user role.
68- type : bool
69- default : false
70- required : false
71- - name : grant_xpn_roles
72- description : Grant roles for shared VPC management.
73- type : bool
74- default : true
75- required : false
76- - name : names
77- description : Names of the service accounts to create.
78- type : list(string)
79- default : []
80- required : false
81- - name : org_id
82- description : Id of the organization for org-level roles.
83- type : string
84- default : " "
85- required : false
86- - name : prefix
87- description : Prefix applied to service account names.
88- type : string
89- default : " "
90- required : false
91- - name : project_id
92- description : Project id where service account will be created.
93- type : string
94- required : true
95- - name : project_roles
96- description : Common roles to apply to all service accounts, project=>role as elements.
97- type : list(string)
98- default : []
99- required : false
100- outputs :
101- - name : email
102- description : Service account email (for single use).
103- - name : emails
104- description : Service account emails by name.
105- - name : emails_list
106- description : Service account emails as list.
107- - name : iam_email
108- description : IAM-format service account email (for single use).
109- - name : iam_emails
110- description : IAM-format service account emails by name.
111- - name : iam_emails_list
112- description : IAM-format service account emails as list.
113- - name : key
114- description : Service account key (for single use).
115- - name : keys
116- description : Map of service account keys.
117- - name : service_account
118- description : Service account resource (for single use).
119- - name : service_accounts
120- description : Service account resources as list.
121- - name : service_accounts_map
122- description : Service account resources by name.
123- roles :
124- - level : Project
22+ info :
23+ title : Terraform Service Accounts Module
24+ source :
25+ repo : https://github.com/terraform-google-modules/terraform-google-service-accounts.git
26+ sourceType : git
27+ version : 4.4.0
28+ actuationTool :
29+ flavor : Terraform
30+ version : " >= 0.13"
31+ description : {}
32+ content :
33+ subBlueprints :
34+ - name : key-distributor
35+ location : modules/key-distributor
36+ - name : simple-sa
37+ location : modules/simple-sa
38+ examples :
39+ - name : key_distributor
40+ location : examples/key_distributor
41+ - name : multiple_service_accounts
42+ location : examples/multiple_service_accounts
43+ - name : simple_sa
44+ location : examples/simple_sa
45+ - name : single_service_account
46+ location : examples/single_service_account
47+ interfaces :
48+ variables :
49+ - name : project_id
50+ description : Project id where service account will be created.
51+ varType : string
52+ required : true
53+ - name : prefix
54+ description : Prefix applied to service account names.
55+ varType : string
56+ defaultValue : " "
57+ - name : names
58+ description : Names of the service accounts to create.
59+ varType : list(string)
60+ defaultValue : []
61+ - name : project_roles
62+ description : Common roles to apply to all service accounts, project=>role as elements.
63+ varType : list(string)
64+ defaultValue : []
65+ - name : grant_billing_role
66+ description : Grant billing user role.
67+ varType : bool
68+ defaultValue : false
69+ - name : billing_account_id
70+ description : If assigning billing role, specificy a billing account (default is to assign at the organizational level).
71+ varType : string
72+ defaultValue : " "
73+ - name : grant_xpn_roles
74+ description : Grant roles for shared VPC management.
75+ varType : bool
76+ defaultValue : true
77+ - name : org_id
78+ description : Id of the organization for org-level roles.
79+ varType : string
80+ defaultValue : " "
81+ - name : generate_keys
82+ description : Generate keys for service accounts.
83+ varType : bool
84+ defaultValue : false
85+ - name : display_name
86+ description : Display names of the created service accounts (defaults to 'Terraform-managed service account')
87+ varType : string
88+ defaultValue : Terraform-managed service account
89+ - name : description
90+ description : Default description of the created service accounts (defaults to no description)
91+ varType : string
92+ defaultValue : " "
93+ - name : descriptions
94+ description : List of descriptions for the created service accounts (elements default to the value of `description`)
95+ varType : list(string)
96+ defaultValue : []
97+ outputs :
98+ - name : email
99+ description : Service account email (for single use).
100+ - name : emails
101+ description : Service account emails by name.
102+ - name : emails_list
103+ description : Service account emails as list.
104+ - name : iam_email
105+ description : IAM-format service account email (for single use).
106+ - name : iam_emails
107+ description : IAM-format service account emails by name.
108+ - name : iam_emails_list
109+ description : IAM-format service account emails as list.
110+ - name : key
111+ description : Service account key (for single use).
112+ - name : keys
113+ description : Map of service account keys.
114+ - name : service_account
115+ description : Service account resource (for single use).
116+ - name : service_accounts
117+ description : Service account resources as list.
118+ - name : service_accounts_map
119+ description : Service account resources by name.
120+ requirements :
125121 roles :
126- - roles/resourcemanager.projectIamAdmin
127- - roles/iam.serviceAccountAdmin
128- - roles/iam.serviceAccountUser
129- - roles/iam.serviceAccountKeyAdmin
130- - roles/storage.admin
131- - roles/cloudfunctions.admin
132- - roles/serviceusage.serviceUsageAdmin
133- services :
134- - cloudresourcemanager.googleapis.com
135- - iam.googleapis.com
136- - serviceusage.googleapis.com
137- - cloudfunctions.googleapis.com
138- - cloudbuild.googleapis.com
122+ - level : Project
123+ roles :
124+ - roles/resourcemanager.projectIamAdmin
125+ - roles/iam.serviceAccountAdmin
126+ - roles/iam.serviceAccountUser
127+ - roles/iam.serviceAccountKeyAdmin
128+ - roles/storage.admin
129+ - roles/cloudfunctions.admin
130+ - roles/serviceusage.serviceUsageAdmin
131+ services :
132+ - cloudresourcemanager.googleapis.com
133+ - iam.googleapis.com
134+ - serviceusage.googleapis.com
135+ - cloudfunctions.googleapis.com
136+ - cloudbuild.googleapis.com
137+ providerVersions :
138+ - source : hashicorp/google
139+ version : " >= 3.53, < 7"
0 commit comments