An EngineYard Cloud Gotcha

I'm still loving the EngineYard Cloud for my client deployments. I encountered one snag today, though, when cloning an environment for staging: Custom chef recipes do not get cloned along with the rest of the environment.

This means that if you have uplaoded/deployed custom chef recipes for, say, a production environment, and then you clone that environment to one called, say, staging, your custom recipes will not be automagically available in the staging environment. This could be bad if your application depends on something like MongoDB being installed by your chef recipes. :)

The fix is simple. Just upload your recipes using the ey-recipes tool to the new environment once you create it from scratch or via a clone. I would argue that it makes sense to clone the recipes along with the rest of the environment, but at least the workaround is easy.