File tree Expand file tree Collapse file tree 3 files changed +31
-2
lines changed Expand file tree Collapse file tree 3 files changed +31
-2
lines changed Original file line number Diff line number Diff line change @@ -229,9 +229,11 @@ functions:
229
229
- command : shell.exec
230
230
type : test
231
231
params :
232
+ silent : true
232
233
working_dir : " src"
233
234
script : |
234
- PROJECT_DIRECTORY=${PROJECT_DIRECTORY} NEXUS_USER=${sonatype_username} NEXUS_PWD=${sonatype_password} SIGNING_PWD=${signing_password} SIGNING_KEY_ID=${signing_keyId} RING_FILE_GPG_BASE64=${ring_file_gpg_base64} .evergreen/publish.sh
235
+ # DO NOT ECHO WITH XTRACE (which PREPARE_SHELL does)
236
+ PROJECT_DIRECTORY=${PROJECT_DIRECTORY} NEXUS_USERNAME=${nexus_username} NEXUS_PASSWORD=${nexus_password} SIGNING_PASSWORD=${signing_password} SIGNING_KEY_ID=${signing_keyId} RING_FILE_GPG_BASE64=${ring_file_gpg_base64} .evergreen/publish.sh
235
237
236
238
" cleanup " :
237
239
- command : shell.exec
Original file line number Diff line number Diff line change @@ -13,5 +13,12 @@ echo ${RING_FILE_GPG_BASE64} | base64 -d > ${PROJECT_DIRECTORY}/secring.gpg
13
13
echo " Publishing snapshot with jdk8"
14
14
15
15
export JAVA_HOME=" /opt/java/jdk8"
16
+
17
+ export ORG_GRADLE_PROJECT_nexusUsername=${NEXUS_USERNAME}
18
+ export ORG_GRADLE_PROJECT_nexusPassword=${NEXUS_PASSWORD}
19
+ export ORG_GRADLE_PROJECT_signing_keyId=${SIGNING_KEY_ID}
20
+ export ORG_GRADLE_PROJECT_signing_password=${SIGNING_PASSWORD}
21
+ export ORG_GRADLE_PROJECT_signing_secretKeyRingFile=${PROJECT_DIRECTORY} /secring.gpg
22
+
16
23
./gradlew -version
17
- ./gradlew -PnexusUsername= ${NEXUS_USER} -PnexusPassword= ${NEXUS_PWD} -Psigning.secretKeyRingFile= ${PROJECT_DIRECTORY} /secring.gpg -Psigning.password= ${SIGNING_PWD} -Psigning.keyId= ${SIGNING_KEY_ID} uploadSnapshotArchives --info
24
+ ./gradlew uploadSnapshotArchives
Original file line number Diff line number Diff line change @@ -73,6 +73,26 @@ configure(subprojects.findAll { it.name != 'util' }) {
73
73
project. hasProperty(propertyName) && project. property(propertyName). toBoolean()
74
74
}
75
75
76
+ /*
77
+ For security we allow the signing-related project properties to be passed in as environment variables, which
78
+ Gradle enables if they are prefixed with "ORG_GRADLE_PROJECT_". But since environment variables can not contain
79
+ the '.' character and the signing-related properties contain '.', here we map signing-related project properties with '_'
80
+ to ones with '.' that are expected by the signing plugin.
81
+ */
82
+ gradle. taskGraph. whenReady { taskGraph ->
83
+ if (taskGraph. allTasks. any { it instanceof Sign }) {
84
+ if (project. hasProperty(" signing_keyId" )) {
85
+ allprojects { ext. " signing.keyId" = project. property(" signing_keyId" ) }
86
+ }
87
+ if (project. hasProperty(" signing_secretKeyRingFile" )) {
88
+ allprojects { ext. " signing.secretKeyRingFile" = project. property(" signing_secretKeyRingFile" ) }
89
+ }
90
+ if (project. hasProperty(" signing_password" )) {
91
+ allprojects { ext. " signing.password" = project. property(" signing_password" ) }
92
+ }
93
+ }
94
+ }
95
+
76
96
javadoc {
77
97
exclude " **/com/mongodb/**/internal/**"
78
98
You can’t perform that action at this time.
0 commit comments