boxen / our-boxen

Copy me for your team.
https://github.com/boxen/our-boxen/
MIT License
2.58k stars 883 forks source link

Change site.pp default node #796

Closed singuerinc closed 7 years ago

singuerinc commented 8 years ago

Because I develop all in Docker machines I don't want to install a bunch of node+ruby versions on my system.

I'm wondering what's the correct way of change the site.pp file without breaking Boxen any time I merge it with the upstream.

Basically I want to remove these lines:

  # node versions
  nodejs::version { '0.8': }
  nodejs::version { '0.10': }
  nodejs::version { '0.12': }

  # default ruby versions
  ruby::version { '1.9.3': }
  ruby::version { '2.0.0': }
  ruby::version { '2.1.7': }
  ruby::version { '2.2.3': }

I also want to remove dnsmasq and nginx but as they seems to be "core" modules maybe is not a good idea to remove them.

jacobbednarz commented 8 years ago

I'm wondering what's the correct way of change the site.pp file without breaking Boxen any time I merge it with the upstream.

I can see your point with wanting to strip these out and if you want to provide a pull request I'd be happy to review it. I would probably wrap this in a couple of if's and then set a sensible default in the user manifest to install by default but allow people to opt out if needed. Here is how I would approach it

# site.pp
if $::install_nodejs { 
  nodejs::version { '0.8': } 
  nodejs::version { '0.10': }
  nodejs::version { '0.12': }
}

Where $::install_nodejs is managed by a YAML compatible Puppet manifest.

I also want to remove dnsmasq and nginx but as they seems to be "core" modules maybe is not a good idea to remove them.

If you have any applications being managed/served locally using Boxen, I'd recommend leaving them. I would vote a strong :-1: on removing these as I see them as a pretty core part of the local development setup for a large portion of the user base.