Left: | ||
Right: |
LEFT | RIGHT |
---|---|
1 # This file is part of Adblock Plus <https://adblockplus.org/>, | 1 # This file is part of Adblock Plus <https://adblockplus.org/>, |
2 # Copyright (C) 2006-present eyeo GmbH | 2 # Copyright (C) 2006-present eyeo GmbH |
3 # | 3 # |
4 # Adblock Plus is free software: you can redistribute it and/or modify | 4 # Adblock Plus is free software: you can redistribute it and/or modify |
5 # it under the terms of the GNU General Public License version 3 as | 5 # it under the terms of the GNU General Public License version 3 as |
6 # published by the Free Software Foundation. | 6 # published by the Free Software Foundation. |
7 # | 7 # |
8 # Adblock Plus is distributed in the hope that it will be useful, | 8 # Adblock Plus is distributed in the hope that it will be useful, |
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of | 9 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
11 # GNU General Public License for more details. | 11 # GNU General Public License for more details. |
12 # | 12 # |
13 # You should have received a copy of the GNU General Public License | 13 # You should have received a copy of the GNU General Public License |
14 # along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. | 14 # along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. |
15 | 15 |
16 stages: | 16 stages: |
17 - prepare | 17 - prepare |
18 - test | 18 - test |
19 | 19 |
20 prepare-dependencies: | 20 .dependencies: |
21 stage: prepare | 21 script: &dependencies |
22 script: | |
23 - mkdir -p .git/info | 22 - mkdir -p .git/info |
24 - pip install --user Jinja2 cryptography | 23 - pip install --user Jinja2 cryptography |
25 - python ensure_dependencies.py | 24 - python ensure_dependencies.py |
26 - npm install | 25 - "[ -d node_modules ] || npm install" |
27 cache: | |
28 key: cache_$CI_COMMIT_SHA | |
29 paths: | |
30 - ./ | |
31 policy: push | |
32 | |
33 | 26 |
34 .test_template: &test_template | 27 .test_template: &test_template |
35 stage: test | 28 stage: test |
36 before_script: | 29 before_script: *dependencies |
37 - python ensure_dependencies.py | |
Sebastian Noack
2018/09/03 19:37:35
FWIW, the lint job below doesn't require ensure_de
tlucas
2018/09/03 21:35:53
We'd need to copy this whole template into "lint"
| |
38 - npm install | |
Sebastian Noack
2018/09/03 19:37:35
Perhaps we can check if node_modules already exist
tlucas
2018/09/03 21:35:53
I was thinking about "what if node_modules was cre
| |
39 cache: | 30 cache: |
40 key: cache_$CI_COMMIT_SHA | 31 key: cache_$CI_COMMIT_SHA |
41 paths: | 32 paths: |
42 - ./ | 33 - ./ |
43 policy: pull | 34 policy: pull |
44 | 35 |
45 | 36 |
37 prepare-dependencies: | |
38 stage: prepare | |
39 script: *dependencies | |
40 cache: | |
41 key: cache_$CI_COMMIT_SHA | |
42 paths: | |
43 - ./ | |
44 policy: push | |
45 | |
46 tests:gecko: | 46 tests:gecko: |
47 <<: *test_template | 47 <<: *test_template |
48 script: | 48 script: |
49 - npm test -- -g gecko | 49 - npm run test-only -- -g gecko |
50 | 50 |
51 tests:chrome: | 51 tests:chrome: |
52 <<: *test_template | 52 <<: *test_template |
53 script: | 53 script: |
54 - xvfb-run npm test -- -g chrome | 54 - xvfb-run npm run test-only -- -g chrome |
55 | 55 |
56 lint: | 56 lint: |
57 <<: *test_template | 57 <<: *test_template |
58 script: | 58 script: |
59 - npm run lint | 59 - npm run lint |
LEFT | RIGHT |