This repository was archived by the owner on Dec 5, 2023. It is now read-only.
File tree Expand file tree Collapse file tree 5 files changed +129
-0
lines changed Expand file tree Collapse file tree 5 files changed +129
-0
lines changed Original file line number Diff line number Diff line change
1
+ language : java
2
+ sudo : required
3
+ services :
4
+ - docker
5
+ jdk :
6
+ - oraclejdk8
7
+ install : true
8
+
9
+ env :
10
+ - GROUP=weaveworksdemos COMMIT=$TRAVIS_COMMIT TAG=$TRAVIS_TAG REPO=msd-java;
11
+
12
+ script :
13
+ - set -e
14
+ - travis_wait ./scripts/build.sh;
15
+
16
+ after_success :
17
+ - set -e;
18
+ - if [ -z "$DOCKER_PASS" ] ; then
19
+ echo "This is a build triggered by an external PR. Skipping docker push.";
20
+ exit 0;
21
+ fi;
22
+ - docker login -e $DOCKER_EMAIL -u $DOCKER_USER -p $DOCKER_PASS;
23
+ - ./scripts/push.sh
24
+ notifications :
25
+ slack :
26
+ secure : jHh+ksay1dxGEMxxep6XllCR5VwsmuSyIpLgG9bUKpG4fPR948K5Ev2E/vyobrqbTi5JMWasXd3ecwzV1QIN8QvvQ33Fx70oSp9Cit5gvNmLWVplHkWiMnnLD33IMCbtDHK69FjH3GQyJ5HfgjiJSF2nTFaCArYImrCcnU+ENTXW9L3rlYm5ElnP/NfWbrqxIF4EOiCKHMM5kpFYWO8mYLTVilHhPLAz94IVV2OUTe4NUdBJgXolAJqg28QTcfrk5x0OudDTc3Ssa3f/ezrE0LgrzeWdekcrNdYt+YZYaQxiPOIhNyZu0RxU+46ip4XhUS6qSXxW1Kpf0RXkgdmTTbYxF31D4GG+SoTjbBONZqK+qw3AkuYxTQYZnl50n+Hd1gtKY31qCwFEAVUU/tYDI5oKUdUaDsiHU5J/Yt+YMPoyWZ7FOZYwSNy2xs78XGXqQnYn35lsBv0BmYo/1mPUFbrlZgVO5b5wki7NhuLKnqHo9GvkavG71py1VjJTShq5um4NrPBYZ/Y9aZtZD6E2BQPJBgciwGtoFdmaTzmPtwPkWMA+SlcAtpcQlFATXM7xS5324XYK9+okDoqybj1cmHIk1FLnM9nx3r+TUOGsUrlY2ZO9FIrljgII3H8vzcUCbwMwzaQvhsBCFBFZQ6umjbHxnRN9zRe52c4zkkCSAZc=
Original file line number Diff line number Diff line change
1
+ FROM java:openjdk-8-alpine
2
+
3
+ ENV SERVICE_USER=myuser \
4
+ SERVICE_UID=10001 \
5
+ SERVICE_GROUP=mygroup \
6
+ SERVICE_GID=10001
7
+
8
+ RUN addgroup -g ${SERVICE_GID} ${SERVICE_GROUP} && \
9
+ adduser -g "${SERVICE_NAME} user" -D -H -G ${SERVICE_GROUP} -s /sbin/nologin -u ${SERVICE_UID} ${SERVICE_USER} && \
10
+ apk add --update libcap && \
11
+ mkdir /lib64 && \
12
+ ln -s /usr/lib/jvm/java-1.8-openjdk/jre/lib/amd64/server/libjvm.so /lib/libjvm.so && \
13
+ ln -s /usr/lib/jvm/java-1.8-openjdk/lib/amd64/jli/libjli.so /lib/libjli.so && \
14
+ setcap 'cap_net_bind_service=+ep' $(readlink -f $(which java))
15
+
16
+ COPY java.sh /usr/local/bin/java.sh
Original file line number Diff line number Diff line change
1
+ #! /bin/sh
2
+
3
+ java $JAVA_OPTS $*
Original file line number Diff line number Diff line change
1
+ #! /usr/bin/env bash
2
+
3
+ set -ev
4
+
5
+ export BUILD_VERSION=" 0.0.2-SNAPSHOT"
6
+ export BUILD_DATE=` date +%Y-%m-%dT%T%z`
7
+
8
+ SCRIPT_DIR=$( dirname " $0 " )
9
+
10
+ if [[ -z " $GROUP " ]] ; then
11
+ echo " Cannot find GROUP env var"
12
+ exit 1
13
+ fi
14
+
15
+ if [[ -z " $COMMIT " ]] ; then
16
+ echo " Cannot find COMMIT env var"
17
+ exit 1
18
+ fi
19
+
20
+ if [[ " $( uname) " == " Darwin" ]]; then
21
+ DOCKER_CMD=docker
22
+ else
23
+ DOCKER_CMD=" sudo docker"
24
+ fi
25
+ CODE_DIR=$( cd $SCRIPT_DIR /..; pwd)
26
+
27
+ DOCKER_REPO=${GROUP} /${REPO}
28
+ $DOCKER_CMD build \
29
+ --build-arg BUILD_VERSION=$BUILD_VERSION \
30
+ --build-arg BUILD_DATE=$BUILD_DATE \
31
+ --build-arg COMMIT=$COMMIT \
32
+ -t ${DOCKER_REPO} :${COMMIT} $CODE_DIR /Dockerfile;
Original file line number Diff line number Diff line change
1
+ #! /usr/bin/env bash
2
+
3
+ set -ev
4
+
5
+ if [[ -z " $GROUP " ]] ; then
6
+ echo " Cannot find GROUP env var"
7
+ exit 1
8
+ fi
9
+
10
+ if [[ -z " $COMMIT " ]] ; then
11
+ echo " Cannot find COMMIT env var"
12
+ exit 1
13
+ fi
14
+
15
+ push () {
16
+ DOCKER_PUSH=1;
17
+ while [ $DOCKER_PUSH -gt 0 ] ; do
18
+ echo " Pushing $1 " ;
19
+ docker push $1 ;
20
+ DOCKER_PUSH=$( echo $? ) ;
21
+ if [[ " $DOCKER_PUSH " -gt 0 ]] ; then
22
+ echo " Docker push failed with exit code $DOCKER_PUSH " ;
23
+ fi ;
24
+ done ;
25
+ }
26
+
27
+ tag_and_push_all () {
28
+ if [[ -z " $1 " ]] ; then
29
+ echo " Please pass the tag"
30
+ exit 1
31
+ else
32
+ TAG=$1
33
+ fi
34
+ for m in ./docker/* /; do
35
+ REPO=${GROUP} /$( basename $m )
36
+ if [[ " $COMMIT " != " $TAG " ]]; then
37
+ docker tag ${REPO} :${COMMIT} ${REPO} :${TAG}
38
+ fi
39
+ push " $REPO :$TAG " ;
40
+ done ;
41
+ }
42
+
43
+ # Push snapshot when in master
44
+ if [ " $TRAVIS_BRANCH " == " master" ] && [ " $TRAVIS_PULL_REQUEST " == " false" ]; then
45
+ tag_and_push_all master-${COMMIT: 0: 8}
46
+ fi ;
47
+
48
+ # Push tag and latest when tagged
49
+ if [ -n " $TRAVIS_TAG " ]; then
50
+ tag_and_push_all ${TRAVIS_TAG}
51
+ tag_and_push_all latest
52
+ fi ;
You can’t perform that action at this time.
0 commit comments