InfoGrab Docs

CircleCI에서 마이그레이션

CircleCI에서 마이그레이션에 대해 설명합니다.

현재 CircleCI를 사용하고 있다면, CI/CD 파이프라인을 GitLab CI/CD 로 마이그레이션하고 강력한 기능들을 활용하기 시작할 수 있습니다. 마이그레이션을 시작하기 전에 유용한 여러 리소스를 모았습니다. 빠른 시작 가이드 는 GitLab CI/CD의 작동 방식에 대한 좋은 개요를 제공합니다. 또한 최소한의 구성으로 애플리케이션을 빌드, 테스트 및 배포하는 데 사용할 수 있는 Auto DevOps 에도 관심을 가질 수 있습니다. 고급 CI/CD 팀의 경우, 사용자 정의 프로젝트 템플릿 을 사용하면 파이프라인 구성을 재사용할 수 있습니다. 여기서 답변되지 않은 질문이 있으면 GitLab 커뮤니티 포럼 이 훌륭한 리소스가 될 수 있습니다. config.yml vs .gitlab-ci.yml # CircleCI의 config.yml 구성 파일은 스크립트, 잡 및 워크플로(GitLab에서는 "스테이지"로 알려짐)를 정의합니다. GitLab에서는 리포지터리의 루트 디렉터리에 있는 .gitlab-ci.yml 파일을 사용하여 유사한 방식을 사용합니다. 잡 # CircleCI에서 잡은 특정 작업을 수행하기 위한 단계들의 모음입니다. GitLab에서도 잡 은 구성 파일의 기본 요소입니다. checkout 키워드는 리포지터리가 자동으로 가져와지기 때문에 GitLab CI/CD에서는 필요하지 않습니다. CircleCI 잡 정의 예시: jobs: job1: steps: - checkout - run: "execute-script-for-job1" GitLab CI/CD에서 동일한 잡 정의 예시: job1: script: "execute-script-for-job1" Docker 이미지 정의 # CircleCI는 잡 수준에서 이미지를 정의하며, GitLab CI/CD도 이를 지원합니다. 또한 GitLab CI/CD는 image 가 정의되지 않은 모든 잡에서 사용할 전역 설정을 지원합니다. CircleCI 이미지 정의 예시: jobs: job1: docker: - image: ruby:2.6 GitLab CI/CD에서 동일한 이미지 정의 예시: job1: image: ruby:2.6 워크플로 # CircleCI는 workflows 를 사용하여 잡의 실행 순서를 결정합니다. 이는 동시, 순차, 예약 또는 수동 실행을 결정하는 데도 사용됩니다. GitLab CI/CD에서 이에 해당하는 기능은 스테이지 라고 합니다. 동일 스테이지의 잡은 병렬로 실행되며 이전 스테이지가 완료된 후에만 실행됩니다. 기본적으로 잡이 실패하면 다음 스테이지 실행이 건너뛰어지지만 잡 실패 후에도 계속 진행하도록 허용할 수 있습니다. 사용할 수 있는 다양한 유형의 파이프라인에 대한 지침은 파이프라인 아키텍처 개요 를 참조하세요. 파이프라인은 크고 복잡한 프로젝트나 독립적으로 정의된 컴포넌트가 있는 모노리포와 같이 필요에 맞게 맞춤화할 수 있습니다. 병렬 및 순차 잡 실행 # 다음 예시는 잡이 병렬로 또는 순차적으로 실행되는 방법을 보여줍니다: job1 과 job2 는 병렬로 실행됩니