버전 관리

GitLab Operator는 semver versioning을 사용합니다. 버전 태그는 semver 버전 문자열이어야 합니다.

문서

Operator 문서는 doc/ 디렉토리에서 사용할 수 있습니다.

Red Hat 인증

저장소에 semver 버전(예: 1.0.0)이 태그되면 릴리스 파이프라인에 certification_upload 작업이 포함될 것입니다. 이 작업은 Red Hat API를 트리거하여 이미지가 Red Hat의 인증 파이프라인을 통과하도록 요청합니다. 인증 파이프라인의 결과는 Red Hat의 Connect 포털을 통해 공개됩니다.

또한 릴리스 후보 태그(예: 1.0.0-rc1) 또는 베타 태그(예: 1.0.0-beta1)를 전달하여 certification_upload 작업을 트리거할 수도 있습니다. 이렇게 하면 이미지가 Red Hat의 인증 테스트를 거치지만 (구현된 경우) 프로덕션 채널을 통해 이미지가 공개되지는 않습니다.

REDHAT_CERTIFICATION CI 변수를 “true”로 설정하여 어떤 파이프라인에든 certification_upload 작업을 추가할 수도 있습니다.

또한, scripts/redhat_certification.rb 스크립트를 실행하고 제출된 스캔 요청의 현재 상태를 Red Hat API에서 조회하는 것도 가능합니다. scripts/redhat_certification.rb -s를 실행하면 Red Hat 인증 파이프라인에서 이미지와 현재 상태의 목록이 표시됩니다.

GitLab CI와 별도로 스크립트를 실행하려면 REDHAT_API_TOKEN 환경 변수를 만들어야 합니다. 이 변수는 Connect 포털에서 생성된 개인 토큰으로 설정됩니다. GitLab CI에서 사용하는 토큰은 “Red HatCertification Token” 항목 아래 1Password 빌드 보관에 저장됩니다.

릴리스 다시 태깅

릴리스 파이프라인이 실패하거나 릴리스를 게시하기 전에 다른 수정 사항을 병합해야 하는 경우, 태그를 다시 만들어야 합니다.

이를 수행하는 방법은 다음과 같습니다:

  1. 필요한 수정 사항을 안정 브랜치에 병합합니다.
  2. canonical에서 태그를 삭제합니다.
  3. security fork에서 태그를 삭제합니다.
  4. dev fork에서 태그를 삭제합니다.
  5. CHART_VERSIONS가 최신 상태인지 확인합니다.
  6. deploy/chart/Chart.yamlappVersionversion이 최신 상태인지 확인합니다.
  7. 안정 브랜치의 HEAD에 태그를 다시 만듭니다.

    중요: 태그에는 아래와 같은 형식의 설명이 있어야 합니다: Version a.b.c - GitLab Charts x, y, z 지원 이 설명이 없으면 다음 정규 릴리스에서 릴리스 도구에 의해 고려되지 않습니다.

  8. 태그 파이프라인이 통과한지 확인합니다.
  9. 태그가 dev에 미러링되었는지 확인합니다.