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

縁の下の力持ちバイナリ・リポジトリマネージャーによる開発・運用の効率化 / Make Dev and Ops efficient with Binary Repository Manager

Fb025419ed38f98df595eb2eafc859f4?s=47 ihcomega56
January 24, 2021

縁の下の力持ちバイナリ・リポジトリマネージャーによる開発・運用の効率化 / Make Dev and Ops efficient with Binary Repository Manager

July Tech Festa 2021 Winter

Fb025419ed38f98df595eb2eafc859f4?s=128

ihcomega56

January 24, 2021
Tweet

Transcript

  1. ԑͷԼͷྗ࣋ͪ όΠφϦɾ ϦϙδτϦ ϚωʔδϟʔʹΑΔ ։ൃɾӡ༻ͷޮ཰Խ July Tech Festa Winter

  2. ࣗݾ঺հ "ZBOB:PLPUBΑ͜ͳ %FWFMPQFS"EWPDBUFBU •લ৬·Ͱ͸όοΫΤϯυͷ։ൃ ʢ4*FS ޿ࠂձࣾ ূ݊ελʔτΞοϓʣ •+VMZ5FDI'FTUBॳࢀՃʂීஈ͸ +BWBܥͷίϛϡχςΟʹ͍·͢ 1

    Twitter: @ihcomega
  3. ஌త޷ح৺ɺ͙͘͢ΒΕͯ·͔͢ʂ 2

  4. ͜ͷτʔΫͷओ໾͸ 3

  5. όΠφϦ 4

  6. Ͱ͢ɻ 5

  7. ීஈ͸͋·Γ஫໨͞Εͳ͍ όΠφϦͰ͕͢ʜ 6

  8. ద੾ʹѻ͍ͬͯ·͔͢ʁ 7

  9. ͜Ε͔ΒόΠφϦͱ޲͖߹ͬͯ ஌త޷ح৺Λຬͨͭͭ͠ 8

  10. ໌೔͔ΒΑΓ޾ͤʹͳΔͨΊͷ ώϯτΛ͓࣋ͪؼΓ͍ͩ͘͞ʂ 9

  11. όΠφϦͱ͸ •Ϗϧυ΍ύοέʔδϯάΛܦͯੜ੒͞ΕͨϑΝΠ ϧͷ͜ͱ •·ͨͷ໊ΛʮΞʔςΟϑΝΫτʯ ͦͷଞݺশ༷ʑ 10 ྫ

  12. ͱͯ΋େ͖ͳ෼ྨ •ࣗ෼Ͱੜ੒͢ΔόΠφϦ •੍ޚ͕ٴ͹ͳ͍ɺ֎͔Βऔಘͯ͠࢖͏όΠφϦ ϥΠϒϥϦɺґଘؔ܎ 11

  13. ύʔτᶃ ࣗ෼Ͱੜ੒͢ΔόΠφϦ 12

  14. ͜Μͳ͜ͱͬͯ͋Γ·ͤΜ͔ʁ •؀ڥͷճ਺͚ͩϏϧυ͢Δ EFW༻ TUH༻ QSPE༻ʜ •લͷόʔδϣϯʹ໭͍ͨ͠ͱ͖࠶౓Ϗϧυ͢Δ •աڈʹੜ੒ͨ͠όΠφϦ͕ࢄΒ͔͍ͬͯΔ •όΠφϦͷ಺༰΍όʔδϣϯ͕෼͔Βͳ͍ 13

  15. ͋Δ͋Δͳ՝୊ •Ϗϧυʹ͕͔͔࣌ؒΔ •ςετࡁΈͷόΠφϦͱҟͳΔ΋ͷΛຊ൪؀ڥʹ σϓϩΠ͢Δ •όΠφϦͷ࠶ར༻΍੔ཧΛߦ͓͏ͱ͢Δͱϛε͕ ൃੜ͢Δɺޮ཰͕མͪΔ 14

  16. ˠੜ੒ͨ͠όΠφϦΛอ؅͓ͯ͜͠͏ ͋Δ͋Δͳ՝୊΁ͷରࡦ •Ϗϧυʹ͕͔͔࣌ؒΔ •ςετࡁΈͷόΠφϦͱҟͳΔ΋ͷΛຊ൪؀ڥʹ σϓϩΠ͢Δ •όΠφϦͷ࠶ར༻΍੔ཧΛߦ͓͏ͱ͢Δͱϛε͕ ൃੜ͢Δɺޮ཰͕མͪΔ 15

  17. όΠφϦɾϦϙδτϦϚωʔδϟʔ Ͱվળͩʂ 16

  18. ੜ੒ͨ͠όΠφϦΛอ؅ 17 όΠφϦΛ อ؅͢Δ ϩʔΧϧ ϦϙδτϦ リポジトリの呼び名は ツールによって 異なります

  19. όΠφϦΛऔಘ 18 όΠφϦΛ औಘ͢Δ ϩʔΧϧ ϦϙδτϦ • νʔϜ಺ͰόΠφϦΛγΣΞ͢Δͱ͖ • ςετ͕ऴΘͬͯຊ൪؀ڥʹσϓϩΠ͢Δͱ͖

    • લͷόʔδϣϯʹ໭͢ͱ͖ ͳͲ
  20. ͦΕͬͯ ϑΝΠϧαʔόʔ͡ΌͩΊʁ 19

  21. ϑΝΠϧαʔόʔͩͱʜ •όΠφϦͷ಺༰͕෼͔Βͳ͍ • ԿΛϏϧυͨ͠΋ͷͳͷ͔ʁͲͷόʔδϣϯ͕ݩͳ ͷ͔ʁͱ͍ͬͨ৘ใ͕෼͔ΓͮΒ͍ • όΠφϦϑΝΠϧͷ໋໊Λ޻෉͢Δ͜ͱͰ؅ཧ͢Δ ͷʹ͸ݶք͕͋Δ 20

  22. ੜ੒ͨ͠όΠφϦΛอ؅ 21 όΠφϦΛ อ؅͢Δ ϩʔΧϧ ϦϙδτϦ ϝλσʔλͱ ͱ΋ʹ ʘ7$4ͷόʔδϣϯʗ ʘϏϧυͨ͠؀ڥʗ

    ʘ؀ڥઢ਺ʗ
  23. 7$4ͰόΠφϦ΋Ұॹʹ ؅ཧ͢Δͷ͸Ͳ͏ʁ 22

  24. •όΠφϦͷอଘʹ࠷దԽ͞Ε͍ͯͳ͍ • όΠφϦ͸αΠζ͕େ͖͍ • όΠφϦ͸ͲΜͲΜ૿͍͑ͯ͘ • όΠφϦ͸ࠩ෼͕औΕͳ͍ •όʔδϣϯ؅ཧ͕ෳࡶʹͳΔ • ιʔείʔυͱόΠφϦ͸ରͰ͸ͳ͍ͷͰҰ؏ੑ

    ͷ͋Δ؅ཧ͕೉͘͠ͳΔ 23 7$4ͩͱʜ
  25. ΍ͬͺΓόΠφϦ͸ όΠφϦɾϦϙδτϦϚωʔδϟʔ Ͱ؅ཧ͠Α͏ʂ 24 餅は餅屋ですね!

  26. ϩʔΧϧϦϙδτϦͰͰ͖Δ͜ͱ •ੜ੒ͨ͠όΠφϦΛอ؅͢Δ • όΠφϦͷ࠶ར༻͕͠΍͘͢ͳΓϏϧυճ਺͕ݮΔ • όΠφϦͷ഑෍ɺνʔϜ಺ڞ༗͕Ͱ͖Δ • σʔλ༰ྔΛແବʹ͠ͳ͍อଘ͕ߟྀ͞Ε͍ͯΔ 25

  27. ϩʔΧϧϦϙδτϦͰͰ͖Δ͜ͱ 26 •ϝλσʔλΛ෇༩͢Δ • όΠφϦ͕૿͑ͯ΋؅ཧ͠΍͍͢ • ґଘؔ܎΍ϝλσʔλͳͲͷࠩ෼͕औΕΔ • όΠφϦΛݕࡧͰ͖Δ •

    7$4ͷͲͷόʔδϣϯ͕ݩͱͳ͔ͬͨه࿥͠ɺτϥ ϒϧ࣌ͷௐࠪ΍؂ࠪʹඋ͑Δ͜ͱ͕Ͱ͖Δ
  28. ύʔτᶄ ֎͔Βऔಘͯ͠࢖͏όΠφϦ 27

  29. ͜Μͳ͜ͱͬͯ͋Γ·ͤΜ͔ʁ •৽͍͠ϥΠϒϥϦ͕ඞཁͱͳΔϏϧυΛ͢Δ౓ʹ Πϯλʔωοτܦ༝Ͱґଘղܾ͢Δ •͋ΔόΠφϦ͕ґଘ͢ΔϥΠϒϥϦ܈ͦΕͧΕͷ όʔδϣϯΛ؅ཧ͍ͯ͠ͳ͍ 28

  30. ͋Δ͋Δͳ՝୊ •Ϗϧυʹ͕͔͔࣌ؒΔ •ϥΠϒϥϦऔಘઌ΍ωοτϫʔΫ౳ͷো֐ʹΑΓ ґଘղܾ͕Ͱ͖ͳ͍ •ϥΠϒϥϦͷόʔδϣϯҧ͍Ͱτϥϒϧ͕ى͖Δ •044ͷϥΠηϯε΍ηΩϡϦςΟνΣοΫ͕ͮ͠ Β͍ɺͰ͖͍ͯͳ͍ 29

  31. ͋Δ͋Δͳ՝୊΁ͷରࡦ •Ϗϧυʹ͕͔͔࣌ؒΔ •ϥΠϒϥϦऔಘઌ΍ωοτϫʔΫ౳ͷো֐ʹΑΓ ґଘղܾ͕Ͱ͖ͳ͍ •ϥΠϒϥϦͷόʔδϣϯҧ͍Ͱτϥϒϧ͕ى͖Δ •044ͷϥΠηϯε΍ηΩϡϦςΟνΣοΫ͕ͮ͠ Β͍ɺͰ͖͍ͯͳ͍ 30 ˠऔಘͨ͠όΠφϦΛอ؅͓ͯ͜͠͏

  32. όΠφϦɾϦϙδτϦϚωʔδϟʔ Ͱվળͩʂ 31

  33. औಘͨ͠όΠφϦΛอ؅ 32 όΠφϦΛ อ؅͢Δ ϦϞʔτ ϦϙδτϦ

  34. ϦϞʔτϦϙδτϦͰͰ͖Δ͜ͱ •֎෦͔Βऔಘͨ͠όΠφϦΛอ؅͢Δ • ΩϟογϡʹΑΓ͔࣍ΒϏϧυ͕࣌ؒ୹͘ͳΔ • औಘݩ΍ωοτϫʔΫͷো֐͕͋ͬͯ΋ӨڹΛड͚ ͮΒ͍ •ґଘؔ܎ͷόʔδϣϯ৘ใΛه࿥͢Δ • ࢖༻ϥΠϒϥϦͷϥΠηϯε΍ηΩϡϦςΟͷ؅ཧ

    ͕͠΍͍͢ 33
  35. ϦϞʔτϦϙδτϦͰͰ͖Δ͜ͱ •%PDLFS)VC΁ͷΞΫηεճ਺΋ݮΒͤΔ 34

  36. Ͳ͏΍ͬͯ࢖͏ͷʁ 35

  37. $*$%ύΠϓϥΠϯʹ૊ΈࠐΉ 36 7$4 UFTU CVJME EFQMPZ TFSWFST

  38. $*$%ύΠϓϥΠϯʹ૊ΈࠐΉ 37 7$4 UFTU CVJME #3. TFSWFST EFQMPZ

  39. ͍ͪ͹ΜେࣄͳϕετϓϥΫςΟε •ಉ͡όʔδϣϯͷϏϧυ͸ճʹཹΊΔ • Ϗϧυ࣌ؒΛ୹ॖ͢ΔͨΊ • ςετͨ͠΋ͷͱಉ͡όΠφϦΛϦϦʔε͢ΔͨΊ 38 これにより 無駄なリソースを 使わずに済みます

  40. ࣮ࡍɺ࢖ͬͯΈͯͲ͏ʁ 39

  41. όΠφϦɾϦϙδτϦϚωʔδϟʔͱࢲ •೔ʑ࢖͍͚ͬͯͨͲɺجຊతʹ͸$*ΛϙνΔ͚ͩ Ͱؒ઀తͳؔΘΓͩͬͨ •ਖ਼௚ɺ໨Λ޲͚ͨ͜ͱ΋ϝϦοτΛߟ͑ͨ͜ͱ΋ ͳ͔ͬͨ •ࠓࢥ͑͹Ըܙ͕෼͔ΔʜಛʹɺϏϧυͷ଴ͪ࣌ؒ ୹ॖʂ 40 エンジニア時代に 使っていました

  42. ಉ͡Α͏ͳํɺ ݁ߏ͍Βͬ͠Ό͍·ͤΜ͔ʂʁ 41

  43. طʹ࢖͍ͬͯΔํ΋ ͦͷศར͞Λ ࠶ ೝࣝ͢Δ ͖͔͚ͬͱͳΕ͹خ͍͠Ͱ͢ 42

  44. ׆༻๏΍ϕετϓϥΫςΟε΋ ͋ΔͷͰɺ໨Λ޲͚ͯΈ͍ͯͩ͘͞ 43

  45. ͦͯ͠ 44

  46. ·ͩ࢖ͬͨ͜ͱ͕ͳ͍ํ͸ όΠφϦɾϦϙδτϦϚωʔδϟʔ σϏϡʔ͠·͠ΐ͏ʂ 45

  47. όΠφϦɾϦϙδτϦϚωʔδϟʔͰ Ͱ͖Δ͜ͱ ·ͱΊ •ࣗΒੜ੒ͨ͠΋ͷ΋֎͔Βऔಘͨ͠΋ͷ΋ɺόΠ φϦΛ࢖͍ࣺͯʹͤͣ࠶ར༻Ͱ͖Δ •ϝλσʔλʹΑΓόʔδϣϯΛ࢝Ίͱ͢Δॏཁͳ ৘ใ͕෼͔Γɺݕࡧ΍ௐ͕ࠪ͠΍͍͢ •Ϗϧυ࣌ؒɾճ਺ΛݮΒ͢͜ͱ͕Ͱ͖Δ 46 ޮ཰Λ্͛ͯΑΓਝ଎ͳϦϦʔεΛʂ

  48. 5IBOLZPV 47 \バイナリ・リポジトリマネージャーしか勝たん/ バイバイナリー!