diff --git a/.scss-lint.yml b/.scss-lint.yml index 89280ce82..ea6f1306e 100644 --- a/.scss-lint.yml +++ b/.scss-lint.yml @@ -2,7 +2,8 @@ scss_files: - 'spec/dummy/app/assets/stylesheets/**/*.scss' - +exclude: + - 'spec/dummy/app/assets/stylesheets/application.css' linters: # BangFormat: # enabled: true diff --git a/.travis.yml b/.travis.yml index 19ebdfe69..70e120c30 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,31 +1,49 @@ +sudo: required + language: ruby + rvm: -- 2.2.2 + - 2.2.3 + +services: + - docker gemfile: -- spec/dummy/Gemfile + - spec/dummy/Gemfile env: - - export RAILS_ENV=test + - export RAILS_ENV=test + +before_install: + - sudo apt-get update + - curl -L https://github.com/docker/compose/releases/download/1.4.0/docker-compose-`uname -s`-`uname -m` > docker-compose + - chmod +x docker-compose + - sudo mv docker-compose /usr/local/bin + - docker-compose build lint + - apt-get install -y xserver-common libgl1-mesa-glx libxfont1 libxshmfence1 + - curl -O http://http.us.debian.org/debian/pool/main/x/xorg-server/xvfb_1.16.4-1_amd64.deb + - dpkg -i xvfb_1.16.4-1_amd64.deb + - apt-get install -y firefox firefox-locale-en install: -- rm -rf ~/.nvm && git clone https://github.com/creationix/nvm.git ~/.nvm && (cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`) && source ~/.nvm/nvm.sh && nvm install 4.2.0 -- npm install -g npm -- bundle install -- cd spec/dummy/client && npm install -- $(npm bin)/webpack --config webpack.server.js -- $(npm bin)/webpack --config webpack.client.js -- cd ../../dummy-react-013/client && npm install -- $(npm bin)/webpack --config webpack.server.js -- $(npm bin)/webpack --config webpack.client.js + - rm -rf ~/.nvm && git clone https://github.com/creationix/nvm.git ~/.nvm && (cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`) && source ~/.nvm/nvm.sh && nvm install 4.2.0 + - npm install -g npm + - bundle install + - cd spec/dummy/client && npm install + - $(npm bin)/webpack --config webpack.server.js + - $(npm bin)/webpack --config webpack.client.js + - cd ../../dummy-react-013/client && npm install + - $(npm bin)/webpack --config webpack.server.js + - $(npm bin)/webpack --config webpack.client.js before_script: -- cd ../../ -- export DISPLAY=:99.0 -- sh -e /etc/init.d/xvfb start + - cd ../../ + - export DISPLAY=:99 + - sh -e Xvfb :99 -screen 0 1600x1200x16 script: -- rake + - rake docker + - rake notifications: slack: diff --git a/Dockerfile b/Dockerfile index 98b18c607..d45151bc7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,15 +1 @@ -FROM ruby:2.2.3 -MAINTAINER Dylan Grafmyre - -RUN mkdir -p /app -WORKDIR /app/ -# Setup container for linting with ruby and npm -RUN gem install rubocop ruby-lint scss_lint -RUN curl --silent --location https://deb.nodesource.com/setup_0.12 | bash - -RUN apt-get install -y nodejs -RUN npm install -g eslint \ - eslint-config-airbnb \ - eslint-plugin-react \ - babel-eslint \ - jscs -RUN gem install coveralls +FROM dylangrafmyre/docker-lint diff --git a/spec/dummy-react-013/config/routes.rb b/spec/dummy-react-013/config/routes.rb index 9d359bc6e..730f25f47 100644 --- a/spec/dummy-react-013/config/routes.rb +++ b/spec/dummy-react-013/config/routes.rb @@ -3,7 +3,7 @@ # See how all your routes lay out with "rake routes". # You can have the root of your site routed with "root" - root 'pages#index' + root "pages#index" get "client_side_hello_world" => "pages#client_side_hello_world" get "server_side_hello_world" => "pages#server_side_hello_world" diff --git a/spec/dummy/config/routes.rb b/spec/dummy/config/routes.rb index 9d359bc6e..730f25f47 100644 --- a/spec/dummy/config/routes.rb +++ b/spec/dummy/config/routes.rb @@ -3,7 +3,7 @@ # See how all your routes lay out with "rake routes". # You can have the root of your site routed with "root" - root 'pages#index' + root "pages#index" get "client_side_hello_world" => "pages#client_side_hello_world" get "server_side_hello_world" => "pages#server_side_hello_world"