Ruby and Infrastructure as Code

2cf373725ded741824c50fd571eda6e1?s=47 KONDO Uchio
February 24, 2018

Ruby and Infrastructure as Code

@プログラミング言語Ruby25周年記念イベント #ruby25th

2cf373725ded741824c50fd571eda6e1?s=128

KONDO Uchio

February 24, 2018
Tweet

Transcript

  1. େن໛ͰෳࡶͳΠϯϑϥΛݟਾ͑ͯ ۙ౻Ӊஐ࿕(.01FQBCP *OD ϓϩάϥϛϯάݴޠ3VCZप೥ه೦Πϕϯτ 3VCZͱ
 *OGSBTUSVDUVSFBT$PEF

  2. ۙ౻Ӊஐ࿕!VE[VSB &$αΠτɺΦϯϥΠϯήʔϜ։ൃͳͲΛܦͯɺ ೥ΑΓ(.0ϖύϘٕज़ج൫νʔϜɻಉ೥Α Γ෱Ԭࢢ಺ʹҠॅɻڞஶʹʰύʔϑΣΫτ3VCZʱ ʰύʔϑΣΫτ3BJMTʱͳͲ͕͋ΔɻNSVCZΛ૊Έ ࠐΜͩ-JOVYίϯςφϥϯλΠϜʮ)BDPOJXBʯͷ ࡞ऀͰɺ)BDPOJXBؔ࿈ͷ׆ಈͱͯ͠3VCZ,BJHJ ͰͷτʔΫ͕࠾୒͞Εɺ·ͨୈճ෱Ԭ3VCZ େ৆Λड৆ɻݱࡏ͸ɺ)BDPOJXBΛϕʔεͱͨ͠ Ϋϥ΢υαʔϏεͰ͋ΔʮϩϦϙοϓʂϚωʔδ

    υΫϥ΢υʯʹΞʔΩςΫτˠࣾ಺ٕज़ސ໰ ͱ ͯ͠ࢀՃ͍ͯ͠Δɻ
  3. ۙ౻Ӊஐ࿕!VE[VSB w3BJMT(JSMT'VLVPLB
 ΦʔΨφΠβʔ   wʢ3BJMT(JSMT๺۝भίʔνʣ w෱Ԭ3VCZձ࣮ٞߦҕһ௕
   w'VLVPLBSCίʔσΟωʔλʔ


    d
  4. *OGSBTUSVDUVSFBT$PEF BOE3VCZ j

  5. None
  6. *OGSBTUSVDUVSFBT$PEF wαʔόΠϯϑϥʹ͍ͭͯ wߏ੒؅ཧʢίϯϑΟΪϡϨʔγϣϯʣ wαʔόͷॳظԽʢϒʔτετϥοϓʣ wαʔόͷΫϥελϦϯάɾڠಇʢΦʔέετϨʔγϣϯʣ wͱ͍ͬͨ಺༰ΛɺએݴతͳίʔυͰهड़͢ΔϓϥΫςΟεͷ͜ͱɻ wόʔδϣϯ؅ཧɺϨϏϡʔɺςετͱ͍ͬͨɺ
 ιϑτ΢ΣΞ։ൃϓϩηεͷϊ΢ϋ΢ΛΠϯϑϥʹద༻Ͱ͖Δ

  7. ؆୯ͳྺ࢙ w೥$'&OHJOF͕ొ৔ɻߏ੒؅ཧπʔϧͷ૸Γ w೥1VQQFUͷొ৔ w೥"NB[PO8FC4FSWJDF4&$͕ϩʔϯν w೥"84౦ژϦʔδϣϯ͕։ઃ w೥ҏ౻௚໵ஶʰೖ໳$IFG4PMPʱ4FSWFSTQFDͷొ৔ w೥5FSSBGPSNͷొ৔"84-BNCEB 'BB4 ͷϒʔϜ

  8. *OGSBTUSVDUVSFBT$PEFͷύΠϓϥΠϯ $POpHVSBUJPO #PPUTUSBQ 0SDIFTUSBUJPO ΠϝʔδԽ aશମΛίʔυͰهड़͢Δ

  9. 3VCZͷڧΈͱ *OGSBTUSVDUVSFBT$PEF

  10. 3VCZͷڧΈͱΠϯϑϥ w3VCZ͸ɺΤϯδχΞ͕΍Γ͍ͨ͜ͱΛॿ͚ΔͨΊͷಓ۩Ͱ͋Δɻ wݴޠػೳ͕ॊೈͰ͋ΔͷͰɺ%4- %PNBJO4QFDJpD-BOHVBHF Λ ࡞Δͷʹ޲͍͍ͯΔɻΑͬͯɺΠϯϑϥͷཁ݅Λهड़Ͱ͖Δ w%4-͸ɺී௨ͷϓϩάϥϛϯάݴޠͱσʔλߏ଄ݴޠʢ:".-ͳͲʣ ͷதؒͷੑ࣭͕͋Δ

  11. ༷ʑͳ3VCZͷ%4-Λ࠾༻ͨ͠ϓϩμΫτ w$IFG*UBNBFߏ੒؅ཧ w7BHSBOU։ൃ༻7.ͷίʔυԽ wSJEHFQPMF.Z42-εΩʔϚͷίʔυԽ w4FSWFSTQFDએݴతͳΠϯϑϥςετ w˞ಛʹ$POpHVSBUJPOͷπʔϧ͕ଟ͍

  12. એݴతͳ%4-#%%ͷαϙʔτ

  13. ΠϯϑϥΤϯδχΞͷ ੜ࢈ੑΛ্͛Δ

  14. l&OKPZ1SPHSBNNJOHz
 GPS0QT

  15. 5IF5JNFTPG *OGSBTUSVDUVSFBT$PEF j

  16. 8FCαʔϏεӡ༻

  17. ϚΠΫϩαʔϏε ίϯςφԽ αʔόϨε

  18. ͭͷΩʔϫʔυ wେ͖ͳΞϓϦέʔγϣϯΛɺҙຯͷ͋Δػೳ୯ҐͰෳ਺ͷখ͞ͳ
 ϚΠΫϩαʔϏεʹ෼ׂ͠ɺҰͭͷ໾ׂʹઐ೦ͤ͞Δ w͍ΘΏΔ7.ΑΓ΋ਫ਼៛ͰॊೈͳίϯτϩʔϧͷͰ͖ΔίϯςφͰɺ
 ΠϯϑϥΛߏங͠ɺϦιʔείϯτϩʔϧͷมԽʹڧ͘͢Δ w͜ΕΒͷӡ༻Λ஍ଓ͖ʹࣗಈԽ͠ӡ༻ෛՙΛܰݮɺαʔόϨεʹ wʢഎܠʹ͸ɺ΢ΣϒΠϯϑϥͷେن໛ԽɺΞϓϦͷෳࡶԽ͕͋Δʣ

  19. $MPVE/BUJWF$PNQVUJOH'PVOEBUJPO w͜ͷΑ͏ͳಈ͖Λਪ͠ਐΊΔ044Λࢧԉ͢Δஂମ w,VCFSOFUFTͳͲ͕୅දతͳϓϩμΫτ wIUUQTXXXDODGJP

  20. 1SPKFDUTPO$/$'

  21. (PMBOH $ +BWB 3VCZ͸Ұ͚ͭͩ

  22. ͜ͷ෼໺ͰͷNSVCZͷՄೳੑ

  23. NSVCZͷϛυϧ΢ΣΞ૊ΈࠐΈ wNSVCZΛ૊ΈࠐΜͩϛυϧ΢ΣΞ͕Πϯϑϥք۾ʹొ৔͍ͯ͠Δ wNPE@NSVCZOHY@NSVCZIPʢ8FCαʔόʣ w)BDPOJXBʢίϯςφϥϯλΠϜʣ w.Z42-ɺNJMUFSɺQPTUpYͳͲ΁ͷ૊ΈࠐΈ΋։ൃ͞Ε͍ͯΔ

  24. ϛυϧ΢ΣΞ૚Ͱ3VCZ͕ॻ͚ΔϝϦοτ w$MPVE/BUJWFͳΠϯϑϥʹඞཁͳಈతͳཁ͕͍͔݅ͭ͘ଘࡏ͢Δ wෛՙΛ͢͹΍͘ݕ஌ͯ͠ɺεέʔϧΞ΢τ͢ΔϑοΫػߏ wॊೈͳϩʔυόϥϯγϯάͳͲɺωοτϫʔΫϨϕϧͰͷਫ਼៛ͳ੍ޚ ʢ4FSWJDF.FTIʣ w࣮͸ɺOHY@NSVCZ΍)BDPOJXBͰ͜͏͍ͬͨ͜ͱ͕࣮ݱ͍ͯ͠Δࣄྫ ͸ঃʑʹग़͖͍ͯͯΔʢಈతͳόοΫΤϯυɺূ໌ॻͷܾఆͳͲʣ wචऀΒ͸$POpHVSBUJPOBT$PEFͱݺΜͰ͍Δ

  25. ৽͍͠ܗͷϚΠΫϩαʔϏε ίϯςφΦʔέετϨʔγϣϯ͕ 3VCZͱNSVCZͰ ࣮ݱ͢Δະདྷ΋͋Δ͔΋͠Εͳ͍

  26. ৽͍͠ܗͷϚΠΫϩαʔϏε ίϯςφΦʔέετϨʔγϣϯ͕ 3VCZͱNSVCZͰ ࣮ݱ͢Δະདྷ΋͋Δ͔΋͠Εͳ͍ Λ࡞Γ·͠ΐ͏

  27. ·ͱΊ

  28. *OGSBTUSVDUVSFBT$PEFͰ ΠϯϑϥΤϯδχΞʹ΋ 3VCZͷੜ࢈ੑΛ

  29. ࣌୅͸ϚΠΫϩαʔϏείϯςφ 3VCZͷྗͰͦͷ෼໺ʹ ৽͍͠෩Λىͤ͜Δ͸ͣ

  30. &/%\QVUTl5IBOLTz^

  31. ࢀߟࢿྉ w*OGSBTUSVDUVSFBT$PEF࠶ߟ
 IUUQNJ[[ZPSHCMPH wಈతূ໌ॻಡΈࠐΈOHY@NSVCZฤ
 IUUQTTQFBLFSEFDLDPNIGNHNPIPTDPO w8IBUJTDMPVEOBUJWF 
 IUUQTXXXDODGJPBCPVUGBR