使用Gitlab CI脚本运行rails服务器?

时间:2016-06-20 17:40:36

标签: ruby-on-rails automation continuous-integration capybara gitlab-ci

所以我运行了Gitlab CI,它正在构建项目并且我试图对它们运行我的capybara / poltergeist集成测试,但我意识到当CI运行rspec命令来执行这些时......服务器不是'实际上正在运行。

那么我的CI.yaml文件应该放在哪个“Bundle exec rails s”中?

就在rspec命令之前?

作为参考,这是我的CI文件。

before_script:
  - rbenv install --skip-existing `cat .ruby-version`
  - bundle install
  - RAILS_ENV=test bundle exec rake db:drop db:create db:migrate db:seed

rspec:
  script:
    - bundle exec rspec . --tag type:feature
  tags:
    - ruby

另外一个侧面问题:当构建完成并且测试完成时......我将如何关闭正在运行的Rails服务器。或者它会自动关闭它吗?

1 个答案:

答案 0 :(得分:1)

通常,Capybara会启动自己的应用程序实例,并在完成后将其关闭,您只需确保将Capybara.server_host设置为可绑定的接口,并在必要时调整Capybara.app_host。 / p>