This document discusses best practices for creating self-contained software releases using Berkshelf and Chef. It recommends packaging the software artifact, cookbook artifact, and documentation together. The cookbook artifact contains the cookbooks and dependencies locked to a specific version. Berkflow is introduced as a tool to install and upgrade environments using these packaged artifacts. Following these practices allows for portable, repeatable, and predictable automation.