Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Testing "Hardware" Cookbooks with Kitchen
Search
Joe Nuspl
August 12, 2021
Technology
0
70
Testing "Hardware" Cookbooks with Kitchen
Slides from my Chef Conf Online 2021 presentation
Joe Nuspl
August 12, 2021
Tweet
Share
More Decks by Joe Nuspl
See All by Joe Nuspl
Lessons from 12 Years of Progress Chef Development
nvwls
0
95
DevOps: Reflections on a Lifetime of Learning
nvwls
0
380
DevOps: Reflections on a Lifetime of Learning
nvwls
1
370
Team Building for $39.99
nvwls
0
100
How to DevOpsDays
nvwls
0
72
Building Authoritative Resource Sets
nvwls
1
500
Other Decks in Technology
See All in Technology
インフラエンジニア必見!Kubernetesを用いたクラウドネイティブ設計ポイント大全
daitak
1
360
FinTech SREのAWSサービス活用/Leveraging AWS Services in FinTech SRE
maaaato
0
130
What happened to RubyGems and what can we learn?
mikemcquaid
0
300
Frontier Agents (Kiro autonomous agent / AWS Security Agent / AWS DevOps Agent) の紹介
msysh
3
170
学生・新卒・ジュニアから目指すSRE
hiroyaonoe
2
610
StrandsとNeptuneを使ってナレッジグラフを構築する
yakumo
1
120
今日から始めるAmazon Bedrock AgentCore
har1101
4
410
SREじゃなかった僕らがenablingを通じて「SRE実践者」になるまでのリアル / SRE Kaigi 2026
aeonpeople
6
2.4k
Bedrock PolicyでAmazon Bedrock Guardrails利用を強制してみた
yuu551
0
230
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
3
1.5k
ブロックテーマでサイトをリニューアルした話 / 2026-01-31 Kansai WordPress Meetup
torounit
0
470
SRE Enabling戦記 - 急成長する組織にSREを浸透させる戦いの歴史
markie1009
0
110
Featured
See All Featured
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.6k
エンジニアに許された特別な時間の終わり
watany
106
230k
The agentic SEO stack - context over prompts
schlessera
0
640
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
62
50k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
240
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
250
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.2k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
14k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
100
Transcript
Testing “hardware” cookbooks with kitchen Joe Nuspl Principal Engineer, Workday
2 • Based in Portland, OR • DevOpsDays Portland organizer
• Started with chef-0.8.2 on CentOS 5.3 • https://supermarket.chef.io/cookbooks/zap • http://nvwls.github.io/ • @JoeNuspl Who am I?
3 http://fredrikdesigns.com/portfolio/growly-bear-metal/
4 https://www.easytechjunkie.com/what-is-a-rack-server.htm
5 All software should be tested
6 “I need hardware to test the cookbook”
7 Wrong! “I need hardware to test the cookbook”
8 What are you trying to test?
9
10 Trust the lower layers, test your layer
11 Correct code can fail
12 • Client does not have access to server •
Server does not export the volume to that client • Server is down for maintenance Why could this fail?
13 • There is nothing the recipe could do to
fix the failure • Focus on the real purpose of the code • Avoid the failure The recipe is correct
14 What to test?
15 • /etc/fstab • /proc/mounts Persistent Point in time State
16 • Did the cookbook configure things? • /etc/fstab •
Focus on persistent What type of testing? • Does this server fulfill its purpose? • /proc/mounts • Focus on state Integration Compliance
17 Special case kitchen?
18 Use a handler to override behavior
19 • https://www.merriam-webster.com/dictionary/feign • to give a false appearance of
: induce as a false impression feign
20 feign::nfs-mount
21 Converges!
22 • Usually means only applicable on a particular hardware
platform • Not that it CAN only run on that platform Hardware specific recipes
23 hw::dell
24 Verifies under dokken
25 Hardware logic
26 Nothing is converged
27 feign::dell
28 feign::hp
29 • ProLiant_DL380_Gen9 vs ProLiant_DL380_Gen10 • PowerEdge_R640 vs PowerEdge_R740xd Model
based logic
30 Location specific recipes
31
32 • Docker4Mac lacks autofs support • Need to mock
the autofs service Test environment limitations
33
34 Include (some) test support in utility cookbooks
35 • https://github.com/bblimke/webmock webmock
36
37
38 https://www.homelectrical.com/sites/default/files/styles/original_image/public/images/product/blg/blg- woke_up_late.jpg Flawed design?
39 • https://github.com/nvwls/feign • https://github.com/nvwls/hw • https://github.com/nvwls/chefconf21 • https://nvwls.github.io/ Thank
you!