forked from devilbox/docker-apache-2.4
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.travis.yml
More file actions
101 lines (89 loc) · 3.98 KB
/
.travis.yml
File metadata and controls
101 lines (89 loc) · 3.98 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
###
### Enable sudo (required for docker service)
###
sudo: required
###
### Language
###
language: python
###
### Add services
###
services:
- docker
###
### Build Matrix definition
###
env:
global:
- IMAGE=devilbox/apache-2.4
# travis encrypt DOCKER_USERNAME=user
# travis encrypt DOCKER_PASSWORD=pass
# Must be regenerated when repository name/owner changes
# DOCKER_USERNAME
- secure: "kxNYavMNjgcnnNg56UZItUSijkFl7Mu2+V0GQ/jFrUG5nFuWnIm7K+AJs96V39cOhybegNYFbEHpLAKVmjQ6BezzIcubVfIW3PfMlI5p0sxITowws89LoheSTKTwOdcQfh8BU7M0IUtvocRG/+jRsrUbgQu3DBOWRxsTWiKMgXjoiPUnlwx5wr4Hyskh8MxUxa41JdiRQYfQawvRiXxUkkcbwVAdvRtW+P03t18gMXqAMxQ0XnjKiYJQbHhnHeITyeRHWEGnxXiQESikzjW62NhKgyiZxOgCSc14n0LP4dzdRaD2jo62zfKCyBp6UmkhBMc3gIYiGCSgJLpH2yHSQhY7FxNN/JQZ/S6UruYbIhUutqNG928QPEydJyLCgqSAn4u2kv5H2YusXPPY3SrMZGPj+7pCAJmnX7zkHGdqS0IL3BVkbE13cXKxZ66yrTfIs6B278dIr15TVJd92Dql+eHb7wFypJqkHE8+VdCj7JRdQyH2fsAY0oXxwSIYRqtHQFXPa9bxVYd1v7IH7lJllZP+jW3EhRMOc5i9DOWJ525tDiBAdBJuCafAoN76fIoHiVUesaZVatseSaEW7uV/noFKALYSpIHcdZsxI3cYrgqYRCMBXc4MZdFmxk4/sT4nWgaSbjb/V5mtdlHgYTxVX5Ocd1Q2Er/3yfiOla0jgOc="
# DOCKER_PASSWORD
- secure: "oNvVKAtmlzCFCXwiZZ3DN73wMOwz7MiXOLZNZLvp0xU945JK55hNYENo+bZiduIkCAozDC0g4TbxZPrfo79e0I1JopeZXngE+KNTqCLGY+CCTRifYX9oWsCbaVDbjy2kf835aocQhciEa32TbG9GFxR/ZkMfA1wVnb4/Fb5+xzxJDz9Ks+mQs/B2sac9rzUTSZzp62xCMkPmBIp+oCy0xyZMyvNb/Q0ZxSD/Q3Z4rn0sOoOm56NnNFrVSyqGA7xl2S7OwvB9MAlsu8cnZPOq/CDjfLYhgaO6uA2nqPP7ZOVcq62pfqAt2fdF4/JU7TjFGPGGtxGF3yAKC+JGVhhcu/6yKQhIBeoaAJpUN1XMr1DGLP584yC/wtx5JfNebSIuretGfmwRklgRurQbfSjTcJf9mIehihqprW4euVXbtHWEhnfQY/wL3bP+7dT8CWxnphQs8WzshrghPLDVL0a9j9z/BsMMpneC6yOOBuKU4Z3st3h8dtFqBE2xgWrg0L6IsRlB1ydMcZ7aE1C9FZPKaAbhDCufG7G+cGhq9I8oUVDVcn1ltJxdNbpGy/RRw9pmWCEfzqfAJsOS1LQdIcRqvGUgHT/M9O36MaCtu86aZtYPmgUeXPVAKbu1xbrL8TfF8gBQAeQIGmxdV6i5ilxSo2X9mgDbCckEz8zIIVI3qe0="
matrix:
- TEST=0
- TEST=1
###
### Stage definitions
###
stages:
- test
- deploy
###
### Global for all stages
###
install:
# Get newer docker version
- max=100; i=0; while [ $i -lt $max ]; do if sudo apt-get update; then break; else i=$((i+1)); fi done
- max=100; i=0; while [ $i -lt $max ]; do if sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce; then break; else i=$((i+1)); fi done
- docker version
script:
- make build
- make test ARG=${TEST}
###
### Job definitions
###
jobs:
include:
# Final deploy stage
- stage: deploy
env: TEST=
before_script:
- if [ "${TRAVIS_PULL_REQUEST}" == "false" ]; then
if [ -n "${TRAVIS_TAG}" ]; then
docker build --no-cache=true -t "${IMAGE}:${TRAVIS_TAG}" . &&
docker images;
elif [ "${TRAVIS_BRANCH}" == "master" ]; then
docker build --no-cache=true -t "${IMAGE}:latest" . &&
docker images;
elif [[ ${TRAVIS_BRANCH} =~ ^(release-[.0-9]+)$ ]]; then
docker build --no-cache=true -t "${IMAGE}:${TRAVIS_BRANCH}" . &&
docker images;
else
echo "Skipping branch ${TRAVIS_BRANCH}";
fi
fi
script:
# Push to docker hub on success
- if [ "${TRAVIS_PULL_REQUEST}" == "false" ]; then
echo "${DOCKER_PASSWORD}" | docker login --username "${DOCKER_USERNAME}" --password-stdin &&
if [ -n "${TRAVIS_TAG}" ]; then
echo "Pushing ${IMAGE}:${TRAVIS_TAG}" &&
docker push "${IMAGE}:${TRAVIS_TAG}" &&
docker tag "${IMAGE}:${TRAVIS_TAG}" "${IMAGE}:latest" &&
echo "Pushing ${IMAGE}:latest" &&
docker push "${IMAGE}:latest";
elif [ "${TRAVIS_BRANCH}" == "master" ]; then
echo "Pushing ${IMAGE}:latest" &&
docker push "${IMAGE}:latest";
elif [[ ${TRAVIS_BRANCH} =~ ^(release-[.0-9]+)$ ]]; then
echo "Pushing ${IMAGE}:${TRAVIS_BRANCH}" &&
docker push "${IMAGE}:${TRAVIS_BRANCH}";
else
echo "Skipping branch ${TRAVIS_BRANCH}";
fi
fi