From e474e863a78d11114e4fef1d2a205c7308c3b027 Mon Sep 17 00:00:00 2001 From: StefMa Date: Thu, 26 Mar 2026 08:41:05 +0100 Subject: [PATCH] Take mapping file from variant.artifacts as inputs --- .../gradle/plugin/SentryProguardGradlePlugin.kt | 3 +++ .../gradle/plugin/tasks/UploadUuidToSentryTask.kt | 11 ++++++----- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/main/kotlin/com/ioki/sentry/proguard/gradle/plugin/SentryProguardGradlePlugin.kt b/src/main/kotlin/com/ioki/sentry/proguard/gradle/plugin/SentryProguardGradlePlugin.kt index b8f7d76..870833b 100644 --- a/src/main/kotlin/com/ioki/sentry/proguard/gradle/plugin/SentryProguardGradlePlugin.kt +++ b/src/main/kotlin/com/ioki/sentry/proguard/gradle/plugin/SentryProguardGradlePlugin.kt @@ -50,11 +50,14 @@ private fun Project.replaceSentryProguardUuidInAndroidManifest( ) .toTransform(SingleArtifact.MERGED_MANIFEST) + val mappingFile = variant.artifacts.get(SingleArtifact.OBFUSCATION_MAPPING_FILE) + tasks.registerUploadUuidToSentryTask( variantName = variant.name, uuid = uuid, downloadSentryCliTask = downloadSentryCliTask, sentryProguardExtension = sentryProguardExtension, + mappingFile = mappingFile, ) } } diff --git a/src/main/kotlin/com/ioki/sentry/proguard/gradle/plugin/tasks/UploadUuidToSentryTask.kt b/src/main/kotlin/com/ioki/sentry/proguard/gradle/plugin/tasks/UploadUuidToSentryTask.kt index 5f5bf60..cf65a65 100644 --- a/src/main/kotlin/com/ioki/sentry/proguard/gradle/plugin/tasks/UploadUuidToSentryTask.kt +++ b/src/main/kotlin/com/ioki/sentry/proguard/gradle/plugin/tasks/UploadUuidToSentryTask.kt @@ -20,7 +20,8 @@ internal fun TaskContainer.registerUploadUuidToSentryTask( variantName: String, uuid: String, downloadSentryCliTask: TaskProvider, - sentryProguardExtension: SentryProguardExtension + sentryProguardExtension: SentryProguardExtension, + mappingFile: Provider ): TaskProvider { val uploadUuidTask = register( "uploadSentryProguardUuidFor${variantName.replaceFirstChar { it.titlecase() }}", @@ -37,6 +38,7 @@ internal fun TaskContainer.registerUploadUuidToSentryTask( it.uuid.set(uuid) it.variantName.set(variantName) it.cliCommand.set(sentryProguardExtension.cliConfig.command) + it.mappingFile.set(mappingFile) } configureEach { task -> @@ -74,16 +76,15 @@ internal abstract class UploadUuidToSentryTask : DefaultTask() { @get:Inject abstract val execOperations: ExecOperations - private val mappingFilePath: Provider = variantName.flatMap { - project.layout.buildDirectory.file("outputs/mapping/$it/mapping.txt") - } + @get:InputFile + abstract val mappingFile: RegularFileProperty @TaskAction fun uploadUuidToSentry() { val command = cliCommand.get().build( cliFilePath = cliFilePath.get().asFile.absolutePath, uuid = uuid.get(), - mappingFilePath = mappingFilePath.get().asFile.absolutePath, + mappingFilePath = mappingFile.get().asFile.absolutePath, org = sentryOrg.get(), project = sentryProject.get(), authToken = sentryAuthToken.get()