forked from keptn/keptn
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
96 lines (92 loc) · 2.98 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
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
sudo: true
os: osx
language: go
go:
- 1.12.x
cache:
directories:
- "$HOME/google-cloud-sdk/"
env:
global:
- GOOGLE_APPLICATION_CREDENTIALS=~/gcloud-service-key.json
- DEP_VERSION="0.5.3"
- HUB_VERSION="v2.11.2"
- HUB_INSTALLER="hub-darwin-amd64-2.11.2"
notifications:
webhooks:
urls:
- https://us-central1-sai-research.cloudfunctions.net/travisWebhookListener
on_failure: always
on_cancel: always
on_error: always
before_install:
- |
if [ ! -d "$HOME/google-cloud-sdk/bin" ]; then
rm -rf $HOME/google-cloud-sdk;
export CLOUDSDK_CORE_DISABLE_PROMPTS=1;
curl https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-247.0.0-darwin-x86_64.tar.gz > gcloud.tar.gz
gunzip -c gcloud.tar.gz | tar xopf -
./google-cloud-sdk/install.sh
source ./google-cloud-sdk/completion.bash.inc
source ./google-cloud-sdk/path.bash.inc
fi
- gcloud --quiet version
- gcloud --quiet components update
- gcloud --quiet components update kubectl
- echo ${GCLOUD_SERVICE_KEY} | base64 --decode > ~/gcloud-service-key.json
- gcloud auth activate-service-account --key-file ~/gcloud-service-key.json
- curl -L -s https://github.com/github/hub/releases/download/${HUB_VERSION}/${HUB_INSTALLER}.tgz -o ${HUB_INSTALLER}.tgz
- tar xopf ${HUB_INSTALLER}.tgz
- sudo mv ${HUB_INSTALLER}/bin/hub /usr/local/bin/hub
# Download the binary to bin folder in $GOPATH
- mkdir $GOPATH/bin/
- curl -L -s https://github.com/golang/dep/releases/download/v${DEP_VERSION}/dep-darwin-amd64 -o $GOPATH/bin/dep
# Make the binary executable
- chmod +x $GOPATH/bin/dep
- cd cli/
- dep ensure
- cd ..
- export TZ=Europe/Vienna
- CLI_VERSION="$(cat ./cli/version | tr -d '[:space:]')"
- DATE="$(date +'%Y%m%d.%H%M')"
install:
- cd cli/
- go test ./...
- cd ..
jobs:
include:
- stage: cron
if: branch = develop AND type = cron
script:
- git clone --branch develop https://github.com/keptn/installer.git --single-branch
- source travis-scripts/cronjob_main.sh
- stage: feature/bug/hotfix
if: branch =~ ^feature.*$ OR branch =~ ^bug.*$ OR branch =~ ^hotfix.*$
script:
- echo $TRAVIS_BUILD_STAGE_NAME
- TYPE="$(echo $TRAVIS_BRANCH | cut -d'/' -f1)"
- NUMBER="$(echo $TRAVIS_BRANCH | cut -d'/' -f2)"
- cd ./cli
- TAG="${TYPE}-${NUMBER}-${DATE}"
- source ../travis-scripts/build_cli.sh "${TAG}"
- stage: develop
if: branch = develop AND type = push
script:
- echo $TRAVIS_BUILD_STAGE_NAME
- cd ./cli
- TAG="${DATE}-latest"
- source ../travis-scripts/build_cli.sh "${TAG}"
- stage: release
if: branch =~ ^release.*$ AND NOT type = pull_request
script:
- echo $TRAVIS_BUILD_STAGE_NAME
- cd ./cli
- TAG="${CLI_VERSION}-${DATE}"
- source ../travis-scripts/build_cli.sh "${TAG}"
- stage: master
if: branch = master AND NOT type = pull_request
script:
- echo $TRAVIS_BUILD_STAGE_NAME
- cd ./cli
- TAG="${CLI_VERSION}"
- source ../travis-scripts/build_cli.sh "${TAG}"