GitLab을 사용한 CI 구축과 Slack과의 협력
CI 환경 구축
조금 느려졌지만 앱의 CI 환경이 어느 정도 갖추어져 있으므로 정리합니다.
이전까지 작성한 Unit, Widget, Integration의 테스트 코드를 .gitlab-ci.yaml
에 기재하는 것으로, git에 push했을 때나 Merge했을 때에 테스트가 움직이도록(듯이) 설정합니다.
gitlab-ci.yamlimage: openjdk:8-jdk
variables:
ANDROID_COMPILE_SDK: "28"
ANDROID_BUILD_TOOLS: "28.0.2"
ANDROID_SDK_TOOLS: "4333796"
stages:
- build
- test
- deploy
UnitTests:
stage: build
script:
- pwd
- ./unit_test.sh
tags:
- mac-ci-runner
WidgetTests:
stage: test
script:
- ./widget_test.sh
tags:
- mac-ci-runner
IntegrationTests:
stage: deploy
script:
- ./test.sh
tags:
- mac-ci-runner
이때, .gitlab-ci.yaml
를 실행하는 Runner 를 실행하지 않으면, 실행했을 때에 flutter : command not found
가 되어 버리기 때문에, Runner 를 flutter 명령이 인스톨 되고 있는 Mac 상에 구축할 필요가 있습니다.
이 방법은 GitLab CI Runner를 Mac에 구축 문서를 참조하십시오.
이상의 설정을 완료하면 CICD > Pipelines에서는 다음과 같이 되어, 테스트가 실행되고 있는 것을 알 수 있습니다.
(실제는 Push, Merge, tag push 때 등에서 실행하는 테스트를 나누고 싶었지만, 그것은 다음에 캡처합니다)
테스트 결과를 Slack에 알리기
다음으로 Gitlab과 Slack의 협력을 수행합니다.
슬랙 측 설정
image: openjdk:8-jdk
variables:
ANDROID_COMPILE_SDK: "28"
ANDROID_BUILD_TOOLS: "28.0.2"
ANDROID_SDK_TOOLS: "4333796"
stages:
- build
- test
- deploy
UnitTests:
stage: build
script:
- pwd
- ./unit_test.sh
tags:
- mac-ci-runner
WidgetTests:
stage: test
script:
- ./widget_test.sh
tags:
- mac-ci-runner
IntegrationTests:
stage: deploy
script:
- ./test.sh
tags:
- mac-ci-runner
다음으로 Gitlab과 Slack의 협력을 수행합니다.
슬랙 측 설정
アプリ名
를 설정하고 通知させたいチャンネル名
를 선택합니다.(아직 Slack 앱 등에서 작업 공간을 만들지 않은 경우이 단계에서 만들어 둡니다)
GitLab 측 설정
Test settings and save changes를 선택하면 무사 설정 완료입니다. 이 단계에서 전항에서 설정한 Slack 채널에 통지합니다.
요약
이것으로 앱의 CI 설정이 완료되었습니다.
테스트가 실패했을 때도 통지가 가기 때문에, 테스트 실행에 시간이 걸려, 다른 작업에 걸려 있을 때 등은 편리하네요.
자신이 참여하고 있는 프로젝트의 퀄리티에는 아직 도착하지 않지만 일련의 흐름은 일단 이해할 수 있었을까...
다음은 CD 환경의 구축을 실시합니다.
Reference
이 문제에 관하여(GitLab을 사용한 CI 구축과 Slack과의 협력), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/NayutaOno/items/9541197c52b4aa8afd07
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(GitLab을 사용한 CI 구축과 Slack과의 협력), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/NayutaOno/items/9541197c52b4aa8afd07텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)