@@ -53,26 +53,30 @@ def toolchainLauncher = javaToolchains.launcherFor {
5353def sbeGroup = ' uk.co.real-logic'
5454def sbeVersion = file(' version.txt' ). text. trim()
5555
56- ext {
57- isReleaseVersion = ! sbeVersion . endsWith( ' -SNAPSHOT ' )
58- releasesRepoUrl = ' https://oss.sonatype.org/service/local/staging/deploy/maven2/ '
59- snapshotsRepoUrl = ' https://oss.sonatype.org/content/repositories/snapshots/ '
60-
61- if ( ! project . hasProperty( ' ossrhUsername ' )) {
62- ossrhUsername = ' '
56+ def getConfigProperty ( final String projectPropertyName , final String envVarName ) {
57+ String value = project . findProperty(projectPropertyName )
58+ if ( ! value) {
59+ value = System . getenv(envVarName)
60+ if ( ! value) {
61+ return null
62+ }
6363 }
6464
65- if (! project. hasProperty(' ossrhPassword' )) {
66- ossrhPassword = ' '
67- }
65+ value = value. trim()
6866
69- if (! project. hasProperty(' signingKey' )) {
70- signingKey = null
71- }
67+ return value ? value : null
68+ }
7269
73- if (! project. hasProperty(' signingPassword' )) {
74- signingPassword = null
75- }
70+ ext {
71+ isReleaseVersion = ! sbeVersion. endsWith(' -SNAPSHOT' )
72+
73+ sonatypeCentralPortalReleasesRepoUrl = ' https://ossrh-staging-api.central.sonatype.com/service/local/staging/deploy/maven2/'
74+ sonatypeCentralPortalSnapshotsRepoUrl = ' https://central.sonatype.com/repository/maven-snapshots/'
75+ sonatypeCentralPortalUsername = getConfigProperty(' sonatypeCentralPortalUsername' , ' SONATYPE_CENTRAL_PORTAL_USERNAME' )
76+ sonatypeCentralPortalPassword = getConfigProperty(' sonatypeCentralPortalPassword' , ' SONATYPE_CENTRAL_PORTAL_PASSWORD' )
77+
78+ signingKey = getConfigProperty(' signingKey' , ' SIGNING_GPG_SECRET_KEY' ) // NOTE: ASCII armored secret key
79+ signingPassword = getConfigProperty(' signingPassword' , ' SIGNING_GPG_PASSWORD' ) // NOTE: Plain text
7680}
7781
7882def projectPom = {
@@ -389,10 +393,10 @@ project(':sbe-tool') {
389393
390394 repositories {
391395 maven {
392- url = ! isReleaseVersion ? snapshotsRepoUrl : releasesRepoUrl
396+ url = ! isReleaseVersion ? sonatypeCentralPortalSnapshotsRepoUrl : sonatypeCentralPortalReleasesRepoUrl
393397 credentials {
394- username = ossrhUsername
395- password = ossrhPassword
398+ username = sonatypeCentralPortalUsername
399+ password = sonatypeCentralPortalPassword
396400 }
397401 }
398402 }
@@ -459,10 +463,10 @@ project(':sbe-all') {
459463 }
460464 repositories {
461465 maven {
462- url = ! isReleaseVersion ? snapshotsRepoUrl : releasesRepoUrl
466+ url = ! isReleaseVersion ? sonatypeCentralPortalSnapshotsRepoUrl : sonatypeCentralPortalReleasesRepoUrl
463467 credentials {
464- username = ossrhUsername
465- password = ossrhPassword
468+ username = sonatypeCentralPortalUsername
469+ password = sonatypeCentralPortalPassword
466470 }
467471 }
468472 }
@@ -579,10 +583,10 @@ project(':sbe-samples') {
579583
580584 repositories {
581585 maven {
582- url = ! isReleaseVersion ? snapshotsRepoUrl : releasesRepoUrl
586+ url = ! isReleaseVersion ? sonatypeCentralPortalSnapshotsRepoUrl : sonatypeCentralPortalReleasesRepoUrl
583587 credentials {
584- username = ossrhUsername
585- password = ossrhPassword
588+ username = sonatypeCentralPortalUsername
589+ password = sonatypeCentralPortalPassword
586590 }
587591 }
588592 }
@@ -1115,6 +1119,13 @@ tasks.named('dependencyUpdates').configure {
11151119 }
11161120}
11171121
1122+ tasks. register(' uploadArtifactsToCentralPortal' , uk.co.real_logic.sbe.build.SonatypeCentralPortalUploadRepositoryTask ) {
1123+ portalUsername. set(sonatypeCentralPortalUsername)
1124+ portalPassword. set(sonatypeCentralPortalPassword)
1125+ groupId. set(aeronGroup)
1126+ snapshotRelease. set(! isReleaseVersion)
1127+ }
1128+
11181129wrapper {
11191130 distributionType = ' ALL'
11201131}
0 commit comments