Skip to content

Commit 06a0f71

Browse files
committed
Change the build to publish to bintray
1 parent db95c85 commit 06a0f71

File tree

4 files changed

+92
-336
lines changed

4 files changed

+92
-336
lines changed

build.gradle

Lines changed: 83 additions & 85 deletions
Original file line numberDiff line numberDiff line change
@@ -214,9 +214,6 @@ subprojects { project ->
214214
project.ext.artifactoryPublishPassword = System.getenv("ARTIFACTORY_PASSWORD")
215215
}
216216

217-
if(project.name == 'grails-dependencies') return
218-
if(project.name == 'grails-bom') return
219-
220217
apply plugin: 'groovy'
221218
apply plugin: "io.github.groovylang.groovydoc"
222219
if(!isTestSuite) {
@@ -230,6 +227,88 @@ subprojects { project ->
230227
apply plugin: 'provided-base'
231228
apply plugin: 'optional-base'
232229

230+
if (!isTestSuite) {
231+
232+
modifyPom {
233+
delegate.project {
234+
def updatePom = pomInfo.clone()
235+
updatePom.delegate = delegate
236+
updatePom()
237+
}
238+
}
239+
240+
publishing {
241+
242+
repositories {
243+
maven {
244+
credentials {
245+
def u = System.getenv("ARTIFACTORY_USERNAME") ?: project.hasProperty("artifactoryPublishUsername") ? project.artifactoryPublishUsername : ''
246+
def p = System.getenv("ARTIFACTORY_PASSWORD") ?: project.hasProperty("artifactoryPublishPassword") ? project.artifactoryPublishPassword : ''
247+
username = u
248+
password = p
249+
}
250+
url "https://repo.grails.org/grails/libs-snapshots-local"
251+
}
252+
}
253+
254+
publications {
255+
maven(MavenPublication) {
256+
from components.java
257+
258+
artifact sourcesJar {
259+
classifier "sources"
260+
}
261+
artifact javadocJar {
262+
classifier "javadoc"
263+
}
264+
265+
pom.withXml {
266+
def xml = asNode()
267+
268+
xml.children().last() + pomInfo
269+
}
270+
271+
}
272+
}
273+
}
274+
275+
bintray {
276+
user = System.getenv("BINTRAY_USER") ?: project.hasProperty("bintrayUser") ? project.bintrayUser : ''
277+
key = System.getenv("BINTRAY_KEY") ?: project.hasProperty("bintrayKey") ? project.bintrayKey : ''
278+
publications = ['maven']
279+
publish = false
280+
dryRun = false
281+
pkg {
282+
repo = 'grails-core'
283+
userOrg = 'grails'
284+
name = 'grails-core'
285+
desc = 'Grails Framework'
286+
websiteUrl = 'http://grails.org'
287+
issueTrackerUrl = 'https://github.com/grails/grails-core/issues'
288+
vcsUrl = 'https://github.com/grails/grails-core'
289+
licenses = ['Apache-2.0']
290+
publicDownloadNumbers = true
291+
version {
292+
name = project.version
293+
gpg {
294+
sign = true
295+
passphrase = System.getenv("SIGNING_PASSPHRASE") ?: project.hasProperty("signingPassphrase") ? project.signingPassphrase : ''
296+
}
297+
mavenCentralSync {
298+
sync = false
299+
def ossUser = System.getenv("SONATYPE_USERNAME") ?: project.hasProperty("sonatypeOssUsername") ? project.sonatypeOssUsername : ''
300+
def ossPass = System.getenv("SONATYPE_PASSWORD") ?: project.hasProperty("sonatypeOssPassword") ? project.sonatypeOssPassword : ''
301+
user = ossUser
302+
password = ossPass
303+
}
304+
305+
}
306+
}
307+
}
308+
}
309+
310+
if(project.name == 'grails-dependencies') return
311+
if(project.name == 'grails-bom') return
233312

234313
sourceCompatibility = "1.7"
235314
targetCompatibility = "1.7"
@@ -376,13 +455,7 @@ subprojects { project ->
376455

377456
if(!isTestSuite) {
378457

379-
modifyPom {
380-
delegate.project {
381-
def updatePom = pomInfo.clone()
382-
updatePom.delegate = delegate
383-
updatePom()
384-
}
385-
}
458+
386459

387460
task installToHomeDist(type: Upload) {
388461
configuration = configurations.archives
@@ -391,82 +464,7 @@ subprojects { project ->
391464
}
392465
}
393466

394-
publishing {
395467

396-
repositories {
397-
maven {
398-
credentials {
399-
def u = System.getenv("ARTIFACTORY_USERNAME") ?: project.hasProperty("artifactoryPublishUsername") ? project.artifactoryPublishUsername : ''
400-
def p = System.getenv("ARTIFACTORY_PASSWORD") ?: project.hasProperty("artifactoryPublishPassword") ? project.artifactoryPublishPassword : ''
401-
username = u
402-
password = p
403-
}
404-
if(isBuildSnapshot) {
405-
url "https://repo.grails.org/grails/libs-snapshots-local"
406-
}
407-
else {
408-
url "https://repo.grails.org/grails/libs-releases-local"
409-
}
410-
}
411-
}
412-
413-
publications {
414-
maven(MavenPublication) {
415-
from components.java
416-
417-
artifact sourcesJar {
418-
classifier "sources"
419-
}
420-
artifact javadocJar {
421-
classifier "javadoc"
422-
}
423-
424-
pom.withXml {
425-
def xml = asNode()
426-
427-
xml.children().last() + pomInfo
428-
}
429-
430-
}
431-
}
432-
}
433-
434-
435-
bintray {
436-
def u = System.getenv("BINTRAY_USER") ?: project.hasProperty("bintrayUser") ? project.bintrayUser : ''
437-
def p = System.getenv("BINTRAY_KEY") ?: project.hasProperty("bintrayKey") ? project.bintrayKey : ''
438-
439-
user = u
440-
key = p
441-
publications = ['maven']
442-
publish = bintrayPublish
443-
pkg {
444-
repo = 'grails-core'
445-
userOrg = 'grails'
446-
name = 'org.grails'
447-
desc = 'Grails Framework'
448-
websiteUrl = 'http://grails.org'
449-
issueTrackerUrl = 'http://jira.grails.org/browse/GRAILS'
450-
vcsUrl = 'http://jira.grails.org/browse/GRAILS'
451-
licenses = ['Apache-2.0']
452-
publicDownloadNumbers = true
453-
version {
454-
name = project.version
455-
gpg {
456-
sign = true
457-
passphrase = System.getenv("SIGNING_PASSPHRASE") ?: project.hasProperty("signingPassphrase") ? project.signingPassphrase : ''
458-
}
459-
mavenCentralSync {
460-
sync = false
461-
def ossUser = System.getenv("SONATYPE_USERNAME") ?: project.hasProperty("sonatypeOssUsername") ? project.sonatypeOssUsername : ''
462-
def ossPass = System.getenv("SONATYPE_PASSWORD") ?: project.hasProperty("sonatypeOssPassword") ? project.sonatypeOssPassword : ''
463-
user = ossUser
464-
password = ossPass
465-
}
466-
467-
}
468-
}
469-
}
470468

471469
project.tasks.withType(org.gradle.api.publish.maven.tasks.PublishToMavenLocal) { org.gradle.api.publish.maven.tasks.PublishToMavenLocal t ->
472470
t.dependsOn installToHomeDist

grails-bom/build.gradle

Lines changed: 4 additions & 118 deletions
Original file line numberDiff line numberDiff line change
@@ -1,58 +1,7 @@
1-
import org.gradle.api.internal.project.IsolatedAntBuilder
2-
31
apply plugin: 'maven-publish'
42
apply plugin: 'com.jfrog.bintray'
53

6-
configurations {
7-
mavenAntTasks
8-
}
9-
dependencies {
10-
mavenAntTasks 'org.apache.maven:maven-ant-tasks:2.1.1'
11-
}
12-
13-
task uploadArchives(dependsOn:project.tasks.withType(PublishToMavenLocal)) {
14-
doLast {
15-
def antBuilder = services.get(IsolatedAntBuilder)
16-
def rootDir = project.parent.projectDir
17-
antBuilder.withClasspath(configurations.mavenAntTasks).execute {
18-
taskdef(resource: 'org/apache/maven/artifact/ant/antlib.xml')
19-
def isSnapshot = version.endsWith("-SNAPSHOT")
20-
def url = isSnapshot ? "https://oss.sonatype.org/content/repositories/snapshots/" : "https://oss.sonatype.org/service/local/staging/deploy/maven2/"
21-
def repoId = isSnapshot ? "sonatype-nexus-snapshots" : "sonatype-nexus-staging"
22-
mvn {
23-
arg value: "org.apache.maven.plugins:maven-gpg-plugin:1.3:sign-and-deploy-file"
24-
arg value: "-Dgpg.homedir=${rootDir.absolutePath}"
25-
arg value: "-Dgpg.keyname=${System.getenv("SIGNING_KEY")}"
26-
arg value: "-Dgpg.passphrase=${System.getenv("SIGNING_PASSWORD")}"
27-
arg value: "-Durl=${url}"
28-
arg value: "-DrepositoryId=${repoId}"
29-
arg value: "-DpomFile=${buildDir}/publications/maven/pom-default.xml"
30-
arg value: "-Dfile=${buildDir}/publications/maven/pom-default.xml"
31-
arg value: "-Pgpg"
32-
}
33-
}
34-
}
35-
}
36-
374
publishing {
38-
39-
repositories {
40-
maven {
41-
credentials {
42-
def u = System.getenv("ARTIFACTORY_USERNAME") ?: project.hasProperty("artifactoryPublishUsername") ? project.artifactoryPublishUsername : ''
43-
def p = System.getenv("ARTIFACTORY_PASSWORD") ?: project.hasProperty("artifactoryPublishPassword") ? project.artifactoryPublishPassword : ''
44-
username = u
45-
password = p
46-
}
47-
if(isBuildSnapshot) {
48-
url "https://repo.grails.org/grails/libs-snapshots-local"
49-
}
50-
else {
51-
url "https://repo.grails.org/grails/libs-releases-local"
52-
}
53-
}
54-
}
55-
565
publications {
576
maven(MavenPublication) {
587
pom.withXml {
@@ -63,37 +12,11 @@ publishing {
6312
def profiles = new Properties()
6413
profiles.load(new StringReader(new File("$projectDir/profiles.properties").text))
6514

15+
xml.name[0].value = "Grails BOM"
16+
xml.description[0].value = "Grails default supported dependency definitions"
17+
6618
xml.children().last() + {
6719
def mkp = delegate
68-
mkp.name "Grails BOM"
69-
mkp.description "Grails default supported dependency definitions"
70-
mkp.url 'http://grails.org'
71-
mkp.licenses {
72-
mkp.license {
73-
mkp.name "Apache License, Version 2.0"
74-
mkp.url 'http://www.apache.org/licenses/LICENSE-2.0'
75-
}
76-
}
77-
mkp.scm {
78-
mkp.url 'scm:[email protected]:grails/grails-core.git'
79-
mkp.connection 'scm:[email protected]:grails/grails-core.git'
80-
mkp.developerConnection 'scm:[email protected]:grails/grails-core.git'
81-
}
82-
83-
mkp.developers {
84-
mkp.developer {
85-
mkp.id 'graemerocher'
86-
mkp.name 'Graeme Rocher'
87-
}
88-
mkp.developer {
89-
mkp.id 'jeffscottbrown'
90-
mkp.name 'Jeff Brown'
91-
}
92-
mkp.developer {
93-
mkp.id 'lhotari'
94-
mkp.name 'Lari Hotari'
95-
}
96-
}
9720

9821
mkp.dependencyManagement {
9922
mkp.dependencies {
@@ -247,41 +170,4 @@ publishing {
247170

248171
}
249172
}
250-
}
251-
252-
253-
bintray {
254-
def u = System.getenv("BINTRAY_USER") ?: project.hasProperty("bintrayUser") ? project.bintrayUser : ''
255-
def p = System.getenv("BINTRAY_KEY") ?: project.hasProperty("bintrayKey") ? project.bintrayKey : ''
256-
257-
user = u
258-
key = p
259-
publications = ['maven']
260-
publish = bintrayPublish
261-
pkg {
262-
repo = 'grails-core'
263-
userOrg = 'grails'
264-
name = 'org.grails'
265-
desc = 'Grails Framework'
266-
websiteUrl = 'http://grails.org'
267-
issueTrackerUrl = 'http://jira.grails.org/browse/GRAILS'
268-
vcsUrl = 'http://jira.grails.org/browse/GRAILS'
269-
licenses = ['Apache-2.0']
270-
publicDownloadNumbers = true
271-
version {
272-
name = project.version
273-
gpg {
274-
sign = true
275-
passphrase = System.getenv("SIGNING_PASSPHRASE") ?: project.hasProperty("signingPassphrase") ? project.signingPassphrase : ''
276-
}
277-
mavenCentralSync {
278-
sync = false
279-
def ossUser = System.getenv("SONATYPE_USERNAME") ?: project.hasProperty("sonatypeOssUsername") ? project.sonatypeOssUsername : ''
280-
def ossPass = System.getenv("SONATYPE_PASSWORD") ?: project.hasProperty("sonatypeOssPassword") ? project.sonatypeOssPassword : ''
281-
user = ossUser
282-
password = ossPass
283-
}
284-
285-
}
286-
}
287-
}
173+
}

0 commit comments

Comments
 (0)