This article is cross-posted from https://sethvargo.com/berkshelf-workflow/. There are only two fundamental assumptions for working with Berkshelf: 1. Each cookbook is a uniquely packaged and versioned artifact 2. You have a centralized artifact store that exposes a dependency API and/or is indexable by the Berkshelf API Each cookbook is it own unit of infrastructure and should be treated as such.