Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
0zzyRocks
Jul 10, 2001

Lord of the broken bong

syphon posted:

The idea is to treat all of your configs as code (which basically means put them in source control and run them through whatever "build/deploy/test" processes are applicable). There are various "Configuration Management" tools (chef, puppet, ansible, salt) that support and encourage these practices.

I've been using Chef for a while now, and after you get past the learning curve it's really good. It's just a lot to take in at once... you have half a dozen command line tools, 3 available provisioners, cookbooks, recipes, attributes, environments, roles, nodes, files, templates, resources, LWRPs, etc. etc. etc. Can be pretty overwhelming, especially if you don't know Ruby either. But, once you get into it, learn some of the best practices, write a couple cookbooks, and frequent the IRC channel you're set. I'm helping the company I work at now design and implement webapp servers (LNMP stack mainly) managed by Chef, to begin the process of migrating from hand-managed servers to config-VCS-tested bliss. It's also a GREAT way to segway into contributing to open source, since everything Chef is on GitHub.

I'm even using it for side projects because, in concert with Vagrant, it makes setting up a local development instance easy as cake when you need it to match existing production servers.

Adbot
ADBOT LOVES YOU

0zzyRocks
Jul 10, 2001

Lord of the broken bong

Pollyanna posted:

I've taken it upon myself to create a VM for our Rails project, because our current config setup and new engineer onboarding is a mess...

To that end, I'm puzzling together Vagrant and Chef to make an Ubuntu-Rails-Postgres VM, where all you need to do is install Vagrant and VirtualBox, clone the repo, run vagrant up --provision, wait, and have a VM you can SSH into and run the project in. No figuring out how to install Postgres on each new machine, no moronic database sharing, no inability to do dev work if you're on a Windows machine, nothin'.

I basically did exactly this at my current job for a CentOS/PHP/Magento/Percona VM, except we use Packer to build out versioned boxes (provisioned with Chef recipes and some cleanup shell scripts) because the initial Chef learning curve is pretty high and people are lazy. We eventually want to get Docker involved to build out layers which we can apply to CI environments in the future... but I haven't even looked at docker yet.

Chef has a nice IRC channel where lots of devs hang out, trust me you'll end up needing it.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply