Git Product home page Git Product logo

bennett's People

Contributors

beanieboi avatar bipthelin avatar fringley avatar systho avatar tanguygo avatar tobypinder avatar vddgil avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bennett's Issues

show errors if login fails

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?

Provide a dynamic status badge

We'll need a base image from @gogeo and to merge #21 first.

It should look something like this (from Travis):

I guess it would only be available for public projects, I don't see the point of doing this for private ones.

Support multiple branches

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.

Ruby 2.0

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?

Cant clear a stuck build

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 )

Support other commands than test commands

For now all commands are considered test commands, which implies 2 things:

  • You cannot add custom commands in case of failure
  • Custom commands in case of success are considered tests and pollute the results page

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.

https://bennett.uservoice.com/forums/161040-general/suggestions/2831949-support-other-commands-than-test-commands

Better workers management

Several things should be improved

  • request a build and invite user crash if Redis is down
  • when Redis is restarted, builds requested during downtime are never restarted

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

Fix git hook

The git hooks don't seem to work. To investigate.

Stats

It would be nice to have stats for each project of pass/fail ratio, avg time per task and stuff

Can't build a branch other than master

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:inmerge'
/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:inpull'
/home/bob/app/models/build.rb:58:in update_commit!' /home/bob/app/models/build.rb:63:inbuild!'
/home/bob/app/workers/builder.rb:12:in `perform'

Redis 2.6.16 config issues

Some deprecated config options have been completely removed from redis.
we should comment out :
-vm-enabled no

  • vm-swap-file redis.swap
  • vm-max-memory 0
  • vm-page-size 32
  • vm-pages 134217728
  • vm-max-threads 4
  • hash-max-zipmap-entries 512
  • hash-max-zipmap-value 64

Suggest default commands

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:

  • bundle install
  • bundle exec rake db:reset RAILS_ENV=test

Then the actual tests will be a variant of

  • bundle exec rake test
  • bundle exec rspec
  • bundle exec cucumber

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:

  • git tag -f tests_pass && git push --tags
  • bundle exec cap bennett deploy

https://bennett.uservoice.com/forums/161040-general/suggestions/2831944-suggest-default-commands

Visual bug: "Delete" buttons not aligned when adding a command

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.

root_url defaulting to subdomain rather than full host name

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

Correct footer link

The new footer links are currently set to root_url. Change this into something useful or remove them.

Git clone from Bennett

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

Zombie workers

On one project, builds never complete, there is no log, and no way to stop it. I have no idea why

Can't compile assets

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 :

twbs/bootstrap-sass#219

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.