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

開発体験・効率を上げよ!今日からはじめるべきCI/CD入門

 開発体験・効率を上げよ!今日からはじめるべきCI/CD入門

OLIENT TECH株式会社主催の実践教育プログラム Webハッカソンにて,CI/CD(主にGithub Actionsに関する)技術LTを行いました.

高専テクノゼミ 実践教育プログラム
https://techno-semi.com/practice

OLIENT TECH株式会社
https://olienttech.com/

高専テクノゼミ
https://techno-semi.com/

りゅうせい

March 17, 2024
Tweet

Other Decks in Technology

Transcript

  1. OLIENTTECH,inc. All Rights Reserved 📝 "CPVU.F   ౻ຊ ོᏵ

    'VKJNPUP3ZVTFJ n 0-*&/55&$)גࣜձࣾ ٕज़੹೚ऀ n ೥ੜ·Ε ಙࢁߴઐଔ n ۝भେֶେֶӃ γεςϜ৘ใՊֶ෎ म࢜೥ n ٕज़ྖҬɿόοΫΤϯυɼΠϯϑϥ !GVKJSZV !JGVKJNPUP  5FSSBGPSN  ($1 :".-৬ਓ 1ZUIPO ΰϧϑ⛳ ΤϨΫτʔϯ🎹
  2. OLIENTTECH,inc. All Rights Reserved ͜ͷ-5Λฉ͘Ϟνϕʔγϣϯ n νʔϜ։ൃΛମݧ͢Δͱʜ p ίʔυͷΠϯσϯτ͕ͱ͜ΖͲ͜Ζ͓͔͍͔͠ΒՄಡੑ͕௿͍💢 p

    ίʔυͷॻ͖ํ͕ͦͷݴޠ͕ਪ঑͢Δॻ͖ํͰ͸ͳ͍🥺 p "1*͕όάͩΒ͚͗ͯ͢ϑϩϯτ͔Βۤ৘͕͘Δ😱 p σϓϩΠ͔ͯ͠ΒΤϥʔൃ֮💥 ΞϓϦέʔγϣϯίʔυΛॻ͘͜ͱ͕։ൃͷશͯͰ͸ͳ͍ʂ   ग़໭Γͷൃੜ΍։ൃମݧΛԼ͛Δ͜ͱʹͳΔ
  3. OLIENTTECH,inc. All Rights Reserved ΞδΣϯμ     

    $*$%ͬͯͳʔʹʁ (JUIVC "DUJPOTͰͰ͖Δ͜ͱ ϋϯζΦϯɿ'PSNBUUFSɾ-JOUFSฤ ϋϯζΦϯɿίʔυςετฤ   ϋϯζΦϯɿσϓϩΠɾTMBDL௨஌ฤʢ͓·͚ʣ
  4. OLIENTTECH,inc. All Rights Reserved $*$%ͱ͸ $*$%ͬͯͳʔʹʁ ΤϯδχΞͷ։ൃମݧΛ޲্ͤ͞Δπʔϧ   n

    $*ܧଓతΠϯςάϨʔγϣϯ $POUJOVPVT*OUFHSBUJPO n $% ܧଓతσϦόϦʔ $POUJOVPVT%FMJWFSZ 開発環境 コード管理 CI/CDパイプライン 実⾏環境 $% ղੳ ςετ σϓϩΠ Ϗϧυ $*
  5. OLIENTTECH,inc. All Rights Reserved $* $POUJOVPVT*OUFHSBUJPO ʹ͍ͭͯ $*$%ͬͯͳʔʹʁ ίʔυͷ඼࣭ΛอͪɼػೳΛνΣοΫʂ 

     n ղੳ ίʔυΛղੳ͠ɼ੔ܗ΍ίʔυن໿ҧ൓Λݕग़ n Ϗϧυ ίϯύΠϧΛ௨͠ɼΤϥʔΛݕग़ n ςετ ։ൃͨ͠ػೳ͕ద੾͔ݕূ͠ɼόάΛݕग़ 開発環境 コード管理 CI/CDパイプライン 実⾏環境 $% ղੳ ςετ Ϗϧυ $*
  6. OLIENTTECH,inc. All Rights Reserved $% $POUJOVPVT%FMJWFSZ ʹ͍ͭͯ $*$%ͬͯͳʔʹʁ ඼࣭Λ֬อͨ͠ΞϓϦΛεϐʔσΟʹϢʔβʹಧ͚Α͏ʂ 

     n σϓϩΠ ࣗಈͰ։ൃͨ͠ΞϓϦέʔγϣϯΛϢʔβ͕ ར༻Ͱ͖ΔΑ͏ʹϦϦʔε͢Δ͜ͱ ↪ ։ൃ୯ҐΛখ͘͢͞Δͱख࡞ۀͰ͸େมͩ͠ϛε΋ى͖Δ 開発環境 コード管理 CI/CDパイプライン 実⾏環境 $% σϓϩΠ
  7. OLIENTTECH,inc. All Rights Reserved HJUIVCXPSLqPXT௚Լʹಛఆͷܗࣜͷ ZBNMϑΝΠϧΛ഑ஔ͢Δ͚ͩͰ$*ΛߏஙՄೳ Մೳੑ͸ແݶେ (JUIVC "DUJPOTͰͰ͖Δ͜ͱ ࣗ෼ͨͪͷ։ൃ؀ڥʹ߹Θͤͨ࢖͍ํ͕͋Δʂ

      n ୭͔͕࡞੒ͨ͠BDUJPOΛར༻ͯ͠ͷ࣮૷ n ίϚϯυΛ૊Έ߹Θͤͯͷ࣮૷ n BDUJPOTͷTDSJQUΛࣗ෼Ͱ࣮૷ͯͦ͠ΕΛ࣮ߦ (JUIVC "DUJPOT ਤ(PϑΝΠϧΛϏϧυ ςετ͢ΔBDUJPOTͷྫ
  8. OLIENTTECH,inc. All Rights Reserved ΞδΣϯμ     

    ϋϯζΦϯɿ'PSNBUUFSɾ-JOUFSฤ  
  9. OLIENTTECH,inc. All Rights Reserved ؀ڥߏங ϋϯζΦϯd'PSNBUUFSɾ-JOUFSฤd   ʮ$IPPTFBOPXOFSʯ Ͱ֤ࣗͷΞΧ΢ϯτΛબ୒

     ʮ$SFBUFGPSLʯΛΫϦοΫ ͜͜ΛΫϦοΫ ֤ࣗͷϦϙδτϦʹϑΥʔΫͰ͖ͨΒɼ͋ͱ͸DMPOFͯ͠༡ΜͰԼ͍͞ 
  10. OLIENTTECH,inc. All Rights Reserved 'PSNBUUFSɾ-JOUFSͬͯͳʔʹʁʁ n 'PSNBUUFSίʔυ੔ܗ n -JOUFS ϓϩδΣΫτ΍ݴޠͷϧʔϧΛνΣοΫ

    ϋϯζΦϯd'PSNBUUFSɾ-JOUFSฤd 'PSNBUUFSͱ-JOUFSʹ͍ͭͯ஌Δ   SFWJFXEPHZNMΛݟͯΈΑ͏ʂ ˞จ๏ʹ͍ͭͯ͸આ໌͠ͳ͍ͷͰ֤ࣗͰௐ΂ͯͶ🌟 SFWJFXEPHZNM
  11. OLIENTTECH,inc. All Rights Reserved -JOUFSʹ͍ͭͯݟͯΈΑ͏ ϋϯζΦϯd'PSNBUUFSɾ-JOUFSฤd   n ͜ͷϓϩδΣΫτͰ͸ɼϩάͷग़ྗͷ࢓ํʹGNUΛ࢖Θͳ͍Α͏ʹ

    ϧʔϧΛఆΊ͍ͯΔͱ͢Δʢ͔͠͠ɼ͓஡໨͸౻ຊ͘Μ͸Θ͟ͱ࢖ͬͪΌ͏ʣ n ͜ΕΛ͜ͷ··QVTI͢Δͱʜ ͜ͷϩάͷग़͠ํ͸ ͩΊͩΑͬͯ-JOUFS ͕ڭ͑ͯ͘Εͨ
  12. OLIENTTECH,inc. All Rights Reserved ΞδΣϯμ     

    ϋϯζΦϯɿίʔυςετฤ  
  13. OLIENTTECH,inc. All Rights Reserved ςετͬͯͳʔʹʁ ϓϩάϥϛϯάʹ͓͚Δςετͱ͸ ʜ n Կ͔ͷೖྗʹରͯ͠ɼग़ྗ͸ਖ਼͍͠ʁ n

    σʔλϕʔεͱ͔ଞͷػೳͱҰॹʹಈ͔ͯ͠΋େৎ෉ʁ ʜFUD ↪ ͜ΕΒΛ zίʔυzʹΑͬͯςετ͢Δ ϋϯζΦϯdίʔυςετฤd ΈΜͳݏ͍͚ͩͲɼͱͬͯ΋େࣄͳςετʹ͍ͭͯ஌Ζ͏   NBJO@UFTUHP HP@UFTUZNMΛݟͯΈΑ͏ʂ ˞จ๏ʹ͍ͭͯ͸આ໌͠ͳ͍ͷͰ֤ࣗͰௐ΂ͯͶ🌟 HP@UFTUZNM
  14. OLIENTTECH,inc. All Rights Reserved ςετΛಈ͔ͯ͠ΈΑ͏ʂ ϋϯζΦϯdίʔυςετฤd   n ؔ਺HFU6TFSͰ͸ɼೖྗͰ༩͑ΒΕͨ*%ͷϢʔβ৘ใΛฦ͢͜ͱ͕࢓ࣄ

    p JE͕ೖྗ BSHT ͞ΕΔͱɼ VTFSͷσʔλ͕ฦΔ p JE͕ೖྗ͞ΕΔͱɼ ͦΜͳ΋ͷଘࡏ͠ͳ͍͔ΒΤϥʔ p Ͱ͸ɼTVDDFTTͷJEͷೖྗΛ ˠʹม͑ΔͱͲ͏ͳΔ ʜ 🧐 ͜͜Λʹͯ͠ΈΔ NBJO@UFTUHP
  15. OLIENTTECH,inc. All Rights Reserved ςετΛಈ͔ͯ͠ΈΑ͏ʂ ϋϯζΦϯ dίʔυςετฤd   n

    ΋ͪΖΜɼJE Λೖྗͨ͠Β VTFSͷσʔλΛฦͯ͠ཉ͍͠ͷʹɼ VTFSͷσʔλ͕ฦͬͯ͘Δ͜ͱΛԾఆ͍ͯ͠ΔͷͰΤϥʔ😱 n MJTU1PTU#Z6TFS*%Tͷςετ΋ ࣮૷͍ͯ͠ΔͷͰɼ৭ʑ༡ΜͰΈΑ͏ʂ ͜͜Λʹͯ͠ΈΔ 実際はuser2なのに テストの答えはuser1 になってるぞ!
  16. OLIENTTECH,inc. All Rights Reserved ΞδΣϯμ     

      ϋϯζΦϯɿσϓϩΠɾTMBDL௨஌ฤʢ͓·͚ʣ
  17. OLIENTTECH,inc. All Rights Reserved σϓϩΠ݁ՌΛ௨஌Ͱ஌Γͨ͘ͳ͍ʁʁ σϓϩΠͷࣗಈԽʢ$%ʣ΋(JUIVC "DUJPOTΛ༻͍ͯՄೳ˞ ͕ͩɼͦͷ݁ՌΛTMBDLʹ௨஌͢Δ͜ͱ΋Ͱ͖Δ 📩 SU$BNQBDUJPOTMBDLOPUJGZͷBDUJPOΛར༻ͯ͠ΈΑ͏ʂ

    ࢖͍ํ͸ԼهΛࢀর 👀 ʲ(JU)VC"DUJPOTʳϫʔΫϑϩʔͷ݁ՌΛ4MBDL௨஌͢Δ ˞σϓϩΠઌʹΑͬͯ͸ଞͷ$%πʔϧͱ࿈ܞ͢Δඞཁ͋Γ ϋϯζΦϯ dσϓϩΠɾTMBDL௨஌ฤd ଞ͸ࣗಈԽͯ͠σϓϩΠ݁Ռ͸௚઀ݟʹ͍͘ͷʁʁ   ਤ4MBDL௨஌ྫ
  18. OLIENTTECH,inc. All Rights Reserved $*$%Ͱҙࣝ͢΂͖͜ͱ ͓ΘΓʹ ຊ౰ʹ։ൃମݧ্͕͕͍ͬͯΔͷ͔ʁ   n

    $*$%ΛೖΕͨͷ͸ྑ͍͕ɼ৔߹ʹΑͬͯ͸ͦΕ͕։ൃମݧΛ Լ͛Δ͜ͱ΋ 😱 p ྫɿಋೖͨ͠$*͕ΊͪΌͪ͘Ό͕͔͔࣌ؒΔ p ྫɿ-JOUFSͷద༻ϧʔϧ਺͕ଟ͘ɼྑͦ͞͏ͳίʔυ΋ΤϥʔʹͳΔ ରࡦྫ n ΩϟογϡΛ࢖͏ ˠ Ϗϧυ΍ςετΛߴ଎ʹ n ςετΛฒྻԽͨ͠ΓɼඞཁͳςετέʔεΛ࠶ݕ౼͠௚͢ n νʔϜͰಋೖ͢΂͖ɾ֎͢΂͖$*$%Λݕ౼͢Δ৔Λઃ͚Δ
  19. OLIENTTECH,inc. All Rights Reserved ·ͱΊ n ։ൃମݧɾޮ཰Λ্͛Δ͜ͱͰνʔϜશମ͕޾ͤʹͳΔ n ྫ͑ϋοΧιϯͰ΋ ʮͱΓ͋͑ͣ࡞Ε͹ྑ͍ʯ

    ˠ ʮ΋ͬͱྑ͍΋ͷΛ࡞Γ͍ͨʯ ͱͳΔ͜ͱ͕େ੾ n $*$%Λಋೖ͢Δ͜ͱͰɼΈͳ͞Μͷ։ൃ͕ΑΓॆ࣮ͨ͠΋ͷʹ ͳΔ͜ͱΛف͍ͬͯ·͢ ͓ΘΓʹ ΞϓϦέʔγϣϯίʔυΛॻ͘͜ͱ͕։ൃͷશͯͰ͸ͳ͍ʂ