SlideShare una empresa de Scribd logo
1 de 23
Descargar para leer sin conexión
JAVIST BEING CHEFTAIN
@ladislavGazo
gazo@seges.sk
JAVIST PART
CHANGELOG
#cag hs rcrs
hne ot eod
vm/t/ot
i echss
vm/t/otae
i echsnm
#otoal rbo
pinly eot
rbo
eot
#t rfehrp ls
o ers eo it
sd atgtudt
uo p-e pae
#t isaludts
o ntl pae
sd atgtugae
uo p-e prd
sd atgtisaltu m
uo p-e ntl mx c
ht:/w.nrwutnt21/51/euiga-bnusre/
tp/wwadeal.e/000/7scrn-nuut-evr
sd sst - ntiv.ofalacp_orerue0
uo ycl w e.p4cn.l.cetsuc_ot=
sd sst ​ ntiv.ofdfutacp_orerue0
uo ycl- e.p4cn.eal.cetsuc_ot=
w
sd attd - isaldnhss
uo piue y ntl eyot
sd attd - isaltgr
uo piue y ntl ie
sd attd - isalpa
uo piue y ntl sd
sd ckoti
uo hrokt
... BUT WHAT IF
there are more servers
change log for every one
I want to setup development environment
manually go through the changelog
and probably do mistakes
the changelog has some blank places
usually it is not that detailed
Holy crap... now what?
COMPARISON?
Only subjective:
Chef feels more community friendly
&
I like community projects
ALTERNATIVES
Of course there are many:
Puppet
CFEngine
Capistrano
Fabric
glu
...
There is a difference between infrastructure management and
deployment management.
Chef Solo vs. Chef Server

Knife
CHEF
Solo
for local/one node
no central repository of configuration
Server
installed internally or bought from Opscode
central repository of cookbooks
easy to install on supported OS
Ubuntu
COMPONENTS
COMPONENTS II.
attributes
run-lists
roles
data bags
environments
THE ESSENCE
COOKBOOKS:
Attributes
Recipes
Templates
Files
Metadata + Version + Dependencies
COOKBOOKS
managed by Knife
source code stored in Git repository
uploaded to the Chef Server
downloaded by Chef Client on a particular Node
HOW TO START COOKING?
You do not need to know Ruby up-front
=
wheew for Javist ;)
but
http://docs.opscode.com/just_enough_ruby_for_chef.html
NEXT
Install Chef Workstation if it does not exist
Set up Git repo ( BB | GitHub | ... )
git clone git://github.com/opscode/chef-repo.git

Follow the guide precisely
Note: I keep separate user for development and separate for
deployment
WRITE FIRST COOKBOOK
It is simple
kiecobo cet hprc
nf okok rae yei
c hprc
d yei
vmrcpsdfutr
i eie/eal.b

you get along with 90% of what is already there for most recipes
you are fine with basic programming techniques
kthnii
ice nt

testing is important
TESTING
gmisalts-ice -pe
e ntl etkthn -r
gmisalbrsefb>
e ntl ekhl<r
gmisalkthnvgatb>
e ntl ice-arn<r

SSH to running Vagrant machine when test-kitchen is executed
/hfrp/okok/yei/kthnkthnvgatdfutuut-24 vgatsh
ce-eocoboshprc.ice/ice-arn/eal-bnu10$ arn s

When everything is ready, "fire in the hole"
vm.ice.m
i kthnyl
kthnts
ice et
CACHE
http://fgrehm.viewdocs.io/vagrant-cachier
It saves time!
vgatpui isalvgatccir
arn lgn ntl arn-ahe

But does not work with current Kitchen version without hacking
configuration file
NOTABLE RESOURCES
http://docs.opscode.com/resource.html
drcoy"tpfle"d
ietr /m/odr o
onr"ot
we ro"
gop"ot
ru ro"
md 05
oe 75
ato :rae
cin cet
ed
n
ue "yei"d
sr hprc o
spot :aaehm = tu
uprs mng_oe > re
hm "hm/{yei_sr"
oe /oe#hprcue}
sel"bnbs"
hl /i/ah
ato :rae
cin cet
ed
n
rmt_ie"yei_ude d
eoefl hprcbnl" o
pt hprcsc
ah yei_r
onrhprcue
we yei_sr
suc nd[hprc]'gn'[bnl_r'
ore oe'yei'[aet]'udeul]
md 064
oe 04
ed
n
OTHER
tmlt "ecii./{evc_ae"d
epae /t/ntd#srienm} o
ato :raei_isn
cin cet_fmsig
onr"ot
we ro"
md 070
oe 00
suc "yei-gn.r"
ore hprcaeteb
vrals
aibe(
:evc_ae= srienm,
srienm > evc_ae
:gndr= hprcaeti,
aeti > yei_gndr
:sr= hprcue,
ue > yei_sr
:aahm = jv_oe
jv_oe > aahm
)
ed
n
sriesrienm d pten"gn-{yei_eso}
evc evc_ae o atr aet#hprcvrin"
ato [:nbe :tr ]
cin
eal, sat
ed
n
bs "xrc_c"d cd:Fl.inm(c_onpt)
ah etattc o w :iedraetcdw_ah
cd <-O
oe <EH
con- #nd.c.sr:{oetcgop #nd.c.oain
hw R {oetcue}#nd.c.ru} {oetclcto}
EH
O
ed
n
NOTABLE HINTS
(re)create, not update
rather don’t update file, find a way how to create it at once
more detailed steps then you expected
if you thought there are 10 steps what to execute in such an
automated way in your head, there are 60 at least
cookbook wrapper pattern
describe the possibility to override resources in the
“cookbook wrapper”
QUESTIONS?
@ladislavGazo
gazo@seges.sk
THANK YOU... FOR...

ATTENTION

Más contenido relacionado

Similar a Javist Being Cheftain

Introduction to Ansible
Introduction to AnsibleIntroduction to Ansible
Introduction to AnsibleMattias Gees
 
Nginx Scripting - Extending Nginx Functionalities with Lua
Nginx Scripting - Extending Nginx Functionalities with LuaNginx Scripting - Extending Nginx Functionalities with Lua
Nginx Scripting - Extending Nginx Functionalities with LuaTony Fabeen
 
Devinsampa nginx-scripting
Devinsampa nginx-scriptingDevinsampa nginx-scripting
Devinsampa nginx-scriptingTony Fabeen
 
An Introduction to CSS Preprocessors
An Introduction to CSS PreprocessorsAn Introduction to CSS Preprocessors
An Introduction to CSS PreprocessorsMiloš Sutanovac
 
Noah Zoschke at Waza 2013: Heroku Secrets
Noah Zoschke at Waza 2013: Heroku SecretsNoah Zoschke at Waza 2013: Heroku Secrets
Noah Zoschke at Waza 2013: Heroku SecretsHeroku
 
Performance Wins with BPF: Getting Started
Performance Wins with BPF: Getting StartedPerformance Wins with BPF: Getting Started
Performance Wins with BPF: Getting StartedBrendan Gregg
 
Hubot: a look inside our robot friend
Hubot: a look inside our robot friendHubot: a look inside our robot friend
Hubot: a look inside our robot friendajacksified
 
Debian meetup nantes 2015 : Salt pour gérer de nombreux serveurs debian
Debian meetup nantes 2015 : Salt pour gérer de nombreux serveurs debianDebian meetup nantes 2015 : Salt pour gérer de nombreux serveurs debian
Debian meetup nantes 2015 : Salt pour gérer de nombreux serveurs debianArthur Lutz
 
Marko Gargenta_Remixing android
Marko Gargenta_Remixing androidMarko Gargenta_Remixing android
Marko Gargenta_Remixing androidDroidcon Berlin
 
Automated tests - facts and myths
Automated tests - facts and mythsAutomated tests - facts and myths
Automated tests - facts and mythsWojciech Sznapka
 
Theme Development and Customization
Theme Development and CustomizationTheme Development and Customization
Theme Development and CustomizationAniket Pant
 
Using Phing for Fun and Profit
Using Phing for Fun and ProfitUsing Phing for Fun and Profit
Using Phing for Fun and ProfitNicholas Jansma
 
Learn Frontend Testing
Learn Frontend TestingLearn Frontend Testing
Learn Frontend TestingRyan Roemer
 
Tips on how to improve the performance of your custom modules for high volume...
Tips on how to improve the performance of your custom modules for high volume...Tips on how to improve the performance of your custom modules for high volume...
Tips on how to improve the performance of your custom modules for high volume...Odoo
 
What's New in ECMAScript 2015
What's New in ECMAScript 2015What's New in ECMAScript 2015
What's New in ECMAScript 2015Sasha dos Santos
 
톰캣 #05+a-배치-parallel deployment
톰캣 #05+a-배치-parallel deployment톰캣 #05+a-배치-parallel deployment
톰캣 #05+a-배치-parallel deploymentGyuSeok Lee
 
Adventures in infrastructure as code
Adventures in infrastructure as codeAdventures in infrastructure as code
Adventures in infrastructure as codeJulian Simpson
 
WordPress in 30 minutes
WordPress in 30 minutesWordPress in 30 minutes
WordPress in 30 minutesOwen Winkler
 
PyLadies Talk: Learn to love the command line!
PyLadies Talk: Learn to love the command line!PyLadies Talk: Learn to love the command line!
PyLadies Talk: Learn to love the command line!Blanca Mancilla
 

Similar a Javist Being Cheftain (20)

Introduction to Ansible
Introduction to AnsibleIntroduction to Ansible
Introduction to Ansible
 
Nginx Scripting - Extending Nginx Functionalities with Lua
Nginx Scripting - Extending Nginx Functionalities with LuaNginx Scripting - Extending Nginx Functionalities with Lua
Nginx Scripting - Extending Nginx Functionalities with Lua
 
Devinsampa nginx-scripting
Devinsampa nginx-scriptingDevinsampa nginx-scripting
Devinsampa nginx-scripting
 
An Introduction to CSS Preprocessors
An Introduction to CSS PreprocessorsAn Introduction to CSS Preprocessors
An Introduction to CSS Preprocessors
 
Noah Zoschke at Waza 2013: Heroku Secrets
Noah Zoschke at Waza 2013: Heroku SecretsNoah Zoschke at Waza 2013: Heroku Secrets
Noah Zoschke at Waza 2013: Heroku Secrets
 
Performance Wins with BPF: Getting Started
Performance Wins with BPF: Getting StartedPerformance Wins with BPF: Getting Started
Performance Wins with BPF: Getting Started
 
Hubot: a look inside our robot friend
Hubot: a look inside our robot friendHubot: a look inside our robot friend
Hubot: a look inside our robot friend
 
Debian meetup nantes 2015 : Salt pour gérer de nombreux serveurs debian
Debian meetup nantes 2015 : Salt pour gérer de nombreux serveurs debianDebian meetup nantes 2015 : Salt pour gérer de nombreux serveurs debian
Debian meetup nantes 2015 : Salt pour gérer de nombreux serveurs debian
 
Marko Gargenta_Remixing android
Marko Gargenta_Remixing androidMarko Gargenta_Remixing android
Marko Gargenta_Remixing android
 
Automated tests - facts and myths
Automated tests - facts and mythsAutomated tests - facts and myths
Automated tests - facts and myths
 
Theme Development and Customization
Theme Development and CustomizationTheme Development and Customization
Theme Development and Customization
 
Using Phing for Fun and Profit
Using Phing for Fun and ProfitUsing Phing for Fun and Profit
Using Phing for Fun and Profit
 
Learn Frontend Testing
Learn Frontend TestingLearn Frontend Testing
Learn Frontend Testing
 
Tips on how to improve the performance of your custom modules for high volume...
Tips on how to improve the performance of your custom modules for high volume...Tips on how to improve the performance of your custom modules for high volume...
Tips on how to improve the performance of your custom modules for high volume...
 
What's New in ECMAScript 2015
What's New in ECMAScript 2015What's New in ECMAScript 2015
What's New in ECMAScript 2015
 
톰캣 #05+a-배치-parallel deployment
톰캣 #05+a-배치-parallel deployment톰캣 #05+a-배치-parallel deployment
톰캣 #05+a-배치-parallel deployment
 
Porque VIM?
Porque VIM?Porque VIM?
Porque VIM?
 
Adventures in infrastructure as code
Adventures in infrastructure as codeAdventures in infrastructure as code
Adventures in infrastructure as code
 
WordPress in 30 minutes
WordPress in 30 minutesWordPress in 30 minutes
WordPress in 30 minutes
 
PyLadies Talk: Learn to love the command line!
PyLadies Talk: Learn to love the command line!PyLadies Talk: Learn to love the command line!
PyLadies Talk: Learn to love the command line!
 

Último

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 

Último (20)

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 

Javist Being Cheftain

  • 3. CHANGELOG #cag hs rcrs hne ot eod vm/t/ot i echss vm/t/otae i echsnm #otoal rbo pinly eot rbo eot #t rfehrp ls o ers eo it sd atgtudt uo p-e pae #t isaludts o ntl pae sd atgtugae uo p-e prd sd atgtisaltu m uo p-e ntl mx c ht:/w.nrwutnt21/51/euiga-bnusre/ tp/wwadeal.e/000/7scrn-nuut-evr sd sst - ntiv.ofalacp_orerue0 uo ycl w e.p4cn.l.cetsuc_ot= sd sst ​ ntiv.ofdfutacp_orerue0 uo ycl- e.p4cn.eal.cetsuc_ot= w sd attd - isaldnhss uo piue y ntl eyot sd attd - isaltgr uo piue y ntl ie sd attd - isalpa uo piue y ntl sd sd ckoti uo hrokt
  • 4. ... BUT WHAT IF there are more servers change log for every one I want to setup development environment manually go through the changelog and probably do mistakes the changelog has some blank places usually it is not that detailed Holy crap... now what?
  • 5.
  • 6. COMPARISON? Only subjective: Chef feels more community friendly & I like community projects
  • 7. ALTERNATIVES Of course there are many: Puppet CFEngine Capistrano Fabric glu ... There is a difference between infrastructure management and deployment management.
  • 8. Chef Solo vs. Chef Server Knife
  • 9. CHEF Solo for local/one node no central repository of configuration Server installed internally or bought from Opscode central repository of cookbooks easy to install on supported OS Ubuntu
  • 13. COOKBOOKS managed by Knife source code stored in Git repository uploaded to the Chef Server downloaded by Chef Client on a particular Node
  • 14. HOW TO START COOKING? You do not need to know Ruby up-front = wheew for Javist ;) but http://docs.opscode.com/just_enough_ruby_for_chef.html
  • 15. NEXT Install Chef Workstation if it does not exist Set up Git repo ( BB | GitHub | ... ) git clone git://github.com/opscode/chef-repo.git Follow the guide precisely Note: I keep separate user for development and separate for deployment
  • 16. WRITE FIRST COOKBOOK It is simple kiecobo cet hprc nf okok rae yei c hprc d yei vmrcpsdfutr i eie/eal.b you get along with 90% of what is already there for most recipes you are fine with basic programming techniques kthnii ice nt testing is important
  • 17. TESTING gmisalts-ice -pe e ntl etkthn -r gmisalbrsefb> e ntl ekhl<r gmisalkthnvgatb> e ntl ice-arn<r SSH to running Vagrant machine when test-kitchen is executed /hfrp/okok/yei/kthnkthnvgatdfutuut-24 vgatsh ce-eocoboshprc.ice/ice-arn/eal-bnu10$ arn s When everything is ready, "fire in the hole" vm.ice.m i kthnyl kthnts ice et
  • 18. CACHE http://fgrehm.viewdocs.io/vagrant-cachier It saves time! vgatpui isalvgatccir arn lgn ntl arn-ahe But does not work with current Kitchen version without hacking configuration file
  • 19. NOTABLE RESOURCES http://docs.opscode.com/resource.html drcoy"tpfle"d ietr /m/odr o onr"ot we ro" gop"ot ru ro" md 05 oe 75 ato :rae cin cet ed n ue "yei"d sr hprc o spot :aaehm = tu uprs mng_oe > re hm "hm/{yei_sr" oe /oe#hprcue} sel"bnbs" hl /i/ah ato :rae cin cet ed n rmt_ie"yei_ude d eoefl hprcbnl" o pt hprcsc ah yei_r onrhprcue we yei_sr suc nd[hprc]'gn'[bnl_r' ore oe'yei'[aet]'udeul] md 064 oe 04 ed n
  • 20. OTHER tmlt "ecii./{evc_ae"d epae /t/ntd#srienm} o ato :raei_isn cin cet_fmsig onr"ot we ro" md 070 oe 00 suc "yei-gn.r" ore hprcaeteb vrals aibe( :evc_ae= srienm, srienm > evc_ae :gndr= hprcaeti, aeti > yei_gndr :sr= hprcue, ue > yei_sr :aahm = jv_oe jv_oe > aahm ) ed n sriesrienm d pten"gn-{yei_eso} evc evc_ae o atr aet#hprcvrin" ato [:nbe :tr ] cin eal, sat ed n bs "xrc_c"d cd:Fl.inm(c_onpt) ah etattc o w :iedraetcdw_ah cd <-O oe <EH con- #nd.c.sr:{oetcgop #nd.c.oain hw R {oetcue}#nd.c.ru} {oetclcto} EH O ed n
  • 21. NOTABLE HINTS (re)create, not update rather don’t update file, find a way how to create it at once more detailed steps then you expected if you thought there are 10 steps what to execute in such an automated way in your head, there are 60 at least cookbook wrapper pattern describe the possibility to override resources in the “cookbook wrapper”