Skip to content

Commit a77b7de

Browse files
authored
Rework Travis setup (#1357)
1 parent 21583b5 commit a77b7de

File tree

6 files changed

+52
-328
lines changed

6 files changed

+52
-328
lines changed

.travis.yml

Lines changed: 14 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,62 +1,39 @@
11
sudo: required
2-
dist: trusty
2+
dist: xenial
33
language: java
44

55
services:
66
- docker
77

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

1111
install: true
1212

1313
env:
1414
global:
15-
- CODECOV=true
1615
- DOCKER_TLS_VERIFY=""
17-
# The next declaration is the encrypted COVERITY_SCAN_TOKEN, created
18-
# via the "travis encrypt" command using the project repo's public key
19-
- secure: "GonzmzvnXsTNQV+6sKtBSSPiwbpMZjxumNt5LFp1g77/afLxw9kl2EQOXbUe308vFOwRVqeY7drBvNJa8aJkTUClfMaGRjfZ9DUwm6doMKMUYrdEkYoQTcH7yDX5K5w9MT6m+Izj+BK2gB7nK3yFlYG6COeXCdFbQ4/cf3/xfRc="
20-
- COVERITY_SCAN_PROJECT_NAME="docker-java/docker-java"
21-
- COVERITY_SCAN_BRANCH_PATTERN="master"
22-
- COVERITY_SCAN_NOTIFICATION_EMAIL="kanstantsin.sha@gmail.com"
2316

2417
matrix:
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"
18+
- DEPLOY=true
19+
20+
# TCP transport
21+
- DOCKER_HOST="tcp://127.0.0.1:2375"
22+
23+
# Older versions of Docker
24+
- DOCKER_VERSION="17.06.2~ce-0~ubuntu"
25+
- DOCKER_VERSION="18.06.3~ce~3-0~ubuntu"
26+
27+
# Swarm
28+
- SWARM_VERSION="1.2.8"
4429

4530
cache:
4631
directories:
4732
- $HOME/.travis_cache
48-
- /tmp/coverity-cache
4933
- $HOME/.m2 # install will pollute it
5034

5135
before_install:
52-
- pip install --user codecov
5336
- ./.travis/travis-before-install.sh
5437

5538
script:
56-
- ./.travis/travis-script.sh
57-
58-
after_success:
59-
- ./.travis/travis-after-success.sh
60-
61-
#after_script:
62-
# - sudo cat /var/log/upstart/docker.log
39+
- mvn verify

.travis/travis-after-success.sh

Lines changed: 0 additions & 21 deletions
This file was deleted.

.travis/travis-before-install.sh

Lines changed: 35 additions & 105 deletions
Original file line numberDiff line numberDiff line change
@@ -1,98 +1,47 @@
11
#!/usr/bin/env bash
22

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-
163
set -exu
174

18-
sudo ip a ls
19-
sudo ip r ls
20-
sudo ss -antpl
5+
SWARM_VERSION="${SWARM_VERSION:-}"
6+
DOCKER_VERSION="${DOCKER_VERSION:-}"
7+
DOCKER_HOST="${DOCKER_HOST:-}"
218

229
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-
2910

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
4811
rm -f "docker-java/src/test/resources/logback.xml"
49-
#rm -f "src/test/resources/travis-logback.xml"
5012
mv "docker-java/src/test/resources/travis-logback.xml" "docker-java/src/test/resources/logback-test.xml"
5113

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
14+
if [[ -n $DOCKER_VERSION ]]; then
15+
sudo -E apt-get -q -y --purge remove docker-engine docker-ce
5616

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
17+
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
18+
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
19+
sudo apt-get update
20+
sudo apt-cache madison docker-ce
21+
sudo apt-get install "docker-ce=$DOCKER_VERSION"
22+
fi
6723

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
24+
if [[ -n $DOCKER_HOST ]]; then
25+
sudo mkdir -p /etc/systemd/system/docker.service.d/
8926

27+
echo "
28+
[Service]
29+
ExecStart=
30+
ExecStart=/usr/bin/dockerd -H unix:///var/run/docker.sock -H tcp://0.0.0.0:${HOST_PORT}
31+
" | sudo tee -a /etc/systemd/system/docker.service.d/override.conf
9032

91-
sudo ss -antpl
33+
sudo systemctl daemon-reload
34+
sudo service docker restart || sudo journalctl -xe
35+
sudo service docker status
36+
fi
9237

93-
curl -V
38+
while (! docker ps ); do
39+
# Docker takes a few seconds to initialize
40+
echo "Waiting for Docker to launch..."
41+
sleep 1
42+
done
9443

95-
docker version || sudo cat /var/log/upstart/docker.log
44+
docker version
9645
docker info
9746

9847
set +u
@@ -106,57 +55,38 @@ registry.url=https://index.docker.io/v1/
10655
EOF
10756

10857
if [[ -n $SWARM_VERSION ]]; then
109-
# export SWARM_PORT="${PRE_DOCKER_HOST##*:}"
58+
export SWARM_PORT="2377"
59+
export HOST_IP="$(ip a show dev eth0 | grep "inet\b" | awk '{print $2}' | cut -d/ -f1)"
11060

11161
docker pull swarm
11262

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-
13163
docker run \
13264
-d \
13365
-p ${SWARM_PORT}:2375 \
13466
--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"
67+
"swarm:${SWARM_VERSION}" \
68+
manage --engine-refresh-min-interval "3s" --engine-refresh-max-interval "6s" "nodes://${HOST_IP}:${HOST_PORT}"
13769

13870
# join engine to swarm
13971
docker run \
14072
-d \
14173
"--name=swarm_join" \
14274
"swarm:${SWARM_VERSION}" \
14375
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}"
14576

14677
docker run --rm \
147-
"swarm:${SWARM_VERSION}" list "nodes://${HOST_IP}:${HOST_PORT}"
78+
"swarm:${SWARM_VERSION}" \
79+
list "nodes://${HOST_IP}:${HOST_PORT}"
14880

14981
docker ps -a
150-
sudo ss -antpl
15182

15283
sleep 30
15384

15485
docker logs swarm_join
15586
docker logs swarm_manager
156-
# docker logs consul
15787

15888
# switch to swarm connection
159-
DOCKER_HOST="$PRE_DOCKER_HOST"
89+
export DOCKER_HOST="tcp://127.0.0.1:${SWARM_PORT}"
16090

16191
docker version
16292
docker info

.travis/travis-script.sh

Lines changed: 0 additions & 49 deletions
This file was deleted.

0 commit comments

Comments
 (0)