1
- # Copyright 2022 Google LLC
1
+ # Copyright 2024 Google LLC
2
2
#
3
3
# Licensed under the Apache License, Version 2.0 (the "License");
4
4
# you may not use this file except in compliance with the License.
@@ -19,120 +19,121 @@ metadata:
19
19
annotations :
20
20
config.kubernetes.io/local-config : " true"
21
21
spec :
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 :
125
121
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