Skip to content
This repository has been archived by the owner on Jan 26, 2019. It is now read-only.
/ bear Public archive

Bear is BigTuna CI evolved (See readme, why development has stopped)

Notifications You must be signed in to change notification settings

leifcr/bear

Repository files navigation

Development has stopped

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.

About

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.

Features:

  • 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).

Why rename the project and drop the fork?

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.

Users and projects

  • 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

Project output files

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)

Project log files

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

Skipping a build

Add [ci skip] in your commit message, and Bear CI will skip that build. same as Travis-ci does.

Capybara

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.

Future plans

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

Deployment

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.

History

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.

Test Status

License

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.

About

Bear is BigTuna CI evolved (See readme, why development has stopped)

Resources

Stars

Watchers

Forks

Packages

No packages published