Skip to content

Commit a7515cd

Browse files
authored
Merge pull request #4 from saintf/master
initial travis config for publishing
2 parents 7cf0e59 + 6e9dc1b commit a7515cd

File tree

9 files changed

+613
-1
lines changed

9 files changed

+613
-1
lines changed

.mvn/jvm.config

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
-Xmx1024m -XX:CICompilerCount=1 -XX:TieredStopAtLevel=1 -Djava.security.egd=file:/dev/./urandom

.mvn/maven.config

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+

.mvn/wrapper/maven-wrapper.jar

48.4 KB
Binary file not shown.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.5.0/apache-maven-3.5.0-bin.zip

.settings.xml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
2+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3+
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
4+
http://maven.apache.org/xsd/settings-1.0.0.xsd">
5+
<servers>
6+
<server>
7+
<id>sonatype</id>
8+
<username>${env.SONATYPE_USER}</username>
9+
<password>${env.SONATYPE_PASSWORD}</password>
10+
</server>
11+
<server>
12+
<id>bintray</id>
13+
<username>${env.BINTRAY_USER}</username>
14+
<password>${env.BINTRAY_KEY}</password>
15+
</server>
16+
<server>
17+
<id>jfrog-snapshots</id>
18+
<username>${env.BINTRAY_USER}</username>
19+
<password>${env.BINTRAY_KEY}</password>
20+
</server>
21+
<server>
22+
<id>github.com</id>
23+
<username>${env.GH_USER}</username>
24+
<password>${env.GH_TOKEN}</password>
25+
</server>
26+
</servers>
27+
</settings>
28+

.travis.yml

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# Run `travis lint` when changing this file to avoid breaking the build.
2+
# Default JDK is really old: 1.8.0_31; Trusty's is less old: 1.8.0_51
3+
# https://docs.travis-ci.com/user/ci-environment/#Virtualization-environments
4+
sudo: required
5+
dist: trusty
6+
7+
cache:
8+
directories:
9+
- $HOME/.m2
10+
11+
language: java
12+
13+
jdk:
14+
- oraclejdk8
15+
16+
17+
before_install:
18+
# Parameters used during release
19+
- git config user.name "$GH_USER"
20+
- git config user.email "$GH_USER_EMAIL"
21+
# setup https authentication credentials, used by ./mvnw release:prepare
22+
- git config credential.helper "store --file=.git/credentials"
23+
- echo "https://$GH_TOKEN:@github.com" > .git/credentials
24+
25+
install:
26+
# Override default travis to use the maven wrapper
27+
- ./mvnw install -DskipTests=true -Dmaven.javadoc.skip=true -B -V
28+
29+
script:
30+
- ./travis/publish.sh
31+
32+
# Don't build release tags. This avoids publish conflicts because the version commit exists both on master and the release tag.
33+
# See https://github.com/travis-ci/travis-ci/issues/1532
34+
branches:
35+
except:
36+
- /^[0-9]/
37+
38+
env:
39+
global:
40+
# Ex. travis encrypt BINTRAY_USER=your_github_account
41+
# - secure: "TBD"
42+
# # Ex. travis encrypt BINTRAY_KEY=xxx-https://bintray.com/profile/edit-xxx --add
43+
# - secure: "TBD"
44+
# # Ex. travis encrypt [email protected] --add
45+
# - secure: "TBD"
46+
# # Ex. travis encrypt GH_USER=your_github_account --add
47+
# - secure: "TBD"
48+
# # Ex. travis encrypt GH_TOKEN=XXX-https://github.com/settings/tokens-XXX --add
49+
# - secure: "TBD"
50+
# # Ex. travis encrypt SONATYPE_USER=your_sonatype_account
51+
# - secure: "TBD"
52+
# # Ex. travis encrypt SONATYPE_PASSWORD=your_sonatype_password
53+
# - secure: "TBD"
54+

mvnw

Lines changed: 236 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,236 @@
1+
#!/bin/sh
2+
# ----------------------------------------------------------------------------
3+
# Licensed to the Apache Software Foundation (ASF) under one
4+
# or more contributor license agreements. See the NOTICE file
5+
# distributed with this work for additional information
6+
# regarding copyright ownership. The ASF licenses this file
7+
# to you under the Apache License, Version 2.0 (the
8+
# "License"); you may not use this file except in compliance
9+
# with the License. You may obtain a copy of the License at
10+
#
11+
# http://www.apache.org/licenses/LICENSE-2.0
12+
#
13+
# Unless required by applicable law or agreed to in writing,
14+
# software distributed under the License is distributed on an
15+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16+
# KIND, either express or implied. See the License for the
17+
# specific language governing permissions and limitations
18+
# under the License.
19+
# ----------------------------------------------------------------------------
20+
21+
# ----------------------------------------------------------------------------
22+
# Maven2 Start Up Batch script
23+
#
24+
# Required ENV vars:
25+
# ------------------
26+
# JAVA_HOME - location of a JDK home dir
27+
#
28+
# Optional ENV vars
29+
# -----------------
30+
# M2_HOME - location of maven2's installed home dir
31+
# MAVEN_OPTS - parameters passed to the Java VM when running Maven
32+
# e.g. to debug Maven itself, use
33+
# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
34+
# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
35+
# ----------------------------------------------------------------------------
36+
37+
if [ -z "$MAVEN_SKIP_RC" ] ; then
38+
39+
if [ -f /etc/mavenrc ] ; then
40+
. /etc/mavenrc
41+
fi
42+
43+
if [ -f "$HOME/.mavenrc" ] ; then
44+
. "$HOME/.mavenrc"
45+
fi
46+
47+
fi
48+
49+
# OS specific support. $var _must_ be set to either true or false.
50+
cygwin=false;
51+
darwin=false;
52+
mingw=false
53+
case "`uname`" in
54+
CYGWIN*) cygwin=true ;;
55+
MINGW*) mingw=true;;
56+
Darwin*) darwin=true
57+
#
58+
# Look for the Apple JDKs first to preserve the existing behaviour, and then look
59+
# for the new JDKs provided by Oracle.
60+
#
61+
if [ -z "$JAVA_HOME" ] && [ -L /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK ] ; then
62+
#
63+
# Apple JDKs
64+
#
65+
export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home
66+
fi
67+
68+
if [ -z "$JAVA_HOME" ] && [ -L /System/Library/Java/JavaVirtualMachines/CurrentJDK ] ; then
69+
#
70+
# Apple JDKs
71+
#
72+
export JAVA_HOME=/System/Library/Java/JavaVirtualMachines/CurrentJDK/Contents/Home
73+
fi
74+
75+
if [ -z "$JAVA_HOME" ] && [ -L "/Library/Java/JavaVirtualMachines/CurrentJDK" ] ; then
76+
#
77+
# Oracle JDKs
78+
#
79+
export JAVA_HOME=/Library/Java/JavaVirtualMachines/CurrentJDK/Contents/Home
80+
fi
81+
82+
if [ -z "$JAVA_HOME" ] && [ -x "/usr/libexec/java_home" ]; then
83+
#
84+
# Apple JDKs
85+
#
86+
export JAVA_HOME=`/usr/libexec/java_home`
87+
fi
88+
;;
89+
esac
90+
91+
if [ -z "$JAVA_HOME" ] ; then
92+
if [ -r /etc/gentoo-release ] ; then
93+
JAVA_HOME=`java-config --jre-home`
94+
fi
95+
fi
96+
97+
if [ -z "$M2_HOME" ] ; then
98+
## resolve links - $0 may be a link to maven's home
99+
PRG="$0"
100+
101+
# need this for relative symlinks
102+
while [ -h "$PRG" ] ; do
103+
ls=`ls -ld "$PRG"`
104+
link=`expr "$ls" : '.*-> \(.*\)$'`
105+
if expr "$link" : '/.*' > /dev/null; then
106+
PRG="$link"
107+
else
108+
PRG="`dirname "$PRG"`/$link"
109+
fi
110+
done
111+
112+
saveddir=`pwd`
113+
114+
M2_HOME=`dirname "$PRG"`/..
115+
116+
# make it fully qualified
117+
M2_HOME=`cd "$M2_HOME" && pwd`
118+
119+
cd "$saveddir"
120+
# echo Using m2 at $M2_HOME
121+
fi
122+
123+
# For Cygwin, ensure paths are in UNIX format before anything is touched
124+
if $cygwin ; then
125+
[ -n "$M2_HOME" ] &&
126+
M2_HOME=`cygpath --unix "$M2_HOME"`
127+
[ -n "$JAVA_HOME" ] &&
128+
JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
129+
[ -n "$CLASSPATH" ] &&
130+
CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
131+
fi
132+
133+
# For Migwn, ensure paths are in UNIX format before anything is touched
134+
if $mingw ; then
135+
[ -n "$M2_HOME" ] &&
136+
M2_HOME="`(cd "$M2_HOME"; pwd)`"
137+
[ -n "$JAVA_HOME" ] &&
138+
JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
139+
# TODO classpath?
140+
fi
141+
142+
if [ -z "$JAVA_HOME" ]; then
143+
javaExecutable="`which javac`"
144+
if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
145+
# readlink(1) is not available as standard on Solaris 10.
146+
readLink=`which readlink`
147+
if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
148+
if $darwin ; then
149+
javaHome="`dirname \"$javaExecutable\"`"
150+
javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
151+
else
152+
javaExecutable="`readlink -f \"$javaExecutable\"`"
153+
fi
154+
javaHome="`dirname \"$javaExecutable\"`"
155+
javaHome=`expr "$javaHome" : '\(.*\)/bin'`
156+
JAVA_HOME="$javaHome"
157+
export JAVA_HOME
158+
fi
159+
fi
160+
fi
161+
162+
if [ -z "$JAVACMD" ] ; then
163+
if [ -n "$JAVA_HOME" ] ; then
164+
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
165+
# IBM's JDK on AIX uses strange locations for the executables
166+
JAVACMD="$JAVA_HOME/jre/sh/java"
167+
else
168+
JAVACMD="$JAVA_HOME/bin/java"
169+
fi
170+
else
171+
JAVACMD="`which java`"
172+
fi
173+
fi
174+
175+
if [ ! -x "$JAVACMD" ] ; then
176+
echo "Error: JAVA_HOME is not defined correctly." >&2
177+
echo " We cannot execute $JAVACMD" >&2
178+
exit 1
179+
fi
180+
181+
if [ -z "$JAVA_HOME" ] ; then
182+
echo "Warning: JAVA_HOME environment variable is not set."
183+
fi
184+
185+
CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
186+
187+
# traverses directory structure from process work directory to filesystem root
188+
# first directory with .mvn subdirectory is considered project base directory
189+
find_maven_basedir() {
190+
local basedir=$(pwd)
191+
local wdir=$(pwd)
192+
while [ "$wdir" != '/' ] ; do
193+
if [ -d "$wdir"/.mvn ] ; then
194+
basedir=$wdir
195+
break
196+
fi
197+
wdir=$(cd "$wdir/.."; pwd)
198+
done
199+
echo "${basedir}"
200+
}
201+
202+
# concatenates all lines of a file
203+
concat_lines() {
204+
if [ -f "$1" ]; then
205+
echo "$(tr -s '\n' ' ' < "$1")"
206+
fi
207+
}
208+
209+
export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-$(find_maven_basedir)}
210+
MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
211+
212+
# For Cygwin, switch paths to Windows format before running java
213+
if $cygwin; then
214+
[ -n "$M2_HOME" ] &&
215+
M2_HOME=`cygpath --path --windows "$M2_HOME"`
216+
[ -n "$JAVA_HOME" ] &&
217+
JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
218+
[ -n "$CLASSPATH" ] &&
219+
CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
220+
[ -n "$MAVEN_PROJECTBASEDIR" ] &&
221+
MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
222+
fi
223+
224+
# Provide a "standardized" way to retrieve the CLI args that will
225+
# work with both Windows and non-Windows executions.
226+
MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
227+
export MAVEN_CMD_LINE_ARGS
228+
229+
WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
230+
231+
# avoid using MAVEN_CMD_LINE_ARGS below since that would loose parameter escaping in $@
232+
exec "$JAVACMD" \
233+
$MAVEN_OPTS \
234+
-classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
235+
"-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
236+
${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"

0 commit comments

Comments
 (0)