ã¯ããã«
ããã«ã¡ã¯ãRed Hat ã®ã³ã³ãµã«ã¿ã³ãã®é³ã§ããä»åã¯ãRed Hat Developer Sandbox ãå©ç¨ããGitOps ã®éçºãç°¡åã«è©¦ããæé ããç´¹ä»ãã¾ããããå®è·µçãªå 容㧠OpenShift ã®é åãæãã¦ããã ããã°ã¨æãã¾ãã
ç®æ¬¡
- Red Hat Developer Sandbox ã¨ã¯ï¼
- GitOps ã¨ã¯ï¼
- ãã®ããã°ã§å¾ããããã®
- ãªãã¸ããªã®ç´¹ä»
- ä»çµã¿ã®ç´¹ä»
- å®æ½æé
- ãããã«
1. Red Hat Developer Sandboxã¨ã¯ï¼
Red Hat Developer Sandboxã¯ã誰ã§ãç¡æã§æ軽ã«OpenShiftãä½é¨ã§ããã¯ã©ã¦ããã¼ã¹ã®ç°å¢ã§ãããããå©ç¨ãããã¨ã§ãã¤ã³ãã©ã®è¨å®ã管çã«ç ©ãããããã¨ãªããããã«ã¢ããªã±ã¼ã·ã§ã³ã®éçºããããã¤ãå§ãããã¨ãã§ãã¾ãã
2. GitOpsã¨ã¯ï¼
GitOps ã¯ãGit ãªãã¸ããªãä¿¡é ¼ã§ããå¯ä¸ã®æ å ±æºã¨ãã¦ä½¿ç¨ããã¤ã³ãã©ã¹ãã©ã¯ãã£ãã³ã¼ãã¨ãã¦æä¾ãã¾ããç»é²ãããã³ã¼ã㯠CI ããã»ã¹ã§ãã§ãã¯ãããCD ããã»ã¹ã§ã¯ã»ãã¥ãªãã£ãã³ã¼ãã¨ãã¦ã®ã¤ã³ãã©ã¹ãã©ã¯ãã£ãªã©ãã¢ããªã±ã¼ã·ã§ã³ãã¬ã¼ã ã¯ã¼ã¯ã«è¨å®ãããå¢çç·ã«é¢ããè¦ä»¶ããã§ãã¯ããã³é©ç¨ããã¾ããã³ã¼ãã®å¤æ´ã¯ãã¹ã¦è¿½è·¡ããããããã¢ãããã¼ãã容æã«ãªãã¨åæã«ããã¼ã«ããã¯ãå¿ è¦ãªå ´åã®ãã¼ã¸ã§ã³ç®¡çãå¯è½ã§ãã
3. ãã®è¨äºã§å¾ããããã®
- Red Hat Developer Sandboxã®ä½¿ãæ¹
- GitOpsã®åºæ¬æ¦å¿µã¨ãã®å©ç¹ã¸ã®ç解
- OpenShiftä¸ã®ãã¤ãã©ã¤ã³ã®æ§ç¯æ¹æ³
- å種ãããã§ã¹ãã®è¨è¿°æ¹æ³
- StorybookãSonarqubeãªã©ã®ãã¼ã«ã®ä½¿ãæ¹
4. ãªãã¸ããªã®ç´¹ä»
ä»å使ç¨ãããªãã¸ããªã¯ä»¥ä¸ã®äºã¤ã§ãï¼
red-hat-developer-sandbox-apps
ãã¡ãã®ãªãã¸ããªã§ã¯ã以ä¸ã®ãã®ãæ ¼ç´ããã¦ãã¾ãã- å種ã¢ããªã±ã¼ã·ã§ã³ã®ã½ã¼ã¹ã³ã¼ã
- ãã¼ã«ã«ã§ã¢ããªã±ã¼ã·ã§ã³ããããã¤ããããã®Dockerãã¡ã¤ã«
red-hat-developer-sandbox-manifest
ãã¡ãã®ãªãã¸ããªã§ã¯ã以ä¸ã®ãã®ãæ ¼ç´ãã¾ãã- å種ãªã½ã¼ã¹ã®ãããã§ã¹ããã¡ã¤ã«
ã¢ããªã±ã¼ã·ã§ã³ã®ã³ã¼ãã¨ãããã§ã¹ããåé¢ãããã¨ã§ãéç¨ã管çã容æã«ãªãã¾ãã
åé¢ã®å©ç¹
å¤æ´ã®ç®¡ç ã¢ããªã±ã¼ã·ã§ã³ã®ã³ã¼ãã¨ãããã§ã¹ããå¥ã ã®ãªãã¸ããªã«é ç½®ããã¦ãããããå¤æ´ã®å½±é¿ç¯å²ãæ確ã«åãããã¨ãã§ãã¾ããä¾ãã°ãã¢ããªã±ã¼ã·ã§ã³ã®ã¢ãããã¼ãã¨ã¤ã³ãã©ã®å¤æ´ãããããç¬ç«ãã¦è¡ãã¾ãã
ãã¼ã ã®å½¹å²åæ éçºãã¼ã ã¨éç¨ãã¼ã ãããããã®ãªãã¸ããªãæ å½ãããã¨ã§ãå½¹å²åæ ãæ確ã«ãªãã¾ããéçºè ã¯ã¢ããªã±ã¼ã·ã§ã³ã®ã³ã¼ãã«éä¸ããéç¨ãã¼ã ã¯ã¤ã³ãã©ã¹ãã©ã¯ãã£ã®ç®¡çã«éä¸ã§ãã¾ãã
5. ä»çµã¿ã®ç´¹ä»
ã¢ããªã±ã¼ã·ã§ã³
- sample-app: quarkus ã§éçºããAPIãsonarqube é£æºã®è¨å®ãå ¥ã£ã¦ãã¾ã
- sample-view: nextjs ã§éçºããç»é¢ãsonarqube é£æºã®è¨å®ãå ¥ã£ã¦ãã¾ããstorybook ãèµ·åã§ãã¾ã
- test-reports: ãã¤ãã©ã¤ã³ã§å®æ½ããå種ãã¹ãã®ã¬ãã¼ããã¾ã¨ãã¦è¡¨ç¤ºãããã®ã§ãnodejs ã§æ¸ããç°¡å㪠web ãµã¼ãã¼
- e2e: Playwright ã§å®ç¾ãã End To End Testãsample-view ã®ç»é¢ãéãã¦ããã¿ã³ã¯ãªãã¯ãã¦ãsample-app ã« api å¼ã³åºããåã£ã¦ããã¬ã¹ãã³ã¹ãç»é¢ã«æ£ãã表示ã§ããããã§ãã¯
- integration-test: API ã®ããã»ã¹ã«ãªã¯ã¨ã¹ããæãããããªçµåãã¹ã
ãããã§ã¹ã
- gitops-pipeline: ãã¡ãã®ãããã§ã¹ããæåã«æå㧠openshift ã«ãããã¤ãã¾ããæ¬æ¥ã¯ Openshift GitOps(ArgoCD) ã使ãã¹ãã§ãããSandboxã®å¶éã§ä½¿ãã¾ããã§ããã代ããã«ããããã§ã¹ããé©ç¨ãããã¤ãã©ã¤ã³ãä½æãã¾ããã
- apps-pipeline: ãã¡ãã®ãããã§ã¹ã㯠gitops-pipeline ã«ãã£ã¦ãããã¤ããã¾ãããã®ä¸ã§ CI ãè¡ãã¾ãã
build-and-push-sample-app-image 㧠git commit ã® hash å¤ãã¢ããªã±ã¼ã·ã§ã³ã®ã¤ã¡ã¼ã¸ã¿ã°ã«ã㦠registry ã« push ããå¾ããã®ã¿ã°ã update-sample-app-image-tag-in-repo-it 㧠apps ã«ãã it ç°å¢ã®ãããã§ã¹ããæ´æ°ãã¦ãgit push ãããã¨ã§ãgitops-pipeline ãå®è¡ãããit ç°å¢ã«ææ°ã®ã¤ã¡ã¼ã¸ããããã¤ããã¾ãã
ã»ãã«ãsonarqubeãtest-reportããããã¤ããããã®ãããã§ã¹ããå ¥ã£ã¦ãã¾ãã - apps: ããã«ãã¢ããªã±ã¼ã·ã§ã³ããããã¤ããããã«ãããã§ã¹ããä¿åããã¦ãã¾ãã
6. å®æ½æé
æé ã¯ãã¡ãã«çºãã¾ããã
7. ãããã«
ããã§ãRed Hat Developer Sandbox ã使ã£ã GitOps éçºãã¤ãã©ã¤ã³ã®è¨å®ãå®äºãã¾ããããã®ç°å¢ãæ´»ç¨ãããã¨ã§ãOpenShiftã®å¼·åãªæ©è½ãä½é¨ãããããã§ã OpenShift ã«èå³ãæã£ã¦ããã ããã°ã¨æãã¾ãã