From c18479864c7f25eb929429ff8cde825228f53fe2 Mon Sep 17 00:00:00 2001 From: Fahim Salam Chowdhury Date: Tue, 7 Feb 2023 13:35:31 +0600 Subject: [PATCH 1/2] 1026-Add_accountManager_app_support issue: https://gitlab.e.foundation/e/os/backlog/-/issues/1026 --- .../java/com/nextcloud/android/sso/model/FilesAppType.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/src/main/java/com/nextcloud/android/sso/model/FilesAppType.java b/lib/src/main/java/com/nextcloud/android/sso/model/FilesAppType.java index 98bf7e78..9154dc8b 100644 --- a/lib/src/main/java/com/nextcloud/android/sso/model/FilesAppType.java +++ b/lib/src/main/java/com/nextcloud/android/sso/model/FilesAppType.java @@ -24,6 +24,7 @@ import androidx.annotation.Nullable; public enum FilesAppType { + ACCOUNT_MANAGER("foundation.e.accountmanager", "e.foundation.webdav.eelo"), PROD("com.nextcloud.client", "nextcloud"), QA("com.nextcloud.android.qa", "nextcloud.qa"), DEV("com.nextcloud.android.beta", "nextcloud.beta"); @@ -37,8 +38,8 @@ public enum FilesAppType { } /** - * @return {@link #PROD}, {@link #QA} or {@link #DEV} depending on {@param accountType}. - * Uses {@link #PROD} as fallback. + * @return {@link #ACCOUNT_MANAGER} {@link #PROD}, {@link #QA} or {@link #DEV} depending on {@param accountType}. + * Uses {@link #ACCOUNT_MANAGER} as fallback. */ @NonNull public static FilesAppType findByAccountType(@Nullable String accountType) { @@ -47,6 +48,6 @@ public enum FilesAppType { return appType; } } - return PROD; + return ACCOUNT_MANAGER; } } -- GitLab From 9532e9d78fda6b38a3b782f9d8f4f276cf8c663a Mon Sep 17 00:00:00 2001 From: Fahim Salam Chowdhury Date: Wed, 8 Feb 2023 13:07:31 +0600 Subject: [PATCH 2/2] add library release support --- .gitlab-ci.yml | 27 ++++++++++++++++++++ lib/build.gradle | 64 +++++++++++++++++++++++++++++++++++++++--------- 2 files changed, 79 insertions(+), 12 deletions(-) create mode 100644 .gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 00000000..b26a8452 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,27 @@ +image: "registry.gitlab.e.foundation/e/os/docker-android-apps-cicd:latest" + +stages: + - lib + - publish + +before_script: + - export GRADLE_USER_HOME=$(pwd)/.gradle + - chmod +x ./gradlew + +cache: + key: ${CI_PROJECT_ID} + paths: + - .gradle/ + +lib: + stage: lib + script: + - ./gradlew :lib:assembleRelease + artifacts: + paths: + - lib/build/outputs/aar/ + +publish: + stage: publish + script: + - ./gradlew :lib:publish diff --git a/lib/build.gradle b/lib/build.gradle index 231e0090..dc1a99d5 100644 --- a/lib/build.gradle +++ b/lib/build.gradle @@ -14,7 +14,14 @@ apply plugin: "com.github.spotbugs" apply plugin: "io.gitlab.arturbosch.detekt" apply plugin: 'maven-publish' // needed for JitPack.io -group = 'com.github.nextcloud' +group = 'foundation.e.lib' + +def versionMajor = 1 +def versionMinor = 0 +def versionPatch = 1 +def releasePatch = "alpha" +def libName = "Android-SingleSignOn" + spotbugs { toolVersion = '3.1.12' @@ -26,12 +33,12 @@ configurations { } android { - compileSdkVersion 31 + compileSdkVersion 33 defaultConfig { minSdkVersion 21 - targetSdkVersion 31 - versionCode 1 - versionName '1.0' + targetSdkVersion 33 + versionCode versionMajor * 1000000 + versionMinor * 1000 + versionPatch + versionName "${versionMajor}.${versionMinor}.${versionPatch}-${releasePatch}" } buildTypes { @@ -78,6 +85,12 @@ android { } } } + + libraryVariants.all{ variant -> + variant.outputs.each{ output-> + output.outputFileName = "${libName}-${defaultConfig.versionName}.aar" + } + } } task ktlint(type: JavaExec, group: "verification") { @@ -130,15 +143,42 @@ dependencies { testImplementation 'org.mockito:mockito-core:5.1.1' } -afterEvaluate { - publishing { - publications { - release(MavenPublication) { - from components.release +publishing { + publications { + maven(MavenPublication) { + groupId = "${group}" + artifactId = "${libName}" + version android.defaultConfig.versionName + artifact "$buildDir/outputs/aar/${libName}-${android.defaultConfig.versionName}.aar" + + + pom.withXml { + def dependenciesNode = asNode().appendNode('dependencies') + configurations.implementation.allDependencies.each { dependency -> + if (dependency.name != 'unspecified') { + def dependencyNode = dependenciesNode.appendNode('dependency') + dependencyNode.appendNode('groupId', dependency.group) + dependencyNode.appendNode('artifactId', dependency.name) + dependencyNode.appendNode('version', dependency.version) + } + } + } + - groupId = 'com.nextcloud.android.sso' - artifactId = 'master' + repositories { + maven { + url "https://gitlab.e.foundation/api/v4/projects/1402/packages/maven" + name "GitLab" + credentials(HttpHeaderCredentials) { + name = 'Job-Token' + value = System.getenv("CI_JOB_TOKEN") + } + authentication { + header(HttpHeaderAuthentication) + } + } } } } } + -- GitLab