spinach て何

ええと、Gitlab の travis-ci なソレが以下になっていたのでした。

$ cat lib/tasks/travis.rake 
desc "Travis run tests"
task :travis => [
  :spinach,
  :spec
]

spinach て何、って思ったらば試験なソレなのかどうなのか。

Gemfile が以下になってますね。

group :development, :test do
  gem 'rails-dev-tweaks'
  gem 'spinach-rails'
  gem "rspec-rails"
  gem "capybara"
  gem "pry"
  gem "awesome_print"
  gem "database_cleaner", ref: "f89c34300e114be99532f14c115b2799a3380ac6", git: "https://github.com/bmabey/database_cleaner.git"
  gem "launchy"
  gem 'factory_girl_rails'

  # Guard
  gem 'guard-rspec'
  gem 'guard-spinach'

features folder に云々、とあるので見てみると以下。

$ ls features 
admin  dashboard  group  profile  project  steps  support

むむむ、と言いつつ lib/tasks/gitlab/test.rake の中身を覗いてみたら同様な記述ですね。

namespace :gitlab do
  desc "GITLAB | Run both spinach and rspec"
  task :test => ['spinach', 'spec']
end

とりあえず bundle exec rake gitlab:test で試験実行できるのは承知しました。あ、これって bundle exec rake gitlab:test:spinach てのも可能なのかな。rspec で確認してみます (弱

$ bundle exec rake gitlab:test:spec

あ、駄目でした。gitlab:test はどうでしょ。

$ bundle exec rake gitlab:test

spinach な試験を kickoff しようとしたけれど abort してます。これ、test な bundler install できていないのだろうな。別場所に環境確保して試験してみよ。
つうか travis-ci で云々ってのを別途確認してみます。

travis-ci で云々

とりあえず fork 作っておきますね。以下からナニ。

で、travis-ci.org に行って云々か。My Account から repository を sync させると反映されました。ON にしといたのですが手動 build とかできないのかな。
よう分からんの、と言いつつ Getting Started 見てると .travis.yml が云々とか書いてありますね。gitlab なツリー確認してみたらファイルがある模様。

$ cat .travis.yml 
language: ruby
env:
  - DB=postgresql
  - DB=mysql
before_install:
  - sudo apt-get install libicu-dev -y
  - gem install charlock_holmes -v="0.6.9"
branches:
  only:
    - 'master'
rvm:
  - 1.9.3-p327
services:
  - mysql
  - postgresql
before_script:
  - "cp config/database.yml.$DB config/database.yml"
  - "cp config/gitlab.yml.example config/gitlab.yml"
  - "bundle exec rake db:setup RAILS_ENV=test"
  - "bundle exec rake db:seed_fu RAILS_ENV=test"
  - "sh -e /etc/init.d/xvfb start"
script: "bundle exec rake travis --trace"

む、その前に_Step two: Activate GitHub Service Hook_という項がありますね。ええと一応 travis-ci.org のわしアカウントの gitlabhq は on になってて、github の gitlabhq -> Repository Settings -> Service Hooks の travis-ci の項も on になってそげ。
で、git push で build が云々とありますがどうしたものか。branch を push してもイケたりしますかね。ちょい時間切れなのでここで止めますが、現実トウヒ対応は十分に可能性あり。(何