You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: delete-user-data/extension.yaml
+53-26
Original file line number
Diff line number
Diff line change
@@ -50,7 +50,10 @@ roles:
50
50
- role: storage.admin
51
51
reason: Allows the extension to delete (user) data from Cloud Storage.
52
52
- role: pubsub.admin
53
-
reason: Allows the extension to publish and subscribe to PubSub events. The extension uses PubSub to parallelize deletion and data discovery, no PubSub data is deleted.
53
+
reason:
54
+
Allows the extension to publish and subscribe to PubSub events. The
55
+
extension uses PubSub to parallelize deletion and data discovery, no
56
+
PubSub data is deleted.
54
57
55
58
resources:
56
59
- name: clearData
@@ -86,14 +89,15 @@ params:
86
89
- param: FIRESTORE_PATHS
87
90
label: Cloud Firestore paths
88
91
description: >-
89
-
Which paths in your Cloud Firestore instance contain data keyed on a user ID? Leave
90
-
empty if you don't use Cloud Firestore.
92
+
Which paths in your Cloud Firestore instance contain data keyed on a user
93
+
ID? Leave empty if you don't use Cloud Firestore.
91
94
92
-
Enter the full paths, separated by commas. Use `{UID}` as a placeholder for the user's UID.
95
+
Enter the full paths, separated by commas. Use `{UID}` as a placeholder
96
+
for the user's UID.
93
97
94
-
For example, if you have the collections `users` and `admins`, and each
95
-
collection has documents with User ID as document IDs, then enter
96
-
`users/{UID},admins/{UID}`.
98
+
For example, if you have the collections `users` and `admins`, and each
99
+
collection has documents with User ID as document IDs, then enter
100
+
`users/{UID},admins/{UID}`.
97
101
type: string
98
102
example: users/{UID},admins/{UID}
99
103
required: false
@@ -116,17 +120,22 @@ params:
116
120
- param: SELECTED_DATABASE_INSTANCE
117
121
label: Realtime Database instance
118
122
description: >
119
-
What is the ID of the Realtime Database instance from which you want to delete user data (keyed on user ID)?
123
+
What is the ID of the Realtime Database instance from which you want to
124
+
delete user data (keyed on user ID)?
120
125
type: string
121
126
example: my-instance
122
127
validationRegex: ^[^\.\$\#\]\[\/\x00-\x1F\x7F]+$
123
-
validationErrorMessage: Invalid database instance. Make sure that you have entered just the instance ID, and not the entire database URL.
128
+
validationErrorMessage:
129
+
Invalid database instance. Make sure that you have entered just the
130
+
instance ID, and not the entire database URL.
124
131
required: false
125
132
126
133
- param: SELECTED_DATABASE_LOCATION
127
134
label: Realtime Database location
128
135
description: >
129
-
(Only applicable if you provided the `Realtime Database instance` parameter.) From which Realtime Database location do you want to delete data keyed on a user ID?
136
+
(Only applicable if you provided the `Realtime Database instance`
137
+
parameter.) From which Realtime Database location do you want to delete
138
+
data keyed on a user ID?
130
139
type: select
131
140
options:
132
141
- label: United States
@@ -141,12 +150,13 @@ params:
141
150
- param: RTDB_PATHS
142
151
label: Realtime Database paths
143
152
description: >-
144
-
Which paths in your Realtime Database instance contain data keyed on a user ID? Leave
145
-
empty if you don't use Realtime Database.
153
+
Which paths in your Realtime Database instance contain data keyed on a
154
+
user ID? Leave empty if you don't use Realtime Database.
146
155
147
-
Enter the full paths, separated by commas. Use `{UID}` as a placeholder for the user's UID.
156
+
Enter the full paths, separated by commas. Use `{UID}` as a placeholder
157
+
for the user's UID.
148
158
149
-
For example: `users/{UID},admins/{UID}`.
159
+
For example: `users/{UID},admins/{UID}`.
150
160
151
161
type: string
152
162
example: users/{UID},admins/{UID}
@@ -155,7 +165,7 @@ params:
155
165
- param: CLOUD_STORAGE_BUCKET
156
166
label: Cloud Storage bucket
157
167
description: >
158
-
Which Google Cloud Storage bucket do you want to delete files from?
168
+
Which Google Cloud Storage bucket do you want to delete files from?
159
169
type: string
160
170
example: my-project-12345.appspot.com
161
171
validationRegex: ^([0-9a-z_.-]*)$
@@ -166,8 +176,8 @@ params:
166
176
- param: STORAGE_PATHS
167
177
label: Cloud Storage paths
168
178
description: >-
169
-
Where in Google Cloud Storage do you store data keyed on a user ID? Leave empty if you
170
-
don't use Cloud Storage.
179
+
Where in Google Cloud Storage do you store data keyed on a user ID? Leave
180
+
empty if you don't use Cloud Storage.
171
181
172
182
Enter the full paths to files or directories in your Storage buckets,
173
183
separated by commas. Use `{UID}` to represent the User ID of the deleted
@@ -177,8 +187,8 @@ params:
177
187
bucket with the file naming scheme `{UID}-pic.png`, enter
178
188
`{DEFAULT}/{UID}-pic.png`. To also delete all the files in another bucket
179
189
called my-app-logs with the file naming scheme `{UID}-logs.txt`, enter
180
-
`{DEFAULT}/{UID}-pic.png,my-app-logs/{UID}-logs.txt`. To *also* delete a User
181
-
ID-labeled directory and all its files (like `media/{UID}`), enter
190
+
`{DEFAULT}/{UID}-pic.png,my-app-logs/{UID}-logs.txt`. To *also* delete a
191
+
User ID-labeled directory and all its files (like `media/{UID}`), enter
Enable the extension to automatically discover Firestore collections and documents to delete.
200
+
Enable the extension to automatically discover Firestore collections and
201
+
documents to delete.
191
202
type: select
192
203
options:
193
204
- label: Yes
@@ -200,7 +211,10 @@ params:
200
211
- param: AUTO_DISCOVERY_SEARCH_DEPTH
201
212
label: Auto discovery search depth
202
213
description: >-
203
-
If auto discovery is enabled, how deep should auto discovery find collections and documents. For example, setting to `1` would only discover root collections and documents, whereas setting to `9` would search sub-collections 9 levels deep. Defaults to `3`.
214
+
If auto discovery is enabled, how deep should auto discovery find
215
+
collections and documents. For example, setting to `1` would only discover
216
+
root collections and documents, whereas setting to `9` would search
217
+
sub-collections 9 levels deep. Defaults to `3`.
204
218
validation: ^[0-9]
205
219
type: string
206
220
default: 3
@@ -209,25 +223,38 @@ params:
209
223
- param: AUTO_DISCOVERY_SEARCH_FIELDS
210
224
label: Auto discovery search fields
211
225
description: >-
212
-
If auto discovery is enabled, specify what document fields are used to associate the UID with the document. The extension will delete documents where the value for one or more of these fields matches the deleting user’s UID. If left empty, document fields will not be used in auto discovery.
226
+
If auto discovery is enabled, specify what document fields are used to
227
+
associate the UID with the document. The extension will delete documents
228
+
where the value for one or more of these fields matches the deleting
229
+
user’s UID. If left empty, document fields will not be used in auto
230
+
discovery.
213
231
type: string
214
232
default: "id,uid,userId"
215
233
required: false
216
234
217
235
- param: SEARCH_FUNCTION
218
236
label: Search function URL
219
237
description: >-
220
-
Specify a URL to call that will return a list of document paths to delete. The extension will send a `POST` request to the specified `URL`, with the `uid` of the deleted user will be provided in the body of the request. The endpoint specified should return an array of firestore paths to delete.
238
+
Specify a URL to call that will return a list of document paths to delete.
239
+
The extension will send a `POST` request to the specified `URL`, with the
240
+
`uid` of the deleted user will be provided in the body of the request. The
241
+
endpoint specified should return an array of firestore paths to delete.
Copy file name to clipboardExpand all lines: firestore-bigquery-export/README.md
+4-2
Original file line number
Diff line number
Diff line change
@@ -134,8 +134,10 @@ To install an extension, your project must be on the [Blaze (pay as you go) plan
134
134
* BigQuery Time Partitioning column name: BigQuery table column/schema field name for TimePartitioning. You can choose schema available as `timestamp` OR a new custom defined column that will be assigned to the selected Firestore Document field below. Defaults to pseudo column _PARTITIONTIME if unspecified. Cannot be changed if Table is already partitioned.
135
135
136
136
* Firestore Document field name for BigQuery SQL Time Partitioning field option: This parameter will allow you to partition the BigQuery table created by the extension based on selected. The Firestore Document field value must be a top-level TIMESTAMP, DATETIME, DATE field BigQuery string format or Firestore timestamp(will be converted to BigQuery TIMESTAMP). Cannot be changed if Table is already partitioned.
137
-
example: `postDate`(Ensure that the Firestore-BigQuery export extension creates the dataset and table before initiating any backfill scripts.
138
-
This step is crucial for the partitioning to function correctly. It is essential for the script to insert data into an already partitioned table.)
137
+
example: `postDate`(Ensure that the Firestore-BigQuery export extension
138
+
creates the dataset and table before initiating any backfill scripts.
139
+
This step is crucial for the partitioning to function correctly. It is
140
+
essential for the script to insert data into an already partitioned table.)
139
141
140
142
* BigQuery SQL Time Partitioning table schema field(column) type: Parameter for BigQuery SQL schema field type for the selected Time Partitioning Firestore Document field option. Cannot be changed if Table is already partitioned.
0 commit comments