Skip to content

Commit fb1af4c

Browse files
qz267Zheng Qinq2w
authored
feat: Add per module requirements to project-factory (#996)
Co-authored-by: Zheng Qin <[email protected]> Co-authored-by: abhishek kumar tiwari <[email protected]>
1 parent e945e6c commit fb1af4c

File tree

12 files changed

+340
-176
lines changed

12 files changed

+340
-176
lines changed

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ docker_generate_docs:
9494
-e ENABLE_BPMETADATA=1 \
9595
-v "${CURDIR}":/workspace \
9696
$(REGISTRY_URL)/${DOCKER_IMAGE_DEVELOPER_TOOLS}:${DOCKER_TAG_VERSION_DEVELOPER_TOOLS} \
97-
/bin/bash -c 'source /usr/local/bin/task_helper_functions.sh && generate_docs'
97+
/bin/bash -c 'source /usr/local/bin/task_helper_functions.sh && generate_docs --per-module-requirements'
9898

9999
# Alias for backwards compatibility
100100
.PHONY: generate_docs

metadata.yaml

Lines changed: 4 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -357,19 +357,6 @@ spec:
357357
description: GCE usage reports bucket
358358
requirements:
359359
roles:
360-
- level: Project
361-
roles:
362-
- roles/accesscontextmanager.policyAdmin
363-
- roles/resourcemanager.organizationViewer
364-
- roles/resourcemanager.tagAdmin
365-
- roles/resourcemanager.tagUser
366-
- level: Project
367-
roles:
368-
- roles/resourcemanager.projectCreator
369-
- roles/resourcemanager.folderAdmin
370-
- roles/resourcemanager.folderIamAdmin
371-
- roles/billing.projectManager
372-
- roles/compute.xpnAdmin
373360
- level: Project
374361
roles:
375362
- roles/compute.admin
@@ -379,20 +366,20 @@ spec:
379366
- roles/iam.serviceAccountUser
380367
- roles/billing.projectManager
381368
services:
369+
- accesscontextmanager.googleapis.com
382370
- admin.googleapis.com
383371
- appengine.googleapis.com
372+
- billingbudgets.googleapis.com
384373
- cloudbilling.googleapis.com
385374
- cloudresourcemanager.googleapis.com
386375
- compute.googleapis.com
376+
- essentialcontacts.googleapis.com
387377
- iam.googleapis.com
388378
- iamcredentials.googleapis.com
389379
- oslogin.googleapis.com
390-
- serviceusage.googleapis.com
391-
- billingbudgets.googleapis.com
392380
- pubsub.googleapis.com
393-
- accesscontextmanager.googleapis.com
394-
- essentialcontacts.googleapis.com
395381
- serviceconsumermanagement.googleapis.com
382+
- serviceusage.googleapis.com
396383
providerVersions:
397384
- source: hashicorp/google
398385
version: ">= 5.41, < 7"

modules/budget/metadata.yaml

Lines changed: 4 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -122,40 +122,27 @@ spec:
122122
roles:
123123
- level: Project
124124
roles:
125-
- roles/accesscontextmanager.policyAdmin
126-
- roles/resourcemanager.organizationViewer
127-
- roles/resourcemanager.tagAdmin
128-
- roles/resourcemanager.tagUser
129-
- level: Project
130-
roles:
131-
- roles/resourcemanager.projectCreator
132-
- roles/resourcemanager.folderAdmin
133-
- roles/resourcemanager.folderIamAdmin
134125
- roles/billing.projectManager
135-
- roles/compute.xpnAdmin
136-
- level: Project
137-
roles:
138126
- roles/compute.admin
139127
- roles/iam.serviceAccountAdmin
140128
- roles/resourcemanager.projectIamAdmin
141129
- roles/storage.admin
142130
- roles/iam.serviceAccountUser
143-
- roles/billing.projectManager
144131
services:
132+
- accesscontextmanager.googleapis.com
145133
- admin.googleapis.com
146134
- appengine.googleapis.com
135+
- billingbudgets.googleapis.com
147136
- cloudbilling.googleapis.com
148137
- cloudresourcemanager.googleapis.com
149138
- compute.googleapis.com
139+
- essentialcontacts.googleapis.com
150140
- iam.googleapis.com
151141
- iamcredentials.googleapis.com
152142
- oslogin.googleapis.com
153-
- serviceusage.googleapis.com
154-
- billingbudgets.googleapis.com
155143
- pubsub.googleapis.com
156-
- accesscontextmanager.googleapis.com
157-
- essentialcontacts.googleapis.com
158144
- serviceconsumermanagement.googleapis.com
145+
- serviceusage.googleapis.com
159146
providerVersions:
160147
- source: hashicorp/google
161148
version: ">= 4.28, < 7"

modules/essential_contacts/metadata.yaml

Lines changed: 4 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -77,19 +77,6 @@ spec:
7777
description: The GCP project you want to enable APIs on
7878
requirements:
7979
roles:
80-
- level: Project
81-
roles:
82-
- roles/accesscontextmanager.policyAdmin
83-
- roles/resourcemanager.organizationViewer
84-
- roles/resourcemanager.tagAdmin
85-
- roles/resourcemanager.tagUser
86-
- level: Project
87-
roles:
88-
- roles/resourcemanager.projectCreator
89-
- roles/resourcemanager.folderAdmin
90-
- roles/resourcemanager.folderIamAdmin
91-
- roles/billing.projectManager
92-
- roles/compute.xpnAdmin
9380
- level: Project
9481
roles:
9582
- roles/compute.admin
@@ -99,20 +86,20 @@ spec:
9986
- roles/iam.serviceAccountUser
10087
- roles/billing.projectManager
10188
services:
89+
- accesscontextmanager.googleapis.com
10290
- admin.googleapis.com
10391
- appengine.googleapis.com
92+
- billingbudgets.googleapis.com
10493
- cloudbilling.googleapis.com
10594
- cloudresourcemanager.googleapis.com
10695
- compute.googleapis.com
96+
- essentialcontacts.googleapis.com
10797
- iam.googleapis.com
10898
- iamcredentials.googleapis.com
10999
- oslogin.googleapis.com
110-
- serviceusage.googleapis.com
111-
- billingbudgets.googleapis.com
112100
- pubsub.googleapis.com
113-
- accesscontextmanager.googleapis.com
114-
- essentialcontacts.googleapis.com
115101
- serviceconsumermanagement.googleapis.com
102+
- serviceusage.googleapis.com
116103
providerVersions:
117104
- source: hashicorp/google
118105
version: ">= 3.43, < 7"

modules/fabric-project/metadata.yaml

Lines changed: 6 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -153,40 +153,27 @@ spec:
153153
roles:
154154
- level: Project
155155
roles:
156-
- roles/accesscontextmanager.policyAdmin
157-
- roles/resourcemanager.organizationViewer
158-
- roles/resourcemanager.tagAdmin
159-
- roles/resourcemanager.tagUser
160-
- level: Project
161-
roles:
162-
- roles/resourcemanager.projectCreator
163-
- roles/resourcemanager.folderAdmin
164-
- roles/resourcemanager.folderIamAdmin
165-
- roles/billing.projectManager
166-
- roles/compute.xpnAdmin
167-
- level: Project
168-
roles:
169-
- roles/compute.admin
170-
- roles/iam.serviceAccountAdmin
171156
- roles/resourcemanager.projectIamAdmin
172157
- roles/storage.admin
173158
- roles/iam.serviceAccountUser
174159
- roles/billing.projectManager
160+
- roles/compute.admin
161+
- roles/iam.serviceAccountAdmin
175162
services:
163+
- accesscontextmanager.googleapis.com
176164
- admin.googleapis.com
177165
- appengine.googleapis.com
166+
- billingbudgets.googleapis.com
178167
- cloudbilling.googleapis.com
179168
- cloudresourcemanager.googleapis.com
180169
- compute.googleapis.com
170+
- essentialcontacts.googleapis.com
181171
- iam.googleapis.com
182172
- iamcredentials.googleapis.com
183173
- oslogin.googleapis.com
184-
- serviceusage.googleapis.com
185-
- billingbudgets.googleapis.com
186174
- pubsub.googleapis.com
187-
- accesscontextmanager.googleapis.com
188-
- essentialcontacts.googleapis.com
189175
- serviceconsumermanagement.googleapis.com
176+
- serviceusage.googleapis.com
190177
providerVersions:
191178
- source: hashicorp/google
192179
version: ">= 5.41, < 7"

modules/gsuite_enabled/metadata.yaml

Lines changed: 5 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -250,40 +250,27 @@ spec:
250250
roles:
251251
- level: Project
252252
roles:
253-
- roles/accesscontextmanager.policyAdmin
254-
- roles/resourcemanager.organizationViewer
255-
- roles/resourcemanager.tagAdmin
256-
- roles/resourcemanager.tagUser
257-
- level: Project
258-
roles:
259-
- roles/resourcemanager.projectCreator
260-
- roles/resourcemanager.folderAdmin
261-
- roles/resourcemanager.folderIamAdmin
253+
- roles/iam.serviceAccountUser
262254
- roles/billing.projectManager
263-
- roles/compute.xpnAdmin
264-
- level: Project
265-
roles:
266255
- roles/compute.admin
267256
- roles/iam.serviceAccountAdmin
268257
- roles/resourcemanager.projectIamAdmin
269258
- roles/storage.admin
270-
- roles/iam.serviceAccountUser
271-
- roles/billing.projectManager
272259
services:
260+
- accesscontextmanager.googleapis.com
273261
- admin.googleapis.com
274262
- appengine.googleapis.com
263+
- billingbudgets.googleapis.com
275264
- cloudbilling.googleapis.com
276265
- cloudresourcemanager.googleapis.com
277266
- compute.googleapis.com
267+
- essentialcontacts.googleapis.com
278268
- iam.googleapis.com
279269
- iamcredentials.googleapis.com
280270
- oslogin.googleapis.com
281-
- serviceusage.googleapis.com
282-
- billingbudgets.googleapis.com
283271
- pubsub.googleapis.com
284-
- accesscontextmanager.googleapis.com
285-
- essentialcontacts.googleapis.com
286272
- serviceconsumermanagement.googleapis.com
273+
- serviceusage.googleapis.com
287274
providerVersions:
288275
- source: DeviaVir/gsuite
289276
version: ~> 0.1

modules/project_services/metadata.yaml

Lines changed: 5 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -104,40 +104,27 @@ spec:
104104
roles:
105105
- level: Project
106106
roles:
107-
- roles/accesscontextmanager.policyAdmin
108-
- roles/resourcemanager.organizationViewer
109-
- roles/resourcemanager.tagAdmin
110-
- roles/resourcemanager.tagUser
111-
- level: Project
112-
roles:
113-
- roles/resourcemanager.projectCreator
114-
- roles/resourcemanager.folderAdmin
115-
- roles/resourcemanager.folderIamAdmin
116-
- roles/billing.projectManager
117-
- roles/compute.xpnAdmin
118-
- level: Project
119-
roles:
120-
- roles/compute.admin
121107
- roles/iam.serviceAccountAdmin
122108
- roles/resourcemanager.projectIamAdmin
123109
- roles/storage.admin
124110
- roles/iam.serviceAccountUser
125111
- roles/billing.projectManager
112+
- roles/compute.admin
126113
services:
114+
- accesscontextmanager.googleapis.com
127115
- admin.googleapis.com
128116
- appengine.googleapis.com
117+
- billingbudgets.googleapis.com
129118
- cloudbilling.googleapis.com
130119
- cloudresourcemanager.googleapis.com
131120
- compute.googleapis.com
121+
- essentialcontacts.googleapis.com
132122
- iam.googleapis.com
133123
- iamcredentials.googleapis.com
134124
- oslogin.googleapis.com
135-
- serviceusage.googleapis.com
136-
- billingbudgets.googleapis.com
137125
- pubsub.googleapis.com
138-
- accesscontextmanager.googleapis.com
139-
- essentialcontacts.googleapis.com
140126
- serviceconsumermanagement.googleapis.com
127+
- serviceusage.googleapis.com
141128
providerVersions:
142129
- source: hashicorp/google
143130
version: ">= 3.43, < 7"

modules/quota_manager/metadata.yaml

Lines changed: 4 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -77,19 +77,6 @@ spec:
7777
description: The server-generated names of the quota override.
7878
requirements:
7979
roles:
80-
- level: Project
81-
roles:
82-
- roles/accesscontextmanager.policyAdmin
83-
- roles/resourcemanager.organizationViewer
84-
- roles/resourcemanager.tagAdmin
85-
- roles/resourcemanager.tagUser
86-
- level: Project
87-
roles:
88-
- roles/resourcemanager.projectCreator
89-
- roles/resourcemanager.folderAdmin
90-
- roles/resourcemanager.folderIamAdmin
91-
- roles/billing.projectManager
92-
- roles/compute.xpnAdmin
9380
- level: Project
9481
roles:
9582
- roles/compute.admin
@@ -99,20 +86,20 @@ spec:
9986
- roles/iam.serviceAccountUser
10087
- roles/billing.projectManager
10188
services:
89+
- accesscontextmanager.googleapis.com
10290
- admin.googleapis.com
10391
- appengine.googleapis.com
92+
- billingbudgets.googleapis.com
10493
- cloudbilling.googleapis.com
10594
- cloudresourcemanager.googleapis.com
10695
- compute.googleapis.com
96+
- essentialcontacts.googleapis.com
10797
- iam.googleapis.com
10898
- iamcredentials.googleapis.com
10999
- oslogin.googleapis.com
110-
- serviceusage.googleapis.com
111-
- billingbudgets.googleapis.com
112100
- pubsub.googleapis.com
113-
- accesscontextmanager.googleapis.com
114-
- essentialcontacts.googleapis.com
115101
- serviceconsumermanagement.googleapis.com
102+
- serviceusage.googleapis.com
116103
providerVersions:
117104
- source: hashicorp/google-beta
118105
version: ">= 4.11, < 7"

modules/shared_vpc_access/metadata.yaml

Lines changed: 4 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -104,19 +104,6 @@ spec:
104104
description: Service project ID.
105105
requirements:
106106
roles:
107-
- level: Project
108-
roles:
109-
- roles/accesscontextmanager.policyAdmin
110-
- roles/resourcemanager.organizationViewer
111-
- roles/resourcemanager.tagAdmin
112-
- roles/resourcemanager.tagUser
113-
- level: Project
114-
roles:
115-
- roles/resourcemanager.projectCreator
116-
- roles/resourcemanager.folderAdmin
117-
- roles/resourcemanager.folderIamAdmin
118-
- roles/billing.projectManager
119-
- roles/compute.xpnAdmin
120107
- level: Project
121108
roles:
122109
- roles/compute.admin
@@ -126,20 +113,20 @@ spec:
126113
- roles/iam.serviceAccountUser
127114
- roles/billing.projectManager
128115
services:
116+
- accesscontextmanager.googleapis.com
129117
- admin.googleapis.com
130118
- appengine.googleapis.com
119+
- billingbudgets.googleapis.com
131120
- cloudbilling.googleapis.com
132121
- cloudresourcemanager.googleapis.com
133122
- compute.googleapis.com
123+
- essentialcontacts.googleapis.com
134124
- iam.googleapis.com
135125
- iamcredentials.googleapis.com
136126
- oslogin.googleapis.com
137-
- serviceusage.googleapis.com
138-
- billingbudgets.googleapis.com
139127
- pubsub.googleapis.com
140-
- accesscontextmanager.googleapis.com
141-
- essentialcontacts.googleapis.com
142128
- serviceconsumermanagement.googleapis.com
129+
- serviceusage.googleapis.com
143130
providerVersions:
144131
- source: hashicorp/google
145132
version: ">= 3.43, < 7"

0 commit comments

Comments
 (0)