diff --git a/.appveyor.yml b/.appveyor.yml index 6f197ecae..67341558d 100644 --- a/.appveyor.yml +++ b/.appveyor.yml @@ -23,7 +23,8 @@ cache: - "%USERPROFILE%\\.gradle\\wrapper" - "%USERPROFILE%\\.m2\\repository" build_script: - - cmd: gradlew.bat build bintrayUpload -PbintrayUser=BINTRAY_USERNAME -PbintrayKey=BINTRAY_KEY -PmavenCentralUser=MAVEN_USER -PmavenCentralPassword=MAVEN_PASS + - cmd: gradlew.bat build bintrayUpload +# - cmd: gradlew.bat build bintrayUpload -PbintrayUser=BINTRAY_USERNAME -PbintrayKey=BINTRAY_KEY -PmavenCentralUser=MAVEN_USER -PmavenCentralPassword=MAVEN_PASS artifacts: - path: '**\libs\*sentry*.jar' - path: '**\outputs\aar\*sentry*release*.aar' diff --git a/.travis.yml b/.travis.yml index e9ea3fee6..b98b631aa 100644 --- a/.travis.yml +++ b/.travis.yml @@ -21,7 +21,8 @@ before_script: - export ANDROID_NDK_HOME=$ANDROID_HOME/ndk-bundle - chmod +x ./gradlew script: -- ./gradlew build bintrayUpload -PbintrayUser=BINTRAY_USERNAME -PbintrayKey=BINTRAY_KEY -PmavenCentralUser=MAVEN_USER -PmavenCentralPassword=MAVEN_PASS + - ./gradlew build bintrayUpload +#- ./gradlew build bintrayUpload -PbintrayUser=BINTRAY_USERNAME -PbintrayKey=BINTRAY_KEY -PmavenCentralUser=MAVEN_USER -PmavenCentralPassword=MAVEN_PASS android: components: - platform-tools diff --git a/build.gradle.kts b/build.gradle.kts index a91a7d8c7..bcc07daf2 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -42,7 +42,7 @@ allprojects { mavenCentral() } group = Config.Sentry.group - version = Config.Sentry.version + version = properties[Config.Sentry.versionNameProp].toString() description = Config.Sentry.description tasks { withType { diff --git a/buildSrc/src/main/java/Config.kt b/buildSrc/src/main/java/Config.kt index bfdcbc2d2..7722a58d5 100644 --- a/buildSrc/src/main/java/Config.kt +++ b/buildSrc/src/main/java/Config.kt @@ -1,3 +1,5 @@ +import java.util.Locale + object Config { val kotlinVersion = "1.3.61" val kotlinStdLib = "stdlib-jdk8" @@ -49,11 +51,9 @@ object Config { object Sentry { val SENTRY_CLIENT_NAME = "sentry.java.android" val group = "io.sentry" -// TODO: change version to publish new version - val version = "2.0.1" + val versionNameProp = "versionName" val description = "SDK for sentry.io" -// TODO: change version code to publish new version, follow the pattern of `version` - val buildVersionCode = 20017 + val buildVersionCodeProp = "buildVersionCode" val website = "https://sentry.io" val userOrg = "getsentry" val repoName = "sentry-android" @@ -82,7 +82,24 @@ object Config { val novodaBintrayPlugin = "com.novoda:bintray-release:1.0.1" val novodaBintray = "com.novoda.bintray-release" val sign = true - val mavenCentralSync = true + // we need a token and it's generated via https://oss.sonatype.org/#profile;User%20Token + // let's keep this step manual for now. + val mavenCentralSync = false + // Craft will do it + val autoPublish = false + + val bintrayUserProp = "BINTRAY_USERNAME" + val bintrayKeyProp = "BINTRAY_KEY" + + /** + * do not auto publish if version ends with SNAPSHOT + */ + fun isSNAPSHOT(version: String): Boolean = version.toUpperCase(Locale.ROOT).endsWith("SNAPSHOT") // could be contains + + /** + * returns an env. variable or the key if not set, it will fail with 401 Unauthorized + */ + fun getEnv(key: String): String = if (System.getenv(key).isNullOrEmpty()) key else System.getenv(key) } object NativePlugins { diff --git a/gradle.properties b/gradle.properties index 99dd32d92..684c9e16a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -9,3 +9,7 @@ org.gradle.caching=true # AndroidX required by AGP 3.6.x android.useAndroidX=true + +# Release information +buildVersionCode=20017 +versionName=2.0.2-SNAPSHOT diff --git a/sentry-android-core/build.gradle.kts b/sentry-android-core/build.gradle.kts index b59f5b792..fe611d80a 100644 --- a/sentry-android-core/build.gradle.kts +++ b/sentry-android-core/build.gradle.kts @@ -27,7 +27,7 @@ android { testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" versionName = project.version.toString() - versionCode = Config.Sentry.buildVersionCode + versionCode = project.properties[Config.Sentry.buildVersionCodeProp].toString().toInt() buildConfigField("String", "SENTRY_CLIENT_NAME", "\"${Config.Sentry.SENTRY_CLIENT_NAME}\"") } @@ -116,4 +116,8 @@ configure { scmConnection = Config.Sentry.scmConnection scmDevConnection = Config.Sentry.scmDevConnection scmUrl = Config.Sentry.scmUrl + autoPublish = Config.Deploy.autoPublish + dryRun = Config.Deploy.isSNAPSHOT(project.version.toString()) + bintrayUser = Config.Deploy.getEnv(Config.Deploy.bintrayUserProp) + bintrayKey = Config.Deploy.getEnv(Config.Deploy.bintrayKeyProp) } diff --git a/sentry-android-ndk/build.gradle.kts b/sentry-android-ndk/build.gradle.kts index d7e212b49..824f18498 100644 --- a/sentry-android-ndk/build.gradle.kts +++ b/sentry-android-ndk/build.gradle.kts @@ -33,7 +33,7 @@ android { testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" versionName = project.version.toString() - versionCode = Config.Sentry.buildVersionCode + versionCode = project.properties[Config.Sentry.buildVersionCodeProp].toString().toInt() externalNativeBuild { cmake { @@ -144,4 +144,8 @@ configure { scmConnection = Config.Sentry.scmConnection scmDevConnection = Config.Sentry.scmDevConnection scmUrl = Config.Sentry.scmUrl + autoPublish = Config.Deploy.autoPublish + dryRun = Config.Deploy.isSNAPSHOT(project.version.toString()) + bintrayUser = Config.Deploy.getEnv(Config.Deploy.bintrayUserProp) + bintrayKey = Config.Deploy.getEnv(Config.Deploy.bintrayKeyProp) } diff --git a/sentry-android/build.gradle.kts b/sentry-android/build.gradle.kts index e1aa64f1b..7d36053cd 100644 --- a/sentry-android/build.gradle.kts +++ b/sentry-android/build.gradle.kts @@ -16,7 +16,7 @@ android { minSdkVersion(Config.Android.minSdkVersionNdk) versionName = project.version.toString() - versionCode = Config.Sentry.buildVersionCode + versionCode = project.properties[Config.Sentry.buildVersionCodeProp].toString().toInt() } compileOptions { @@ -59,4 +59,8 @@ configure { scmConnection = Config.Sentry.scmConnection scmDevConnection = Config.Sentry.scmDevConnection scmUrl = Config.Sentry.scmUrl + autoPublish = Config.Deploy.autoPublish + dryRun = Config.Deploy.isSNAPSHOT(project.version.toString()) + bintrayUser = Config.Deploy.getEnv(Config.Deploy.bintrayUserProp) + bintrayKey = Config.Deploy.getEnv(Config.Deploy.bintrayKeyProp) } diff --git a/sentry-core/build.gradle.kts b/sentry-core/build.gradle.kts index eb6cdd6cb..3ede0356a 100644 --- a/sentry-core/build.gradle.kts +++ b/sentry-core/build.gradle.kts @@ -77,5 +77,8 @@ configure { scmConnection = Config.Sentry.scmConnection scmDevConnection = Config.Sentry.scmDevConnection scmUrl = Config.Sentry.scmUrl + autoPublish = Config.Deploy.autoPublish + dryRun = Config.Deploy.isSNAPSHOT(project.version.toString()) + bintrayUser = Config.Deploy.getEnv(Config.Deploy.bintrayUserProp) + bintrayKey = Config.Deploy.getEnv(Config.Deploy.bintrayKeyProp) } -