-
Notifications
You must be signed in to change notification settings - Fork 6
/
.travis.yml
113 lines (106 loc) · 3.55 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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
language: node_js
vm:
size: x-large
sudo: false
node_js:
- 20.18.0
dist: jammy
cache: npm
install:
- npm install -g yarn@`cat package.json | jq -r '.engines.yarn // "^1.2.1"'`
- 'npm config set //registry.npmjs.org/:_authToken $NPM_TOKEN'
- 'npm config set @coorpacademy:registry https://registry.npmjs.org/'
- 'yarn config set registry https://registry.npmjs.org/'
- source scripts/setup.sh npm-load
- yarn
stages:
- name: lint
if: (type = pull_request OR (tag IS blank AND branch = master AND type != pull_request)) AND commit_message !~ /^Apply translations in.*/
# note: new tx integrations have commits that does not comply the [ci skip], hence pattern condition
- name: test
if: (type = pull_request OR (tag IS blank AND branch = master AND commit_message !~ /^Publish$/ AND type != pull_request)) AND commit_message !~ /^Apply translations in.*/
- name: deploy
if: branch = master AND commit_message =~ /^Publish$/
jobs:
include:
- stage: lint
script: npx lerna run lint
- &test-job
stage: test
name: React components
script: npx lerna run test:unit --stream --no-prefix --since --scope $PACKAGE_NAME
after_script: yarn codecov
env: PACKAGE_NAME=@coorpacademy/components
- <<: *test-job
name: App review
env: PACKAGE_NAME=@coorpacademy/app-review
- <<: *test-job
name: Review services
env: PACKAGE_NAME=@coorpacademy/review-services
- <<: *test-job
name: Review services mocks
env: PACKAGE_NAME=@coorpacademy/review-services-mocks
- <<: *test-job
name: Player store
env: PACKAGE_NAME=@coorpacademy/player-store
- <<: *test-job
name: Player services
env: PACKAGE_NAME=@coorpacademy/player-services
- <<: *test-job
name: Player web
env: PACKAGE_NAME=@coorpacademy/player-web
- <<: *test-job
name: Progression engine
env: PACKAGE_NAME=@coorpacademy/progression-engine
- <<: *test-job
name: History
env: PACKAGE_NAME=@coorpacademy/history
- <<: *test-job
name: Nova icons
env: PACKAGE_NAME=@coorpacademy/nova-icons
- <<: *test-job
name: Redux history
env: PACKAGE_NAME=@coorpacademy/redux-history
- <<: *test-job
name: Redux router
env: PACKAGE_NAME=@coorpacademy/redux-router
- <<: *test-job
name: Redux task
env: PACKAGE_NAME=@coorpacademy/redux-task
- <<: *test-job
name: Translate
env: PACKAGE_NAME=@coorpacademy/translate
- <<: *test-job
name: Angular adapter
env: PACKAGE_NAME=@coorpacademy/react-adapter-angular
- <<: *test-job
name: Dust adapter
env: PACKAGE_NAME=@coorpacademy/react-adapter-dust
- <<: *test-job
name: React Native Animation
env: PACKAGE_NAME=@coorpacademy/react-native-animation
- <<: *test-job
name: Css Module Require Hook
env: PACKAGE_NAME=@coorpacademy/css-modules-require-hook
- <<: *test-job
name: Webpack Config
env: PACKAGE_NAME=@coorpacademy/webpack-config
- stage: deploy
name: Publish on github pages
script: npm run static --production
deploy:
provider: pages
skip_cleanup: true
github_token: $GH_TOKEN
local_dir: static
- stage: deploy
name: Update node
before_script: git checkout master
script: npm run update -- --token $GH_TOKEN upgrade
- stage: deploy
name: Trigger dependant-builds
script: skip
deploy:
provider: script
skip_cleanup: true
script: scripts/trigger-dependent-builds.sh