From a0c35cce38d768928407c94e56f5a932ffe66621 Mon Sep 17 00:00:00 2001 From: Tomas Bjerre Date: Sun, 26 Nov 2017 10:20:50 +0100 Subject: [PATCH] Bintray release scripts --- build.gradle | 66 +++------------- changelog.mustache | 4 +- gradle/release.gradle | 96 +++++++++++++++++++++++ gradle/wrapper/gradle-wrapper.jar | Bin 53638 -> 54731 bytes gradle/wrapper/gradle-wrapper.properties | 3 +- gradlew | 72 ++++++++++------- gradlew.bat | 14 +--- 7 files changed, 155 insertions(+), 100 deletions(-) create mode 100644 gradle/release.gradle diff --git a/build.gradle b/build.gradle index e924e088..160e13e0 100644 --- a/build.gradle +++ b/build.gradle @@ -1,27 +1,20 @@ -buildscript { - repositories { - jcenter() - maven { - url "https://plugins.gradle.org/m2/" - } - } - dependencies { - classpath 'com.bmuschko:gradle-nexus-plugin:2.3.1' - classpath 'net.researchgate:gradle-release:2.2.2' - classpath "gradle.plugin.se.bjurr.gitchangelog:git-changelog-gradle-plugin:1.48" - classpath 'gradle.plugin.com.github.sherter.google-java-format:google-java-format-gradle-plugin:0.6' - } +plugins { + id "se.bjurr.gitchangelog.git-changelog-gradle-plugin" version "1.53" + id "com.github.sherter.google-java-format" version "0.6" + id "net.researchgate.release" version "2.6.0" + id "com.jfrog.bintray" version "1.7.3" } apply plugin: 'java' +apply plugin: 'java-library' apply plugin: 'maven' +apply plugin: 'maven-publish' apply plugin: 'eclipse' -apply plugin: 'signing' -apply plugin: 'com.bmuschko.nexus' -apply plugin: 'net.researchgate.release' apply plugin: "se.bjurr.gitchangelog.git-changelog-gradle-plugin" apply plugin: 'com.github.sherter.google-java-format' +apply from: "$rootDir/gradle/release.gradle" + task gitChangelogTask(type: se.bjurr.gitchangelog.plugin.gradle.GitChangelogTask) { gitHubApi = "https://api.github.com/repos/tomasbjerre/violations-lib"; gitHubToken = System.properties['GITHUB_OAUTH2TOKEN']; @@ -39,6 +32,7 @@ targetCompatibility = 1.7 repositories { mavenLocal() mavenCentral() + jcenter() } dependencies { @@ -72,44 +66,4 @@ if (JavaVersion.current().isJava8Compatible()) { } } -modifyPom { - project { - name 'Violations Lib' - description 'Library for parsing report files from static code analysis.' - url 'https://github.com/tomasbjerre/violations-lib' - inceptionYear '2015' - scm { - url 'https://github.com/tomasbjerre/violations-lib' - connection 'scm:https://tomasbjerre@github.com/tomasbjerre/violations-lib.git' - developerConnection 'scm:git://github.com/tomasbjerre/violations-lib.git' - } - - licenses { - license { - name 'The Apache Software License, Version 2.0' - url 'http://www.apache.org/licenses/LICENSE-2.0.txt' - distribution 'repo' - } - } - - developers { - developer { - id 'tomasbjerre' - name 'Tomas Bjerre' - email 'tomas.bjerre85@gmail.com' - } - } - } -} - -extraArchive { - sources = true - tests = true - javadoc = true -} - compileJava.dependsOn 'googleJavaFormat' - -afterReleaseBuild.dependsOn { - [install, uploadArchives] -} diff --git a/changelog.mustache b/changelog.mustache index 390f8cfd..baf30315 100644 --- a/changelog.mustache +++ b/changelog.mustache @@ -1,6 +1,6 @@ -# Git Changelog changelog +# Violations changelog -Changelog of Git Changelog. +Changelog of Violations. {{#tags}} ## {{name}} diff --git a/gradle/release.gradle b/gradle/release.gradle new file mode 100644 index 00000000..42821351 --- /dev/null +++ b/gradle/release.gradle @@ -0,0 +1,96 @@ +task sourcesJar(type: Jar, dependsOn: classes) { + classifier = 'sources' + from sourceSets.main.allSource +} + +task javadocJar(type: Jar, dependsOn: javadoc) { + classifier = 'javadoc' + from javadoc.destinationDir +} + +artifacts { + archives sourcesJar, javadocJar +} + +def pomConfig = { + scm { + url 'https://github.com/tomasbjerre/'+project.name + connection 'scm:https://tomasbjerre@github.com/tomasbjerre/'+project.name+'.git' + developerConnection 'scm:git://github.com/tomasbjerre/'+project.name+'.git' + } + + licenses { + license { + name 'The Apache Software License, Version 2.0' + url 'http://www.apache.org/licenses/LICENSE-2.0.txt' + distribution 'repo' + } + } + + developers { + developer { + id 'tomasbjerre' + name 'Tomas Bjerre' + email 'tomas.bjerre85@gmail.com' + } + } +} + +publishing { + publications { + MyPublication(MavenPublication) { + from components.java + artifact sourcesJar + artifact javadocJar + groupId 'se.bjurr.violations' + artifactId project.name + version version + pom.withXml { + def root = asNode() + root.appendNode('description', 'Library for parsing report files from static code analysis.') + root.appendNode('name', 'Violations Lib') + root.appendNode('url', 'https://github.com/tomasbjerre/'+project.name) + root.appendNode('inceptionYear', '2015') + root.children().last() + pomConfig + } + } + } +} + +bintray { + user = System.getenv('BINTRAY_USER') + key = System.getenv('BINTRAY_KEY') + publications = ['MyPublication'] + publish = true + pkg { + repo = 'bjurr' + name = project.name + userOrg = 'tomasbjerre' + desc = 'Library for parsing report files from static code analysis.' + licenses = ['Apache-2.0'] + vcsUrl = 'git@github.com:tomasbjerre/'+project.name+'.git' + websiteUrl = 'https://github.com/tomasbjerre/violations-lib' + issueTrackerUrl = 'https://github.com/tomasbjerre/'+project.name+'/issues' + labels = ['violations', 'static code analysis', 'lint'] + publicDownloadNumbers = true + githubRepo = 'tomasbjerre/' + project.name + githubReleaseNotesFile = 'README.md' + version { + name = project.version + released = new Date() + vcsTag = project.version + gpg { + sign = true + } + mavenCentralSync { + sync = true + user = System.getenv('NEXUS_USERNAME') + password = System.getenv('NEXUS_PASSWORD') + } + } + } +} + +afterReleaseBuild.dependsOn { + [install, bintrayUpload] +} diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index e8c6bf7bb47dff6b81c2cf7a349eb7e912c9fbe2..6b6ea3ab4ff4f69d55c5fd9c0a6ac70f47d41008 100644 GIT binary patch delta 30087 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 \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null APP_NAME="Gradle" APP_BASE_NAME=`basename "$0"` +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD="maximum" -warn ( ) { +warn () { echo "$*" } -die ( ) { +die () { echo echo "$*" echo @@ -30,6 +48,7 @@ die ( ) { cygwin=false msys=false darwin=false +nonstop=false case "`uname`" in CYGWIN* ) cygwin=true @@ -40,26 +59,11 @@ case "`uname`" in MINGW* ) msys=true ;; + NONSTOP* ) + nonstop=true + ;; esac -# Attempt to set APP_HOME -# Resolve links: $0 may be a link -PRG="$0" -# Need this for relative symlinks. -while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG=`dirname "$PRG"`"/$link" - fi -done -SAVED="`pwd`" -cd "`dirname \"$PRG\"`/" >&- -APP_HOME="`pwd -P`" -cd "$SAVED" >&- - CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar # Determine the Java command to use to start the JVM. @@ -85,7 +89,7 @@ location of your Java installation." fi # Increase the maximum file descriptors if we can. -if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then MAX_FD_LIMIT=`ulimit -H -n` if [ $? -eq 0 ] ; then if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then @@ -150,11 +154,19 @@ if $cygwin ; then esac fi -# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules -function splitJvmOpts() { - JVM_OPTS=("$@") +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " } -eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS -JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" +APP_ARGS=$(save "$@") + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong +if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then + cd "$(dirname "$0")" +fi -exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat index aec99730..e95643d6 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -8,14 +8,14 @@ @rem Set local scope for the variables with windows NT shell if "%OS%"=="Windows_NT" setlocal -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS= - set DIRNAME=%~dp0 if "%DIRNAME%" == "" set DIRNAME=. set APP_BASE_NAME=%~n0 set APP_HOME=%DIRNAME% +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + @rem Find java.exe if defined JAVA_HOME goto findJavaFromJavaHome @@ -46,10 +46,9 @@ echo location of your Java installation. goto fail :init -@rem Get command-line arguments, handling Windowz variants +@rem Get command-line arguments, handling Windows variants if not "%OS%" == "Windows_NT" goto win9xME_args -if "%@eval[2+2]" == "4" goto 4NT_args :win9xME_args @rem Slurp the command line arguments. @@ -60,11 +59,6 @@ set _SKIP=2 if "x%~1" == "x" goto execute set CMD_LINE_ARGS=%* -goto execute - -:4NT_args -@rem Get arguments from the 4NT Shell from JP Software -set CMD_LINE_ARGS=%$ :execute @rem Setup the command line