Mike Villis @mvillis
http://bit.ly/eggs365
A conference about Chef
building great software!!
Evolution of Software
• Software was a non-core capability.
• Surface area of IT is expanding an in impressive
rate
• More and more businesses are claiming to be in
the software business
Delivery at Speed
• Cloud, Automation, DevOps
• Do it right - you get Speed & Quality, Safety and
Security
• Dual Speed IT (digital first versus traditional IT)
Key Chef Announcements
• Chef Delivery!!
• Audit Mode (include ServerSpec in your Chef
Recipes)
• Test Kitchen (windows support now merged to
master)
Top 3 Presos
Adam Jacobs - Keynote
Adam Jacobs - Keynote
• Some felt as if they had some ownership of what
DevOps meant and how it felt
• DevOps best defined by the experiences of all
these people trying to transform their businesses
• Unique to any person who tries to do “DevOps”
Kung Fu
DevOps KungFu
• Principles - universally held beliefs
• Forms - shared between many styles, emphasis
varies from style to style
• Application - unique to the individual
Is it OK for DevOps to be in
your title?
Should we just make all Ops
Devs and all Devs Ops?
http://bit.ly/devopskungfu
https://github.com/chef/devops-
kungfu
Governance at Velocity
Changing Role of Auditors
Sample Tests
Chef Delivery
• Opinionated Pipeline Solution
• Includes GIT, CI, Deployments, Config Mgmt,
Visibility, Audit
THE STAGES ARE FIXED
EACH STAGE HAS A FIXED SET OF PHASES
COMMON PIPELINE
BUILD COOKBOOK
!"" recipes
   !"" default.rb
!"" lint.rb
!"" syntax.rb
!"" unit.rb
!"" quality.rb
!"" security.rb
!"" publish.rb
!"" provision.rb
   !"" deploy.rb
!"" smoke.rb
   $"" functional.rb
PHASE EXEC
log "Running unit"
repo = node['delivery_builder']['repo']
delivery_builder_exec “run my junit tests" do
command "mvn test"
cwd repo
end
MANY ACCEPTANCE PIPELINES
ONE DELIVERY PIPELINE
COMMON PIPELINE
One Pipeline
Delivery Pipeline - Shared
union rehearsal delivered
Acceptance Pipelines - Private
review approve deliverChange
Cookbook [A]
review approve deliverChange
Cookbook [B]
review approve deliverChange
Application [A]
review approve deliverChange
Application [B]
Infrastructure & Applications
APPLICATION WORKFLOW
review approve deliverChange
Application
Node Node Node
Node Node Node
Node Node Node
Deploy
1 2 3
2 2 3
3 3 3
COOKBOOK WORKFLOW
Supermarket
Chef Server
review approve deliverChange
Cookbook
Node Node Node
Node Node Node
Node Node Node
Publish
Publish
Update
CONFIG.JSON
{
"version": "1",
"build_cookbook": "./.delivery/build_cookbook",
"build_nodes": {
"default": [“name:*buildnode-*”],
"unit": [“name:*-unittest*”],
"lint": [“name:*-linttest*”],
"build": [“name:*-builder*”]
}
}
Chef Delivery Open Source
• Delivery Truck - https://github.com/opscode-
cookbooks/delivery-truck
• Delivery CLI - https://github.com/chef/delivery-cli
Chef Office
All the talks from ChefCon
2015
• http://bit.ly/chef-talks
Mike Villis @mvillis

DevOps Brisbane Meetup - June - ChefCon 2015