ããã«ã¡ã¯ãBacklog ã®ã½ããã¦ã§ã¢ã¨ã³ã¸ãã¢ã®ä¸æã§ãã
ã¨ãã« Backlog ã® Git æ©è½ã®éçºã¨éç¨ãæ
å½ãã¦ãã¾ãã
â¦â¦ããèãã¦ãããå ·ä½çã«ã©ããªãã¨ããã¦ããã®ï¼ãã¨ãã³ã¨ããªãæ¹ãå¤ãã®ã§ã¯ãªãã§ããããã課é¡ç®¡çãECãµã¤ããªãã¤ã¡ã¼ã¸ããããããããã¾ããããSaaSã¨ãã¦Gitãæä¾ãã¦ãããµã¼ãã¹ã¯ãã¾ãå¤ããªãã§ãããã
Git ãã¼ã ã¯ãDevOps ãªãã¼ã ã¨ãã¦Gitæ©è½ã®éçºã¨éç¨ã®ä¸¡æ¹ãæ ã£ã¦ãã¾ãããã®è¨äºã§ã¯ãç§ãã¡ãæ¥ã ã©ã®ãããªã·ã¹ãã ã課é¡ã«åãçµãã§ããã®ãããã®è£å´ããç´¹ä»ãã¾ãã
ç®æ¬¡
Git æ©è½ã®ã¢ã¼ããã¯ãã£ã®å ¨ä½å
ã¾ãã¯ãBacklog ã® Git æ©è½ãã©ã®ãããªæ§æã§åãã¦ããã®ãããã£ããã¨èª¬æãã¾ãã
Git æ©è½ã®ã¢ã¼ããã¯ãã£æ¦è¦
ã¦ã¼ã¶ã¼ããã®ãªã¯ã¨ã¹ãã¯ãWebãAPIãHTTPãSSHã¨ãã£ãæ§ã ãªå ¥ãå£ããåãä»ãããã¾ãã
ãããã®ãªã¯ã¨ã¹ãã¯ãããã·ã«ãã£ã¦ãç©çãªãã¸ããªãæã¤ Primary/Replica æ§æã®EC2ã¤ã³ã¹ã¿ã³ã¹ã«å²ãæ¯ããã¾ããæ¸ãè¾¼ã¿ãå®äºãã㨠Worker ãèµ·åããéç¥ãªã©ã®å¾å¦çãå®è¡ãã¾ããã¾ããReplication Worker ã Primary 㨠Replica ã®ãã¼ã¿ã常ã«åæãããã¨ã§ããã¼ã¿ã®æ´åæ§ãä¿ã¡ã¾ãã
ç§ãã¡ã¯ããã®ã·ã¹ãã å ¨ä½ã®éçºã¨ã¡ã³ããã³ã¹ããã¦ããããã§ããã
SaaS ã¨ã㦠Git ãæä¾ããããã«æ¬ ãããªãæ©è½
èªå® ãµã¼ãã¼ã§Gitãéç¨ãã¦ãã人ãªã git-daemon ã®ãããªã·ã³ãã«ãªãµã¼ãã¹ãæãæµ®ãã¹ãããããã¾ãããããããSaaSã¨ãã¦å¤ãã®ã¦ã¼ã¶ã¼ã«å©ç¨ãã¦ãããããã«ã¯ãããã ãã§ã¯ä¸ååã§ããç§ãã¡ã¯ã以ä¸ã®ãããªæ©è½ãç¬èªã«éçºãã¦ãã¾ãã
èªè¨¼ã»èªå¯ã®åçå¶å¾¡
Gitã®HTTPã¯Basicèªè¨¼ãSSHã¯å
¬ééµã«ãã£ã¦èªè¨¼ãè¡ãã¾ãã
Backlogã§ã¯ã¦ã¼ã¶ã¼ããå人è¨å®ãã®ç»é¢ã§çºè¡/ç»é²ããæ
å ±ã使ã£ã¦èªè¨¼ãã¾ãã
ãã®æ
å ±ã®é£æºã®ããã« Git HTTPã»Git SSH ã®ãµãã·ã¹ãã ãèªä½ããã¦ã¼ã¶ã¼æ
å ±ããªãã¸ããªã¸ã®ã¢ã¯ã»ã¹æ¨©ãªã©ãåçã«ãã§ãã¯ããä»çµã¿ãå®è£
ãã¦ãã¾ãã
ãªãã¸ããªã®ç®¡çæ©è½
ãªãã¸ããªã®ä½æããªãã¼ã ãåé¤ã¨ãã£ãæä½ã¯ãWebç»é¢ããè¡ããã¾ããGitãµã¼ãã¼ã¨ã¯å¥ã®ãµã¼ãã¼ã§åãã¦ããWebã¢ããªã±ã¼ã·ã§ã³ããã®ãªã¯ã¨ã¹ããåãåããé©åã«ãªãã¸ããªãæä½ããä»çµã¿ãå¿ è¦ã§ãã
ã¹ãã¬ã¼ã¸ã®åé·å
Backlogã§ã¯ãè² è·åæ£ã¨å¯ç¨æ§åä¸ã®ããã«Gitã®ã¹ãã¬ã¼ã¸ãåé·åãã¦ãã¾ããããã«ãããè² è·ã忣ã§ããã ãã§ãªãããµã¼ãã¹ã®åæ¢ãä¼´ããã«ããã«ã¦ã§ã¢ã®ã¢ãããã¼ããå¯è½ã«ãªããªã©ãéç¨é¢ã§ã大ããªã¡ãªãããããã¾ãã
詳細ãªä»çµã¿ã¯ Backlogã®Gitãã¹ãã£ã³ã°ã«ãããåé·åã¨è² è·åæ£ã®ä»çµã¿ ã§ç´¹ä»ãã¦ãã¾ãã
ã¤ãã³ã飿ºæ©æ§
git push ã®å¾ãBacklogã¸ã®éç¥ãã³ãããã¡ã¼ã«ãWebhookãªã©ãæ§ã
ãªã¤ãã³ãã飿ºãããå¿
è¦ãããã¾ãããããã®æ©è½ããGitã®çµã¿è¾¼ã¿æ©è½ã«ã¯å«ã¾ãã¦ãã¾ããã
ãã«ãªã¯ã¨ã¹ãæ©è½
ãã«ãªã¯ã¨ã¹ããGitã®çµã¿è¾¼ã¿æ©è½ã§ã¯ããã¾ããããã«ãªã¯ã¨ã¹ãã®ã¿ã¤ãã«ã詳細ããã¼ã¿ãã¼ã¹ã«ä¿åããGitãªãã¸ããªå ã®refsãæä½ãããªã©ãGitå´ã¨ãã¼ã¿ãã¼ã¹å´ã®ä¸¡æ¹ã飿ºããã¦å®ç¾ãã¦ãã¾ãã
ãµã¼ãã¹ãå®å®ç¨¼åãããããã®éç¨
ç§ãã¡ã¯éçºã ãã§ãªãããµã¼ãã¹ãå®å®ãã¦æä¾ããããã®éç¨ãéè¦ãªä»äºã¨æãã¦ãã¾ãã
ç£è¦ã¨ã¢ã©ã¼ã対å¿
Mackerel ã Datadog ãæ´»ç¨ãã¦ç£è¦ãè¡ã£ã¦ãã¾ããã¨ã¼ã¸ã§ã³ãã®ã»ããã¢ãããç£è¦ã«ã¼ã«ã®è¿½å ã»æ´æ¹ããã¼ã ã§è¡ã£ã¦ãã¾ãã
ã¢ã©ã¼ã対å¿ãéç¨ã®èªååã«ã¤ãã¦ã¯ æä½æ¥ããªãããï¼Backlog Gitãã¼ã ã®éç¨æ¹å ã§ã詳ãã解説ãã¦ãã¾ãã
EC2ãããã«ã¦ã§ã¢ã®ã¡ã³ããã³ã¹
EC2ã®ã«ã¼ãã«ã¢ãããã¼ãããµã¼ãã¼ã§ä½¿ç¨ãã Git ã®ã¢ãããã¼ããEBSããªã¥ã¼ã ã®æ¡å¼µãªã©ãè¡ãã¾ãã
åè¿°ããããã«EC2ã¤ã³ã¹ã¿ã³ã¹ã¯åé·åããã¦ãããããç¡åæ¢ã§ã¡ã³ããã³ã¹ãããã¨ãå¯è½ã¨ãªã£ã¦ãã¾ãã
ãã¼ã¿ã®ãã§ãã¯ã¨ãªã«ããªã¼
Primary 㨠Replica ã®ãã¼ã¿ã¯å¸¸ã«åæããã¦ãã¾ãããä¸ãä¸ã«åãã¦ãã®æ´åæ§ãä¿ããã¦ããããããã°ã©ã ã§å®æçã«ãã§ãã¯ãã¦ãã¾ãã
åé¡ãè¦ã¤ãã£ãéã¯è¿
éã«ä¿®å¾©ãè¡ãã¾ãã
åãåãã調æ»
ã«ã¹ã¿ãã¼ãµãã¼ãã¨é£æºããæè¡çã«é£ããåé¡ãå é¨ãç¥ããªãã¨åçãé£ãããã®ã調æ»ãã¾ããæè¡çãªè©³ç´°ã ãã§ãªããã¦ã¼ã¶ã¼ã®èæ¯ãç¶æ³ãæ´çããããã§åçãããã¨ã§ãåé¡ã®æ ¹æ¬çãªè§£æ±ºãç®æãã¦ãã¾ãã
ã¾ã¨ã
ãããã§ãããï¼ æ®æ®µã¯ãã¾ãæèãããã¨ã®ãªãGitãã¹ãã£ã³ã°ã®è£å´ã«ã¯ãæ§ã ãªæè¡ã¨éç¨ã®å·¥å¤«ãè©°ã¾ã£ã¦ãã¾ãã
ãã®ããã°ãéãã¦ãç§ãã¡ã®ä»äºã«å°ãã§ãèå³ãæã£ã¦ããã ãããå¬ããã§ããç§ãã¡ã¯ä¸ç·ã«æ¹åãã¦ããã仲éãåéãã¦ãã¾ãï¼