[katello-devel] katello-dev-box proposal

Ivan Nečas inecas at redhat.com
Thu Aug 16 08:38:54 UTC 2012


Hi,

Interesting news yesterday: Rails team published a "rails-dev-box", 
which basically provides you a way how to get a VM and turn it into 
development environment for Rails so that you can start contributing to 
it really quickly. For me, there is a message behind this: rvm, rbenv or 
bundler are not the ultimate tools for Ruby development and if it's not 
just a simple library without dependencies, you need something more. And 
this is case for Katello as well.

I don't see a reason why this couldn't be the preferred way to get an 
environment ready for Katello development. We already have the setup 
automated enough, we just need to talk about it more loudly.

What would we do:

1. create a Vagrant image to have Fedora/CentOS with preinstalled 
Katello dependencies from RPMs + yum update from nightly builds to 
always have the latest/greatest
2. tune our puppet modules to run on that after first start + make 
custom development config to use git source repo
3. publish it, blog about it
4. party :)

What it brings:

1. one OS agnostic command to have everything up and running for development
2. don't pollute you host OS with Katello dependencies, make it easier 
to start over again, if something goes wrong
3. provide the supported stack for development
4. using our katello-configure Puppet modules in development = 
continuous improvement for the Puppet modules

But what if I want to use the tools (editor, IDE) from my host machine?

  - you can set up sshfs to the virtual machine

But what if I desperately want to run Rails server on my host machine

  - nobody can stop you, the Gemfile lock is already there, with the 
versions that are used in the supported stack, you need to do some 
additional steps, but nothing is for free
  - you still have all the other dependencies encapsulated in the VM

But Ruby developers are used just to run `bundle install` and go:

   - no, Ruby developers are used to get up and running quickly
   - there is no way pure bundler will ever help you to get Katello for 
development up and running. Period.
   - having just Ruby dependencies isn't enough for development: green 
unit tests don't mean your code really works, it's just a hint you are 
on a good way

What do you think? I'm using this approach for my devel setup and it 
makes the world much better place.

-- 
Ivan




More information about the katello-devel mailing list