Skip to content
This repository was archived by the owner on Aug 30, 2023. It is now read-only.
42 changes: 21 additions & 21 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,29 +25,29 @@ language: android
env:
matrix:
- API=android-14 ABI=armeabi-v7a
# Keeping only lowest/higher API level per ABI temporarily
# - API=android-15 ABI=armeabi-v7a
# - API=android-16 ABI=armeabi-v7a
# - API=android-17 ABI=armeabi-v7a
# - API=android-18 ABI=armeabi-v7a
# - API=android-19 ABI=armeabi-v7a
# - API=android-21 ABI=armeabi-v7aq
# - API=android-22 ABI=armeabi-v7a
# - API=android-23 ABI=armeabi-v7a
# - API=android-24 ABI=armeabi-v7a
# - API=android-25 ABI=armeabi-v7a
# - API=android-26 ABI=armeabi-v7a
# - API=android-27 ABI=armeabi-v7a
# - API=android-28 ABI=armeabi-v7a
# Keeping only lowest/higher API level per ABI temporarily
# - API=android-15 ABI=armeabi-v7a
# - API=android-16 ABI=armeabi-v7a
# - API=android-17 ABI=armeabi-v7a
# - API=android-18 ABI=armeabi-v7a
# - API=android-19 ABI=armeabi-v7a
# - API=android-21 ABI=armeabi-v7aq
# - API=android-22 ABI=armeabi-v7a
# - API=android-23 ABI=armeabi-v7a
# - API=android-24 ABI=armeabi-v7a
# - API=android-25 ABI=armeabi-v7a
# - API=android-26 ABI=armeabi-v7a
# - API=android-27 ABI=armeabi-v7a
# - API=android-28 ABI=armeabi-v7a
- API=android-29 ABI=armeabi-v7a
- API=android-21 ABI=arm64-v8a
# - API=android-22 ABI=arm64-v8a
# - API=android-23 ABI=arm64-v8a
# - API=android-24 ABI=arm64-v8a
# - API=android-25 ABI=arm64-v8a
# - API=android-26 ABI=arm64-v8a
# - API=android-27 ABI=arm64-v8a
# - API=android-28 ABI=arm64-v8a
# - API=android-22 ABI=arm64-v8a
# - API=android-23 ABI=arm64-v8a
# - API=android-24 ABI=arm64-v8a
# - API=android-25 ABI=arm64-v8a
# - API=android-26 ABI=arm64-v8a
# - API=android-27 ABI=arm64-v8a
# - API=android-28 ABI=arm64-v8a
- API=android-29 ABI=arm64-v8a
matrix:
include:
Expand Down
3 changes: 3 additions & 0 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,10 @@ configure<JavaPluginConvention> {

buildscript {
repositories {
mavenLocal()
google()
jcenter()
mavenCentral()
}
dependencies {
classpath(Config.BuildPlugins.androidGradle)
Expand All @@ -26,6 +28,7 @@ buildscript {

allprojects {
repositories {
mavenLocal()
google()
jcenter()
mavenCentral()
Expand Down
2 changes: 1 addition & 1 deletion buildSrc/src/main/java/Config.kt
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ object Config {
val kotlinStdLib = "stdlib-jdk8"

object BuildPlugins {
val androidGradle = "com.android.tools.build:gradle:3.5.1"
val androidGradle = "com.android.tools.build:gradle:3.6.0-beta01"
val kotlinGradlePlugin = "gradle-plugin"
}

Expand Down
6 changes: 5 additions & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
# Daemon’s heap size
org.gradle.jvmargs=-Xms1g -Xmx1g -XX:MaxPermSize=512m -Dfile.encoding=UTF-8
org.gradle.jvmargs=-Xms1g -Dkotlin.daemon.jvm.options\="-Xmx1536M" -Xmx1536M -XX\:MaxPermSize\=512m -Dfile.encoding\=UTF-8

# Parallel execution
org.gradle.parallel=true

# Cacheable unit tests
android.testConfig.useRelativePath = true

# Migrating to AndroidX - AGP 3.6.x
android.useAndroidX=true
android.enableJetifier=true
15 changes: 15 additions & 0 deletions sentry-android-core/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ plugins {
id("com.android.library")
kotlin("android")
jacoco
`maven-publish`
}

android {
Expand All @@ -13,6 +14,10 @@ android {
defaultConfig {
targetSdkVersion(Config.Android.targetSdkVersion)
minSdkVersion(Config.Android.minSdkVersion)

// Required when setting minSdkVersion to 20 or lower
multiDexEnabled = true

javaCompileOptions {
annotationProcessorOptions {
includeCompileClasspath = true
Expand Down Expand Up @@ -84,3 +89,13 @@ dependencies {
testImplementation(Config.TestLibs.androidxJunit)
testImplementation(Config.TestLibs.mockitoKotlin)
}

afterEvaluate {
publishing {
publications {
register("release", MavenPublication::class) {
from(components["release"])
}
}
}
}
15 changes: 15 additions & 0 deletions sentry-android-ndk/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@

plugins {
id("com.android.library")
`maven-publish`
}

android {
Expand All @@ -19,6 +20,10 @@ android {
}

minSdkVersion(Config.Android.minSdkVersionNdk)

// Required when setting minSdkVersion to 20 or lower
multiDexEnabled = true

externalNativeBuild {
val sentryNativeSrc = if (File("${project.projectDir}/sentry-native-local").exists()) {
"sentry-native-local"
Expand Down Expand Up @@ -63,3 +68,13 @@ val initNative = tasks.register<Exec>("initNative") {
tasks.named("preBuild") {
dependsOn(initNative)
}

afterEvaluate {
publishing {
publications {
register("release", MavenPublication::class) {
from(components["release"])
}
}
}
}
14 changes: 14 additions & 0 deletions sentry-android/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
plugins {
id("com.android.library")
`maven-publish`
}

android {
Expand All @@ -9,6 +10,9 @@ android {
defaultConfig {
targetSdkVersion(Config.Android.targetSdkVersion)
minSdkVersion(Config.Android.minSdkVersionNdk)

// Required when setting minSdkVersion to 20 or lower
multiDexEnabled = true
}

compileOptions {
Expand All @@ -28,3 +32,13 @@ dependencies {
api(project(":sentry-android-core"))
api(project(":sentry-android-ndk"))
}

afterEvaluate {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you factor out the repeated publishing logic into the main build.gradle file?

publishing {
publications {
register("release", MavenPublication::class) {
from(components["release"])
}
}
}
}
15 changes: 15 additions & 0 deletions sentry-core/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ plugins {
java
kotlin("jvm")
jacoco
`maven-publish`
}

dependencies {
Expand Down Expand Up @@ -42,3 +43,17 @@ tasks {
dependsOn(jacocoTestReport)
}
}

val sourcesJar by tasks.registering(Jar::class) {
archiveClassifier.set("sources")
from(sourceSets["main"].allSource)
}

publishing {
publications {
register("release", MavenPublication::class) {
from(components["java"])
artifact(sourcesJar.get())
}
}
}
3 changes: 2 additions & 1 deletion sentry-sample/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,8 @@ android {
dependencies {
implementation(fileTree(mapOf("dir" to "libs", "include" to listOf("*.jar"))))

implementation(project(":sentry-android"))
// implementation(project(":sentry-android"))
implementation("io.sentry:sentry-android:2.0.0-SNAPSHOT")

implementation(Config.Libs.appCompat)
implementation(Config.Libs.constraintLayout)
Expand Down