From dcf62a8ac59d84072e66e71ec8a5d137784e760d Mon Sep 17 00:00:00 2001 From: Rene Treffer Date: Sun, 22 Jun 2014 16:36:19 +0200 Subject: [PATCH] Prepare 0.1.0 snapshot --- build.gradle | 162 ++++++------------ .../java/de/measite/minidns/DNSMessage.java | 4 +- src/main/java/de/measite/minidns/Record.java | 2 +- 3 files changed, 56 insertions(+), 112 deletions(-) diff --git a/build.gradle b/build.gradle index 9de89b7c..3345e500 100644 --- a/build.gradle +++ b/build.gradle @@ -1,27 +1,28 @@ apply plugin: 'java' apply plugin: 'eclipse' -apply plugin: 'maven' apply plugin: 'osgi' -apply plugin: 'signing' +apply plugin: 'nexus' -ext { - shortVersion = '0.1' - isSnapshot = true - gitCommit = getGitCommit() - isReleaseVersion = !shortVersion - sonatypeCredentialsAvailable = project.hasProperty('sonatypeUsername') && project.hasProperty('sonatypePassword') - signingRequired = isReleaseVersion - sonatypeSnapshotUrl = 'https://oss.sonatype.org/content/repositories/snapshots' - sonatypeStagingUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2' - buildDate = (new java.text.SimpleDateFormat("yyyy-MM-dd")).format(new Date()) +buildscript { + repositories { + jcenter() + mavenLocal() + mavenCentral() + } + + dependencies { + classpath 'org.gradle.api.plugins:gradle-nexus-plugin:0.7.1' + } } group = 'de.measite.minidns' description = "A minimal DNS client library with support for A, AAAA, NS and SRV records" sourceCompatibility = 1.7 -version = shortVersion -if (isSnapshot) { - version += '-SNAPSHOT' +version = 'git tag --points-at HEAD'.execute().text.trim() +isSNAPSHOT = 'git rev-parse --abbrev-ref HEAD'.execute().text.trim() == 'master' + +if (isSNAPSHOT) { + version = version + '-SNAPSHOT' } repositories { @@ -29,103 +30,46 @@ repositories { mavenCentral() } -jar { - manifest { - instruction 'Implementation-GitRevision:', project.ext.gitCommit - } +nexus { + attachSources = false + attachTests = false + attachJavadoc = false + sign = true } -gradle.taskGraph.whenReady { taskGraph -> - if (signingRequired - && taskGraph.allTasks.any { it instanceof Sign }) { - // Use Java 6's console to read from the console (no good for a CI environment) - Console console = System.console() - console.printf '\n\nWe have to sign some things in this build.\n\nPlease enter your signing details.\n\n' - def password = console.readPassword('GnuPG Private Key Password: ') +modifyPom { + project { + name 'minidns' + description 'Minimal DNS library for java and android systems' + url 'https://github.com/rtreffer/minidns' + inceptionYear '2014' - allprojects { ext.'signing.password' = password } + scm { + url 'https://github.com/rtreffer/minidns' + connection 'scm:https://github.com/rtreffer/minidns' + developerConnection 'scm:git://github.com/rtreffer/minidns.git' + } - console.printf '\nThanks.\n\n' - } + 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 'rtreffer' + name 'Rene Treffer' + email 'treffer@measite.de' + } + developer { + id 'flow' + name 'Florian Schmaus' + email 'flow@geekplace.eu' + } + } + } } -uploadArchives { - repositories { - mavenDeployer { - if (signingRequired) { - beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) } - } - repository(url: project.sonatypeStagingUrl) { - if (sonatypeCredentialsAvailable) { - authentication(userName: sonatypeUsername, password: sonatypePassword) - } - } - snapshotRepository(url: project.sonatypeSnapshotUrl) { - if (sonatypeCredentialsAvailable) { - authentication(userName: sonatypeUsername, password: sonatypePassword) - } - } - - pom.project { - name 'minidns' - packaging 'jar' - inceptionYear '2014' - url 'https://github.com/rtreffer/minidns' - description project.description - - issueManagement { - system 'GitHub' - url 'https://github.com/rtreffer/minidns/issues' - } - - distributionManagement { - snapshotRepository { - id 'minidns.snapshot' - url project.sonatypeSnapshotUrl - } - } - - scm { - url 'https://github.com/rtreffer/minidns' - connection 'scm:git:https://github.com/rtreffer/minidns.git' - developerConnection 'scm:git:https://github.com/rtreffer/minidns.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 'rtreffer' - name 'Rene Treffer' - } - developer { - id 'flow' - name 'Florian Schmaus' - email 'flow@geekplace.eu' - } - } - } - } - } - signing { - required { signingRequired } - sign configurations.archives - } -} - -def getGitCommit() { - def dotGit = new File("$projectDir/.git") - if (!dotGit.isDirectory()) return 'non-git build' - - def cmd = 'git describe --all --dirty=+' - def proc = cmd.execute() - def gitCommit = proc.text.trim() - assert !gitCommit.isEmpty() - gitCommit -} diff --git a/src/main/java/de/measite/minidns/DNSMessage.java b/src/main/java/de/measite/minidns/DNSMessage.java index 977c08d0..6e0ae6c8 100644 --- a/src/main/java/de/measite/minidns/DNSMessage.java +++ b/src/main/java/de/measite/minidns/DNSMessage.java @@ -11,8 +11,8 @@ import java.util.Arrays; * A DNS message as defined by rfc1035. The message consists of a header and * 4 sections: question, answer, nameserver and addition resource record * section. - * A message can either be parsed ({@see #parse(byte[])}) or serialized - * ({@see #toArray()}). + * A message can either be parsed ({@link DNSMessage#parse(byte[])}) or serialized + * ({@link DNSMessage#toArray()}). */ public class DNSMessage { diff --git a/src/main/java/de/measite/minidns/Record.java b/src/main/java/de/measite/minidns/Record.java index 36d3db1a..58740b7d 100644 --- a/src/main/java/de/measite/minidns/Record.java +++ b/src/main/java/de/measite/minidns/Record.java @@ -19,7 +19,7 @@ public class Record { /** * The record type. - * {@see http://www.iana.org/assignments/dns-parameters} + * @see IANA DNS Parameters */ public static enum TYPE { A(1),