.travis.yml 2.2 KB
Newer Older
1 2
sudo: required
dist: trusty
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
3
language: node_js
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
4

Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
5
node_js:
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
6
  - "7"
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
7

8 9
os:
  - linux
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
10
  - osx
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
11

Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
12 13 14 15
addons:
  apt:
    packages:
      - xvfb
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
16
      - shellcheck
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
17

18 19 20
cache:
  directories:
    - node_modules
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
21

Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
22
before_install:
23
  - npm config set progress=false
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
24

25
install:
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
26
  - if [ "$TRAVIS_OS_NAME" == 'osx' ]; then brew update; brew cleanup; brew cask cleanup; fi
27
  - if [ "$TRAVIS_OS_NAME" == 'osx' ]; then brew uninstall --force brew-cask; brew update; fi
28
  - if [ "$TRAVIS_OS_NAME" == 'osx' ]; then brew cask install --force google-chrome; fi
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
29
  - if [ "$TRAVIS_OS_NAME" == 'osx' ]; then brew install shellcheck; fi
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
30

31
  - if [ "$TRAVIS_OS_NAME" == 'linux' ]; then export DISPLAY=':99.0'; fi
32 33
  - if [ "$TRAVIS_OS_NAME" == 'linux' ]; then sh -e /etc/init.d/xvfb start; fi

Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
34
  # - if [ "$TRAVIS_OS_NAME" == 'linux' ]; then sudo apt-get update; fi
35
  # - if [ "$TRAVIS_OS_NAME" == 'linux' ]; then sudo apt-get install -y shellcheck; fi
36 37
  - if [ "$TRAVIS_OS_NAME" == 'linux' ]; then wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb; fi
  - if [ "$TRAVIS_OS_NAME" == 'linux' ]; then sudo dpkg -i google-chrome*.deb; fi
38

39
  - npm --progress false --loglevel warn install
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
40

Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
41
script:
42 43 44
  - echo $TRAVIS_OS_NAME
  - node --version
  - npm --version
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
45
  - shellcheck bin/*.sh
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
46
  - npm run lint
47
  - npm run dist
48 49 50
  - if [ "$TRAVIS_OS_NAME" == 'linux' ];  then WECHATY_LOG=silly    npm run test:phantomjs;   fi
  - if [ "$TRAVIS_OS_NAME" == 'linux' ];  then WECHATY_LOG=silly    npm run test:chrome;      fi
  - if [ "$TRAVIS_OS_NAME" == 'osx' ];    then WECHATY_LOG=verbose  npm run nycava;           fi
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
51

52 53
notifications:
  webhooks:
54
    urls:
55
      - https://webhooks.gitter.im/e/41a19fbf1d54a04e5217
56
    on_success: always  # options: [always|never|change] default: always
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
57
    on_failure: always  # options: [always|never|change] default: always
58
    on_start: never     # options: [always|never|change] default: always
59

60 61 62 63 64
notifications:
  email:
    on_success: change
    on_failure: change

Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
65
after_success:
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
66
  - if [ "$TRAVIS_OS_NAME" == 'osx' ]; then npm run coverage; fi
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
67

68
before_deploy:
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
69
  - npm version
70
  - npm run dist
71

Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
72 73
deploy:
  provider: npm
74
  email: zixia@zixia.net
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
75
  api_key: "$NPM_TOKEN"
Huan (李卓桓)'s avatar
Huan (李卓桓) 已提交
76 77
  skip_cleanup: true