-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
57 lines (54 loc) · 3.76 KB
/
.travis.yml
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
language: python
sudo: required
services:
- docker
env:
global:
- DOCKER_REPO=cadasta/cadasta-export-worker
- GIT_REPO=$DOCKER_REPO
- DOCKER_TAGGED_REPO=$DOCKER_REPO:${TRAVIS_BRANCH//\//.} # Replace slashes with periods
# DOCKER_USERNAME
- secure: LFY4DBBI6vl7OoSTxamBEagCjFRD34rGRF5rdFNvN/8EGZFikIF0w7qM9JEfvVFNQYbnvLmC8pMJA9vDuJpGS4vQhp9D13wd/muZINTXWNOLJTBapprW1eOvxsZOVha5hACpxeWyqcuIe0C5YnSOCdw34DcaHwZrzyLNJh6Sa8OydzmUqSgrPPsGczSLul++bB8bNI6bvT6F6PE+HCwawSRdp6A8BPKq76U9nqT/ewlr59c3QOeL/cGXIp/v1IYADhkz16KhX9KoYu9WlnXyCfd+DAhzCxWRQMHdfNmDZY2M5WuKbSzh8D0hPTDE8DWgd9vC4Mzn4etdlirfDYMCJDuU8Z07UD7/AF7rXp9RMF1cJKb7PykZ0m/tddUn0lf+0Z6wuwNLQvm/73UJ3QgIWUeGj9zU7lRqvBPyGC5X9C7wUN21Xazw46Vwb01bSBFN7aVqLeDBhZAfc3pfDoMGUn5gGQiSv51wqC+uiA1CilTUY7TD/pKyckLJeb/0X1h2Raj5HjuM90bHOoJDTvjQ4ATSiG4kLYiRcMuJivAo4eA46Q6sq5vR810qLLAt/xaQE/gGA4r90j2R0DFGxdv7Ae7sIUsckH+xppX6HS/G02zFLbFTcOvNaB9/CeFIUGekP9Uv08e/aAIHSTWp5/2AJcpz3NJ661ZHo/IfY8YBeMQ=
# DOCKER_PASSWORD
- secure: dRyrNxZCW+qofiTReNgiyYbCEHXlU44n8SE+8zavI2KJUScS8s+OEXga3ituOhTO+72d60D1WMuMN38dhQ52WSwpW7mG4sR7FnVpio481WSplVDtFWtVDZjn7z6mNBppU0ZWVgG/0Skss3GXhHoM9BoPh71u2v4SytJQ+pGsiJl5CoGUzdo9mHNfWfaGtO72wbK71F8iYaue89z/bkneveNXXWMlzH33kC9aRyzin129O7pSXFqZvZZOLPbp21GQsr7+yfD1+PtCc13M46zIzlASo+LNaoAJvtVoAFBUmdzsyjiGY0nIDVU5gczo2GemrIvQQTlUV8CthROtM81uBHoMZZ1WvQJre+RmPf4kk1pyn6GtlBy+K8Pw59WC/vD7e1OLpVwQ/H3pRqET7dBu6f+CLn+bHFmjRG2mtZMedViDGS2yRlGCqVHQ0q3W4EV+jUovT22x3v49dT+NYiuQ1QCqlgN6Vv40vywdberG5uuqZbiPGYeeMNJzuJ6mxNQjyJmOlOWI+xfh1448y88c+F62eSFPj4YobkBMeuWQjmWkg3MFsAEdaphRQaoytHlkDjOKplPev0hdRtSMyhJrbclqV3+9EgDAzr1z0Y6c5Mr0dCSaHS9oxtg5Oolzb1cHepSiKVwZzb2aPAo+Rd3IrlpLJJWyrbFBWt+FTwUZPRQ=
# GITHUB_TOKEN
- secure: b7u5EaZVCidWMCNzAqlOYwfr+J8ACIZqsAfqqKjpWYyZu5ImHXrwB3sugl9/FA1ZDYw4BWuS/geLzb/3vQSL1ApajwCkM+XOWyFO/JozVU1FsQziHfqZIIbWjVf4oYdRAnsFtYdgI3jeWA0Z1ai7Idoz68lXvAj8M/zRk6sIMAM6lcb+f4fkeNQWtN/lFm0PiH/B2ExcLRR3KB13rLHSsqlLanh7m3TPGUdMAE1tx+PwwcUmamBFakbvKRIwEDOQcvwMLn7+cEl1uzyn+U2kWU3HRwOxR5pDV63s4Y8MXVg1+QnNN9xDG3Feby3cFTo2mIqcLvahGyDovqerbpKfhJ1ekoUXw9a7gJpMiffwnpO5qeVRJyfpDhq3bT0xYWIl0qZYjX2D6Se4evLTBbj/bhQdnwbmh+09kt94TIP2wQGPx8Xz4ytmk/fqY06vUDpXP7+8n8hE/MkD/DNih25uhNGBvzI3S5nQB/bAgLFlMFXdtqg62EYA69XpHRZxcxC4g3UH8uHP+sGd/i5PaWNAbD3A+Yj7JQO4ak1bNlQX7a0I60G36rEHaXsbLVH9XoX7CIZOUUj++zkShZEyiCVC7mDD0dt5b6HLXlO58J5V+ZHtQFntU+na5+smNelRwmX9s8zZx5RzD10lxGmjPo2b+7eFKg/00G9HqLkT7XcNAk8=
before_install:
# Upgrade Docker
- sudo apt-get update
- sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce
install:
- echo "Building $DOCKER_TAGGED_REPO ($TRAVIS_COMMIT)"
- docker build -t $DOCKER_TAGGED_REPO .
script:
# Test
- docker run $DOCKER_TAGGED_REPO ./runtests
after_success:
# Push to docker
- docker login -u="$DOCKER_USERNAME" -p="$DOCKER_PASSWORD";
- docker push $DOCKER_TAGGED_REPO;
# Read version
- |
if [ $TRAVIS_BRANCH == "master" ]; then
export VERSION=$(docker run -t $DOCKER_TAGGED_REPO ./getversion);
echo "Tagging with version: $VERSION";
fi
# Tag docker build w/ latest and version
- |
if [ $TRAVIS_BRANCH == "master" ]; then
if curl --head --fail "https://hub.docker.com/v2/repositories/${DOCKER_REPO}/tags/${VERSION}/"; then
echo "Tag ${VERSION} already exists on Docker, not tagging with version..."
else
docker tag $DOCKER_TAGGED_REPO $DOCKER_REPO:$VERSION;
fi
docker tag $DOCKER_TAGGED_REPO $DOCKER_REPO:latest;
docker push $DOCKER_REPO;
fi
# Tag git repo with version
- |
if [ $TRAVIS_BRANCH == "master" ]; then
git config --global user.email "[email protected]";
git config --global user.name "Travis CI";
git tag $VERSION -a -m "Generated tag from TravisCI build $TRAVIS_BUILD_NUMBER";
git push --tags https://${GITHUB_TOKEN}@github.com/${GIT_REPO}.git;
fi