forked from open-horizon/examples
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
67 lines (58 loc) · 3.18 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
58
59
60
61
62
63
64
65
66
67
sudo: true
services: docker
#todo: add in go support when we start testing the gps sample
#language: go
#go: 1.10.x
language: minimal
#notifications:
# slack:
# secure: vSzVllY4Vmt6Nf6Yl+5QDMKTEQ4jIbP/bC/LSzZFmQNlYWlDEzG1gQcPb4prh7/efjUFt+vM2lTFP7jLEkib+XiR8n4LShCl+IeRyBpiONXII4KN7O9IPTMMOpGvN/FhZFgyzRFwEvkCSuSBpOYoRGGij/wzo/mPzfJYEyGxpaRmQKEmD7xmtxXMAVWpK2L5fL6XbglEPKD7pMYUvM/WyzAMJg4JgDxOGeX7QLGdSQrTOOkUtJjiEs8WtB/fR9Gev+vwX22KrnMwZpmT9KPPi+kzwFYnfzKxHdjdsmydmBBlBS4XM8rvJL1eMyrQB2LOOW8xWUeOF03t5PfKAC6cY2h01Jdl/rx3L6Pc99ABItS3OvYcwL0HY20bz+hNI0seRMVftz7eRzMHGdQsfYXfU6hOxkovGutRoyVkS7f+m66nBaOfRh6DAlOt/H6us4WEq1zJb8SyP+S7Xm38grh+xEDIMaz8AeavhDRWyH6RQfrpxvcGbcWhURXiY7clJLgjmauGJw9H/jxkuuoIINIFjkrziRHDGj9ZxNp3JbtJfprrramMCLtHl5Ziz5Pjmcf46iZxFzNlRlW/aC5ZqQbHm5EgcNuHXHMHvzTQcnkFDrQBGaXI3sLXfaYt+1LeRwfQXGOsWSgc8lmgfcGn1Fvbj/8ykq/q1ReQFAbCvT62ZR8=
#os:
# - osx
dist: xenial
branches:
only:
- master
#todo: for multi-arch builds see: http://wiki.micromint.com/index.php/Debian_ARM_Cross-compile , https://wiki.debian.org/QemuUserEmulation , https://dev.to/zeerorg/build-multi-arch-docker-images-on-travis-5428
# We can not use osx so because the docs currently state: "We do not currently support use of Docker on macOS"
#addons:
# apt:
# update: true
# packages:
# - qemu
# - qemu-user-static
# - binfmt-support
# - dpkg-cross
# Publish to staging if successful (promotion to prod is a separate process)
env:
- ARCH=amd64 HZN_EXCHANGE_URL=https://stg.edge-fabric.com/v1
# Install the hzn command
#todo: change this to:
#addons:
# apt:
# update: true
# sources:
# - sourceline: deb [arch=amd64,armhf,arm64,ppc64el] http://pkg.bluehorizon.network/linux/ubuntu xenial-updates main
# key_url: 'http://pkg.bluehorizon.network/bluehorizon.network-public.key'
# packages:
# - horizon-cli
before_script:
- wget -qO - http://pkg.bluehorizon.network/bluehorizon.network-public.key | sudo apt-key add -
- echo "deb [arch=$(dpkg --print-architecture)] http://pkg.bluehorizon.network/linux/ubuntu xenial-testing main" | sudo tee -a /etc/apt/sources.list
- sudo apt-get update -q
- sudo apt-get install horizon-cli -y
# Build and test the example
# Note: tools/travis-find determines if the specified service was modified, so we know if we should test it.
script:
- 'if git diff --name-only $TRAVIS_COMMIT_RANGE | $TRAVIS_BUILD_DIR/tools/travis-find edge/services/helloworld -v; then
cd $TRAVIS_BUILD_DIR/edge/services/helloworld && make test;
fi'
- cd $TRAVIS_BUILD_DIR
# If this is after the PR has been merged into master, and the test was successful, then publish the example
#todo: publishing the service from travis is a problem, because we need the docker creds, horizon creds, and service private key. Even tho they are encrypted, the travis organization still has access to them.
#after_success:
# - 'if [[ "$TRAVIS_PULL_REQUEST" == "false" ]] && git diff --name-only $TRAVIS_COMMIT_RANGE | $TRAVIS_BUILD_DIR/tools/travis-find edge/services/helloworld -v; then
# echo "Publishing helloworld..." &&
# echo "$DOCKER_HUB_PASS" | docker login -u "$DOCKER_HUB_USER" --password-stdin &&
# cd $TRAVIS_BUILD_DIR/edge/services/helloworld && make publish-service;
# fi'