From 98d923f25cf177020f196ff67d6913de337e55e4 Mon Sep 17 00:00:00 2001 From: Akinwale Ariwodola Date: Fri, 25 Jun 2021 00:31:23 +0100 Subject: [PATCH] Publish to Maven Central (#9) * configure maven central publishing * remove bintrayUpload argument * use modifyPom to update artifactId --- .gitlab-ci.yml | 2 ++ .../bootstraps/lbry/build/build.py | 5 ++- .../lbry/build/templates/build.tmpl.gradle | 31 +++++++++++------- .../build/templates/build.tmpl.gradle.arm | 31 +++++++++++------- .../lbry/build/templates/gradle.properties | 9 ++++- p4a/pythonforandroid/toolchain.py | 4 +-- signing.pgp | Bin 0 -> 3792 bytes 7 files changed, 55 insertions(+), 27 deletions(-) create mode 100644 signing.pgp diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 500ba17..e26a755 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -14,6 +14,7 @@ build arm64 aar: - bin/lbrysdk-*-release__arm64.aar expire_in: 1 week script: + - export NEXUS_SIGNING_KEYRING_FILE=$CI_PROJECT_DIR/signing.pgp - export PATH=/usr/bin:$PATH - wget -q 'https://eu.crystax.net/download/crystax-ndk-10.3.2-linux-x86_64.tar.xz' -P ~/.buildozer/android/ - tar -xf ~/.buildozer/android/crystax-ndk-10.3.2-linux-x86_64.tar.xz -C ~/.buildozer/android/ @@ -38,6 +39,7 @@ build arm aar: - bin/lbrysdk-*-release__arm.aar expire_in: 1 week script: + - export NEXUS_SIGNING_KEYRING_FILE=$CI_PROJECT_DIR/signing.pgp - export PATH=/usr/bin:$PATH - wget -q 'https://eu.crystax.net/download/crystax-ndk-10.3.2-linux-x86_64.tar.xz' -P ~/.buildozer/android/ - tar -xf ~/.buildozer/android/crystax-ndk-10.3.2-linux-x86_64.tar.xz -C ~/.buildozer/android/ diff --git a/p4a/pythonforandroid/bootstraps/lbry/build/build.py b/p4a/pythonforandroid/bootstraps/lbry/build/build.py index 21da781..59857a9 100755 --- a/p4a/pythonforandroid/bootstraps/lbry/build/build.py +++ b/p4a/pythonforandroid/bootstraps/lbry/build/build.py @@ -404,7 +404,10 @@ main.py that loads it.''') android_api=android_api, build_tools_version=build_tools_version) - render('gradle.properties', 'gradle.properties') + render( + 'gradle.properties', + 'gradle.properties', + env=os.environ) # copy icon drawables for folder in ('drawable-hdpi', 'drawable-mdpi', 'drawable-xhdpi', 'drawable-xxhdpi', 'drawable-xxxhdpi'): diff --git a/p4a/pythonforandroid/bootstraps/lbry/build/templates/build.tmpl.gradle b/p4a/pythonforandroid/bootstraps/lbry/build/templates/build.tmpl.gradle index 455e610..34d5198 100644 --- a/p4a/pythonforandroid/bootstraps/lbry/build/templates/build.tmpl.gradle +++ b/p4a/pythonforandroid/bootstraps/lbry/build/templates/build.tmpl.gradle @@ -3,11 +3,12 @@ buildscript { repositories { jcenter() google() + mavenCentral() maven { url "https://jitpack.io" } } dependencies { classpath 'com.android.tools.build:gradle:3.4.2' - classpath 'com.novoda:bintray-release:0.9.2' + classpath 'com.bmuschko:gradle-nexus-plugin:2.3.1' } } @@ -24,7 +25,11 @@ allprojects { } apply plugin: 'com.android.library' -apply plugin: 'com.novoda.bintray-release' +apply plugin: 'com.bmuschko.nexus' + +archivesBaseName = 'lbrysdk' +group = "io.lbry" +version = "{{ args.version }}" android { compileSdkVersion {{ android_api }} @@ -96,15 +101,19 @@ subprojects { } } -publish { - userOrg = 'lbryio' - repoName = 'io.lbry' - groupId = 'io.lbry' - artifactId = 'lbrysdk64' - publishVersion = '{{args.version}}' - licences = ['MIT'] - desc = 'LBRY SDK packaged as Android AAR (64-bit)' - website = 'https://github.com/lbryio/lbry-android-sdk' +nexus { + sign = true + repositoryUrl = 'https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/' + snapshotRepositoryUrl = 'https://s01.oss.sonatype.org/content/repositories/snapshots/' +} + +modifyPom { + project { + name 'LBRY SDK for Android' + description 'The LBRY SDK packaged as an Android AAR' + groupId 'io.lbry' + artifactId 'lbrysdk64' + } } dependencies { diff --git a/p4a/pythonforandroid/bootstraps/lbry/build/templates/build.tmpl.gradle.arm b/p4a/pythonforandroid/bootstraps/lbry/build/templates/build.tmpl.gradle.arm index 22e415f..b418f27 100644 --- a/p4a/pythonforandroid/bootstraps/lbry/build/templates/build.tmpl.gradle.arm +++ b/p4a/pythonforandroid/bootstraps/lbry/build/templates/build.tmpl.gradle.arm @@ -3,11 +3,12 @@ buildscript { repositories { jcenter() google() + mavenCentral() maven { url "https://jitpack.io" } } dependencies { classpath 'com.android.tools.build:gradle:3.4.2' - classpath 'com.novoda:bintray-release:0.9.2' + classpath 'com.bmuschko:gradle-nexus-plugin:2.3.1' } } @@ -24,7 +25,11 @@ allprojects { } apply plugin: 'com.android.library' -apply plugin: 'com.novoda.bintray-release' +apply plugin: 'com.bmuschko.nexus' + +archivesBaseName = 'lbrysdk' +group = "io.lbry" +version = "{{ args.version }}" android { compileSdkVersion {{ android_api }} @@ -96,15 +101,19 @@ subprojects { } } -publish { - userOrg = 'lbryio' - repoName = 'io.lbry' - groupId = 'io.lbry' - artifactId = 'lbrysdk32' - publishVersion = '{{args.version}}' - licences = ['MIT'] - desc = 'LBRY SDK packaged as Android AAR (32-bit)' - website = 'https://github.com/lbryio/lbry-android-sdk' +nexus { + sign = true + repositoryUrl = 'https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/' + snapshotRepositoryUrl = 'https://s01.oss.sonatype.org/content/repositories/snapshots/' +} + +modifyPom { + project { + name 'LBRY SDK for Android' + description 'The LBRY SDK packaged as an Android AAR' + groupId 'io.lbry' + artifactId 'lbrysdk32' + } } dependencies { diff --git a/p4a/pythonforandroid/bootstraps/lbry/build/templates/gradle.properties b/p4a/pythonforandroid/bootstraps/lbry/build/templates/gradle.properties index d015431..f7a8396 100644 --- a/p4a/pythonforandroid/bootstraps/lbry/build/templates/gradle.properties +++ b/p4a/pythonforandroid/bootstraps/lbry/build/templates/gradle.properties @@ -1,2 +1,9 @@ android.useAndroidX=true -android.enableJetifier=true \ No newline at end of file +android.enableJetifier=true + +nexusUsername={{ env["SONATYPE_USERNAME"] }} +nexusPassword={{ env["SONATYPE_PASSWORD"] }} + +signing.keyId={{ env["NEXUS_SIGNING_KEY_ID"] }} +signing.password={{ env["NEXUS_SIGNING_KEY_PASSWORD"] }} +signing.secretKeyRingFile={{ env["NEXUS_SIGNING_KEYRING_FILE"] }} diff --git a/p4a/pythonforandroid/toolchain.py b/p4a/pythonforandroid/toolchain.py index be5e14a..a310723 100644 --- a/p4a/pythonforandroid/toolchain.py +++ b/p4a/pythonforandroid/toolchain.py @@ -865,9 +865,7 @@ class ToolchainCL(object): raise BuildInterruptingException( "Unknown build mode {} for apk()".format(args.build_mode)) output = shprint(gradlew, "--console=plain", gradle_task, - "bintrayUpload", - "-PdryRun=false", - "-Poverride=true", + "uploadArchives", _tail=20, _critical=True, _env=env) diff --git a/signing.pgp b/signing.pgp new file mode 100644 index 0000000000000000000000000000000000000000..9f58bb2e322e1377adf3166e6354046b087bdab5 GIT binary patch literal 3792 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 literal 0 HcmV?d00001