This repository was archived by the owner on Mar 1, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 25
/
Copy path.travis.yml
79 lines (75 loc) · 3.47 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
language: minimal
dist: bionic
cache:
directories:
- .bundler_cache
- .npm_cache
addons:
apt:
sources:
- sourceline: 'deb https://packages.cloudfoundry.org/debian stable main'
key_url: 'https://packages.cloudfoundry.org/debian/cli.cloudfoundry.org.key'
packages:
- cf-cli
services:
- docker
jobs:
include:
- stage: "Test"
name: "All Tests"
script:
- docker run -v $TRAVIS_BUILD_DIR/.npm_cache:/npm_cache -v $TRAVIS_BUILD_DIR/.bundler_cache:/bundler_cache -v "$TRAVIS_BUILD_DIR":/postfacto -e npm_config_cache=/npm_cache -e BUNDLE_PATH=/bundler_cache postfacto/dev:2.6.3-12.6.0 /bin/bash -c "cd /postfacto && npm config set user 0 && npm config set unsafe-perm true && ./deps.sh && EPHEMERAL_CONTAINER=true ./test.sh"
- stage: "Package"
- name: "Build & Deploy Docker"
script:
- docker build $TRAVIS_BUILD_DIR -f $TRAVIS_BUILD_DIR/Dockerfile -t travis-build-image
deploy:
- provider: script
script: bash $TRAVIS_BUILD_DIR/docker/ci-push $TRAVIS_TAG
skip_cleanup: true
on:
tags: true
- name: "Build & Deploy Docker for Smoke Tests"
script:
- $TRAVIS_BUILD_DIR/smoke/build.sh travis-build-image-smoke
deploy:
- provider: script
script: bash $TRAVIS_BUILD_DIR/docker/ci-push-smoke $TRAVIS_TAG
skip_cleanup: true
on:
tags: true
- name: "Build & Upload Package"
script:
- docker run -v $TRAVIS_BUILD_DIR/deployment/helm/:/helm -w /helm --entrypoint /helm/build.sh alpine/helm:3.2.1 $TRAVIS_TAG
- docker run -v $TRAVIS_BUILD_DIR/.npm_cache:/npm_cache -v $TRAVIS_BUILD_DIR/.bundler_cache:/bundler_cache -v "$TRAVIS_BUILD_DIR":/postfacto -e npm_config_cache=/npm_cache -e BUNDLE_PATH=/bundler_cache postfacto/dev:2.6.3-12.6.0 /bin/bash -c "cd /postfacto && npm config set user 0 && npm config set unsafe-perm true && ./deps.sh && ./package.sh $TRAVIS_TAG"
deploy:
- provider: releases
draft: true
skip_cleanup: true
overwrite: true
file_glob: true
on:
tags: true
api_key:
secure: dPDprfJo3c5iCk5fcPR7tgRMz5OcCF6IAPRx1/WMAq1FJjgdkD6iu628/AAgezN/rlTDiqZpfx3nj3UhTSUOeBZgEaRbpvpIc3bLc2RABqqxQNuL2g+DNt3L7XYcq8PLHQBVIHmRKp8DK1XJCaG3LUEuYZD9gKaiftMwbvgsgfVOFasslyypgDTi/NdPm1tNsDdKvYVe9dkZpDpHClJsoIQLl/gtNvrJREFTF2w0T8oSdccsoQekAAC4kXWiL5lgXIKHDpQTo1K8oXrl/hUxuw0e1fGKA6R0kNZliA6cQYG3OOb0a9JhplzO3jGWvlZdmJluWgy0yUn+jRZZOXiQVJOZCd2Lht3JN8p6x9D91S43forMV7ZmrW3XPuEocGIwVdY7yVKEsHAiAK3Ih3VbMuUn1ITvKB8F4idyurWEL9cQwsszX9pFSOriAH5mhIQs7vwp6uvFJIoADGiS//wEqcAwzsFWHCDLBPYRTk9Zp17MSgUj8+PDBo29pbbWtx6+14w82LVQQdnyoReDiZR5G1ItxSx6xjWIeGlyo8yu4xmNq9nufPoj6ZkGDbAJtH2YeaGIEcltjXzIalmBdmoVp+6SKyr8EFnolgWd+ns8KkCvLqxp3fwuz4OD+B619Au1/8WUrHRdetChlvxzEHVx3wnwWnw0zbCBh/cq0mWUdzs=
file:
- package.zip
- $TRAVIS_BUILD_DIR/deployment/helm/postfacto-*.tgz
- stage: "Test Deployment"
- name: "Deploy on Cloud Foundry"
deploy:
on:
tags: true
script:
- ./download-draft-package.sh
- cf login -a $CF_ENDPOINT -u $CF_USERNAME -p $CF_PASSWORD
- ./test-package.sh --skip-package --skip-heroku
- name: "Deploy on Heroku"
deploy:
on:
tags: true
script:
- ./download-draft-package.sh
- openssl aes-256-cbc -K $encrypted_5e88d222d606_key -iv $encrypted_5e88d222d606_iv -in .heroku-netrc.enc -out .heroku-netrc -d
- cat .heroku-netrc >> $HOME/.netrc
- ./test-package.sh --skip-package --skip-cf