CI/CD ããŒã«ããã¯æŠç¥ãšã¯ãç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³ããã³ç¶ç¶çãããã€ã¡ã³ã (CI/CD) ã§ãããã€ã¡ã³ãã®å€±æããšã©ãŒããŸãã¯æãŸãããªã圱é¿ãçºçããåŸã«ãœãããŠã§ã¢ ã¢ããªã±ãŒã·ã§ã³ã®å®å®ããç¶æ ãè¿ éãã€å¹ççã«å埩ããããã«ããœãããŠã§ã¢éçºè ãš IT ãããã§ãã·ã§ãã«ãæ¡çšããå æ¬çãªã¢ãããŒããæããŸãã ) ãã€ãã©ã€ã³ãããŒã«ããã¯æŠç¥ãå®è£ ããäž»ãªç®çã¯ãããŠã³ã¿ã€ã ãæå°éã«æããã·ã¹ãã ã®å®å®æ§ãç¶æããã¢ããªã±ãŒã·ã§ã³ã®åé¡ããšã³ããŠãŒã¶ãŒã«äžãã圱é¿ã軜æžããããšã§ãã
广çãªããŒã«ããã¯æŠç¥ã¯ã倿Žãå ã«æ»ãã以åã«ãããã€ãããå®å®ããããŒãžã§ã³ã®ã¢ããªã±ãŒã·ã§ã³ã埩å ããããã®äœç³»çãªèšç»ãæäŸãããããCI/CD ããã»ã¹ã®éèŠãªã³ã³ããŒãã³ãã圢æããŸãã調æ»ã«ãããšããœãããŠã§ã¢ ã¢ããªã±ãŒã·ã§ã³ã®å€§éšåã¯ãçµ¶ãéãªãç¹°ãè¿ãããã¢ããããŒããšãªãªãŒã¹ã«ããåé¡ãè匱æ§ãçµéšããŠããŸãããããã£ãŠãå°èŠæš¡ãããžã§ã¯ããšãšã³ã¿ãŒãã©ã€ãºã¬ãã«ã®ãããžã§ã¯ãã®äž¡æ¹ã«ãšã£ãŠããã£ãããšããããŒã«ããã¯èšç»ãç«ãŠãããšãéèŠã§ãã
Webãã¢ãã€ã«ãããã³ããã¯ãšã³ã ã¢ããªã±ãŒã·ã§ã³ã®æ§ç¯ããã»ã¹ãæ¹åããããšãç®çãšãã匷åãªno-codeãã©ãããã©ãŒã ã§ããAppMaster ãCI/CD ããŒã«ããã¯æŠç¥ã®å®è£ ã«é¢ããæ¥çã®ãã¹ã ãã©ã¯ãã£ã¹ã«æºæ ããŠããŸãããã®ã»ã¯ã·ã§ã³ã§ã¯ã AppMasterã®ã³ã³ããã¹ãã«ããã CI/CD ããŒã«ããã¯æŠç¥ã®éèŠãªåŽé¢ã«ã€ããŠè©³ãã説æããŸãã
ãŸããé©åã«èšèšããã CI/CD ããŒã«ããã¯æŠç¥ã«ã¯ãããã€ãã®éèŠãªèŠçŽ ãçµã¿èŸŒãŸããŠããå¿ èŠããããŸãã
1. ããŒãžã§ã³ç®¡ç: ã¢ããªã±ãŒã·ã§ã³ã®ãœãŒã¹ ã³ãŒãã®å€æŽã远跡ããã³ç®¡çããã«ã¯ã广çãªããŒãžã§ã³ç®¡çã·ã¹ãã ãäžå¯æ¬ ã§ãã Git ã Subversion ãªã©ã®ãã©ãããã©ãŒã ã䜿çšãããšãéçºè ã¯ã¢ããªã±ãŒã·ã§ã³ã®è€æ°ã®ããŒãžã§ã³ãå¹ççã«ç¶æã§ãããããå¿ èŠã«å¿ããŠä»¥åã®å®å®ãããªãªãŒã¹ã«ç°¡åã«æ»ãããšãã§ããŸãã
2. èªåå: ããŒã«ãã㯠ããã»ã¹ã®èªååã¯ãé å»¶ã人çãšã©ãŒãæžããããã«äžå¯æ¬ ã§ãã JenkinsãGitLabãCircleCI ãªã©ã®ææ°ã® CI/CD ããŒã«ã掻çšããããšã§ãéçºè ã¯ããããã€ã¡ã³ã ãã€ãã©ã€ã³ãã¢ããªã±ãŒã·ã§ã³ã®å®å®æ§ãæãªããšã©ãŒããã®ä»ã®åé¡ãç¹å®ãããšãã«ãããŒã«ãã㯠ããã»ã¹ãèªåçã«ããªã¬ãŒãããããšãç°¡åã«ç¢ºèªã§ããŸãã
3. ç£èŠãšç£æ»: éçºè ã¯ãã·ã¹ãã ã®å®å®æ§ã確ä¿ããæœåšçãªåé¡ãæ©æã«ç¹å®ããããã«ãç£èŠãšç£æ»ã®æ©èœã CI/CD ããŒã«ããã¯æŠç¥ã«çµã¿èŸŒãå¿ èŠããããŸãã广çãªç£èŠãœãªã¥ãŒã·ã§ã³ã¯ãã¢ããªã±ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹ã«é¢ãããªã¢ã«ã¿ã€ã ã®æŽå¯ãæäŸããéçºè ãåé¡ã®ããå±éãè¿ éã«ããŒã«ããã¯ããåé¡ã®æ ¹æ¬åå ã远跡ããã®ã«åœ¹ç«ã¡ãŸãã
4. ææžåãšã³ãã¥ãã±ãŒã·ã§ã³: ããŒã«ããã¯æŠç¥ãããŸãå±éããã«ã¯ãååã«ææžåãããããŒã«ããã¯æé ãšããŒã ã¡ã³ããŒéã®åŒ·åãªã³ãã¥ãã±ãŒã·ã§ã³ãäžå¯æ¬ ã§ããéçºè ã¯ãèããããã·ããªãªãèªåããŒã«ããã¯ã®ããªã¬ãŒ ã¡ã«ããºã ãããŒã«ããã¯ãæåã§éå§ããæ¹æ³ãªã©ãããŒã«ãã㯠ããã»ã¹ã«é¢ããæç¢ºãªã¬ã€ãã©ã€ã³ãç¶æããå¿ èŠããããŸãã
AppMaster ããããã®éèŠãªåŽé¢ã CI/CD ããŒã«ããã¯æŠç¥ã«çµã¿èŸŒãã§ãããã客æ§ã¯æå°éã®äžæã§ããè¿ éãªã¢ããªã±ãŒã·ã§ã³éçºãäœéšã§ããããã«ãªããŸãã顧客ãAppMasterã®ãå ¬éããã¿ã³ãæŒããšããã©ãããã©ãŒã ã¯ãã¹ãŠã®ãã«ãŒããªã³ããååŸããŠã¢ããªã±ãŒã·ã§ã³ã®ãœãŒã¹ ã³ãŒããçæãããšåæã«ãã³ã³ãã€ã«ããã¹ããã¯ã©ãŠããžã®ãããã€ã¡ã³ããåŠçããŸãããã®çµæã AppMaster顧客ã¯ã30 ç§ä»¥å ã«æ°ããã¢ããªã±ãŒã·ã§ã³ ããŒãžã§ã³ãçæããŠãããã€ã§ããããã«ãªããŸãã
ããã«ã AppMasterå®éã®ã¢ããªã±ãŒã·ã§ã³ãçæããããã顧客ã¯å®è¡å¯ââèœãªãã€ã㪠ãã¡ã€ã«ããœãŒã¹ ã³ãŒããååŸããŠããªã³ãã¬ãã¹ã§ã¢ããªã±ãŒã·ã§ã³ããã¹ãããããšãã§ããŸããããã«ãããç¹ã«ããŒã«ããã¯æŠç¥ãå®è£ ããå Žåã«ãããåªããå¶åŸ¡ãšæè»æ§ã確ä¿ãããŸãã
ããã«ã AppMaster ããµãŒããŒendpointsãããŒã¿ããŒã¹ ã¹ããŒãç§»è¡ã¹ã¯ãªããçšã® Swagger (OpenAPI) ããã¥ã¡ã³ããªã©ãå¿ èŠãªããã¥ã¡ã³ããèªåçã«çæããŸããããã«ãããããŒã«ãã㯠ããã»ã¹ãå€§å¹ ã«ç°¡çŽ åãããã客æ§ã¯å¿ èŠã«å¿ããŠä»¥åã®å®å®ããã¢ããªã±ãŒã·ã§ã³ ããŒãžã§ã³ã«è¿ éã«æ»ãããšãã§ããŸãã
çµè«ãšããŠãCI/CD ããŒã«ããã¯æŠç¥ã¯ãã·ã¹ãã ã®å®å®æ§ãç¶æããã¢ããªã±ãŒã·ã§ã³ã®ããŠã³ã¿ã€ã ãåæžããå±éã®åé¡ã«ãããšã³ããŠãŒã¶ãŒãžã®åœ±é¿ãæå°éã«æããããã«éåžžã«éèŠã§ãã AppMasteræ¥çã®ãã¹ã ãã©ã¯ãã£ã¹ã«åŸããããŒãžã§ã³ç®¡çãèªååãç£èŠãç£æ»ãææžåãã³ãã¥ãã±ãŒã·ã§ã³ãªã©ã®éèŠãªåŽé¢ãçµã¿èŸŒãããšã§ã顧客ãããŒã«ããã¯æŠç¥ãå ç¢ãã€å¹ççã§ããããšãèªèããŠãèªä¿¡ãæã£ãŠã¢ããªã±ãŒã·ã§ã³ãéçºããã³å±éã§ããããã«ããŸãã