belighted / bennett Goto Github PK
View Code? Open in Web Editor NEWBennett is a continuous integration server aimed at Ruby on Rails applications and Git
License: MIT License
Bennett is a continuous integration server aimed at Ruby on Rails applications and Git
License: MIT License
we should show at least some information if a login fails, right now there is no information (password wrong) at all.
what do you think?
and not wait for auto refresh
Feature branches are extremely painful to test with the current system, as you need to create a new Bennett project for each branch.
The "branch" field should be replaced by checkboxes of all branches (probably 2-steps creation because we need to fetch).
Then I guess we can add a "branch" field to Build and checkout accordingly.
The design doesn't adapt as expected when accessing from a phone
I have a new Rails project using ruby 2.0 which is defined in the Gemfile. On our bennett machine we have RVM installed with 1.9.3 (old projects) and also now 2.0.0 for new projects. But I think because bennett is running under 1.9.3 the shell commands it runs dont properly switch under RVM to the correct version. As a result, we get:
Your Ruby version is 1.9.3, but your Gemfile specified 2.0.0
for any build step we add (e.g. bundle exec .... or rake spec for example).
Any ideas on how we might get this to work?
One of my tasks seems to have fallen over, yet that command hasn't failed. I am unable to request a new build as it just gets queued and there is no way to stop the current build or delete it from the system.
Ive tried starting and stopping bennett, but that also doesn't seem to help.
(Im running the latest and greatest 4ba8b9d as I needed to be able to build a branch other than master )
There is a Javascript error:
Uncaught ReferenceError: options is not defined
For now all commands are considered test commands, which implies 2 things:
I would like to be able to add custom commands in a way designed for it, and not as tests which is really a workaround at this point.
Several things should be improved
Either we make the dependency on Redis stronger and block everything if Redis is down (which I guess would make sense), or we rescue those errors and add some worker or something to find what need to be re-enqueued when Redis restarts
The git hooks don't seem to work. To investigate.
It would be nice to have stats for each project of pass/fail ratio, avg time per task and stuff
I can't see the e-mails of the admins, so I can't know who I'm adding
There should be more margin on the right so the feedback button doesn't come over the content
It would be nice for some projects (e.g. open-source ones) to make the results publicly available to anyone, so all contributors can easily see the current status without having an account on the owner's server.
If I set up a project to use a branch other than master I get an git error in resque.
I clone my project to ~bob/builds/ using:
git clone
then I configure my project as:
Name:
Dir: builds/
Branch:
after I configure a build command and hit "request a build" Resque throws me this error:
Worker :585 on BUILDER FOR at just now
Class Builder
Arguments 25
Exception Git::GitExecuteError
Error git merge "-m" "origin pull" "master" 2>&1:fatal: 'master' does not point to a commit
/usr/local/rvm/gems/ruby-1.9.3-p194/gems/git-1.2.5/lib/git/lib.rb:700:in command' /usr/local/rvm/gems/ruby-1.9.3-p194/gems/git-1.2.5/lib/git/lib.rb:506:in
merge'
/usr/local/rvm/gems/ruby-1.9.3-p194/gems/git-1.2.5/lib/git/base.rb:314:in merge' /usr/local/rvm/gems/ruby-1.9.3-p194/gems/git-1.2.5/lib/git/base.rb:325:in
pull'
/home/bob/app/models/build.rb:58:in update_commit!' /home/bob/app/models/build.rb:63:in
build!'
/home/bob/app/workers/builder.rb:12:in `perform'
Alert messages appear as regular text
Some deprecated config options have been completely removed from redis.
we should comment out :
-vm-enabled no
As Bennett is targeted to Ruby on Rails projects, commands are usually the same, it would be nice to have some sort of templates.
I can think of 2 commands which will almost always be present:
Then the actual tests will be a variant of
It could also give users ideas on what else they can do, for example we added this to one of our projects to automatically deploy to staging if all tests pass:
https://bennett.uservoice.com/forums/161040-general/suggestions/2831944-suggest-default-commands
Where: on the project page, the builds table.
When: when you add a command to the build sequence (e.g. add a call to cucumber), while some builds already exist (having been run without that extra command).
What: The fact that there is a new command adds a column to the table. For the builds that were run before the command was added, the delete button is now on the penultimate column, not the last as they should be.
The application keeps defaulting to the subdomain name rather than the full host name when sending email and on the 'Back to the Dashboard' button. This also happens when telling the application to enforce ssl. This is happening when the HOST in the production.rb environment is set to subdomain.domain.com. I have been trying to find in the code where the 'root_url' is being defined. I am fairly new to rails development and support and we really like the simplicity of Bennett and as my ruby/rails skills get deeper I would like to help contribute functionality to the project. Is there somewhere to set the root URL or get it to pull the FQDN? I have bennett being proxied back to from nginx so I can use HTTPS and the urls that are defaulting to the subdomain are also defaulting to http rather than https
The new footer links are currently set to root_url. Change this into something useful or remove them.
Refactor CanCan ability.rb once the current version is fully tested
When a project is building, it would be nice to have the latest build result next to the spinner so we have some info even if it is old
The "New project" page should accept a git url as well as a folder, so Bennett does the initial git clone
and we don't need to ssh and do it manually
Controller specs for abilities
As a user, I'm not allowed to see this section.
Maybe switch to a "bennett default address" and mention in the README that the address should be configured.
Autorefresh of the "Build results" does not work.
http://cl.ly/0W2a3p131a3h2Q3K2w3S
too little contrast
On one project, builds never complete, there is no log, and no way to stop it. I have no idea why
I can't compile assets on current master, it looks to be a bug with bootstrap-sass :
Expected a color. Got: transparent
(in /home/raphael/sites/ci.imagineapp.com/bennett/app/assets/stylesheets/application.css.sass)
/var/lib/gems/1.9.1/gems/bootstrap-sass-2.2.1.1/vendor/assets/stylesheets/bootstrap/_mixins.scss:457:in `gradient-striped'
I have commented on the issue on bootstrap-sass :
Maybe with a light background or thicker borders, so that you immediately see it's a special column and not one of the test results
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.