CI/CD 파이프라인에 대한 Litmus 테스트 - AWS 권장 가이드

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

CI/CD 파이프라인에 대한 Litmus 테스트

화학에서 리무스 종이는 물질의 산도를 결정하는 데 사용되는 특수 빨간색 또는 파란색 염료로 처리된 얇은 종이 조각입니다. 산은 파란색 리무스 종이를 빨간색으로, 밑판은 빨간색 리무스 종이를 파란색으로, 중성 물질은 종이 색상에 전혀 영향을 미치지 않습니다.

리무스 종이가 산도를 결정하는 방법은 물질의 pH 수준을 측정하는 것입니다. pH 수준이 8보다 높으면 산성이고, 5보다 낮으면 기본이며, 5~8이면 중립입니다. 마찬가지로 CI/CD litmus 테스트는 파이프라인의 CI/CD 수준을 측정하는 데 도움이 됩니다.

파이프라인이 전체 CI/CD인지 테스트하려면
  1. 0점부터 시작합니다.

  2. 다음 각 질문에 답하고 라고 답할 때마다 점수에 1을 추가합니다.

    • 리포지토리마다 환경에 배포하는 데 사용되는 기본 브랜치가 정확히 하나 있습니까?

    • 기본 브랜치에 코드를 자주 커밋하고 장기 실행 기능 브랜치가 없도록 합니까?

    • 파이프라인에 단일 진입점이 있나요? 즉, 파이프라인이 각 리포지토리에서 코드를 정확히 한 번 가져오나요?

    • 배포 환경이 두 개 이상 있습니까?

    • 파이프라인이 실행되지 않을 때 상위 환경과 하위 환경이 일반적으로 동기화되어 있습니까?

    • 배포하기 전에 코드에 대한 테스트를 실행하나요?

    • 다음 환경으로 승격하기 전에 환경에서 테스트를 실행하나요?

    • 파이프라인은 장애 발생 후 전체 롤백을 수행하고 종료하나요?

    • 실패에서 복구할 때 파이프라인이 첫 번째 단계부터 다시 시작되나요?

    • 프로덕션에 기능을 릴리스하기 위해 수행하는 것과 동일한 프로세스를 따라 프로덕션에서 버그를 수정하나요?

    • 코드형 인프라(IaC) 템플릿을 사용하여 코드를 배포하나요?

  3. 다음 각 질문에 답하고 아니오라고 답할 때마다 점수에 1을 추가합니다.

    • 기본 브랜치 이외의 브랜치에서 배포 환경에 직접 배포한 적이 있나요?

    • 브랜치에서 상위 또는 프로덕션 환경으로 직접 배포한 적이 있나요?

    • 상위 환경에서 하위 환경에 없는 버그를 자주 발견하나요?

    • 배포 중에 하위 환경을 우회하는 일이 있습니까?

    • 프로덕션에 배포하기 위해 예정된 릴리스 시간이 될 때까지 기다려야 합니까?

    • 프로덕션 환경의 콘솔에서 정기적으로 업데이트를 수행하나요?

    • 배포를 완료하기 위해 프로덕션 환경의 콘솔에서 수행해야 하는 수동 배포 단계가 있나요?

    • 두 명 이상의 사람이 프로덕션 환경에 대한 쓰기 액세스 권한을 가지고 있습니까?

    • 5명 이상의 사용자가 프로덕션 환경에 대한 쓰기 액세스 권한을 가지고 있나요?

  4. 점수를 2로 나눕니다. 파이프라인의 CI/CD 점수입니다.

  5. 파이프라인의 CI/CD 점수를 다음 표와 비교하여 파이프라인의 CI/CD 수준을 결정합니다.

    CI/CD 점수

    CI/CD 수준

    9.5 이상

    전체 CI/CD

    8~9

    대부분 CI/CD

    5~7

    중립

    5 미만

    CI/CD 아님

점수가 8점 미만인 경우 목표를 설정하여 다음 단계로 점진적으로 이동하는 것이 좋습니다. 이 목표가 달성되면 제품 이해관계자는 새로운 목표를 설정해야 하는지 여부와 시기를 평가해야 합니다. 이 연습의 의도는 파이프라인의 변화를 반드시 지지하는 것이 아니라 전체 CI/CD 배포 프로세스의 모습과 파이프라인이 현재 해당 스펙트럼에 있는 위치를 파악하는 것입니다.