Live data from Hacker News

Vagrant: Create and configure portable development environments

vagrantup.com

51–60 of 80 posts

Re: Vagrant: Create and configure portable development environments

#53

We switched from hand-configured boxes and a long, "full stack local" setup document to chef + vagrant at my current company ( http://parse.ly ). Though it caused some kicking & screaming on the development team, the end result is that every developer has the same development environment, which pretty much matches our deployment environment (in Rackspace Cloud). I also just kicked off our summer intern class, and the…

How are you reloading your Python application on code changes? Are you just working inside the VM? I've tried VirtualBox shared folders and NFS, and never had any luck getting file change events to propagate from my host to the VM.

Re: Vagrant: Create and configure portable development environments

#54

We switched from hand-configured boxes and a long, "full stack local" setup document to chef + vagrant at my current company ( http://parse.ly ). Though it caused some kicking & screaming on the development team, the end result is that every developer has the same development environment, which pretty much matches our deployment environment (in Rackspace Cloud). I also just kicked off our summer intern class, and the…

How are you reloading your Python application on code changes? Are you just working inside the VM? I've tried VirtualBox shared folders and NFS, and never had any luck getting file change events to propagate from my host to the VM.

Shared folders work well for me & everyone else on me team. Perhaps you should file a ticket for your issue?

Also, if you use port forwarding for all your databases etc. then you could technically just run Python code on your host computer. Indeed, I do this myself usually -- I treat the Vagrant box more like a "deployment target" that just happens to also run the DBs I can use for local testing.

Re: Vagrant: Create and configure portable development environments

#55

We switched from hand-configured boxes and a long, "full stack local" setup document to chef + vagrant at my current company ( http://parse.ly ). Though it caused some kicking & screaming on the development team, the end result is that every developer has the same development environment, which pretty much matches our deployment environment (in Rackspace Cloud). I also just kicked off our summer intern class, and the…

How have you found Chef to be and what alternatives did you consider? We are evaluating Chef and Ansible right now.

Just curious - why is Puppet not on your shortlist?

Re: Vagrant: Create and configure portable development environments

#56

We switched from hand-configured boxes and a long, "full stack local" setup document to chef + vagrant at my current company ( http://parse.ly ). Though it caused some kicking & screaming on the development team, the end result is that every developer has the same development environment, which pretty much matches our deployment environment (in Rackspace Cloud). I also just kicked off our summer intern class, and the…

What is chef mate?

I'm replying because terms like "chef", "knife" and "recipe" sometime yield funny results on Google.

Keeping the long story short - it's a configuration management system. Have a look at http://www.opscode.com/chef/

Re: Vagrant: Create and configure portable development environments

#57

We switched from hand-configured boxes and a long, "full stack local" setup document to chef + vagrant at my current company ( http://parse.ly ). Though it caused some kicking & screaming on the development team, the end result is that every developer has the same development environment, which pretty much matches our deployment environment (in Rackspace Cloud). I also just kicked off our summer intern class, and the…

How have you found Chef to be and what alternatives did you consider? We are evaluating Chef and Ansible right now.

I'm not the OP, but:

These systems are broadly the same. If you're writing your configuration from scratch, they're all fairly pleasant, and it's mostly a matter of preference. They share most of the same concepts (although the terminology differs) and features. In my experience, their differences are primarily in feel and community.

For feel: Chef gives you Ruby pretending to be declarative. Puppet and Ansible give you something more declarative at the expense of some expressivity. Puppet has its own syntax, and Ansible shoe-horns some procedural aspects into YAML syntax. I prefer Chef here. (Chef also provides a web UI that lets you edit things, but I strongly advise against using it except for managing nodes. Everything else should be code/JSON.)

For community: With configuration management, one of the things you'll want is good community involvement. You don't want to write every cookbook/playbook/module from scratch. From what I've seen, Chef and Puppet have a large head start in this department.

That said, you should be prepared to customize the community offerings. People generally implement precisely what they need, in precisely the way they need it, and your needs will not always align. Fork all of the community offerings so you can modify them while still pulling from upstream. Managing this is decidedly difficult, but there's no better choice. It's one of the areas where git submodules would be really great, if only they were nicer to use. If you're going to use Chef, consider also using Berkshelf for managing your cookbooks.

If you do not have configuration management in place, pick one of the major ones, learn the hell out of it, and get to automating your operations. Having your infrastructure as code that you can run whenever you want, that you can review to see exactly how something is configured, is life changing. Once you get to doing it, you will never want to go back to the bad old days.

Re: Vagrant: Create and configure portable development environments

#58

I haven't done much research, but is there a way to share a running instance with others? Can I configure/setup/tinker-with an instance, suspend it and share that with someone?

Yes, you can run `vagrant package` and it'll turn it into a single file format that can be sent to other people to reuse.

Nice! Thank you!

Re: Vagrant: Create and configure portable development environments

#59
post #56

Earlier quoted context omitted.

What is chef mate?

I'm replying because terms like "chef", "knife" and "recipe" sometime yield funny results on Google. Keeping the long story short - it's a configuration management system. Have a look at http://www.opscode.com/chef/

When performing searches for chef resources, it's best to use "opscode chef".

Re: Vagrant: Create and configure portable development environments

#60
post #38

Earlier quoted context omitted.

I was approached by O'Reilly very early. I wasn't even considering writing a book prior to that. However, my experience with O'Reilly has been _fantastic_. I was never writing the book for money, I was writing it for publicity and to help push the project forward. For these reasons, O'Reilly was the clear winner. Additionally, everyone I've ever worked with at O'Reilly has been very professional, and they've been doi…

Okay, most important question time: Do you get to pick the animal? If so, why that particular pigeon?

More details about the history of the animal covers: http://animals.oreilly.com/origin-of-species/
Post reply on HN