Skip to content

Commit 3fa11de

Browse files
authored
Merge pull request #2 from docker-java/master
Just pulling from upstream
2 parents 2bd837f + 2582dce commit 3fa11de

File tree

558 files changed

+22397
-13174
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

558 files changed

+22397
-13174
lines changed

.gitignore

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ target
1212

1313
# Ignore InteliJ Idea project files
1414
.idea
15-
.idea/*
15+
!.idea/codeStyleSettings.xml
16+
!.idea/encodings.xml
1617
*.iml
1718
*.iws
1819
*.ipr
@@ -21,4 +22,5 @@ target
2122
*.log
2223

2324
#Ignore Test Output
24-
test-output
25+
test-output
26+
/.checkstyle

.idea/codeStyleSettings.xml

Lines changed: 13 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/encodings.xml

Lines changed: 7 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.travis.yml

Lines changed: 28 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,13 @@ services:
66
- docker
77

88
jdk:
9-
- oraclejdk7
9+
- oraclejdk8
1010

1111
install: true
1212

1313
env:
1414
global:
15+
- CODECOV=true
1516
- DOCKER_TLS_VERIFY=""
1617
# The next declaration is the encrypted COVERITY_SCAN_TOKEN, created
1718
# via the "travis encrypt" command using the project repo's public key
@@ -21,29 +22,41 @@ env:
2122
- COVERITY_SCAN_NOTIFICATION_EMAIL="kanstantsin.sha@gmail.com"
2223

2324
matrix:
24-
- repo="main" DOCKER_HOST="tcp://127.0.0.1:2375" DOCKER_VERSION="1.11.2-0~trusty" DEPLOY=true FAST_BUILD=true COVERITY=true
25-
- repo="main" DOCKER_HOST="tcp://127.0.0.1:2375" DOCKER_VERSION="1.11.2-0~trusty"
26-
- repo="main" DOCKER_HOST="unix:///var/run/docker.sock" DOCKER_VERSION="1.11.2-0~trusty"
27-
- repo="main" DOCKER_HOST="unix:///var/run/docker.sock" DOCKER_VERSION="1.10.3-0~trusty"
28-
- repo="testing" DOCKER_HOST="tcp://127.0.0.1:2375"
29-
- repo="testing" DOCKER_HOST="unix:///var/run/docker.sock"
30-
- repo="experimental" DOCKER_HOST="tcp://127.0.0.1:2375"
31-
- repo="experimental" DOCKER_HOST="unix:///var/run/docker.sock"
25+
# - repo="main" DOCKER_HOST="tcp://127.0.0.1:2375" DOCKER_VERSION="17.09.0~ce-0~ubuntu-trusty"
26+
# - repo="main" DOCKER_HOST="unix:///var/run/docker.sock" DOCKER_VERSION="17.09.0~ce-0~ubuntu-trusty"
27+
# - repo="main" DOCKER_HOST="tcp://127.0.0.1:2375" DOCKER_VERSION="17.06.2~ce-0~ubuntu-trusty" DEPLOY=true COVERITY=true
28+
- repo="main" DOCKER_HOST="tcp://127.0.0.1:2375" DOCKER_VERSION="17.05.0~ce-0~ubuntu-trusty" DEPLOY=true COVERITY=true
29+
- repo="main" DOCKER_HOST="tcp://127.0.0.1:2377" DOCKER_VERSION="17.05.0~ce-0~ubuntu-trusty" SWARM_VERSION="1.2.8"
30+
- repo="main" DOCKER_HOST="unix:///var/run/docker.sock" DOCKER_VERSION="17.05.0~ce-0~ubuntu-trusty"
31+
- repo="main" DOCKER_HOST="tcp://127.0.0.1:2377" DOCKER_VERSION="1.13.1-0~ubuntu-trusty" SWARM_VERSION="1.2.8"
32+
- repo="main" DOCKER_HOST="tcp://127.0.0.1:2375" DOCKER_VERSION="1.13.1-0~ubuntu-trusty"
33+
- repo="main" DOCKER_HOST="unix:///var/run/docker.sock" DOCKER_VERSION="1.13.1-0~ubuntu-trusty"
34+
- repo="main" DOCKER_HOST="tcp://127.0.0.1:2375" DOCKER_VERSION="1.12.6-0~ubuntu-trusty"
35+
- repo="main" DOCKER_HOST="unix:///var/run/docker.sock" DOCKER_VERSION="1.12.6-0~ubuntu-trusty"
36+
# - repo="main" DOCKER_HOST="tcp://127.0.0.1:2375" DOCKER_VERSION="1.11.2-0~trusty"
37+
# - repo="main" DOCKER_HOST="unix:///var/run/docker.sock" DOCKER_VERSION="1.11.2-0~trusty"
38+
# - repo="main" DOCKER_HOST="tcp://127.0.0.1:2375" DOCKER_VERSION="1.10.3-0~trusty"
39+
# - repo="main" DOCKER_HOST="unix:///var/run/docker.sock" DOCKER_VERSION="1.10.3-0~trusty"
40+
# - repo="testing" DOCKER_HOST="tcp://127.0.0.1:2375"
41+
# - repo="testing" DOCKER_HOST="unix:///var/run/docker.sock"
42+
# - repo="experimental" DOCKER_HOST="tcp://127.0.0.1:2375"
43+
# - repo="experimental" DOCKER_HOST="unix:///var/run/docker.sock"
3244

3345
cache:
3446
directories:
3547
- $HOME/.travis_cache
36-
# - $HOME/.m2 install would pollute it
48+
- /tmp/coverity-cache
49+
- $HOME/.m2 # install will pollute it
3750

3851
before_install:
3952
- pip install --user codecov
40-
- ./travis-before-install.sh
53+
- ./.travis/travis-before-install.sh
4154

4255
script:
43-
- ./travis-script.sh
56+
- ./.travis/travis-script.sh
4457

4558
after_success:
46-
- ./travis-after-success.sh
59+
- ./.travis/travis-after-success.sh
4760

48-
after_script:
49-
- sudo cat /var/log/upstart/docker.log
61+
#after_script:
62+
# - sudo cat /var/log/upstart/docker.log
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -310,4 +310,4 @@ do_install() {
310310

311311
# wrapped up in a function so that we have some protection against only getting
312312
# half the file during "curl | sh"
313-
do_install
313+
do_install
Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
#!/usr/bin/env bash
22

3+
if [[ $CODECOV == "true" ]]; then
4+
codecov
5+
fi
36

4-
codecov
57
if [[ $TRAVIS_BRANCH == "master" ]] && [[ $TRAVIS_PULL_REQUEST == "false" ]] && [[ $DEPLOY == "true" ]];
68
then
79
cat <<EOF >> ~/settings.xml

.travis/travis-before-install.sh

Lines changed: 172 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,172 @@
1+
#!/usr/bin/env bash
2+
3+
SWARM_VERSION="${SWARM_VERSION:-}"
4+
FAST_BUILD="${FAST_BUILD:-}"
5+
6+
## fix coverity issue
7+
sudo apt-get install -y -q ca-certificates
8+
echo -n | openssl s_client -connect scan.coverity.com:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | sudo tee -a /etc/ssl/certs/ca-certificates.crt
9+
##
10+
11+
if [ "$FAST_BUILD" == "true" ]; then
12+
echo "Fast build, skipping docker installations."
13+
exit 0
14+
fi
15+
16+
set -exu
17+
18+
sudo ip a ls
19+
sudo ip r ls
20+
sudo ss -antpl
21+
22+
export HOST_PORT="2375"
23+
export SWARM_PORT="2377"
24+
export HOST_IP="$(ip a show dev eth0 | grep "inet\b" | awk '{print $2}' | cut -d/ -f1)"
25+
# because of swarm use docker-engine directly
26+
export PRE_DOCKER_HOST="$DOCKER_HOST"
27+
export DOCKER_HOST="tcp://127.0.0.1:${HOST_PORT}"
28+
29+
30+
docker info
31+
docker version
32+
33+
sudo -E apt-get update
34+
sudo -E apt-get install -q -y wget
35+
sudo -E apt-get -q -y --purge remove docker-engine
36+
sudo -E apt-cache policy docker-engine
37+
38+
./.travis/get-docker-com.sh
39+
40+
sudo -E stop docker
41+
42+
#mkdir "${HOME}/.cache" || :
43+
#pushd "${HOME}/.cache"
44+
# wget -N "https://apt.dockerproject.org/repo/pool/main/d/docker-engine/docker-engine_${DOCKER_VERSION}_amd64.deb"
45+
# sudo apt-get -f install
46+
# sudo dpkg -i "$(ls *${DOCKER_VERSION}*)"
47+
#popd
48+
rm -f "src/test/resources/logback.xml"
49+
#rm -f "src/test/resources/travis-logback.xml"
50+
mv "src/test/resources/travis-logback.xml" "src/test/resources/logback-test.xml"
51+
52+
# https://github.com/docker/docker/issues/18113
53+
sudo rm /var/lib/docker/network/files/local-kv.db
54+
55+
sudo cat /etc/default/docker
56+
57+
cat << EOF | sudo tee /etc/default/docker
58+
DOCKER_OPTS="\
59+
--dns 8.8.8.8 \
60+
--dns 8.8.4.4 \
61+
-D \
62+
-H=unix:///var/run/docker.sock \
63+
-H=tcp://0.0.0.0:${HOST_PORT} \
64+
--label=com.github.dockerjava.test=docker-java \
65+
"
66+
EOF
67+
68+
sudo cat /etc/default/docker
69+
sudo bash -c ':> /var/log/upstart/docker.log'
70+
71+
date
72+
sudo -E start docker
73+
74+
tries=20
75+
sleep=5
76+
for i in $(seq 1 $tries); do
77+
if sudo grep "API listen on" /var/log/upstart/docker.log ; then
78+
echo "Docker started. Delay $(($i * $sleep))"
79+
break
80+
elif [[ $i -ge $tries ]]; then
81+
echo "Docker didn't start. Exiting!"
82+
sudo cat /var/log/upstart/docker.log
83+
exit 1
84+
else
85+
echo "Docker didn't start, sleeping for 5 secs..."
86+
sleep $sleep
87+
fi
88+
done
89+
90+
91+
sudo ss -antpl
92+
93+
curl -V
94+
95+
docker version || sudo cat /var/log/upstart/docker.log
96+
docker info
97+
98+
set +u
99+
100+
cat <<EOF > "${HOME}/.docker-java.properties"
101+
registry.username=${registry_username}
102+
registry.password=${registry_password}
103+
registry.email=${registry_email}
104+
registry.url=https://index.docker.io/v1/
105+
106+
EOF
107+
108+
if [[ -n $SWARM_VERSION ]]; then
109+
# export SWARM_PORT="${PRE_DOCKER_HOST##*:}"
110+
111+
docker pull swarm
112+
113+
# # kv store https://docs.docker.com/v1.11/engine/userguide/networking/get-started-overlay/
114+
# docker run -d \
115+
# -p "8500:8500" \
116+
# -h "consul" \
117+
# --name=consul \
118+
# progrium/consul -server -bootstrap
119+
#
120+
# sleep 5
121+
122+
# SWARM_TOKEN=$(docker run swarm c)
123+
124+
# docker run \
125+
# -d \
126+
# --name=swarm_manager \
127+
# -p ${SWARM_PORT}:2375 \
128+
# "swarm:${SWARM_VERSION}" \
129+
# manage token://${SWARM_TOKEN}
130+
131+
docker run \
132+
-d \
133+
-p ${SWARM_PORT}:2375 \
134+
--name=swarm_manager \
135+
swarm manage --engine-refresh-min-interval "3s" --engine-refresh-max-interval "6s" "nodes://${HOST_IP}:${HOST_PORT}"
136+
# swarm manage --engine-refresh-min-interval "3s" --engine-refresh-max-interval "6s" "consul://${HOST_IP}:8500"
137+
138+
# join engine to swarm
139+
docker run \
140+
-d \
141+
"--name=swarm_join" \
142+
"swarm:${SWARM_VERSION}" \
143+
join --advertise="${HOST_IP}:${HOST_PORT}" --delay="0s" --heartbeat "5s" "nodes://${HOST_IP}:${HOST_PORT}"
144+
# join --advertise="${HOST_IP}:${HOST_PORT}" --delay="0s" --heartbeat "5s" "token://${SWARM_TOKEN}"
145+
146+
docker run --rm \
147+
"swarm:${SWARM_VERSION}" list "nodes://${HOST_IP}:${HOST_PORT}"
148+
149+
docker ps -a
150+
sudo ss -antpl
151+
152+
sleep 30
153+
154+
docker logs swarm_join
155+
docker logs swarm_manager
156+
# docker logs consul
157+
158+
# switch to swarm connection
159+
DOCKER_HOST="$PRE_DOCKER_HOST"
160+
161+
docker version
162+
docker info
163+
164+
NODES=$(docker info | grep "Nodes:" | awk '{ print $2 }')
165+
if [[ $NODES -eq "0" ]]; then
166+
echo "Swarm didn't connect"
167+
exit 1
168+
fi
169+
170+
# test via swarm
171+
docker pull busybox
172+
fi

.travis/travis-script.sh

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
#!/usr/bin/env bash
2+
3+
4+
5+
IS_COVERITY_SCAN_BRANCH=`ruby -e "puts '${TRAVIS_BRANCH}' =~ /\\A$COVERITY_SCAN_BRANCH_PATTERN\\z/ ? 1 : 0"`
6+
7+
export COVERITY_ALLOWED=true
8+
# Verify upload is permitted
9+
AUTH_RES=`curl -s --form project="$COVERITY_SCAN_PROJECT_NAME" --form token="$COVERITY_SCAN_TOKEN" $SCAN_URL/api/upload_permitted`
10+
if [ "$AUTH_RES" = "Access denied" ]; then
11+
echo -e "\033[33;1mCoverity Scan API access denied. Check COVERITY_SCAN_PROJECT_NAME and COVERITY_SCAN_TOKEN.\033[0m"
12+
COVERITY_ALLOWED=false
13+
else
14+
AUTH=`echo $AUTH_RES | ruby -e "require 'rubygems'; require 'json'; puts JSON[STDIN.read]['upload_permitted']"`
15+
if [ "$AUTH" = "true" ]; then
16+
echo -e "\033[33;1mCoverity Scan analysis authorized per quota.\033[0m"
17+
else
18+
WHEN=`echo $AUTH_RES | ruby -e "require 'rubygems'; require 'json'; puts JSON[STDIN.read]['next_upload_permitted_at']"`
19+
echo -e "\033[33;1mCoverity Scan analysis NOT authorized until $WHEN.\033[0m"
20+
21+
COVERITY_ALLOWED=false
22+
fi
23+
fi
24+
25+
set -ex
26+
27+
if [ "${FAST_BUILD}" == "true" ]; then
28+
if [ "$TRAVIS_PULL_REQUEST" == "false" ] &&
29+
[ "$COVERITY" == "true" ] &&
30+
[ "$IS_COVERITY_SCAN_BRANCH" = "1" ] &&
31+
[ "$COVERITY_ALLOWED" == "true" ]; then
32+
export COVERITY_SCAN_BUILD_COMMAND="mvn package"
33+
#curl -s "https://scan.coverity.com/scripts/travisci_build_coverity_scan.sh" | bash
34+
./.travis/travisci_build_coverity_scan.sh
35+
else
36+
mvn package
37+
fi
38+
else
39+
if [ "$TRAVIS_PULL_REQUEST" == "false" ] &&
40+
[ "$COVERITY" == "true" ] &&
41+
[ "$IS_COVERITY_SCAN_BRANCH" = "1" ] &&
42+
[ "$COVERITY_ALLOWED" == "true" ]; then
43+
export COVERITY_SCAN_BUILD_COMMAND="mvn verify"
44+
#curl -s "https://scan.coverity.com/scripts/travisci_build_coverity_scan.sh" | bash
45+
./.travis/travisci_build_coverity_scan.sh
46+
else
47+
mvn verify
48+
fi
49+
fi

0 commit comments

Comments
 (0)