forked from hyperledger-caliper/caliper
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
64 lines (55 loc) · 3.53 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
language: node_js
node_js:
- "10"
services:
- docker
dist: xenial
before_install: |
set -ev
set -o pipefail
npm install -g @alrra/travis-scripts
env:
global:
- secure: "YKjfZ5p7MU6MKgVMC4kKbYNw3t9rtLHl7DGNe31S07ax/Xsp9oPpyExUCVHnmm9Qalk9RdecxWL6hSefujIxY6xYydYiaa1JBl+SewkorMZ3I0ew1q/DYS+39BXgH2o0YvQXt6gnkY+Ik520r+TCEzFJxqTB+1K5HevVHCR/pw2qAmSTXktc3YWHO813zyVzs1pD4xWs/J/pvEKhip7nYOgXWFrKiXrJCE/l/gDrS+3bejwk6cRZQ4qzyISns9FAMqytU1NAnSEfjTClkoj/eAJan+3HEUggoanveqgRKuG7jLTDjI664vulLogIWuDdhACh4+BL7ic7XNDoU2fGQCwexZVb34I2DE0VRGAtuVBWvWhKYW6auxgWeO0Fz29uFS/59X8hXaOfzOA5OMXiYVv6vUWKPYx3wMOZWHDAUZE7cDhTAte13PCKnQzq5EdrsoVFDr0bA5u4y3KQ4aiAFJJjX0qBZAtICT2SQkOPY1egooobruVjV+7h0Q7sDHP3mNGpIxW96dHUQmbyuzGZ69tv0S55WQdHUNA1ODFeURcoKI+bGCciNDDbkQ9OcnIjooeJRE+xW2K4eSZRYV1SFUSeFGbdLcuMaDNNMnaQQygqrUHeWijP6uma2m1HtJnzoqV+CYy2vBtjG4oDK/mPYBCwIN5D2laHkpPsEu86O9w="
- secure: "3U5MfJ5YnPe3b97jwe17Oiy5MjhX92TK5OUKlTjuTiQhLFmPq0QipFv5HaFWBWWxT4a4yqz2B+L0lotKRLZXOU7EHuiIL0ObgENu0lpZCkN3t/6AdJaa0DBDrtqThGITp94894GbYYOi1p4DuEisa5tpOm+P0dquy8nTSBPAitCo+WmW3pKnZmt7TBtHoL+8qBjOgZCKNzwBsUx1HXOwGtwrQWHE+M1vfbR96XP15M4aE8TWJZ8/ga+VQ3hqkwB3S/TmWtsyqjIGzeCcZI17AE9Fxqb4kZe6CcvM+ntGaN5NT5TTGgErSjLPYYwhxYgQWiyShti7qdLJBt51ivt5GbtQaiNBbbPpbk9F0r8Ur9QpgfGhumURSDuloXmVtkjVrdkn+/E5suoSkvQZOWOOsFcNdsOYG7lOuHLoTbLItrXQf5mBKblBMG3A+Mmj4uhN4mRcZNtHRbiKhOABdZKP6vfocpH6+4Hq1Yzr7LuRL1/jhYa47qllhCxu586UznoGRXJQNMjuboqPVEURC1fhSweLw+rpOzLF6/aGizF60Xe/gFnIiLrLV0LaA0tRJt3tYbLcvR84bXPuRFe/jAmPX9qIVAwMdQ/aXSRe38WK2rCXb7TDl6tlGr3SH0tXcCuT+IeqClvKkq1179Y3SuZItKgzMYvU+V18EhXBJRyhXcc="
# NOTE: the unit test and integration test jobs are only run "for the PR". In this case the encrypted env vars are not present (are blank).
# The NPM and Docker Hub publish jobs are only run when the PR is merged. In this case the encrypted env vars are present, since the repo slug is hyperledger/caliper.
# So the presence of encrypted vars are used as conditions for the jobs.
jobs:
include:
- stage: checks and unit tests
name: Package name check, license check, lint check, unit tests
if: type = pull_request OR repo != hyperledger/caliper
script: ./.travis/checks-and-unit-tests.sh
# parallel integrations tests
- stage: benchmark integration tests
name: HL Fabric integration test
if: type = pull_request OR repo != hyperledger/caliper
script: BENCHMARK=fabric ./.travis/benchmark-integration-test-direct.sh
- name: Ethereum integration test
if: type = pull_request OR repo != hyperledger/caliper
script: BENCHMARK=ethereum ./.travis/benchmark-integration-test-direct.sh
- name: HL Besu integration test
if: type = pull_request OR repo != hyperledger/caliper
script: BENCHMARK=besu ./.travis/benchmark-integration-test-direct.sh
- name: FISCO-BCOS integration test
if: type = pull_request OR repo != hyperledger/caliper
script: BENCHMARK=fisco-bcos ./.travis/benchmark-integration-test-direct.sh
- name: Generator integration test
if: type = pull_request OR repo != hyperledger/caliper
script: BENCHMARK=generator ./.travis/benchmark-integration-test-direct.sh
# publish packages
- stage: publish
name: Publishing to NPM and Docker Hub
if: type = push AND repo = hyperledger/caliper
script: ./.travis/publish.sh
cache:
directories:
- node_modules
notifications:
webhooks:
on_success: always # default: always
on_failure: always # default: always
on_start: always # default: never
on_cancel: always # default: always
on_error: always # default: always