From f0ec940ae9deed6f6b7a69b760b9d7351971a3bc Mon Sep 17 00:00:00 2001 From: graemerocher Date: Tue, 10 Mar 2015 09:35:32 +0100 Subject: [PATCH] Test Travis publish --- .travis.yml | 42 +++++++++++--------- build.gradle | 99 +++++++++++++++++++++++----------------------- secring.gpg.enc | Bin 0 -> 2624 bytes travis-build.sh | 61 ++++++++++++++-------------- travis-publish.sh | 3 +- 5 files changed, 107 insertions(+), 98 deletions(-) create mode 100644 secring.gpg.enc diff --git a/.travis.yml b/.travis.yml index c87d967d598..dbab3e5947b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -22,24 +22,28 @@ env: - secure: HvROZ9kWW9GvKw4MZKEhsgUHQh/xSVrbOr/enq9fFX4+Cf7MGXc1ySlNHhDTV1mGdP6QTIl7CI3Xz3u9yCgXy4m3eyTgVUzeQOUAv1roiR8ajv1PleVGUOqMreejUUsFDHR1gmNR9S17hJoNZPBanB43R9tJDQVvrEUnV38Wr48= - secure: FYgiX7uSiQFql2bQsOfHsTypik4/hArAFMaMcm05MoXBHyb5tl3VXwo3jEBp0MYsH9iIIJ8crlLy4ylm+8XMKOq300zZk2feqQME4x2DXxlUgmfZkbnvY+iUpmLa7OoMAqUV8ardbBrXVn/gQjDH9jvVcX+Gv7KnKE2xyzI0lQY= - secure: SbEE24W2zMdao0ArFBHTDP7ntDJn3wmaVl/T42ahkzQUSjQiND+TXwJLhaNADJDIyLg0zmFEIKUk7g7HUMOdw5a2foZbz7BESkz4Nnuhw5O7CgJdIYL6lfLNPkOA6pc7H7D0D5J39vLk4PDqpOJxUw+sgaH2gg2F13kWFk8YZVY= - matrix: - - GORM_IMPL=test - - GORM_IMPL=hibernate - - GORM_IMPL=hibernate4 - - GORM_IMPL=mongodb - - GORM_IMPL=redis - - GORM_IMPL=cassandra - - GORM_IMPL=neo4j - - GORM_IMPL=restclient -matrix: - fast_finish: true + - secure: D604qHBpW7UuFuxkhu/cqVzpEESkkipWTKyz3j75i2k+ocQXcYXSj3zDMk4Hmo/iTHszwCgXk1w/5aj+mxRVecewmXmpFk3Q63qPvJprAjcvatmxp82aBmmpPd9GHjKbyLmu6Gn3R8QtX6yAT75T9lf4Y1FMi9mVwFPOtLiSEs0= +# matrix: +# - GORM_IMPL=test +# - GORM_IMPL=hibernate +# - GORM_IMPL=hibernate4 +# - GORM_IMPL=mongodb +# - GORM_IMPL=redis +# - GORM_IMPL=cassandra +# - GORM_IMPL=neo4j +# - GORM_IMPL=restclient +before_install: +- openssl aes-256-cbc -pass pass:$SIGNING_PASSPHRASE -in secring.gpg.enc -out secring.gpg + -d +#matrix: +# fast_finish: true script: ./travis-build.sh install: true -after_success: -- python ./travis/travis_after_all.py -- export $(cat .to_export_back) -- ./travis-publish.sh -after_failure: -- python ./travis/travis_after_all.py -- export $(cat .to_export_back) -- ./travis-after-failure.sh +#after_success: +#- python ./travis/travis_after_all.py +#- export $(cat .to_export_back) +#- ./travis-publish.sh +#after_failure: +#- python ./travis/travis_after_all.py +#- export $(cat .to_export_back) +#- ./travis-after-failure.sh diff --git a/build.gradle b/build.gradle index 0aab6b9dbe4..b23a3a2ec25 100644 --- a/build.gradle +++ b/build.gradle @@ -7,6 +7,7 @@ buildscript { dependencies { classpath "com.jfrog.bintray.gradle:gradle-bintray-plugin:1.1" classpath "com.netflix.nebula:gradle-extra-configurations-plugin:2.2.0" + classpath 'com.bmuschko:gradle-nexus-plugin:2.3' } } @@ -41,6 +42,9 @@ project.ext { isBuildSnapshot = releaseType == "BUILD-SNAPSHOT" servletApiVersion = "3.0.1" + + nexusUsername = System.getenv("SONATYPE_USERNAME") ?: project.hasProperty("sonatypeOssUsername") ? project.sonatypeOssUsername : '' + nexusPassword = System.getenv("SONATYPE_PASSWORD") ?: project.hasProperty("sonatypeOssPassword") ? project.sonatypeOssPassword : '' } def groovyMajorVersion = groovyVersion[0..2] @@ -114,6 +118,44 @@ subprojects { version = "${projectVersion}.${releaseType}" group = "org.grails" + ext { + pomInfo = { + delegate.name 'Grails GORM' + delegate.description 'GORM - Grails Data Access Framework' + delegate.url 'http://grails.org/' + + delegate.licenses { + delegate.license { + delegate.name 'The Apache Software License, Version 2.0' + delegate.url 'http://www.apache.org/licenses/LICENSE-2.0.txt' + delegate.distribution 'repo' + } + } + + delegate.scm { + delegate.url 'scm:git@github.com:grails/grails-data-mapping.git' + delegate.connection 'scm:git@github.com:grails/grails-data-mapping.git' + delegate.developerConnection 'scm:git@github.com:grails/grails-data-mapping.git' + } + + + delegate.developers { + delegate.developer { + delegate.id 'graemerocher' + delegate.name 'Graeme Rocher' + } + delegate.developer { + delegate.id 'jeffscottbrown' + delegate.name 'Jeff Brown' + } + delegate.developer { + delegate.id 'burtbeckwith' + delegate.name 'Burt Beckwith' + } + } + + } + } def isStandardGroovyMavenProject = isGroovyProject(project) @@ -121,6 +163,7 @@ subprojects { if (isStandardGroovyMavenProject) { apply plugin: 'groovy' apply plugin: 'eclipse' + apply plugin: 'com.bmuschko.nexus' apply plugin: 'maven-publish' apply plugin: 'com.jfrog.bintray' apply plugin: 'idea' @@ -267,15 +310,6 @@ subprojects { } if (isStandardGroovyMavenProject) { - task sourcesJar(type: Jar, dependsOn:classes) { - classifier = 'sources' - from sourceSets.main.allSource - } - - task javadocJar(type: Jar, dependsOn:javadoc) { - classifier = 'javadoc' - from javadoc.destinationDir - } configure([javadoc]) { options.encoding "UTF-8" @@ -284,10 +318,12 @@ subprojects { options.jFlags "-Xms64M", "-Xmx512M", "-XX:MaxPermSize=256m" } - artifacts { - archives jar - archives sourcesJar - archives javadocJar + modifyPom { + delegate.project { + def updatePom = pomInfo.clone() + updatePom.delegate = delegate + updatePom() + } } publishing { @@ -321,42 +357,7 @@ subprojects { def xml = asNode() def dependency = xml.dependencies.find { dep -> dep.artifactId == 'slf4j-simple' } dependency?.optional = true - xml.children().last() + { - delegate.name 'Grails GORM' - delegate.description 'GORM - Grails Data Access Framework' - delegate.url 'http://grails.org/' - - delegate.licenses { - delegate.license { - delegate.name 'The Apache Software License, Version 2.0' - delegate.url 'http://www.apache.org/licenses/LICENSE-2.0.txt' - delegate.distribution 'repo' - } - } - - delegate.scm { - delegate.url 'scm:git@github.com:grails/grails-data-mapping.git' - delegate.connection 'scm:git@github.com:grails/grails-data-mapping.git' - delegate.developerConnection 'scm:git@github.com:grails/grails-data-mapping.git' - } - - - delegate.developers { - delegate.developer { - delegate.id 'graemerocher' - delegate.name 'Graeme Rocher' - } - delegate.developer { - delegate.id 'jeffscottbrown' - delegate.name 'Jeff Brown' - } - delegate.developer { - delegate.id 'burtbeckwith' - delegate.name 'Burt Beckwith' - } - } - - } + xml.children().last() + pomInfo } } diff --git a/secring.gpg.enc b/secring.gpg.enc new file mode 100644 index 0000000000000000000000000000000000000000..5ee84f40a5b7fff006b4c051abf45ffc73106395 GIT binary patch literal 2624 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 literal 0 HcmV?d00001 diff --git a/travis-build.sh b/travis-build.sh index e3375fa21a0..9e8f91a293f 100755 --- a/travis-build.sh +++ b/travis-build.sh @@ -1,36 +1,39 @@ #!/bin/bash EXIT_STATUS=0 -case "$GORM_IMPL" in - hibernate) - ./gradlew grails-datastore-gorm-hibernate:test || EXIT_STATUS=$? - ;; - hibernate4) - ./gradlew grails-datastore-gorm-hibernate4:test --stacktrace || EXIT_STATUS=$? - ;; - mongodb) - ./gradlew grails-datastore-gorm-mongodb:test --stacktrace || EXIT_STATUS=$? - ;; - redis) - ./gradlew grails-datastore-gorm-redis:test || EXIT_STATUS=$? - ;; - cassandra) - # wait for Cassandra to start up - sleep 5 - ./gradlew grails-datastore-gorm-cassandra:test || EXIT_STATUS=$? - ;; - neo4j) - ./gradlew grails-datastore-gorm-neo4j:test || EXIT_STATUS=$? - ;; - restclient) - ./gradlew grails-datastore-gorm-rest-client:test || EXIT_STATUS=$? - ;; - *) - ./gradlew testClasses || EXIT_STATUS=$? - ./gradlew grails-datastore-gorm-test:test || EXIT_STATUS=$? - ;; -esac +#case "$GORM_IMPL" in +# hibernate) +# ./gradlew grails-datastore-gorm-hibernate:test || EXIT_STATUS=$? +# ;; +# hibernate4) +# ./gradlew grails-datastore-gorm-hibernate4:test --stacktrace || EXIT_STATUS=$? +# ;; +# mongodb) +# ./gradlew grails-datastore-gorm-mongodb:test --stacktrace || EXIT_STATUS=$? +# ;; +# redis) +# ./gradlew grails-datastore-gorm-redis:test || EXIT_STATUS=$? +# ;; +# cassandra) +# # wait for Cassandra to start up +# sleep 5 +# ./gradlew grails-datastore-gorm-cassandra:test || EXIT_STATUS=$? +# ;; +# neo4j) +# ./gradlew grails-datastore-gorm-neo4j:test || EXIT_STATUS=$? +# ;; +# restclient) +# ./gradlew grails-datastore-gorm-rest-client:test || EXIT_STATUS=$? +# ;; +# *) +# ./gradlew testClasses || EXIT_STATUS=$? +# ./gradlew grails-datastore-gorm-test:test || EXIT_STATUS=$? +# ;; +#esac +# + +./travis-publish.sh exit $EXIT_STATUS diff --git a/travis-publish.sh b/travis-publish.sh index d7d83c648bd..2d495f6c70d 100755 --- a/travis-publish.sh +++ b/travis-publish.sh @@ -19,8 +19,9 @@ if [[ $TRAVIS_REPO_SLUG == "grails/grails-data-mapping" && $TRAVIS_PULL_REQUEST echo "Publishing archives" + gpg --keyserver keyserver.ubuntu.com --recv-key $SIGNING_KEY if [[ $TRAVIS_TAG =~ ^v[[:digit:]] ]]; then - ./gradlew bintrayUpload || EXIT_STATUS=$? + ./gradlew -Psigning.keyId="$SIGNING_KEY" -Psigning.password="$SIGNING_PASSPHRASE" -Psigning.secretKeyRingFile="${TRAVIS_BUILD_DIR}/secring.gpg" uploadArchives publish || EXIT_STATUS=$? else ./gradlew publish || EXIT_STATUS=$? fi