Upgrade to Pro — share decks privately, control downloads, hide ads and more …

History in 5 years of CircleCI and CyberAgent

History in 5 years of CircleCI and CyberAgent

2019.03.05 CircleCI User Community Meetup #2

0aac627116c6e2a87b9ae179500801df?s=128

stormcat24

March 05, 2019
Tweet

Transcript

  1. History in 5 years of CircleCI and CyberAgent 2019.03.05 CircleCI

    User Community Meetup #2 @stormcat24
  2. stormcat24

  3. 2012- CyberAgent, Inc. 2015-2018 FRESH LIVE 2018- OpenSaaS Studio

  4. $ZCFS"HFOUʹ͓͚Δ$*ͷྺ࢙

  5. ख࡞ۀ in 2014

  6. ࣗ෼͸$*୲౰͡Όͳ͍͔Β Α͘Θ͔Βͳ͍Α +FOLJOTͰϙνϙνͯ͠ σϓϩΠͰ͖ͯ؆୯ $*ճͬͯΔ࣌ؒ͸ 5XJJUUFS͠Α͏ ։ൃऀ ࠔͬͨΒ+FOLJOT ͓͡͞Μ͕ ͳΜͱ͔ͯ͘͠ΕΔΑ

  7. "ϓϩδΣΫτ͔Β +FOLJOTͷߏஙґཔ དྷ·ͨ͠Αͬͱ ࣅͨΑ͏ͳߏ੒ͷ+FOLJOT ͜ͷؒ΋࡞ͬͨؾ͕͢Δ͚Ͳ ·͍͍͔͋ ŜŦŜŦŜŦŕŦŖƃ #ϓϩδΣΫτͷ+FOLJOT ϫʔΧʔͷεϖοΫ͕ ଍Γͳ͍ͳ

    ख़࿅ͷ+FOLJOT͓͡͞Μ΁ͷಓ͸ Ұ೔ʹͯ͠ͳΒͣͰ͢Α Ϗϧυ࣌ؒ௕͍͚Ͳ ͜͏͍͏΋Μ͔ͳʁ ΞϓϦͷํ͸Α͘Θ͔ΒΜ +FOLJOT͓͡͞Μ
  8. ͦΕͰ͍͍ͷ͔ʁ

  9. ͏·͍ͬͯ͘Δ͠ ͍͍Μ͡Όͳ͍ͷʙ

  10. None
  11. ੈؒΛ஌Βͣʹ ͳ·্͡ख͍ͬͯ͘Δͱ ࢥߟఀࢭʹؕΓ΍͍͢

  12. ࣗ෼͸$*୲౰͡Όͳ͍͔Β Α͘Θ͔Βͳ͍Α +FOLJOTͰϙνϙνͯ͠ σϓϩΠͰ͖ͯ؆୯ $*ճͬͯΔ࣌ؒ͸ 5XJJUUFS͠Α͏ ࠔͬͨΒ+FOLJOT ͓͡͞Μ͕ ͳΜͱ͔ͯ͘͠ΕΔΑ 6*ૢ࡞ͰߦΘΕΔ΂͖͔ʁ

    ଐਓԽΛڐ༰͢Δ͔ʁ ͓͡͞Μ͕ϊ΢ϋ΢Λ ดͨ͡··ୀ৬ͨ͠Βʁ ϦʔυλΠϜΛ୹ॖ͢΂͖Ͱ͸ʁ αʔϏεʹద੾ͳӡ༻͔ʁ ར༻ऀ͕ධՁ͢΂͖Ͱ͸ʁ
  13. "ϓϩδΣΫτ͔Β +FOLJOTͷߏஙґཔ དྷ·ͨ͠Αͬͱ ࣅͨΑ͏ͳߏ੒ͷ+FOLJOT ͜ͷؒ΋࡞ͬͨؾ͕͢Δ͚Ͳ ·͍͍͔͋ ŜŦŜŦŜŦŕŦŖƃ #ϓϩδΣΫτͷ+FOLJOT ϫʔΧʔͷεϖοΫ͕ ଍Γͳ͍ͳ

    ख़࿅ͷ+FOLJOT͓͡͞Μ΁ͷಓ͸ Ұ೔ʹͯ͠ͳΒͣͰ͢Α Ϗϧυ࣌ؒ௕͍͚Ͳ ͜͏͍͏΋Μ͔ͳʁ ΞϓϦͷํ͸Α͘Θ͔ΒΜ ಛఆٕज़΁ͷա౓ͳࣥண ࡞ۀຬ଍΍Ζ ແବͳ࡞ۀʁ ΠϯϑϥͷίʔυԽ͸͞ΕΔ΂͖Ͱ͸ʁ खಈͰεέʔϧ͢Δͷ͔ʁ ϓϩδΣΫτͷ਺͚ͩ ӡ༻͕૿͑Δ͕ʁ ΞϓϦΛݟͣʹϏϧυϓϩηεΛ ࠷దԽͰ͖Δ͔ʁ
  14. มԽΛٻΊΒΕͳ͍ͷͰ͋Ε͹ ͦͷ··ͰΑ͍͔΋͠Εͳ͍͕ɺ ͦΜͳ͜ͱ͸΄ͱΜͲແ͍ɻ

  15. 4BB4ͷ$*αʔϏεͷ੝Γ্͕Γ

  16. Ϛωʔδυܕ$*Λ׆༻

  17. Ϛωʔδυ$*ͷར఺ ‣ ӡ༻ͳ͠ɺεέʔϥϏϦςΟ͸Ͱղܾ ‣ δϣϒͷίʔυԽ ‣ %PDLFS΍༷ʑͳΤίγεςϜͷαϙʔτ ‣ ܧଓతͳػೳ௥Ճɺखް͍Ϣʔβʔαϙʔτ ຊ࣭తͳ։ൃʹΑΓूதͰ͖Δɻ

    αʔϏεΛૣ͘ಧ͚͍ͨͳΒ࢖Θͳ͍બ୒ࢶ͸ແ͍
  18. ͔͠͠ɺɹɹɹɹɹɹɹɹʹ ରԠͨ͠$*αʔϏε͸ ౰࣌΄ͱΜͲͳ͔ͬͨ

  19. None
  20. ࣾ಺ͷ$*Λ΋ͬͱઌਐతʹ +FOLJOT͸ଔۀ͠Α͏ ػೳݕূͷ݁Ռ $JSDMF$*͕࠷΋ྑ͍ ίϯςφʹ44)Ͱೖͬͯ σόοάͰ͖Δͷ࠷ߴ &OUFSQSJTFͷαϙʔτ͋Δʂ "1*΋ॆ࣮ ΦϖϨʔγϣϯʹ΋෯͕ग़Δ $JSDMF$*ࣾͷ

    ϗεϐλϦςΟ͕ͱͯ΋ྑ͍ ڧҾͳඪ४ԽͰ͸ͳ͘ ࣗવͳࣾ಺σϑΝΫτԽ΁
  21. ೥$$*&༠க׆ಈ։࢝ ༠க࢝Ί·ʔ͢ ۜͷ஄ؙͰ͸ͳ͍Ͱ͢ ෆ޲͖ͳϢʔεέʔε΋ ͋Γ·͊͢ ίετ͸͜Ε͘Β͍Ͱ ࠷ॳ͸ίϯςφ਺̋͘Β͍Ͱ ͸͡Ί·͠ΐ͏ +FOLJOT͓͡͞Μͷ༐ୀΛʂ

  22. ೥$$*&ར༻։࢝ ‣ ࠷ॳ͸!TUPSNDBUͷ΍ͬͯͨ৽نϓϩδΣΫτ্ཱͪ͛Ͱར༻ ‣ 4FSWFS 8FC "OESPJE *OGSBTUSVDUVSFͷྖҬͰϑϧ׆༻ ‣ %FQMPZ΍5FSSBGPSNͷద༻ʹ΋ར༻

    ‣ ։ൃ্͕ख͘ճΓɺଞͷϓϩδΣΫτʹ΋ਅࣅ͞Εͳ͕ΒͲΜͲΜ޿͕ͬ ͍ͯ͘ ‣ ίʔυԽ ZBNMʣͰਅࣅ͠΍͍͢ ‣ (JU)VCʢ()&΋ʣͰDJSDMFZNMΛݕࡧ͢Ε͹͍͍ͩͨΘ͔Δ ‣ ೔ຊͰ࠷ॳͷސ٬ʁʢͨͿΜʣ
  23. ಋೖʹ͸ਚྗ͠·͕ͨ͠ɺ ԣ࣠Ͱͷීٴ׆ಈ͸ʢ΄΅ʣ͍ͯ͠·ͤΜɻ ˞ଞʹͦ͏͍͏ਓ͕ډͨΘ͚Ͱ΋͋Γ·ͤΜ

  24. ྡͷࣳੜ͸੨͘ݟ͑Δঢ়گΛͭ͘Δ ‣ ৽͍͜͠ͱΛ্ख͘ճͯ͠Δͱɺ൱͕ԠͰ΋஫໨͞ΕΔ ‣ ͔ͳΓ࢖͍౗ͨ͠͠ɺϒϩάͰͷΞ΢τϓοτ΋ଟ͔ͬͨͷͰঘߋ ‣ %FW0QT΍8FCΦϖϨʔγϣϯ͕஫໨͞ΕΔ࣌ظʹೖ͍ͬͯͨ ‣ ͏·͘ைྲྀʹ৐ͬͨʁ ‣

    4FSWFS͚ͩ͡Όͳ͘ɺ8FCɺ"OESPJEɺ*OGSBͷͲͷྖҬ͔Β΋੨͘ݟ͑Δ ࢿ࣭͕͋ͬͨ
  25. ೥ݱࡏ

  26. Repositories 412 ˞$JSDMF$*ϕʔε ˞$"ϝσΟΞ؅׋()&ௐ΂ Projects 40

  27. ΄΅੍ѹ

  28. $$*&ීٴͷ૯ׅ ‣ +FOLJOT͓͡͞Μഇۀ ‣ $*ͷϞμϯԽɺϊ΢ϋ΢ڞ༗ͷ͠΍͢͞ʢࣗવൃੜతʣ ‣ %FWɺ0QT૒ํͷ$*΁ͷҙࣝվֵ ‣ ίϯςφԽͷைྲྀʹ΋͏·͘Ϛονͨ͠ ‣

    ܥͷ%PDLFSʹ͸ଟগۤ࿑΋͕͋ͬͨ ‣ $$*&؅ཧऀͷӡ༻͸΋ͪΖΜθϩͰ͸ͳ͍ ‣ ͍ͭ΋αϙʔτ͋Γ͕ͱ͏͍͟͝·͢
  29. $ZCFS"HFOUͱ$*ͷ͜Ε͔Βɹ

  30. &OUFSQSJTFͷδϨϯϚ

  31. &OUFSQSJTFͷδϨϯϚ ‣ &OUFSQSJTFͷ໋॓ ‣ &OUFSQSJTF΁ͷ৽ػೳϥά͕͋Δʢૣ͘0SCT࢖͍͍ͨͱ͔ʣɹ ‣ Τοδͷޮ͍ͨνʔϜʹͱͬͯ͸গ͠ϞϠϞϠ͢Δ ‣ $JSDMF$*Ҏ֎ʹ΋࢖͍͍ͨαʔϏε͸ଟ͍ ‣

    ()&ʹରԠ͍ͯ͠Δ4BB4ͱͳΔͱબ୒ࢶ͕ڱ·Δ ‣ ରԠ͍ͯͯ͠΋ηΩϡϦςΟཁ݅Λຬ͔ͨ͢౳ɺݕূ͕ඞཁ
  32. HJUIVCDPN΁ͷҙࣝͷߴ·Γ

  33. ()&(JU)VCDPN ‣ ࠷ۙͷ৽ن্ཱͪ͛Ͱͦͷ܏޲͕ߴ·͖ͬͯͨ ‣ ϓϩδΣΫτʹ͋ͬͨ4BB4Λɺࣗ෼ͨͪͷࡋྔͰܾΊΑ͏ͱ͍͏ҙࢥ ‣ ։ൃ૊৫ͱͯ͠͸͋Δ΂͖࢟Ͱ͋Δͱݴ͑Δ ‣ $JSDMF$*͕બ͹Εͳ͘ͳΔཧ༝ʹ͸ͳΒͳ͍ ‣

    ඪ४Խ͔Βɺࣗ཯తͳϦςϥγʔͷৢ੒΁
  34. ࠷ۙͷ৽نϓϩδΣΫτ ‣ $JSDMF$*͸(JU)VCDPNϓϩδΣΫτͰ΋ී௨ʹબ͹Ε͍ͯΔ ‣ ωΠςΟϒ੎͸#JUSJTF͕ଟ͍ ‣ (JU0QTͷྲྀߦɺΑΓચ࿅͞Εͨ։ൃϓϩηε΁ ‣ $JSDMF$* NFSHJGZͰ13ࣗಈϚʔδͱ͔

    ‣ ,VCFSOFUFTར༻ϓϩδΣΫτ ‣ UFTUJOGSBQSPX΍"SHP$%ͱ͍ͬͨ૊Έ߹Θͤ΋
  35. $"͸దࡐదॴͷจԽ DPNͱ&OUFSQSJTF͸ ౰໘͸ڞଘ͍ͯ͘͠Ͱ͠ΐ͏

  36. $"ͱ$JSDMF$*ͷग़ձ͍͔Βૣ೥ ։ൃޮ཰͚ͩͰ͸ͳ͘ɺ ։ൃϓϩηε΍จԽ΋େ͖͘ਐา

  37. ྑ͍4BB4΍πʔϧʹΑͬͯ ։ൃऀͷ໨͸ ࣮֬ʹං͍͖͑ͯ·͢ पΓͷ໨ʹ͖ͭ΍͍͢ ੒ޭϞσϧΛͭͰ΋ଟ͘ ࡞Ζ͏ʂ ඪ४Խ͸طಘݖӹԽͱ දཪҰମͰ͋Δ͜ͱ΋஫ҙ ։ൃऀͷ։ൃϓϩηεվળ΍ ৽ٕज़΁ͷҙཉΛେࣄʹ͠Α͏

    &OUFSQSJTFͷδϨϯϚ͸ ඞ͖ͣͭ·ͱ͏ $JSDMF$*+BQBOઃཱ ׆ൃͳϢʔβʔίϛϡχςΟ ڧ͍҆৺ײ
  38. 5IBOLT✋