summaryrefslogtreecommitdiffstats
path: root/build-logic/android-plugins/src/main/kotlin/com.github.android-password-store.sentry.gradle.kts
blob: 0407d8087266d1884caa831c535bc8b5e717c002 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
@file:Suppress("PropertyName")

import flavors.FlavorDimensions
import flavors.ProductFlavors
import io.sentry.android.gradle.InstrumentationFeature

plugins {
  id("com.android.application")
  id("io.sentry.android.gradle")
}

val SENTRY_DSN_PROPERTY = "SENTRY_DSN"

android {
  androidComponents {
    onVariants(selector().withFlavor(FlavorDimensions.FREE to ProductFlavors.NON_FREE)) { variant ->
      val sentryDsn = project.providers.environmentVariable(SENTRY_DSN_PROPERTY)
      if (sentryDsn.isPresent) {
        variant.manifestPlaceholders.put("sentryDsn", sentryDsn.get())
      }
    }
  }
}

sentry {
  autoUploadProguardMapping.set(true)
  ignoredBuildTypes.set(setOf("debug"))
  ignoredFlavors.set(setOf(ProductFlavors.FREE))
  tracingInstrumentation {
    enabled.set(true)
    features.set(setOf(InstrumentationFeature.FILE_IO))
  }
}