Release

이 섹션은 개발 가이드라인 범위는 벗어나있지만 참고할만한 내용이기 때문에 모든 절차가 자세히 기술되진 않았습니다. 버전 정보와 릴리즈를 위한 개략적인 절차를 참고로만 읽어주세요.

Version

Build Number

큐브리드의 빌드 번호는 다음과 같은 규칙을 가집니다.

  • Major.Minor.Patch.Revision

    • e.g) 11.1.0.0512.2d9a03248

    • Patch는 이전 릴리즈 시점부터 commit count를 기준으로 증가합니다.

    • Revision은 빌드 시점의 commit hash가 입력됩니다.

Code Name

Major와 Minor 버전 릴리즈 시 다음의 예시와 같이 코드 네임을 가집니다.

  • 과일 이름

    • elderberry (11.1)

    • damson (11.0)

    • cherry (10.2), cherry sherbet

    • banana (10.0), banana pie (10.1)

  • 버전 번호는 항상 바뀔 수 있습니다.

  • 릴리즈 후에는 코드 네임 대신 버전 번호로 관리합니다.

Release milestones

Major 버전 릴리즈 시에 다음과 같은 마일스톤을 가집니다.

  • Code Freeze

    • CC (Code Complete): All major changes are completed

    • ZAB (Zero Active Bug): All triaged issues are resolved

  • ZRB (Zero Resolved Bug): All resolved issues are closed

  • FTC (Full Test Complete): Full tests for release are succeed

    • GA (General Availability build): Distribute the release version

릴리즈 절차

  • Code Freeze 후 develop로부터 pre-release 브랜치를 생성하여 관리합니다.

  • ZRB 달성을 위해 pre-release 브랜치에 major change에 대한 regression 패치를 합니다.

  • ZRB에서 release를 위한 full test를 진행합니다.

  • FTC에서 release를 위한 테스트로부터 regression 해결을 위해 pre-release 브랜치에 적용한 major change에 대한 패치를 develop으로 port 합니다.

  • FTC 이전에 패치가 충분히 검증 되었다면 미리 develop으로 port 할 수 있습니다.

  • GA 시 pre-release는 release로 만들고 제거합니다.

최신 메이저 버전이 아닌 이전 버전의 릴리즈와 핫픽스의 경우 pre-release 브랜치를 생성하지 않고, develop으로부터 backport 후 full test를 진행하고 릴리즈합니다.

Last updated