Skip to content

Commit 6decb5a

Browse files
committed
Lazily register tasks
1 parent cdc6d55 commit 6decb5a

File tree

1 file changed

+17
-20
lines changed

1 file changed

+17
-20
lines changed

packages/core/sentry.gradle

Lines changed: 17 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ plugins.withId('com.android.application') {
8989
try { tasks.named(nameCliTask); return } catch (Exception e) {}
9090

9191
/** Upload source map file to the sentry server via CLI call. */
92-
def cliTask = tasks.create(nameCliTask) {
92+
def cliTask = tasks.register(nameCliTask) {
9393
onlyIf { shouldSentryAutoUploadGeneral() }
9494
description = "upload debug symbols to sentry"
9595
group = 'sentry.io'
@@ -194,7 +194,7 @@ plugins.withId('com.android.application') {
194194
enabled true
195195
}
196196

197-
modulesTask = tasks.create(nameModulesTask, Exec) {
197+
modulesTask = tasks.register(nameModulesTask, Exec) {
198198
description = "collect javascript modules from bundle source map"
199199
group = 'sentry.io'
200200

@@ -232,34 +232,23 @@ plugins.withId('com.android.application') {
232232
// chain the upload tasks so they run sequentially in order to run
233233
// the cliCleanUpTask after the final upload task is run
234234
if (previousCliTask != null) {
235-
previousCliTask.finalizedBy cliTask
235+
previousCliTask.configure { finalizedBy cliTask }
236236
} else {
237-
bundleTask.finalizedBy cliTask
237+
bundleTask.configure { finalizedBy cliTask }
238238
}
239239
previousCliTask = cliTask
240-
cliTask.finalizedBy modulesTask
240+
cliTask.configure { finalizedBy modulesTask }
241241
}
242242

243-
def modulesCleanUpTask = tasks.create(name: nameModulesCleanup, type: Delete) {
243+
def modulesCleanUpTask = tasks.register(nameModulesCleanup, Delete) {
244244
description = "clean up collected modules generated file"
245245
group = 'sentry.io'
246246

247247
delete modulesOutput
248248
}
249249

250-
def packageTasks = tasks.findAll {
251-
task -> (
252-
"package${applicationVariant}".equalsIgnoreCase(task.name)
253-
|| "package${applicationVariant}Bundle".equalsIgnoreCase(task.name)
254-
) && task.enabled
255-
}
256-
packageTasks.each { packageTask ->
257-
packageTask.dependsOn modulesTask
258-
packageTask.finalizedBy modulesCleanUpTask
259-
}
260-
261250
/** Delete sourcemap files */
262-
def cliCleanUpTask = tasks.create(name: nameCleanup, type: Delete) {
251+
def cliCleanUpTask = tasks.register(nameCleanup, Delete) {
263252
description = "clean up extra sourcemap"
264253
group = 'sentry.io'
265254

@@ -269,10 +258,18 @@ plugins.withId('com.android.application') {
269258
}
270259

271260
// register clean task extension
272-
cliCleanUpTask.onlyIf { shouldCleanUp }
261+
cliCleanUpTask.configure { onlyIf { shouldCleanUp } }
273262
// due to chaining the last value of previousCliTask will be the final
274263
// upload task, after which the cleanup can be done
275-
previousCliTask.finalizedBy cliCleanUpTask
264+
previousCliTask.configure { finalizedBy cliCleanUpTask }
265+
266+
def packageTasks = tasks.matching {
267+
task -> ("package${applicationVariant}".equalsIgnoreCase(task.name) || "package${applicationVariant}Bundle".equalsIgnoreCase(task.name)) && task.enabled
268+
}
269+
packageTasks.configureEach { packageTask ->
270+
packageTask.dependsOn modulesTask
271+
packageTask.finalizedBy modulesCleanUpTask
272+
}
276273
}
277274
}
278275
}

0 commit comments

Comments
 (0)