2013-02-07 14:43:07 -05:00
|
|
|
language: ruby
|
2014-11-06 20:03:08 -05:00
|
|
|
|
2018-05-23 22:46:41 -04:00
|
|
|
branches:
|
|
|
|
only:
|
|
|
|
- master
|
2018-05-23 22:48:51 -04:00
|
|
|
- beta
|
|
|
|
- stable
|
2018-05-23 22:46:41 -04:00
|
|
|
|
2014-10-28 18:48:57 -04:00
|
|
|
env:
|
|
|
|
global:
|
2018-06-25 19:48:57 -04:00
|
|
|
- TRAVIS_NODE_VERSION="10"
|
2014-10-28 18:48:57 -04:00
|
|
|
- DISCOURSE_HOSTNAME=www.example.com
|
2018-05-25 00:39:52 -04:00
|
|
|
- RUBY_GLOBAL_METHOD_CACHE_SIZE=131072
|
2014-10-28 18:48:57 -04:00
|
|
|
matrix:
|
2017-08-18 00:23:29 -04:00
|
|
|
- "RAILS_MASTER=0 QUNIT_RUN=0 RUN_LINT=0"
|
|
|
|
- "RAILS_MASTER=0 QUNIT_RUN=1 RUN_LINT=0"
|
|
|
|
- "RAILS_MASTER=0 QUNIT_RUN=0 RUN_LINT=1"
|
2014-10-28 18:48:57 -04:00
|
|
|
|
2015-03-31 12:58:56 -04:00
|
|
|
addons:
|
2017-12-14 21:15:04 -05:00
|
|
|
chrome: stable
|
2018-05-25 01:46:28 -04:00
|
|
|
postgresql: 9.6
|
2015-08-14 04:52:33 -04:00
|
|
|
apt:
|
2018-05-30 01:01:12 -04:00
|
|
|
update: true
|
2015-08-14 04:52:33 -04:00
|
|
|
packages:
|
|
|
|
- gifsicle
|
|
|
|
- jpegoptim
|
|
|
|
- optipng
|
|
|
|
- jhead
|
2015-03-31 12:58:56 -04:00
|
|
|
|
2014-10-28 18:48:57 -04:00
|
|
|
matrix:
|
|
|
|
fast_finish: true
|
2018-08-01 04:46:57 -04:00
|
|
|
exclude:
|
|
|
|
- rvm: 2.4.4
|
|
|
|
env: "RAILS_MASTER=0 QUNIT_RUN=0 RUN_LINT=1"
|
2014-10-28 18:48:57 -04:00
|
|
|
|
2013-02-07 14:43:07 -05:00
|
|
|
rvm:
|
2018-05-21 00:31:30 -04:00
|
|
|
- 2.5.1
|
|
|
|
- 2.4.4
|
2014-11-06 20:03:08 -05:00
|
|
|
|
|
|
|
services:
|
|
|
|
- redis-server
|
|
|
|
|
2016-05-22 22:04:44 -04:00
|
|
|
sudo: required
|
2018-06-25 19:48:57 -04:00
|
|
|
dist: trusty
|
2014-11-06 20:03:08 -05:00
|
|
|
|
2015-08-16 13:05:57 -04:00
|
|
|
cache:
|
2018-05-30 00:20:31 -04:00
|
|
|
apt: true
|
2017-06-06 21:57:48 -04:00
|
|
|
yarn: true
|
2015-08-16 13:05:57 -04:00
|
|
|
directories:
|
|
|
|
- vendor/bundle
|
2014-11-06 20:03:08 -05:00
|
|
|
|
2014-03-08 01:14:29 -05:00
|
|
|
before_install:
|
2018-06-26 03:56:44 -04:00
|
|
|
- nvm install node
|
|
|
|
- node --version
|
2017-08-18 00:23:29 -04:00
|
|
|
- gem install bundler
|
2016-08-18 07:15:39 -04:00
|
|
|
- git clone --depth=1 https://github.com/discourse/discourse-backup-uploads-to-s3.git plugins/discourse-backup-uploads-to-s3
|
2016-08-19 04:54:33 -04:00
|
|
|
- git clone --depth=1 https://github.com/discourse/discourse-spoiler-alert.git plugins/discourse-spoiler-alert
|
2016-11-23 01:23:12 -05:00
|
|
|
- git clone --depth=1 https://github.com/discourse/discourse-cakeday.git plugins/discourse-cakeday
|
2016-12-30 01:17:36 -05:00
|
|
|
- git clone --depth=1 https://github.com/discourse/discourse-canned-replies.git plugins/discourse-canned-replies
|
2017-09-03 22:47:25 -04:00
|
|
|
- git clone --depth=1 https://github.com/discourse/discourse-chat-integration.git plugins/discourse-chat-integration
|
2017-11-30 22:20:56 -05:00
|
|
|
- git clone --depth=1 https://github.com/discourse/discourse-assign.git plugins/discourse-assign
|
2017-12-21 02:46:57 -05:00
|
|
|
- git clone --depth=1 https://github.com/discourse/discourse-patreon.git plugins/discourse-patreon
|
2018-04-22 21:26:33 -04:00
|
|
|
- git clone --depth=1 https://github.com/discourse/discourse-staff-notes.git plugins/discourse-staff-notes
|
2018-06-01 11:42:47 -04:00
|
|
|
- git clone --depth=1 https://github.com/discourse/discourse-group-tracker
|
2017-12-13 23:45:55 -05:00
|
|
|
- export PATH=$HOME/.yarn/bin:$PATH
|
2014-11-06 20:03:08 -05:00
|
|
|
|
2015-04-28 22:42:37 -04:00
|
|
|
install:
|
2018-05-29 23:53:00 -04:00
|
|
|
- bash -c "if [ '$RAILS_MASTER' == '1' ]; then bundle update --retry=3 --jobs=3 arel rails seed-fu > /dev/null; fi"
|
|
|
|
- bash -c "if [ '$RAILS_MASTER' == '0' ]; then bundle install --without development --deployment --retry=3 --jobs=3 > /dev/null; fi"
|
2018-08-28 03:13:35 -04:00
|
|
|
- bash -c "if [ '$QUNIT_RUN' == '1' ] || [ '$RUN_LINT' == '1' ]; then yarn install --dev > /dev/null; fi"
|
2018-05-30 02:05:16 -04:00
|
|
|
- bash -c "if [ '$RUN_LINT' != '1' ]; then bundle exec rake db:create db:migrate > /dev/null; fi"
|
2014-11-06 20:03:08 -05:00
|
|
|
|
2017-05-15 13:25:55 -04:00
|
|
|
script:
|
2017-08-18 00:23:29 -04:00
|
|
|
- |
|
|
|
|
bash -c "
|
|
|
|
if [ '$RUN_LINT' == '1' ]; then
|
2018-07-24 18:10:02 -04:00
|
|
|
bundle exec rubocop --parallel && \
|
2018-07-24 10:12:15 -04:00
|
|
|
bundle exec danger && \
|
2018-08-28 03:13:35 -04:00
|
|
|
yarn exec eslint --ext .es6 app/assets/javascripts && \
|
|
|
|
yarn exec eslint --ext .es6 test/javascripts && \
|
|
|
|
yarn exec eslint --ext .es6 plugins/**/assets/javascripts && \
|
|
|
|
yarn exec eslint --ext .es6 plugins/**/test/javascripts && \
|
|
|
|
yarn exec eslint app/assets/javascripts test/javascripts
|
2017-08-18 00:23:29 -04:00
|
|
|
else
|
|
|
|
if [ '$QUNIT_RUN' == '1' ]; then
|
2018-03-19 22:24:44 -04:00
|
|
|
bundle exec rake qunit:test['500000'] && \
|
2018-03-08 21:37:00 -05:00
|
|
|
bundle exec rake plugin:qunit
|
2017-08-18 00:23:29 -04:00
|
|
|
else
|
|
|
|
bundle exec rspec && bundle exec rake plugin:spec
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
"
|