Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Vagrant based development environment guide #4

Open
lengarvey opened this issue Oct 20, 2013 · 3 comments
Open

Vagrant based development environment guide #4

lengarvey opened this issue Oct 20, 2013 · 3 comments

Comments

@lengarvey
Copy link
Contributor

I want to have a vagrant-based development environment guide so that people who attend installfest can potentially choose a more professional development environment.

This may eventually become the default unless railsinstaller/railsinstaller-nix#20 can be resolved.

@ralovely
Copy link
Contributor

ralovely commented Nov 4, 2013

I follow up on our last conversation.
I built a vagrant box with the last stable debian
It's just shy of 310 Mo.

If you want to play with it, you can find it here:
https://s3-ap-southeast-1.amazonaws.com/ralovely.com-downloads/railsinstallfest/rails-dev.box
I also described the config here:
https://gist.github.com/ralovely/a098ae0adf9310f0d6a3#file-config-runlist-sh
I started with a Chef recipe, so we could exchange and play with it,
but Chef cookbooks usually don't care about size: I ended up with 600+Mo boxes.
It was faster to do it by hand than to write all the cookbooks,
but a bash provisionning would be better.

A few notes:

  • No RVM: it adds 55 Mo to the box.
    It can raise an issue though: gem install will need sudo, which might be harder to explain in the guides
  • Installed Ruby is 1.9.3. There is no stable package for 2.0
  • I installed NodeJS as a JS runtime. the rubyracer gem needs python anyway, and node can do more.
  • The guides will need to tell the user to configure git (unlike the RailsInstaller path that prompts for it)
  • We could shave a few Mo:
    • I installed zsh and oh-my-zsh. Nice but not necessary. But nice. (±8Mo)
    • I installed the gems of a vanilla rails (4.0.1) app (thus preventing a bunch of downloads) (±10Mo)

A few questions raised:

  • Do we add the heroku toolbelt ?
  • Do we keep the rails gem (meaning we will need to maintain them) ?
  • Do we use RVM anyway, despite the added weight ?

Tell me if you see something else to add.
I was thinking about ImageMagick, but it is probably heavy.

cheers.

@lengarvey
Copy link
Contributor Author

I would avoid RVM but instead go with chruby and ruby-install instead.

I want to get the time to keep working on this myself, as well as test the vagrant installation process on a variety of machines.

@ralovely
Copy link
Contributor

ralovely commented Nov 6, 2013

I recreated the box with chruby and ruby-install
(I re-uploaded it: https://s3-ap-southeast-1.amazonaws.com/ralovely.com-downloads/railsinstallfest/rails-dev.box)

326 Mo with ruby 2.0, nodeJS, the gems for a new rails app, and a nice ZSH config.

I also converted the config-run into a script:
https://github.com/ralovely/vagrant-provisioning/
it might save you some time.

I won't be able to help for the test on a variety of machines, though, I only have 2 with the same config…

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants