
GitLabã®ãµãŒããŒã¬ã¹ã¢ãŒããã¯ãã£ã®æ©èœãæ¡åŒµããKubernetesã°ã«ãŒãã¯ã©ã¹ã¿ãŒãè¿œå ããŠãã€ãã£ãã¯ã©ãŠãã€ã³ãã©ã¹ãã©ã¯ãã£ã§ã®äœæ¥ãç°¡çŽ åããGitLab 11.6ã®ãªãªãŒã¹ãçºè¡šããŸãã
GitLabãä»ããŠä»»æã®ã¯ã©ãŠãã«ãµãŒããŒã¬ã¹éçºãå±éããŸã
ãµãŒããŒã¬ã¹ã³ã³ãã¥ãŒãã£ã³ã°ã¯åçã«åŠçãããã³ãŒããå®è¡ããããšãã·ã¹ãã ã¯ã¯ã©ãŠããªãœãŒã¹ã«ã¢ã¯ã»ã¹ããããã«ãããå®è¡ã«å¿
èŠãªãªãœãŒã¹ã®å²ãåœãŠãšåé
ãæé©åããŸãã éçºè
ã®éã§ãã®ã¢ãããŒãã®äººæ°ãé«ãŸã£ãŠããŸãããªããªããã³ãŒãã®äœæãªã©ãæ¬åœã«éèŠãªããšã«éäžã§ãããœãããŠã§ã¢ãå®è¡ãããåºç€ã€ã³ãã©ã¹ãã©ã¯ãã£ãç解ããå¿
èŠããªãããã§ãã
GitLabã®ãµãŒããŒã¬ã¹ã³ã³ãã¥ãŒãã£ã³ã°ã¯ ããµãŒããŒã¬ã¹ãããžã§ã¯ããäœæãå±éã管çããããã«èšèšãããKubernetesãã©ãããã©ãŒã ã§ããKnativeã䜿çšããŸãã ãã®æ©èœã«ãããéçºè
ã¯ã䜿ãæ
£ããã€ã³ã¿ãŒãã§ã€ã¹ã§ããµãŒããŒã¬ã¹éçºãç°¡åã«äœæããä»ã®ã³ãŒããšäžç·ã«ç®¡çã§ããŸãã ããžãã¹ã®å ŽåããµãŒããŒã¬ã¹ã¢ãŒããã¯ãã£ã«ããããã«ãã¯ã©ãŠãæŠç¥ã䜿çšããŠãç¹å®ã®ã¯ã©ãŠããããã€ããŒã«çžãããããšãåé¿ã§ããŸãã
GitLabã¯ãã€ãã£ãã¯ã©ãŠãã¢ããªã±ãŒã·ã§ã³éçºã®ç°¡çŽ åãç¶ç¶
çµã¿èŸŒã¿ã®ã³ã³ããã¬ãžã¹ããªãšKubernetesã®çµ±åã«ãããGitLabã§ã¯ãã³ã³ãããšã¯ã©ãŠãéçºããããŸã§ã«ãªãç°¡åã«éå§ã§ããŸãã ãªãªãŒã¹11.6以éããŠãŒã¶ãŒã¯Kubernetesã°ã«ãŒãã¯ã©ã¹ã¿ãŒãäœæã§ããã°ã«ãŒããŸãã¯ãã®ãµãã°ã«ãŒãå
ã®ãã¹ãŠã®ãããžã§ã¯ãã§äœ¿çšã§ããŸãã ããã«ããããã€ãã£ãã¯ã©ãŠããããžã§ã¯ãã®ã»ããã¢ãããããã«ç°¡åã«ãªããéçºè
ã¯é«å質ã®ã¢ããªã±ãŒã·ã§ã³ã®éçºã«éäžã§ããŸãã
äŒæ¥ã«ã¯ãå€ãã®ã¯ãŒã«ãªæ©èœããªãªãŒã¹ããŸããã
ãæ°ã«å
¥ãïŒ å€æŽæ¡ ãWeb IDEã®Webç«¯æ« ãã°ã«ãŒãã»ãã¥ãªãã£ããã«ã®è匱æ§ã°ã©ã ã ããŒãžãªã¯ãšã¹ãã®å·®åïŒãã·ã¢èªçã®GitLabã®ãããŒãžãªã¯ãšã¹ããïŒãžã®ã³ã¡ã³ãã§ææ¡ãããå€æŽãã¯ã³ã¯ãªãã¯ã§åãå
¥ããããšãã§ãããããããŒã ã®è²¢ç®ãããåãå
¥ãããããªããŸããã ãŸãããã®ãªãªãŒã¹ã§ã¯ããµãŒããŒäžã§å®è¡ãããWeb IDEã®æåã®æ©èœã§ããWebã¿ãŒããã«ãå©çšå¯èœã«ãªããŸããã ååã®ãªãªãŒã¹ã§è¿œå ãããã°ã«ãŒãã®ã»ãã¥ãªãã£ããã«ã«æ°ããè匱æ§ãã£ãŒãã衚瀺ãããè匱æ§ã®æ°ã®æ¥ã
ã®å€åã衚瀺ãããå€æŽã®ã¡ããªãã¯ã远跡ã§ããŸãã
ç¶ããèªããšãGitLab 11.6ãªãªãŒã¹ã®ããªããŒã€ãããŒã·ã§ã³ã«é¢ãããã¹ãŠãããããŸãïŒ
ç§ãã¡ã¯ããªããäŒè°ã«æåŸ
ããŸã

Suzanneã¯ãGitLabãæè¿ã®è£œåã§ããVoluntary Product Accessibility Template ïŒVPATïŒã®ã¬ãã¥ãŒãæ¯æŽãããªãŒãã³ãœãŒã¹ã¿ã¹ã¯ãæŽçããã³æ¹è¯ããŸããã ãŸããéçåæããŒã«ãšæåãã¹ãã䜿çšããŠã補åã®çŸåšã®ã¹ããŒã¿ã¹ãè©äŸ¡ããã®ãæäŒããŸããã VPATã¯ãã¢ã¯ã»ã·ããªãã£ã®æšæºãžã®æºæ ãä¿èšŒããŸãïŒèªèãšå¯Ÿè©±ãå°ãªã人åãïŒããã®è£œåã¯ããã¹ãŠã®äººãGitLabã®å¯çšæ§ãåäžããã誰ããGitLabã䜿çšããŠéçºã«è²¢ç®ã§ããããã«ãã倧ããªäžæ©ã§ãã
ããããšããã¹ã¶ã³ã ããå€ãã®äººã
ãGitLabã䜿çšããã®ã«åœ¹ç«ã€ããªãã®å
¥åã«æ¬åœã«æè¬ããŠããŸãã
GitLab 11.6ã®ãªãªãŒã¹ã®äž»ãªæ©èœ
ãµãŒããŒã¬ã¹æ©èœïŒã¢ã«ãã¡çïŒ
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
GitLab 11.5ãªãªãŒã¹ã§è¿œå ãããKnativeïŒ å
ã®èšäº ã 翻蚳 ïŒãšã®çµ±åã«åºã¥ããŠããŠãŒã¶ãŒããªããžããªã§äœæã§ããKnativeã®å¶åŸ¡äžã«ãããµãŒããŒã¬ã¹æ©èœãšããæ°ããæ©èœã玹ä»ããŸãã
ãªããžããªã®.gitlab-ci.yml
ãã¡ã€ã«ã§é¢æ°ãå®çŸ©ãã .gitlab-ci.yml
ã䜿çšããå¿
èŠããããŸãã åé¢æ°ã¯ã¯ã©ã¹ã¿ãŒã«é
眮ãããKnativeãããããã¹ãŠãåŠçããå¿
èŠãªãªãœãŒã¹ã«åºã¥ããŠæ¡åŒµããŸãã ãã®æ©èœã«ãããã¢ããªã±ãŒã·ã§ã³éçºè
ã¯ãã€ã³ãã©ã¹ãã©ã¯ãã£ã®ã»ããã¢ãããšã¡ã³ããã³ã¹ãå¿é
ããããšãªããæ°ããããŒãžã§ã³ãããéããªãªãŒã¹ã§ããŸãã

ãµãŒããŒã¬ã¹ã®ã¢ããªã±ãŒã·ã§ã³ãšæ©èœã®ããã¥ã¡ã³ããšå
ã®ãã±ãã
ããŒãžãªã¯ãšã¹ãçšã®CI / CDã®çºå£²
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
ããŒãžèŠæ±ã®å Žåã«ç¹å®ã®ãžã§ããéå§ããããšãããç°¡åã«ãªããŸããã å€merge_requests
ããŒã¯ãŒãonly/except
ãšçµã¿åãããŠäœ¿çšââãããšãããŒãžèŠæ±ã§ã®ã¿åäœããããã«ããŸãã¯ãã®éã®å Žåã«èµ·åãæ§æã§ããŸãã ããã«ããããã€ãã©ã€ã³ã®åäœããã詳现ã«å¶åŸ¡ã§ããããã«ãªããã¿ãŒã²ãããã©ã³ããšããŒãžèŠæ±IDãæãæ°ããç°å¢å€æ°ãžã®ã¢ã¯ã»ã¹ãå¯èœã«ãªããä»ã®åäœæŠç¥ãå®è£
ã§ããŸãã
ããŒãžèŠæ±ãšå
ã®ãã±ããã® åŸã®äœæ¥ã®éå§ã«é¢ããããã¥ã¡ã³ã

ææ¡ãããå€æŽ
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
ããŒãžãªã¯ãšã¹ãã®ã³ã©ãã¬ãŒã·ã§ã³ãç°¡åã«ãªããŸãã-ææ¡ãããå€æŽãåãå
¥ããããã«ã³ãŒããã³ããŒããå¿
èŠããªããªããŸããã çŸåšãããŒãžèŠæ±ã®å·®åã«ã³ã¡ã³ããããšãã«å€æŽãææ¡ãããã®ã¹ã¬ããã§æžã蟌ã¿æš©éãæã€ãŠãŒã¶ãŒãã¯ã³ã¯ãªãã¯ã§åãå
¥ããããšãã§ããŸãã
ããã§ããã®æ©èœã¯GitLab.comã§æ©èœããGitLabãŠãŒã¶ãŒã€ã³ã¹ã¿ã³ã¹ã§diff_suggestions
ã䜿çšããŠæ¥ç¶ã§ããGitLab 11.7ã§ã¯ãã®æ©èœã¯ããã©ã«ãã§æå¹ã«ãªããŸãã
ææ¡ãããå€æŽãšå
ã®ãã±ããã® ææžå
Web IDEçšã®Webã¿ãŒããã«ïŒããŒã¿ïŒ
ïŒç©¶æ¥µïŒ
Web IDEã䜿çšãããšãå€æŽãç°¡åã«ãã°ããå®è¡ããŠããŒãžèŠæ±ã®ãã£ãŒãããã¯ãåŠçã§ãããããå€æŽãä¿åãããããã©ã³ããããŒã«ã«ã§å€æŽããå¿
èŠããªããªããŸãã ãã ãããã¹ããå®è¡ããããã®ç«¯æ«ãªãã§å€§ããªå€æŽãè¡ããREPLïŒèªã¿åã-è©äŸ¡-å°å·ã«ãŒã-ãèªã¿åã-èšç®-åºåã«ãŒããïŒãè©Šããã³ãŒããã³ã³ãã€ã«ããã®ã¯ç°¡åã§ã¯ãããŸããã
ããã§ãWeb IDEã䜿çšããŠãWebã¿ãŒããã«ãèµ·åãããšãã£ã¿ãŒã§äœæ¥ããŠãããŒã«ã«ã§äœæ¥ããã®ãšåãããã«æå
ã«çœ®ãããšãã§ããŸãã Webã¿ãŒããã«ã¯ãWeb IDEã§ãµãŒããŒåŽã®åŠçãè¡ãæåã®æ©èœã§ãããæ°ãã.gitlab/.gitlab-webide.yml
ã䜿çšããŠæ§æãã.gitlab/.gitlab-webide.yml
ã
ã€ã³ã¿ã©ã¯ãã£ããªWeb端æ«ã¯ãŸã GitLab.comã§å©çšã§ããŸãããçŸæç¹ã§ã¯ããšãã£ã¿ãŒãšWeb端æ«ã®éã§å€æŽã¯åæãããŸããã ããã§éçºã®é²æç¶æ³ã確èªã§ããŸãã次ã®ãªãªãŒã¹ã§ã¯ã å€æŽã®ãã©ãŒãªã³ã°ãšãªã¢ã«ã¿ã€ã ãã¬ãã¥ãŒã®ãµããŒããè¿œå ããŸãã
Web端æ«ã®ããã¥ã¡ã³ããšå
ã®ãã±ãã

ã°ã«ãŒãã®ãããžã§ã¯ããã³ãã¬ãŒã
ïŒãã¬ãã¢ã ãã¢ã«ãã£ã¡ã€ããã·ã«ããŒããŽãŒã«ãïŒ
ãããžã§ã¯ããã³ãã¬ãŒãã䜿çšãããšããŠãŒã¶ãŒã¯æ°ãããããžã§ã¯ãããã°ããéå§ã§ããŸãã ãªãªãŒã¹11.2ïŒ ãªãªãžãã«èšäº ã 翻蚳 ïŒã§ã¯ã ãŠãŒã¶ãŒã€ã³ã¹ã¿ã³ã¹çšã®ãããžã§ã¯ããã³ãã¬ãŒããå°å
¥ããŸããã
GitLab 11.6ã§ã¯ããã®æ©èœãã°ã«ãŒãã§å©çšå¯èœã«ãªã£ãããšããç¥ããããŸãã æ°ããã°ã«ãŒãã®èšå®ã䜿çšããŠç¹å¥ãªãµãã°ã«ãŒããäœæãããšããã®ãµãã°ã«ãŒãã®ãããžã§ã¯ãããã³ãã¬ãŒããšããŠå©çšå¯èœã«ãªããŸãã ããã«ãããåæèšå®ãç°¡çŽ åãããç¹ã«ãã€ã¯ããµãŒãã¹ã¢ãŒããã¯ãã£ãªã©ã®å€§èŠæš¡ãªæ§é ã§ããããžã§ã¯ãéã®åäžæ§ã確ä¿ãããŸãã
ãããžã§ã¯ããã³ãã¬ãŒãã®ããã¥ã¡ã³ããšå
ã®ãã±ãã

ã°ã«ãŒãçšã®Kubernetesã¯ã©ã¹ã¿ãŒïŒããŒã¿ïŒ
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
å€ãã®å Žåãé¢é£ãããžã§ã¯ãã«åãçµãã§ããéçºããŒã ã¯ãåãKubernetesã¯ã©ã¹ã¿ãŒã䜿çšããŠã¢ããªã±ãŒã·ã§ã³ãå±éããå¿
èŠããããŸãã GitLab 11.6以éããŠãŒã¶ãŒã¯ã°ã«ãŒãã¬ãã«ã§Kubernetesã¯ã©ã¹ã¿ãŒãäœæã§ããããã«ãªããŸããããã¯ããã®ã°ã«ãŒããŸãã¯ãã®ãµãã°ã«ãŒãã«å«ãŸãããã¹ãŠã®ãããžã§ã¯ãã§äœ¿çšã§ããŸãã
ããã«ããããããžã§ã¯ãã®ã€ã³ãã©ã¹ãã©ã¯ãã£ãã»ããã¢ããããããã»ã¹ã倧å¹
ã«ç°¡çŽ åããã³é«éåãããã¯ãŒã«ãªã¢ããªã±ãŒã·ã§ã³ã®éçºã«éäžã§ããŸãã
ã°ã«ãŒãããã³å
ã®ãã±ããã® ã¯ã©ã¹ã¿ãŒããã¥ã¡ã³ã

Kubernetesã®èšŒææžãããŒãžã£ãŒ
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
éçºæ®µéã§ã¢ããªã±ãŒã·ã§ã³ãå±éããå Žåãã»ãã¥ãªãã£ã¯éèŠã§ãã 蚌ææžãããŒãžã£ãŒã¯ãLet's Encryptã䜿çšããŠSSL蚌ææžãèªåçã«äœæããã³æŽæ°ããKubernetesããŒã¹ã®èšŒææžç®¡çã³ã³ãããŒã©ãŒã§ãã
Auto DevOpsãä»ããŠæäŸãããã¢ããªã±ãŒã·ã§ã³ããã³JupyterHubãä»ããå±éã«ãã®SSL蚌ææžã䜿çšãããšãHTTPSãæå¹ã«ãªããŸãã
ã¢ããªã±ãŒã·ã§ã³ã®ã€ã³ã¹ããŒã«ããã¥ã¡ã³ããšå
ã®ãã±ãã

ã°ã«ãŒãã»ãã¥ãªãã£ããã«ã®è匱æ§ã°ã©ã
ïŒç©¶æ¥µããŽãŒã«ãïŒ
ã°ã«ãŒãã»ãã¥ãªãã£ããã·ã¥ããŒãã¯ãã»ãã¥ãªãã£ã®å°é家ããããžã§ã¯ãã®è匱æ§ã管çã§ããäž»èŠãªããŒã«ã§ãã æãéèŠãªèŠä»¶ã®1ã€ã¯ãè匱æ§ã®æ°ãæ¥ã
ã©ã®ããã«å€åããããææ¡ããããŒã ãæ°ããåé¡ãååã«è¿
éã«è§£æ±ºã§ãããã©ãããç解ããããšã§ãã
GitLab 11.6ãªãªãŒã¹ã§ã¯ãã°ã«ãŒãã®ã»ãã¥ãªãã£ããã«ã«è匱æ§ãã£ãŒããè¿œå ããŸãããããã«ãããéå»1ãæéã®è匱æ§ã®å€æŽãç°¡åã«è¿œè·¡ã§ããŸãã åå±éºã¬ãã«ã«ã€ããŠãè匱æ§ã€ã³ãžã±ãŒã¿ã®å€ã確èªããã¹ã±ãžã¥ãŒã«ã«æ²¿ã£ãŠç§»åããŠãç¹å®ã®ç¬éããã詳现ã«èª¿ã¹ãããšãã§ããŸãã
ã°ã«ãŒãã»ãã¥ãªãã£ããã«ã®ããã¥ã¡ã³ããšå
ã®ãã±ãã

GitLab 11.6ã®ãã®ä»ã®æ¹åç¹
ã¹ããŒãã«ãŒãããŒã¹ã®ããŒããŠã§ã¢ããŒã¯ã³èªèšŒ
ïŒæé«ã究極ïŒ
X.509蚌ææžãåããããŒããŠã§ã¢ããŒã¯ã³ãšèªèšŒçšã®ã¹ããŒãã«ãŒãæ©èœïŒYubiKeysãå
±æã¢ã¯ã»ã¹ã«ãŒãïŒCACïŒãªã©ïŒã䜿çšããç°å¢ã§éçºè
ãåãçµç¹ã§ã¯ãGitLabã¯ããŒã«ã«ãŠãŒã¶ãŒã®äœæãšãã°ã€ã³ããµããŒãããããã«ãªããŸããã
ãŠãŒã¶ãŒã¯ããŒããŠã§ã¢ããŒã¯ã³ã䜿çšããŠGitLabã«ã¢ã¯ã»ã¹ã§ããããã«ãªããŸãããããã«ãããã»ãã¥ãªãã£ãåäžããç©çããã€ã¹ã«é¢é£ä»ããããŠããªããã°ã€ã³/ãã¹ã¯ãŒãã®ããŒã¿ã管çããå¿
èŠããªããªããŸãã
ã¹ããŒãã«ãŒãèªèšŒã®ããã¥ã¡ã³ããšå
ã®ãã±ãã
ïŒç¡æãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
GitLab.comã®ææãµãã¹ã¯ãªãã·ã§ã³ããæã¡ã®ãŠãŒã¶ãŒã®å Žåããµãã¹ã¯ãªãã·ã§ã³ã¹ããŒã¿ã¹æ
å ±ããããââãããããããŸããã
ããŒãžã§ã³11.6ã§ã¯ãã°ã«ãŒãèšå®ããŒãžã®[課é]ã»ã¯ã·ã§ã³ãæ¹åãããã°ã«ãŒããµãã¹ã¯ãªãã·ã§ã³ã«é¢ãã詳现æ
å ±ãå«ãŸããããã«ãªããŸããã ããã§ãçŸåšæ®åœ±ããå Žæãéå»ã«å æãããå Žæãããã³ãµãã¹ã¯ãªãã·ã§ã³ã®éå§æå»ãšçµäºæå»ãç°¡åã«ç¢ºèªã§ããŸãã

ããã¥ã¡ã³ããšå
ã®ãã±ãã
Discordãžã®éç¥ã®éä¿¡
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
ãã®ãªãªãŒã¹ãããGitLabãšDiscordãçµ±åã§ããŸããããã«ããããªããžããªãžã®ããã·ã¥ããã±ããã®æŽæ°ã®ããŠã³ããŒãããªã¯ãšã¹ãã®ããŒãžãªã©ãGitLabã€ãã³ããžã®å¿çãšããŠDiscordã®ãã£ãã«ã«éç¥ãéä¿¡ã§ããŸãã
ãã®æ©èœãæäŸããŠãããVitaliy Klachkovã«æè¬ããŸãïŒ

äžäžèŽéç¥ææžãšå
ã®ãã±ãã
ãšããã¯ã®ãã±ããã®ããã¢ãŒã·ã§ã³
ïŒç©¶æ¥µããŽãŒã«ãïŒ
ãœãããŠã§ã¢éçºã¯ãããŒã å
šäœãåå ããåµé çãªããã»ã¹ã§ããããã¹ãŠã®ã¢ã€ãã¢ãèæ
®ããå¿
èŠããããŸãã ãã±ããã®åœ¢ã§è¡šç€ºãããã¢ã€ãã¢ããšããã¯ã«ç°¡åã«å€æŽã§ããæ°ããæ©èœãè¿œå ããŸããã
æ°ããã¯ã€ãã¯ã¢ã¯ã·ã§ã³ã䜿çšããŠããã±ããããšããã¯ã«ç°¡åã«ã¢ããã°ã¬ãŒãã§ããŸãã ãã±ããã®ã³ã¡ã³ãã«å
¥å/promote
ããŠã[ ã³ã¡ã³ã ]ãã¯ãªãã¯ããŸãã ãã±ããã¯éãããããã®å
容ã¯æ°ãããšããã¯ã«ã³ããŒããããããžã§ã¯ãã®èŠªã°ã«ãŒãã«è¡šç€ºãããŸãã ãã±ããã®äžã®ååã説æããã£ã¹ã«ãã·ã§ã³ã«å ããŠãã¿ã°ãåå è
ãããã/å«ããããã³ããŒãããŸãã

ãã±ããã®ãšããã¯ãžã®ã¢ããã°ã¬ãŒãããã³å
ã®ãã±ãã ã«é¢ããããã¥ã¡ã³ã
ãã±ããããã£ã«ã¿ãªã³ã°ããŠãªã¯ãšã¹ããããŒãžãããšãã®èšå®ããã«ã®å€èŠ³ãæ¹åããŸãã
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
GitLabã®æ®ãã®éšåã®ãã¶ã€ã³ãšäžèŽããããã«ãããŒãžãªã¯ãšã¹ãã®ãã±ãããšããã·ã¥ããŒãã®æ€çŽ¢çµæã®ãã¬ãŒã³ããŒã·ã§ã³ã®ãã¶ã€ã³ãæŽæ°ããŸããã

GitLabæ€çŽ¢ããã¥ã¡ã³ããšå
ã®ãã±ãã
åãŠãŒã¶ãŒã®ãã±ãããããŒãžèŠæ±ããšããã¯ã®ãœãŒãé ãä¿åãã
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
ãŠãŒã¶ãŒããã±ãããããŒãžãªã¯ãšã¹ãããšããã¯ãããã«ã¯ã¿ã¹ã¯ã¹ã±ãžã¥ãŒã«ã«ç¬èªã®ãœãŒãé ãèšå®ã§ããæ©èœãè¿œå ããŸããã ãœãŒãã®å¯Ÿè±¡ãšãªãå±æ§ãããã³ãœãŒãé ïŒæé ãŸãã¯éé ïŒã«é¢ããæ
å ±ã¯ã·ã¹ãã ã«ä¿åããããããåã«è¡šç€ºãããªããžã§ã¯ãã®ãªã¹ãã«æ»ããšã以åãšãŸã£ããåãããã«ãœãŒããããŸãã

壮倧ãªæ€çŽ¢ããã¥ã¡ã³ããšãªãªãžãã«ãã±ãã
ããŒããããã§éããåäºè©©ãšéããåäºè©©ãèŠã
ïŒç©¶æ¥µããŽãŒã«ãïŒ
æè¿ãGitLabã§ãšããã¯ãéããæ©èœãè¿œå ããŸãããããã«ãããå®äºãããšããã¯ãç¡é¢ä¿ãªãšããã¯ãããŒã¯ã§ããŸãã
ãã®ãªãªãŒã¹ããããªãŒãã³ãšããã¯ãã¯ããŒãºãšããã¯ããŸãã¯ãã®äž¡æ¹ãããŒããããã§äžåºŠã«è¡šç€ºããæ©èœãè¿œå ãããŸãã ããã¯ãæ®ãã®ã¿ã¹ã¯ãšç·æ¥ã®ã¿ã¹ã¯ã®ã¿ã«éäžããå¿
èŠãããããŒã ïŒãªãŒãã³ãšããã¯ïŒãå®äºããã¿ã¹ã¯ã衚瀺ããããŒã ïŒã¯ããŒãºããšããã¯ïŒããŸãã¯å®äºããã¿ã¹ã¯ãšçŸåšã®ã¿ã¹ã¯ãåããããã§è¡šç€ºããå¿
èŠãããããŒã ã«åœ¹ç«ã¡ãŸãã æ°ããæ©èœã«ããããã®ãããªæè»æ§ãå©çšå¯èœã«ãªããŸãã ããã«ããŠãŒã¶ãŒããšã«èšå®ãã·ã¹ãã ã«ä¿åãããããã«ãªã£ããããããŒããããã«åã³æ»ã£ããšãã«ãååãšãŸã£ããåãããã«è¡šç€ºãããŸãã

ã¿ã¹ã¯ã¹ã±ãžã¥ãŒã«ã®ããã¥ã¡ã³ããšå
ã®ãã±ãã
åæ§ã®ã¿ã¹ã¯ã衚瀺ãã
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
ãããžã§ã¯ããæé·ããã«ã€ããŠãéçºè
ã¯æ°ããã¿ã¹ã¯ã®æ°ãããã±ãããäœæããå€ãã®å Žåããããã®ãã±ããã¯ç¹°ãè¿ããå§ããŸãã
人ã
ãããã«çããèŠã€ãããããžã§ã¯ã管çè
ã®æéãç¯çŽã§ããããã«ããããã«ãæ°ãããã±ãããäœæãããšãã«ãããã«é¡äŒŒãããã±ããã衚瀺ãããŸãã ãã±ããäœæWebãã©ãŒã ã«ã¿ã€ãã«ãå
¥åãããšè¡šç€ºãããŸãã ããã«ããããŠãŒã¶ãŒã¯ããã«åæ§ã®ãã±ãããèŠã€ãããããã«åãæ¿ããããã«çŸåšã®ãã£ã¹ã«ãã·ã§ã³ã«åå ã§ããããã«ãªããGitLabã§ã®ã³ã©ãã¬ãŒã·ã§ã³ã®æ©äŒãããã«å¢ããŸãã

åæ§ã®ãã±ãããšå
ã®ãã±ããã® ããã¥ã¡ã³ã
å
¬ééµèªèšŒã䜿çšããSSHãä»ããããã·ã¥ãã©ãŒãªã³ã°ã®ãµããŒã
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
ãªããžããªã®ãã©ãŒãªã³ã°ã«ãããGitãªããžããªãããå Žæããå¥ã®å Žæã«ã³ããŒã§ããŸãã ããã«ãããå¥ã®ãµãŒããŒã«ãªããžããªãã©ãŒãäœæãããšãã«ãè€æ°ã®GitLabã€ã³ã¹ã¿ã³ã¹ã§äœæ¥ãããããªããŸãã ãã ããäžéšã®ã¿ãŒã²ãããµãŒããŒã§ã¯ãå
¬éããŒèªèšŒã䜿çšããSSHãä»ããGitãžã®ã¢ã¯ã»ã¹ã®ã¿ãèš±å¯ãããŸãã
GitLabã¯ããã¹ã¯ãŒãããŒã¹ã®SSHèªèšŒãšHTTPããã·ã¥ãã©ãŒãªã³ã°ã«å ããŠãå
¬éããŒèªèšŒã«ããSSHãã©ãŒãªã³ã°ããµããŒãããããã«ãªããŸããã
ããã·ã¥ãã©ãŒãªã³ã°ã®ããã¥ã¡ã³ããšå
ã®ãã±ãã
ãããžã§ã¯ãã¡ã³ãããŒã¯APIçµç±ã§ãã€ãã©ã€ã³ãåé€ã§ããããã«ãªããŸãã
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
ããã§ãAPIã䜿çšããŠãã€ãã©ã€ã³ãåé€ã§ããŸãã ããã¯ããã€ãã©ã€ã³ã§ç§å¯æ
å ±ã®æŒæŽ©ãçºçããå Žåãå€ãã®äžèŠãªãã€ãã©ã€ã³ãäœæãããå ŽåããŸãã¯ãã€ãã©ã€ã³ãåé€ããå¿
èŠããããšãã«ä»ã®åé¡ãçºçããå Žåã«åœ¹ç«ã¡ãŸãã
ã³ã³ãã€ãŒã®åãå€ãã«é¢ããããã¥ã¡ã³ããšå
ã®ãã±ãã
ããªã¬ãŒå€æ°ã¯ããŠãŒã¶ãŒã€ã³ã¿ãŒãã§ã€ã¹ã§ããã©ã«ãã§é衚瀺ã«ãªããŸãã
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
ãã¹ãŠã®ããªã¬ãŒå€æ°ã¯ãŠãŒã¶ãŒã€ã³ã¿ãŒãã§ã€ã¹ã§ããã©ã«ãã§é衚瀺ã«ãªãããŠãŒã¶ãŒãæ瀺çã«æå®ããå Žåã«ã®ã¿è¡šç€ºãããŸãã ããã«ãããç»é¢ãå
±æãããšããã¹ã¯ãªãŒã³ã·ã§ãããæ®ããšãã«ãå€ãæå³ããã«å
¬éãããããšãé²ããŸãã

ããªã¬ãŒå€æ°ãšå
ã®ãã±ãã㮠䜿çšã«é¢ããããã¥ã¡ã³ã
ããŒãžãªã¯ãšã¹ãã®ã¬ãã¥ãŒã«é¢ãã1ã€ã®ã¡ãŒã«éç¥
ïŒãã¬ãã¢ã ãã¢ã«ãã£ã¡ã€ããã·ã«ããŒããŽãŒã«ãïŒ
ã³ãŒãã®ã¬ãã¥ãŒã¯ãæåãããã¹ãŠã®ãããžã§ã¯ãã«å¿
èŠãªãã©ã¯ãã£ã¹ã§ãããã³ã¡ã³ãããšã«é»åã¡ãŒã«éç¥ãåãåãå¿
èŠããªãå ŽåããããŸãã ããã§ãåä¿¡ããã¯ã¹ãç¡é§ã«ããªãããã«ããã¹ãŠã®ã³ã¡ã³ãã®ãªã¹ããå«ã1ã€ã®éç¥ã®ã¿ãéä¿¡ãããŸãã
GitLab 11.4ã§æ瀺ãããããŒãžãªã¯ãšã¹ãã¬ãã¥ãŒïŒ å
ã®èšäº ã 翻蚳 ïŒã¯ãã³ã¡ã³ãã®äœæãã¬ãã¥ãŒãæçš¿ãäžåºŠã«è¡ããããã«ããããšã§ãã³ãŒãã¬ãã¥ãŒã容æã«ããŸãã
ãã®æ©èœã¯GitLab.comã§å©çšã§ããããã«ãªããbatch_review_notification ãã©ã°ã€ã³æ©èœ ïŒæ©èœãã©ã°ãæ©èœåãæ¿ãïŒã䜿çšããŠGitLabãŠãŒã¶ãŒã€ã³ã¹ã¿ã³ã¹ã«å¯ŸããŠæå¹ã«ããããšãã§ããŸãã GitLab 11.7ã®ãŠãŒã¶ãŒã€ã³ã¹ã¿ã³ã¹ã§ã¯ããã©ã«ãã§æå¹ã«ãªããŸãã
ãªã¯ãšã¹ãã®ã¬ãã¥ãŒããã¥ã¡ã³ããšå
ã®ãã±ããã ããŒãžãã
æ¹åããããããžã§ã¯ããã¥ãŒããŒãž
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
GitLab 11.6ã®ãªãªãŒã¹ã§ã¯ããããžã§ã¯ãããŒãžã®ãŠãŒã¶ãŒã€ã³ã¿ãŒãã§ã€ã¹ãåŒãç¶ã䜿çšããŸãããããžã§ã¯ãã¿ã€ãã«ã®è¡šç€ºã調æŽããã³ã³ãã©ã¹ããæ¹åãã空ã®ã¹ããŒã¹ãæäœããŠãé »ç¹ã«äœ¿çšãããã¢ã¯ã·ã§ã³ã匷調ããæ
å ±æ§é å
šäœãæ¹åããŸããã

ãããžã§ã¯ãã®ããã¥ã¡ã³ããšå
ã®ãã±ãã
ãŠãŒã¶ãŒãããã¡ã€ã«ã®ããŒã«ããã
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
ãã®ãªãªãŒã¹ã§ã¯ãã¿ã¹ã¯ããŒãžãšããŒãžãªã¯ãšã¹ãããŒãžã§ãŠãŒã¶ãŒåã«ã«ãŒãœã«ãåããããšãé«åºŠãªããŒã«ããããè¿œå ãããŸããã 以åã¯ããã«ããŒã ã®ã¿ã衚瀺ããŠããŸãããããŠãŒã¶ãŒã®ãã«ããŒã ãIDãäŒç€Ÿãå Žææ
å ±ãããã³ãŠãŒã¶ãŒã®ã¹ããŒã¿ã¹ïŒå©çšå¯èœãªå ŽåïŒã衚瀺ãããããã«ãªããŸããã
ä»ã®ããŒãžã«æ¡åŒµããŒã«ããããè¿œå ããããšã«å ããŠã ã¿ã¹ã¯ããã³ããŒãžãªã¯ãšã¹ãã®ããŒã«ãããã®ä»åŸã®æ¹åã«åãçµãã§ããããŸããªãå©çšå¯èœã«ãªããŸãã

ãªãªãžãã«ãã±ãã
ããã²ãŒã·ã§ã³ãã§ãŒã³ã«ã¯ããã€ã«ã¹ããŒã³ãšã¿ã°ã®ãæ°èŠãããã³ãç·šéããå«ãŸããŸã
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
ãã®ãªãªãŒã¹ã§ã¯ããã€ã«ã¹ããŒã³ãšã¿ã°ã®GitLabãã³ããããã²ãŒã·ã§ã³ãã§ãŒã³ãæ¹åããŠããŸãã ãã€ã«ã¹ããŒã³ãŸãã¯ã¿ã°ãäœæãŸãã¯ç·šéããå Žåãããã²ãŒã·ã§ã³ãã§ãŒã³ã®æåŸã«è¿œå ã®èŠçŽ ãæ°èŠããŸãã¯ãç·šéããããããã±ããããã³ããŒãžãªã¯ãšã¹ããšäžèŽããããã«ãªããŸããã
ãã®æ©èœãæäŸããŠãããGeorge Tsiolisã«æè¬ããŸãïŒ

ãªãªãžãã«ãã±ãã
Auto DevOpsã®HTTPSãµããŒã
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
GitLabã®Auto DevOpsã¯ãé«å質ã®ãœãããŠã§ã¢ã®æäŸã«äŒŽãå€ãã®èª²é¡ã«å¯ŸåŠããŸãã GitLab 11.6ã¯ãHTTPSã®ãµããŒããè¿œå ããããšã«ããããã®æ©èœãããã«æ¡åŒµããŠããŸãã
Auto DevOpsã¯Kubernetesã®èšŒææžãããŒãžã£ãŒã䜿çšããŠãHTTPSãä»ããŠã¢ããªã±ãŒã·ã§ã³ãèªåçã«æäŸããã¢ããªã±ãŒã·ã§ã³ã®ã»ãã¥ãªãã£ã匷åããŸãã
Auto DevOpsã®ããã¥ã¡ã³ããšå
ã®ãã±ãã
JupyterHubã®HTTPSãµããŒã
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
JupyterHubã¯ãããŒã¿ããŒã ã«æ
å ±ãå
±æããããã®åŒ·åãªæ¹æ³ãæäŸããŸãã å€ãã®å Žåãæ©å¯ããŒã¿ã«ã¯ã»ãã¥ãªãã£ã匷åããå¿
èŠããããŸãã
Kubernetesã®èšŒææžãããŒãžã£ãŒã䜿çšãããšãJupyterHubã¯HTTPSãä»ããŠJupyterãèªåçã«æäŸããæ©å¯ããŒã¿ã®ã»ãã¥ãªãã£ã匷åããŸãã
ã¯ã©ã¹ã¿ãžã®ã¢ããªã±ãŒã·ã§ã³ã®ã€ã³ã¹ããŒã«ã«é¢ããããã¥ã¡ã³ããšå
ã®ãã±ãã
Kubernetes HTTPå¿çã³ãŒããããã³ã°
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
Kubernetesã¯ã©ã¹ã¿ãŒã«GitLab管çã¢ããªã±ãŒã·ã§ã³ãã€ã³ã¹ããŒã«ããéã®ãã©ãã«ã·ã¥ãŒãã£ã³ã°ã容æã«ããé«éåããããã«ãKubernetesããHTTPå¿çã³ãŒããéä¿¡ããããã«ãªããŸããã
ã¯ã©ã¹ã¿ãŒç®¡çããã¥ã¡ã³ããšå
ã®ãã±ãã
ç¡å¶éã®ç¡æãŽãŒã«ãã²ã¹ãã²ã¹ããŠãŒã¶ãŒ
ïŒç©¶æ¥µããŽãŒã«ãïŒ
ããŒãžã§ã³11.0ã§ã¯ãUltimateãã©ã³ã®ã²ã¹ããŠãŒã¶ãŒãç¡å¶éã«å°å
¥ããŸããã
çŸåšããŽãŒã«ããã©ã³ã«æ¡åŒµããŠããããããŠãŒã¶ãŒãµãŒããŒã§ããã¯ã©ãŠãSaaSã§ãããæé«ã®GitLab.comæéãã©ã³ã䜿çšããŠããã°ã«ãŒãã¯ãè¿œå è²»çšãªãã§ã²ã¹ããè¿œå ããããšã§å©çãåŸãããšãã§ããŸãã
ãŠãŒã¶ãŒã¢ã¯ã»ã¹ã®ããã¥ã¡ã³ããšå
ã®ãã±ãã
管çè
ããŠãŒã¶ãŒã®åœ¹å²ãæããããšãé²ã
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ããïŒ
äžéšã®çµç¹ã§ã¯ã管çè
ããŠãŒã¶ãŒãšããŠè¡åã§ããããã«ããããšã¯ã管çè
ã®ã¢ã¯ã·ã§ã³ãè¡åãããŠãŒã¶ãŒã«èµ·å ãããããã»ãã¥ãªãã£ãªã¹ã¯ã§ãã ãã®åé¡ã解決ããããã«ããã®æ©èœãç¡å¹ã«ã§ããããã«ã«ã¹ã¿ã ãªãã·ã§ã³ãè¿œå ããŸãã
管çè
ããŠãŒã¶ãŒããã³å
ã®ãã±ãã㮠圹å²ãæããããšãçŠæ¢ããããšã«é¢ããããã¥ã¡ã³ã
TOMLããã³JSONã®ããŒã¯ããŠã³ããã³ããã¿ãŒãã£ã«ã¿ãªã³ã°
ïŒã³ã¢ãã¹ã¿ãŒã¿ãŒããã¬ãã¢ã ãã¢ã«ãã£ã¡ãããããªãŒãããã³ãºãã·ã«ããŒããŽãŒã«ãïŒ
ããã³ããã¿ãŒã¯ãããŒã¯ããŠã³ããã¥ã¡ã³ãã®å
é ã«å«ãŸããã¡ã¿ããŒã¿ã§ãããå€ãã®å Žåã JekyllãHugoãªã©ã®éçãµã€ããžã§ãã¬ãŒã¿ãŒã«ãã£ãŠäœ¿çšãããŸãã GitLabããªããžããªå
ã®ããŒã¯ããŠã³ãã¡ã€ã«ã衚瀺çšã«HTMLã«å€æããå Žåãããã³ããã¿ãŒã¯ãã®åœ¢åŒãä¿æããããããããããããã«ãã®ãŸãŸè¡šç€ºããŸãã
YAMLïŒ ---
ïŒã®åºåãèšå·ã«å ããŠãGitLabã¯TOMLïŒ +++
ïŒã®åºåãèšå·ãJSONïŒ ;;;
ïŒã®åºåãèšå·ãããã³ä»»æã®ããŒã¿åœ¢åŒããµããŒãã§ããä»»æã®åºåãèšå·ããµããŒãããããã«ãªããŸããã
ãã®æ©èœãæäŸããŠãããTravis Millerã«æè¬ããŸãïŒ
ããã³ããã¿ãŒããã¥ã¡ã³ããšãªãªãžãã«ãã±ãã
ã°ã«ãŒãã»ãã¥ãªãã£ããã·ã¥ããŒãã®èªåDevOpsãµããŒã
ïŒç©¶æ¥µããŽãŒã«ãïŒ
GitLab 11.5ãªãªãŒã¹ïŒ å
ã®èšäº ã 翻蚳 ïŒã§ã¯ã SASTã®çµæã衚瀺ããGroup Security PanelããªãªãŒã¹ããŸããã
11.6ã®ãªãªãŒã¹ã§ã¯ãSASTæäœå®çŸ©ã®ææ°ããŒãžã§ã³ã Auto DevOps ãã³ãã¬ãŒãã«è¿œå ããçµæã¯ã°ã«ãŒãã®ã»ãã¥ãªãã£ããã«ãšå®å
šã«äºææ§ãããããããŠãŒã¶ãŒã¯äž¡æ¹ã®æ©èœãåæã«äœ¿çšã§ããŸãã
泚ïŒæ°ããSASTãžã§ãã決å®ããã«ã¯ã GitLab Runner 11.5以äžãå¿
èŠã§ã;ãã®ããã°æçš¿ã«ã€ããŠè©³ããèªãããšãã§ããŸãã
Auto DevOpsã®ããã¥ã¡ã³ããšå
ã®ãã±ãã
詳现ãªãªãªãŒã¹ããŒããšæŽæ°/ã€ã³ã¹ããŒã«æé ã¯ãå
ã®è±èªã®æçš¿ã§ç¢ºèªã§ããŸãïŒ GitLab 11.6ã¯ããµãŒããŒã¬ã¹ããã³ã°ã«ãŒãã¬ãã«ã®ã¯ã©ã¹ã¿ãŒãšå
±ã«ãªãªãŒã¹ãããŸãã ã
Cattidourdenãrishavantãainonekoãmaryartkeyã¯è±èªããã®ç¿»èš³ã«åãçµã¿ãŸããã