A devilishly handsome, mustache sporting, continuous integration server
Ruby JavaScript
Pull request Compare This branch is 1 commit behind kb:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app
config
db
doc
lib
public
script
spec
vendor/plugins
.gitignore
.rvmrc
Gemfile
Gemfile.lock
README.md
Rakefile
config.ru

README.md

Magnum CI

A simple Continuous Integration server built on Rails and Resque for git controlled projects.

Version 0.5.0

Running in Development

  1. Start Redis Server

    $ redis-server /usr/local/etc/redis.conf (this is where I have it on my MBP, it may be different for you)

  2. Start Resque Workers

    $ rake workers:magnum_ci

  3. Start Rails Server

    $ rails s

Readme Driven Development

A strike means its done!

  • Add project model
  • Add project controller
  • Add project views
  • Add cucumber
  • Add build model
  • Add build controller
  • Create build show page
  • Add Commiter name
  • Write some cucumber stories for project
  • Add build cleanup functionality (Delete old builds)
  • Campfire Integration
  • Add ability to delete Projects
  • Add Manual Build button for projects
  • Add project name to build show page
  • Add commit message for each build
  • Past build statues on the root page
  • Add bundler option to project setup. If yes, export BUNDLE_GEMFILE programattically.
  • Add HTTP basic auth to the edit page
  • Remove cucumber
  • Added rspec tests for view/model/controller/helper
  • Fix Magnum rendered HTML in output logs
  • Separate status area with order of queued builds
  • Ask Fisher to restyle forms
  • Submitted time, and finished time. and/or elapsed time
  • Delta timer notifier for when builds go over average build time
  • Allow for dynamic build directories
  • Build number per project
  • Branch integration in build request
  • Create writeup on Ubuntu setup
  • Figure out a way to dynamically set the URL to the build for campfire

I'm sure there's more stuff. Will update.

Versioning

This project uses Semantic Versioning (http://semver.org/)

Contributing

All contributions are welcome. Just fork the code, ensure your changes include a test, ensure all the current tests pass and send a pull request.

Acknowledgments

Created by Kyle Bolton

Additional contributors

  • Andrew Vargo
  • Jeremy Durham

Copyright (c) 2011 Kyle Bolton, released under the MIT license