다른 도구에서 GitLab CI/CD로의 마이그레이션 계획 수립

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

다른 도구에서 GitLab CI/CD로의 마이그레이션을 시작하기 전에, 마이그레이션 계획을 수립하는 것으로 시작해야 합니다.

보다 큰 마이그레이션을 위한 초기 단계에 대한 조언은 먼저 조직적 변화 관리를 참조하십시오.

마이그레이션에 참여하는 사용자들은 마이그레이션 시작 전에 할 질문을 검토해야 합니다. 이는 기대치 설정에 중요한 기술적 단계로, CI/CD 도구는 접근 방식, 구조 및 기술적 세부 사항에서 차이가 있습니다. 일부 개념은 일대일 매핑되지만, 다른 것들은 상호 변환을 필요로 합니다.

이전 도구의 행동을 엄겁히 번역하는 대신, 원하는 최종 상태에 집중하는 것이 중요합니다.

조직적 변화 관리

GitLab CI/CD로의 이동의 중요한 부분은 문화적 및 조직적 변화입니다. 이러한 변화를 성공적으로 관리하는 것이 중요합니다.

조직이 보고한 몇 가지 도움이 되는 것들은 다음과 같습니다:

  • 마이그레이션 목표가 무엇인지 명확하게 설정하고 알림으로써 사용자들이 노력의 가치를 이해할 수 있게 합니다. 가치는 작업이 완료될 때 명확하지만, 진행 중에 사람들은 그것을 인식해야 합니다.
  • 관련 리더십 팀의 스폰서십과 조정은 위의 점에 도움이 됩니다.
  • 사용자들을 교육하는 데 시간을 투자하고, 이 가이드를 공유합니다.
  • 마이그레이션의 일부를 순차적으로 하거나 지연시키는 방법을 찾는 것은 많은 도움이 될 수 있습니다. 그러나 중요한 것은, 비마이그레이션 상태(또는 일부적으로 마이그레이션된 상태)로 두지 않도록 하는 것입니다.
  • GitLab의 모든 이점을 얻기 위해서, 현재의 구성을 그대로 이전시키는 것만으로 충분하지 않습니다. GitLab CI/CD가 제공하는 개선점을 활용하고, 전환의 일환으로 구현을 업데이트합니다.

마이그레이션을 시작하기 전에 할 기술적 질문

CI/CD 요구 사항에 대한 초기 기술적 질문을 하면 마이그레이션 요구 사항을 빠르게 정의할 수 있습니다:

  • 이 파이프라인을 사용하는 프로젝트는 몇 개인가요?
  • 어떤 브랜치 전략을 사용하고 있나요? 피처 브랜치? 메인 라인? 릴리스 브랜치?
  • 코드를 빌드하기 위해 어떤 도구를 사용하고 있나요? 예를 들어, Maven, Gradle, 또는 NPM 등이 있나요?
  • 코드를 테스트하기 위해 어떤 도구들을 사용하고 있나요? 예를 들어 JUnit, Pytest 또는 Jest 등이 있나요?
  • 보안 스캐너를 사용하고 있나요?
  • 빌드된 패키지를 어디에 저장하고 있나요?
  • 코드 배포는 어떻게 하나요?
  • 코드를 어디에 배포하나요?

관련 주제

  • Atlassian Bamboo Server의 CI/CD 인프라를 GitLab CI/CD로 마이그레이션하는 방법, 파트 1파트 2