Due to the number of really great CI system that has come to life over the last months, I do not see a reason to continue development on this project. If you use it and find a bug, or want to take on the project, feel free to send me a message.
If you need a CI, go for gitlab.com, travis-ci, circle-ci, codeship.io or jenkins. All options have pros and cons.
Bear is a continuous integration software built on top of the Rails 3 framework. If you can do it through command line, Bear can handle it.
- Authentication through Devise
- Projects with multiple configurations/scenarios
- Configurations can have several steps/command lines to run
- RSS/Atom feed to get your latest build status
I’m currently running one instance on a VPS node, and it works quite well for Ruby (Rails/Sinatra), php, and node.js projects. As well as projects using QUnit tests in browsers (Running through selenium or poltergeist).
It wasn’t longer possible to do a pull request to the original project without breaking stuff for people. It is therefore better to continue this project as a separate project instead of a fork of BigTuna.
- A project can have many users and a user can have many projects.
- Any user can see all projects
- Only a user assigned on a project can edit/update/build/remove the project
If your project has any files that is passed on during test, be sure to setup the output directory on your project, so it’s properly symlinked through the public folder.
NOTE: This requires your nginx/passenger etc to handle the html/png/txt files as they are not served by the app itself. (If your setup is correct, any static html/png files should be served before hitting the Bear app)
Same as for project output. Working on some sort of ANSI/HTML conversion with colours. Please do a pull-request if you know how to do this
Add [ci skip] in your commit message, and Bear CI will skip that build. same as Travis-ci does.
If you use either capybara-screenshot or call page.save_page(“something.html”), you can view the files within the build on your Bear CI server. It requires you to setup Capybara.save_and_open_page_path to the same as you setup as project output folder.
It’s up to what people want, but here are some thoughts:
- Improve Relation between projects/users. (Roles for users on site/projects)
- Removal of unused hooks, and perhaps implement new ones
- Multiple post hooks
Setup your database.yml
Copy bear.yml.sample to bear.yml and setup the parameters in the file.
See deploy.rb.example for a capistrano deployment example.
Deployment has been tested with nginx/puma and nginx/unicorn enviorment. Passenger hasn’t been tested, but it should work.
Bear evolved from BigTuna, as I needed a CI, and I wanted to run it on my own box
Bear is maintained by Leif Ringstad
BigTuna was originally created by Michał Bugno and Antek Piechnik. A lot of have kindly contributed to make it a better project.
Bear: Copyright (c) 2012 Leif Ringstad BigTuna: Copyright (c) 2010 Michal Bugno, Antek Piechnik
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.