Skip to content

Commit a6ce7b5

Browse files
committed
Automatically release snapshots to Maven and Javadoc/JDiff to gh-pages on push.
- Based off of the Dagger config - The Javadoc/JDiff updates are handled by https://github.com/google/guava/blob/gh-pages/updaterelease.sh - Encrypted env variables have already been added for google/guava ------------- Created by MOE: http://code.google.com/p/moe-java MOE_MIGRATED_REVID=96064069
1 parent 49312a9 commit a6ce7b5

File tree

4 files changed

+68
-2
lines changed

4 files changed

+68
-2
lines changed

.travis.yml

+16-2
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,24 @@ jdk:
77
- oraclejdk7
88
- openjdk7
99

10+
install: mvn install -U -DskipTests=true
11+
12+
script: mvn verify -U -Dmaven.javadoc.skip=true
13+
14+
after_success:
15+
- util/deploy_snapshot.sh
16+
- util/update_snapshot_docs.sh
17+
1018
cache:
1119
directories:
1220
- $HOME/.m2
1321

14-
install: mvn install -U -DskipTests=true
22+
env:
23+
global:
24+
- secure: "pv7+ajpW4U4UArfRqVPUcFfk7hKO72L3K/9mSFbL9z4tnGDtz0hTHA2u50VEoe7Ny2ryXPCYNEPA8NyUoyLq9Tvd7tTaNw8u8ewRlLcJzO0Wrqvrsh9+VRS6IXLqXpGAGI77N9ThaPViYmlLI5L+KAiiYbU0ajOSYLPMzXZyVxw="
25+
- secure: "aC7XPmGgO4Yd1jEnJZMI6SzowX6vj4OUzSzFLlOdbdnDatOkJ2T3WkPJXFwK2Kkxk8QOm5MwV/DxIdIkhsBB2yjCNEf1lc88d5TeIDfohMUOOpxvjACIP+W0JJkLh07euQfkJHsFgjh2VRoj7QXq7bfDONcsHy14aZi3h9BojP4="
26+
- secure: "wieIClPLTXS3QjDzqyp0TqIrVP/Q6iWNPOtcUQYfdDZJGwufE61laTFtzVKXZRb7uJ4GXDObcVU3AcpAwkTX/5sEksBxgv3TZ5Qi0mVx2GRmbE06ULLxi7sPnTCZ/VFtselDWcWArWGAcdCjW9gcCrgj5K/+sYpVKz9a8V+SDM4="
1527

16-
script: mvn verify -U -Dmaven.javadoc.skip=true
28+
branches:
29+
except:
30+
- gh-pages

util/deploy_snapshot.sh

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
#!/bin/bash
2+
3+
# see https://coderwall.com/p/9b_lfq
4+
5+
set -e -u
6+
7+
if [ "$TRAVIS_REPO_SLUG" == "google/guava" ] && \
8+
[ "$TRAVIS_JDK_VERSION" == "oraclejdk7" ] && \
9+
[ "$TRAVIS_PULL_REQUEST" == "false" ] && \
10+
[ "$TRAVIS_BRANCH" == "master" ]; then
11+
echo "Publishing Maven snapshot..."
12+
13+
mvn clean source:jar javadoc:jar deploy --settings="util/settings.xml" -DskipTests=true
14+
15+
echo "Maven snapshot published."
16+
fi

util/settings.xml

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
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 http://maven.apache.org/xsd/settings-1.0.0.xsd">
4+
<servers>
5+
<server>
6+
<id>sonatype-nexus-snapshots</id>
7+
<username>${env.CI_DEPLOY_USERNAME}</username>
8+
<password>${env.CI_DEPLOY_PASSWORD}</password>
9+
</server>
10+
</servers>
11+
</settings>

util/update_snapshot_docs.sh

+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
#!/bin/bash
2+
3+
# see http://benlimmer.com/2013/12/26/automatically-publish-javadoc-to-gh-pages-with-travis-ci/ for details
4+
5+
set -e -u
6+
7+
if [ "$TRAVIS_REPO_SLUG" == "google/guava" ] && \
8+
[ "$TRAVIS_JDK_VERSION" == "oraclejdk7" ] && \
9+
[ "$TRAVIS_PULL_REQUEST" == "false" ] && \
10+
[ "$TRAVIS_BRANCH" == "master" ]; then
11+
echo "Publishing Javadoc and JDiff..."
12+
13+
cd $HOME
14+
git clone -q -b gh-pages https://${GH_TOKEN}@github.com/google/guava gh-pages > /dev/null
15+
cd gh-pages
16+
17+
git config --global user.email "[email protected]"
18+
git config --global user.name "travis-ci"
19+
20+
./updaterelease.sh snapshot
21+
22+
git push -fq origin gh-pages > /dev/null
23+
24+
echo "Javadoc and JDiff published to gh-pages."
25+
fi

0 commit comments

Comments
 (0)