다른 도구에서 GitLab CI/CD로의 마이그레이션 계획하기
다른 도구에서 GitLab CI/CD로의 마이그레이션 계획하기
다른 도구에서 GitLab CI/CD로 옮기기 전에, 먼저 마이그레이션 계획을 세우는 것부터 시작해야 해요. 더 큰 규모의 마이그레이션이라면 조직 변화 관리 챕터의 조언을 먼저 읽어 보는 게 좋아요.
마이그레이션에 참여할 사용자들은 마이그레이션을 시작하기 전에 물어볼 기술 질문을 함께 검토하는 게 좋아요. 이는 기대치를 설정하는 중요한 기술 단계거든요. CI/CD 도구마다 접근 방식, 구조, 기술적 세부 사항이 달라요. 어떤 개념은 일대일로 그대로 옮길 수 있지만, 어떤 것은 상호 변환이 필요해요.
중요한 건 기존 도구의 동작을 문자 그대로 번역하는 게 아니라, 목표하는 최종 상태에 초점을 맞추는 거예요.
출처: 문서
본문
조직 변화 관리하기
GitLab CI/CD로 전환하면서 함께 오는 문화적·조직적 변화가 있어요. 이걸 잘 관리하는 것도 마이그레이션의 중요한 부분이에요.
조직에서 도움이 되었다고 알려진 몇 가지를 정리하면 이래요.
- 마이그레이션 목표가 무엇인지 명확한 비전을 세우고 전달해요. 그래야 사용자들이 왜 이 작업이 가치 있는지 이해할 수 있어요. 작업이 끝나면 가치는 분명해지지만, 진행 중인 동안에도 사람들이 알 수 있어야 해요.
- 관련 리더십 팀의 후원과 정렬이 앞의 포인트에 도움이 돼요.
- 사용자들에게 무엇이 달라지는지 교육하는 시간을 투자하고, 이 가이드를 공유해요.
- 마이그레이션의 일부를 순서대로 진행하거나 지연시키는 방법을 찾으면 큰 도움이 돼요. 다만 중요한 건, 마이그레이션되지 않은(또는 부분적으로 마이그레이션된) 상태에 너무 오래 머물지 않는 거예요.
- GitLab의 모든 이점을 얻으려면 기존 설정을 현재 문제까지 포함해 그대로 옮기는 것만으로는 부족해요. GitLab CI/CD가 제공하는 개선점을 활용해서, 전환의 일부로 구현을 업데이트해 보세요.
마이그레이션을 시작하기 전에 물어볼 기술 질문
CI/CD 요구 사항에 대한 초기 기술 질문을 몇 가지 던져보면 마이그레이션 요구 사항을 빠르게 정의할 수 있어요.
- 이 파이프라인을 사용하는 프로젝트가 몇 개인가요?
- 어떤 브랜칭 전략을 사용하나요? 피처 브랜치? 메인라인? 릴리스 브랜치?
- 코드를 빌드하는 데 어떤 도구를 사용하나요? 예: Maven, Gradle, NPM
- 코드를 테스트하는 데 어떤 도구를 사용하나요? 예: JUnit, Pytest, Jest
- 보안 스캐너를 사용하나요?
- 빌드된 패키지를 어디에 저장하나요?
- 코드를 어떻게 배포하나요?
- 코드를 어디에 배포하나요?
관련 주제
더 알아보기
마이그레이션 계획을 잡았다면 이제 실제 전환을 시작할 차례예요. Jenkins나 TeamCity에서 오는 경우에는 각각의 전용 마이그레이션 문서를 함께 보면, 개념 매핑과 단계별 절차를 훨씬 수월하게 따라갈 수 있어요.